wrap
来源:互联网 发布:80端口申请流程 编辑:程序博客网 时间:2024/05/01 20:26
加密oracle存储过程
oracle提供了wrap工具来加密包括procedure、function、package等的PL/SQL源代码
wrap的执行在OS的命令行环境下
语法:wrap iname=input_file [oname=output_file]
限制:字符串、数字、变量名、表名、字段名被保留在加密文件中的,仅加密运算法则并限制被解密。所以,也就无法隐藏表名或者密码等
有些新的sql语法,需要指定选项edebug=wrap_new_sql,否则不能被支持
注意:
1、wrap只能检测出基本的语法错误,而由于不登录数据库所以无法检查出语义的错误
2、向上兼容,而不能向下兼容,即低版本加密的过程可以到高版本上编译,反之不行
3、加密package是仅加密package body,而不加密包声明
4、windows平台上执行时显示错误:kgepop: no error frame to pop to for error 1801
需要先定义 set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
举例:
源码
CREATE OR REPLACE PROCEDURE p_test
(
i_var IN VARCHAR2,
o_var OUT VARCHAR2
) IS
BEGIN
o_var := i_var;
END p_test;
/
加密后的文件
CREATE OR REPLACE PROCEDURE p_test wrapped
0
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
3
7
9200000
1
4
0
5
2 :e:
1P_TEST:
1I_VAR:
1VARCHAR2:
1O_VAR:
1OUT:
0
0
0
1b
2
0 9a 8f a0 b0 3d 96 :2 a0
b0 54 b4 55 6a :2 a0 d b7
a4 a0 b1 11 68 4f 1d 17
b5
1b
2
0 3 1f 1b 1a 27 38 30
34 17 3f 2f 44 48 4c 50
54 2c 58 5c 60 62 6e 72
74 75 7e
1b
2
0 b 4 d :3 4 a e :2 4
:3 1 4 d 4 :2 1 5 :7 1
1b
4
0 1 :4 3 :5 4
2 :2 1 :3 7 :2 6
8 :7 1
80
4
:3 0 1 :a 0 16
1 :7 0 5 2c
0 :2 3 :3 0 2
:7 0 4 3 :3 0
a 15 0 7
5 :3 0 3 :3 0
4 :6 0 9 8
:3 0 b :2 0 16
1 c :2 0 4
:3 0 2 :3 0 e
f 0 11 :3 0
15 1 :4 0 15
14 11 12 :6 0
16 :2 0 1 c
15 19 :3 0 18
16 1a :8 0
c
4
:3 0 1 2 1
6 2 5 a
1 10
1
4
0
19
0
1
14
1
3
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0
1 0 1
6 1 0
2 1 0
0
/
加密文件名如果不指定的话,就是原文件主文件.plb
加密后使用 SQL> @加密文件名 编译到库中,查看的时候显示已经被加密
比如在pl/sql developer查看是显示 /* Source is wrapped */
====================================
wrap不能加密trigger吗?
为什么不能加密trigger?
不能,可以加密函数,过程,然后在trigger中调用它们
wrap 是否不能对触发器进行加密????
怎么都没人回答我???
答案是不行的,WRAP只能加密过程/包/函数。如果真要达到你的目的,你可以先写一个过程,加密这个过程,然后在TRIGGER里面调
用这个过程。
明白,多谢!!!
- wrap
- wrap
- wrap()
- 关注wrap
- wrap属性
- wrap用法
- wrap 用法
- wrap,append
- http wrap
- readline wrap
- flex-wrap
- Wrap Office(VBA Wrap Window API)
- Oracle's Wrap Utility
- Oracle Wrap使用方法
- wrap属性研究
- wrap加密oracle源程序
- css word-wrap
- textarea的WRAP属性
- 必须掌握的八个cmd 命令
- 培养气质的98个好习惯(必读)
- 留给80后的30个忠告
- 如何让虚拟目录里面的webconfig不继承网站
- Game Programming Beginners Guide - by Dave Astle
- wrap
- Handler
- ResultSet 的疑问
- aspx页面运行纯js脚本的时间控件不能显示控件的解决办法
- SMS API发送短信
- 转贴:求真功诚访大成名家--程立华 (2006-09-22 16:08:11)
- Web网站的性能测试工具【转】
- 获取窗口句柄(VC)的几种方法
- Oracle -- 给我等着