wrap就是一个加密的工具

参数:

Iname 输入文件的名称

Oname输出文件的名称

如何加密Oracle中的存储过程,从而在schema下看不到其源码?

软件环境:

1、操作系统:Windows 2000 Server

2、数 据 库:Oracle 8i R2 (8.1.7) for NT 企业版

3、安装路径:C:\ORACLE

实现方法:

1、

D:\>set NLS_LANG=AMERICAN_AMERICA.USACII7

D:\>set NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1

D:\>set

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

2、

在D:\下创建a.sql文件,内容如下:

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,现在它的内容如下:

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 9a8f 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

SQL> @d:\a.plb

过程已创建。

6、运行存储过程

SQL> set serveroutput on

SQL> execute test1(1);

输入参数是1

PL/SQL 过程已成功完成。

7、查看存储过程的代码

SQL> select name,text from all_source where type='PROCEDURE' and name='TEST1';

oracle Wrap加密的更多相关文章

  1. 使用Oracle Wrap工具加密你的代码

    Oracle提供Wrap工具,可以用于加密你的Package等.不过需要注意的是,加密后的代码无法解密,你需要保管好你的源代码. 以下是个例子: 1.源代码 create or replace fun ...

  2. Oracle wrap 和 unwrap( 加密与解密) 说明

    一. Wrap 说明 官网的说明如下: A PL/SQL Source Text Wrapping http://download.oracle.com/docs/cd/E11882_01/appde ...

  3. Oracle wrap 测试的一些细节问题

    今天在做 wrap 的测试实验的时候,出现一个很奇怪的现象,就是加密不成功.具体表现为:1.加密后的文件大小为0kb. 2.加密后的文件仍然可视. 具体测试步骤如下: D:\Just4work\som ...

  4. oracle存储过程加密

    引言:平时大家在做项目的时候,经常会遇到把Oracle存储过程带到项目现场来测试系统.这时如果想对自己的存储过程进行保密,不使别人看到源代码,就可以对已有的存储过程进行加密保护.顾名思义,就是对Ora ...

  5. ORACLE透明加密

    --官网文档:https://www.oracle.com/technetwork/cn/tutorials/tde-096009-zhs.html#t概述Oracle 数据库 10g 第 2 版透明 ...

  6. Oracle 数据库加密

    数据加密 动态数据(data in motion)和静态数据(data at rest),除了手动加密,其他的加密都需要oracle企业版的高级加密(额外收费——)  1 静态数据加密 Example ...

  7. oracle的加密和解密

    加密函数 create or replace function encrypt_des(p_text varchar2, p_key varchar2) return varchar2 isv_tex ...

  8. [转载]oracle的加密和解密

    加密函数 create or replace function encrypt_des(p_text varchar2, p_key varchar2) return varchar2 isv_tex ...

  9. Oracle列加密

    加密函数 create or replace function encrypt_des(p_text varchar2, p_key varchar2) return varchar2 isv_tex ...

随机推荐

  1. mysql load date to Hbase

    一.mysql迁移数据进hbase需要配置好配置文件 用sqoop 命令进行迁移 二. 配置文件内容: import--connectjdbc:mysql://172.18.32.99:3306/te ...

  2. LA3882 And Then There Was One

    And Then There Was One https://vjudge.net/problem/UVALive-3882 题目大意:n个数编号1..n排成一圈,第一次删除m,后来每k个删除一个(下 ...

  3. Leetcode475.Heaters供暖器

    冬季已经来临. 你的任务是设计一个有固定加热半径的供暖器向所有房屋供暖. 现在,给出位于一条水平线上的房屋和供暖器的位置,找到可以覆盖所有房屋的最小加热半径. 所以,你的输入将会是房屋和供暖器的位置. ...

  4. (2)卷积 & 卷积和

    参考资料:<信号与系统(第二版)> 杨晓非 何丰 连续信号的是卷积积分,离散信号的是卷积和. 脉冲分量 任意非周期信号,将横坐标分为若干个微小等分,得到Δτ为宽,f(kΔτ)为高的一系列微 ...

  5. Jdbc封装和对CURD的封装

    1.查询emp表中的所有记录为例 2.测试类 public Emp getByNameAndEmail(String name, String email){ String sql = "s ...

  6. 通过Struts2Web应用框架深入理解MVC

    Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet. 一.用法简介: 1.Eclipse新建Dynamic Web Project, 项目名:Struts2Pro ...

  7. 学习JDK1.8集合源码之--LinkedHashMap

    1. LinkedHashMap简介 LinkedHashMap继承自HashMap,实现了Map接口. LinkedHashMap是HashMap的一种有序实现(多态,HashMap的有序态),可以 ...

  8. SVG 动态添加元素与事件

    SVG文件是由各个元素组成.元素由标签定义,而标签格式即html的元素定义格式.但是载入一个SVG文件,却无法通过常规的js获取对象方式来获取到SVG中定义的元素,更无法通过这种方式来动态添加SVG元 ...

  9. List的深度序列化Demo

    今天项目中出现了这个问题...就是使用一个List去进行其他的操作,生成一个新的List.但是却将原来的List的值也给改了...这应该是引用传递的问题,查了资料发现这是浅拷贝造成的.(ps:使用ad ...

  10. SpringBoot启动报错Failed to determine a suitable driver class

    SpringBoot启动报错如下 Error starting ApplicationContext. To display the conditions report re-run your app ...