程序员人生 网站导航

sch 助shell脚本加密 02

栏目:服务器时间:2015-01-13 08:50:22

sch shell脚本加密 02

1、  简介

SHC(shell script compiler),即shell脚本编译器。通过SHC编译过的脚本对普通用户而言是不可读的,因此如果你想让你的代码实现加密功能,让其有效的屏蔽1些敏感信息,这个时候可以斟酌使用SHC;它通常情况下是不太容易被破解的,但是还是有些人可以通过反编译SHC的方法来实现破解加密过的脚本。

2、  实验测试开始
2.1 下载并编译SHC

[root@woo ~]# wget http://www.datsi.fi.upm.es/~frosal/sources/shc⑶.8.3.tgz [root@woo ~]# ll shc⑶.8.3.tgz -rw-r--r-- 1 root root 19874 Dec 31 20:40 shc⑶.8.3.tgz [root@woo ~]# tar -zxvf shc⑶.8.3.tgz shc⑶.8.3/CHANGES shc⑶.8.3/Copying shc⑶.8.3/Makefile shc⑶.8.3/match shc⑶.8.3/pru.sh shc⑶.8.3/shc.1 shc⑶.8.3/shc.c shc⑶.8.3/shc.html shc⑶.8.3/shc.README shc⑶.8.3/test.bash shc⑶.8.3/test.csh [root@woo ~]# cd shc⑶.8.3 [root@woo shc⑶.8.3]# make && make install *** ?Do you want to probe shc with a test script? *** Please try... make test [root@woo shc⑶.8.3]#

2.2 编译完成以后,我们切换到oracle用户下编辑1个脚本

[root@woo ~]# su - oracle [oracle@woo ~]$ vi sqlscript.sql #!/bin/sh sqlplus -S system/oracle << EOF set pagesize 0 linesize 80 feedback off select 'The database ' || instance_name || ' has been running since '|| to_char(startup_time, 'HH24:MI MM/DD/YYYY') from v$instance; select 'There are ' || count(status) || ' data files with a status of ' || status from dba_data_files group by status order by status; exit; EOF
2.3 履行加密前的脚本

[oracle@woo ~]$ ./sqlscript.sql The database woo has been running since 18:17 12/23/2014 There are 4 data files with a status of AVAILABLE
2.4 对脚本进行加密操作,会在原来的基础上多出两个文件

[root@woo shc⑶.8.3]# shc -r -f /home/oracle/sqlscript.sql [oracle@woo ~]$ ll sqlscript* -rwxr-xr-x 1 oracle oinstall 365 Dec 31 18:55 sqlscript.sql --运行文件 -rwx--x--x 1 root root 12048 Dec 31 22:00 sqlscript.sql.x
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐