Oracle提供Wrap工具,可以用于加密你的Package等.
不过需要注意的是,加密后的代码无法解密,你需要保管好你的源代码。
10g中,Oracle包DBMS_DDL提供了一个新的函数CREATE_WRAPPED来实现对代码的混淆。
[@more@][oracle@linx130 bin]$ cp f_get_rowid.sql f_get_rowid.sql.bak
[oracle@linx130 bin]$ wrap iname=f_get_rowid.sql oname=f_get_rowid.plb
PL/SQL Wrapper: Release 10.2.0.3.0- Production on Thu Mar 20 09:26:21 2008
Copyright (c) 1993, 2004, Oracle. All rights reserved.
Processing f_get_rowid.sql to f_get_rowid.plb
[oracle@linx130 bin]$ cat f_get_rowid.plb
create or replace function get_rowid wrapped
a000000
354
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
8
29a 199
4cED0BGR/vcb0PN0SRUzIImMHekwgxDxzK7WfI4CELlkU/QoS0YEaIbjKI4YCub28jHCsNTX
J1CtR6Iftj80BXVpcPewQMedaMfc/QFWyImCMLNjg2+Y5L0xLdPP3IQOdMm85+i8BNDIymW2
zSiiXo6wxZNuyf2vHJi5hdaLhIBM+pUd+3CTrPR8XEq7WspcYm79LxQzbJDzlH8/3MZ/KLm1
hjrPTWZZSD6ELwYUOx1xPd8+bc4PP7AyufV+e+hJW1lby6D4e2KpkzxdOVa8zz0Km9ObciPg
4FyNXfxQa1Ux3+XlcMWK9r+qZ6Y8CPEO5DpQWzzbo50QYH2BC1iq9oE0PjmJ8+hy7jItI9bX
sfgJIPhuiBJLZLSIjtJM30SoVwDVA6Qo828jH51XuAOa
/
以上方法是命令行方式的,是针对脚本的。10g中,Oracle包DBMS_DDL提供了一个新的函数CREATE_WRAPPED来实现对代码的混淆。举例:
SQL> declare
2 V_PROTEX varchar2(2000):='
3 CREATE OR REPLACE PROCEDURE P_WRAPTEST
4 IS
5 v_count number;
6 BEGIN
7 select count(*) into v_count from user_tables;
8 DBMS_OUTPUT.PUT_LINE(''Tables number is: '' || v_count);
9 END;
10 ';
11 begin
12 SYS.DBMS_DDL.CREATE_WRAPPED(V_PROTEX);
13 end;
14 /
PL/SQL procedure successfully completed.
SQL> SELECT text FROM USER_SOURCE WHERE name = 'P_WRAPTEST';
TEXT
--------------------------------------------------------------------------------
PROCEDURE P_WRAPTEST wrapped
a000000
1f
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
TEXT
--------------------------------------------------------------------------------
abcd
abcd
abcd
abcd
abcd
abcd
abcd
7
9a d2
Xy9zCYN+4Vgklmw21oWxrnyw1GowgypfLZ4VfC9nkLvVSPYej1t1JqHcvRScyHH1dG975/xw
Uh7G1eYHeO3GDK2rwiq26J/XC9PF4eLdY1hUk8j2UImUEXvaQOZBX48Pgfj7pAzbYgBDBEtv
TEXT
--------------------------------------------------------------------------------
ly5gzSYWS3uJbwoaxQcs19rovLcF0nUfzxBB6+TU+MDby7EyBXSe4zusVR+SBdXK
SQL>
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/271283/viewspace-1001230/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/271283/viewspace-1001230/