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. python3没有了xrange

    升级到python3的同学应该会注意到以前经常用的xrange没了! 是的,python3的range就是xrange.直接看效果!   Python 2.7.13 (v2.7.13:a06454b1 ...

  2. linux后台执行程序相关命令

    linux下我们如果想一个任务或者程序还后台执行可以使用&,实际上linux还提供了其他任务调度的命令. bg将一个在后台暂停的命令,变成继续执行 fg将后台中的命令调至前台继续运行 jobs ...

  3. ubuntu setup.py 安装时报Error -5 while decompressing data: incomplete or truncated stream

    缺少 python-devel 包 apt-get install python-dev -y

  4. Constructing Roads POJ - 2421 (最小生成树)

    思路:首先使用二维数组dis[][]处理输入, 对于已经修好的路,将其对应的dis[i][j]置为零即可.最后再将    所有的dis[][]保存到边结构体中,使用Kruskal算法求得最小生成树. ...

  5. mysql8.0 的坑 hibernate连接配置坑

    https://blog.csdn.net/qq_36448800/article/details/81180881 这篇文章对于连接配置说的是对的,也比较全面

  6. web前端学习(三)css学习笔记部分(3)-- css常用操作

    5.  CSS常用操作 5.1  对齐 使用margin属性进行水平对齐 <!DOCTYPE html> <html lang="en"> <head ...

  7. 从0开始学习 GitHub 系列之「05.Git 进阶」

    关于 Git 相信大家看了之前一系列的文章已经初步会使用了, 但是关于Git还有很多知识与技巧是你不知道的,今天就来给大家介绍下一些 Git 进阶的知识. 1. 用户名和邮箱 我们知道我们进行的每一次 ...

  8. AndroidStudio离线打包MUI

    1.下载5+SKD http://ask.dcloud.net.cn/article/103 2.解压到任意目录 3.导入HBuilder-Hello项目 4.在AndroidManifest.xml ...

  9. C++ std::vector指定位置插入

    使用vector,必须加上:#include <vector> 1.初始化vector,一般有这几种方式: std::vector<std::wstring> v1; //创建 ...

  10. 【JZOJ5088】【GDOI2017第四轮模拟day2】最小边权和 排序+动态规划

    题面 有一张n个点m条边的有向图,每条边有一个互不相同的边权w,有q个询问,要求你从点a经过不超过c条边到点b,要求经过的边权递增并和尽量小,求出最小的边权和,如果没有合法方案则输出-1. 对于100 ...