oracle 存储过程加密的方法

配置环境:

  1、数 据 库:oracle 8i r2 (8.1.7) for nt 企业版

  2、安装路径:c:oracle

  实现方法:

  1.d:>set nls_lang=american_america.usacii7

   或

   d:>set nls_lang=american_america.we8iso8859p1

d:>set

  直接打set命令可以查看环境变量

  2.在d:下创建a.sql文件,内容如下:

java代码

  create or replace procedure test1(i in number) as

   begin

   dbms_output.put_line(‘输入参数是’||to_char(i));

   end;

  create or replace procedure test1(i in number) as

   begin

   dbms_output.put_line(‘输入参数是’||to_char(i));

   end;

  3.d:>wrap iname=a.sql

  pl/sql wrapper: release 8.1.7.0.0 – production on tue nov 27 22:26:48 2001

  copyright (c) oracle corporation 1993, 2000. all rights reserved.

  processing a.sql to a.plb

  4.打开a.plb,现在它的内容如下:

 java代码

 create or replace procedure test1 wrapped

   0

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   3

   7

   8106000

   1

   4

   0

   8

   2 :e:

   1test1:

   1i:

   1number:

   1dbms_output:

   1put_line:

   1输入参数是:

   1||:

   1to_char:

   0

  

   0

   0

   1f

   2

   0 1d 9a 8f a0 b0 3d b4

   55 6a :2 a0 6b 6e 7e :2 a0 a5

   b b4 2e a5 57 b7 a4 b1

   11 68 4f 17 b5

   1f

   2

   0 3 4 1d 19 18 25 15

   2a 2e 32 36 3a 3d 42 45

   49 4d 4e 50 51 56 57 5c

   5e 62 64 70 74 76 7f

   1f

   2

   0 1 b 11 16 :2 11 10 :3 1

   :2 d 16 22 24 2c :2 24 :2 16 :a 1

  

   1f

   2

   0 :9 1 :d 3 :2 2 :3 1 4 :2 1

   81

   4

   :4 0 1 :a 0 1b

   1 :4 0 5 :2 0

   :2 3 :3 0 2 :7 0

   5 4 :3 0 7

   :2 0 1b 2 8

   :2 0 4 :3 0 5

   :3 0 a b 0

   6 :4 0 7 :2 0

   8 :3 0 2 :3 0

   7 f 11 9

   e 13 :3 0 :2 c

   15 :2 0 17 10

   1a :3 0 1a 0

   1a 19 17 18

   :6 0 1b :2 0 2

   8 1a 1d :2 0

   1 1b 1e :8 0

  

   13

   4

   :3 0 1 3 1

   6 1 10 2

   d 12 1 14

   1 16 2 16

   1c

   1

   4

   0

   1d

   0

   1

   14

   1

   2

   0 0 0 0 0 0 0 0

   0 0 0 0 0 0 0 0

   0 0 0 0

   2 0 1

   3 1 0

   0

 create or replace procedure test1 wrapped

   0

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   abcd

   3

   7

   8106000

   1

   4

   0

   8

   2 :e:

   1test1:

   1i:

   1number:

   1dbms_output:

   1put_line:

   1输入参数是:

   1||:

   1to_char:

   0

  

   0

   0

   1f

   2

   0 1d 9a 8f a0 b0 3d b4

   55 6a :2 a0 6b 6e 7e :2 a0 a5

   b b4 2e a5 57 b7 a4 b1

   11 68 4f 17 b5

   1f

   2

   0 3 4 1d 19 18 25 15

   2a 2e 32 36 3a 3d 42 45

   49 4d 4e 50 51 56 57 5c

   5e 62 64 70 74 76 7f

   1f

   2

   0 1 b 11 16 :2 11 10 :3 1

   :2 d 16 22 24 2c :2 24 :2 16 :a 1

  

   1f

   2

   0 :9 1 :d 3 :2 2 :3 1 4 :2 1

   81

   4

   :4 0 1 :a 0 1b

   1 :4 0 5 :2 0

   :2 3 :3 0 2 :7 0

   5 4 :3 0 7

   :2 0 1b 2 8

   :2 0 4 :3 0 5

   :3 0 a b 0

   6 :4 0 7 :2 0

   8 :3 0 2 :3 0

   7 f 11 9

   e 13 :3 0 :2 c

   15 :2 0 17 10

   1a :3 0 1a 0

   1a 19 17 18

   :6 0 1b :2 0 2

   8 1a 1d :2 0

   1 1b 1e :8 0

  

   13

   4

   :3 0 1 3 1

   6 1 10 2

   d 12 1 14

   1 16 2 16

   1c

   1

   4

   0

   1d

   0

   1

   14

   1

   2

   0 0 0 0 0 0 0 0

   0 0 0 0 0 0 0 0

   0 0 0 0

   2 0 1

   3 1 0

   0  

  5.运行a.plb

  java代码

sql> @d:a.plb

sql> @d:a.plb

  过程已创建。

  6、运行存储过程

  java代码

sql> set serveroutput on

   sql> execute test1(1);

sql> set serveroutput on

   sql> execute test1(1);

  输入参数是1

  pl/sql 过程已成功完成。

  7、查看存储过程的代码

  java代码

sql> select name,text from all_source where type=’procedure’ and name=’test1′;

sql> select name,text from all_source where type=’procedure’ and name=’test1′;

  结果:看不到其源码

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐