怎么样使用wrap加密package body

来源:互联网 发布:宝鸡软件开发 编辑:程序博客网 时间:2024/05/22 01:53
今天遇到的,整理了一下:
wrap的基本用法:

wrap iname=Inputname oname=Outname

google一下有很多例子。

有的时候希望只加密package body里的代码,而还能看到package 头里的函数,过程参数结构等。下面是一种做法:

1。编译package 头部分。

2。用wrap加密package body部分。

3。执行wrap加密部分。

一个例子:

(a) 编译package 头部分。

SQL> create or replace package wrap_test is
2
3 function test(p_id in number)return varchar2;
4
5 end wrap_test;
6 /

程序包已创建。

SQL>

(b) 用wrap加密package body部分。

G:>type wrap_test.sql
create or replace package body wrap_test is

function test(p_id in number)return varchar2
is
l_result varchar2(240);
begin
l_result := 'test '||p_id;
return l_result;
end ;
end wrap_test;

G:>

G:>wrap iname=wrap_test.sql

PL/SQL Wrapper: Release 9.0.1.3.1- Production on Tue Feb 06 11:11:10 2007

Copyright (c) Oracle Corporation 1993, 2001. All Rights Reserved.

Processing wrap_test.sql to wrap_test.plb

G:>

(c) 执行wrap加密部分。

SQL> @wrap_test.plb

程序包主体已创建。

SQL>

验证一下结果

SQL> select wrap_test.test(232124) from dual;

WRAP_TEST.TEST(232124)
------------------------------------------------

test 232124

SQL>