首页 数据库 mysql教程 oracle加密工具

oracle加密工具

Jun 07, 2016 pm 03:26 PM
oracle 加密 包含 存储 工具

在 Oracle 存储过程中所包含的商业秘密,有时不愿意被第三方人员看到,可以通过对存储过程加密来实现。 有两种加密存储过程的方法:这里重点介绍 wrap: Wrap 是 Oracle 所提供的操作系统级的命令 ,其加密的原理就是先对源码进行 lz 压缩 lzstr ,然后对压

Oracle存储过程中所包含的商业秘密,有时不愿意被第三方人员看到,可以通过对存储过程加密来实现。

有两种加密存储过程的方法:这里重点介绍wrap:

WrapOracle所提供的操作系统级的命令,其加密的原理就是先对源码进行lz压缩lzstr,然后对压缩数据进行SHA-1运算得到40位的加密串shstr,然后将加密串与压缩串拼接得到shstr+lzstr,然后对拼接后的字符串进行Oracle双字符转换(转换表)。最后将转换后的字符串进行base64编码,最终得到wrap的加密串。Oracle本身没有提供unwrap工具,wrap语法如下:

wrap iname=input_file [oname=output_file]

参数iname为要加密的文件名,oname为加密后的文件名。如果省略oname,那么将会自动产生一个同名的加密文件名,且后缀为plb

我们来演示一下wrap工具的用法。首先创建一个名称为test.txt的文件:

[oracle@pigeon ~]$ which wrap
/u01/product/10.2.0/bin/wrap #wrap
所在目录
[oracle@pigeon ~]$ wrap iname=test.txt

PL/SQL Wrapper: Release 10.2.0.1.0- Production on Mon Jan 17 15:14:11 2011

Copyright (c) 1993, 2004, Oracle.  All rights reserved.

Processing test.txt to test.plb
[oracle@pigeon ~]$ ls
autostartosw.sh  Desktop  l0db.sh  raw.txt  sde2.dmp  sde.dmp  startdb.sh  stop.pigeon  test.plb(
新生成一个同名不同后缀的文件) test.txt
 

下面分别查看两个文件的内容:

[oracle@pigeon ~]$ more test.txt 
create or replace procedure test
is
begin
dbms_output.put_line('welcome to oracle!');
end;
/
[oracle@pigeon ~]$ more test.plb 
create or replace procedure test wrapped 
a000000
354
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
7
49 85
zzrHcdOhOYaYaHu+gE2KKyNe6L4wg5nnm7+fMr2ywFznUrLL7pt0i8DAMv7ShsBSm7JK/iiy
veeysx0GMCyuJOqygZt3bl3kaMMC8c8C5FHbXW7D6TIu9tHqJB/2Oab7j44p

/
[oracle@pigeon ~]$ 

下面使用密文创建与调用创建的procedure

[oracle@pigeon ~]$ sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on Mon Jan 17 15:16:06 2011

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

SQL> conn / as sysdba;
Connected.

--复制密文:
SQL> create or replace procedure test wrapped 
  2  a000000
  3  354
  4  abcd
  5  abcd
  6  abcd
  7  abcd
  8  abcd
  9  abcd
 10  abcd
 11  abcd
 12  abcd
 13  abcd
 14  abcd
 15  abcd
 16  abcd
 17  abcd
 18  abcd
 19  7
 20  49 85
 21  zzrHcdOhOYaYaHu+gE2KKyNe6L4wg5nnm7+fMr2ywFznUrLL7pt0i8DAMv7ShsBSm7JK/iiy
 22  veeysx0GMCyuJOqygZt3bl3kaMMC8c8C5FHbXW7D6TIu9tHqJB/2Oab7j44p
 23  
 24  /

Procedure created.

当需要加密的文件很多时,也可以这样:

SQL> start /home/oracle/test.plb;

Procedure created.

SQL>

SQL> set serveroutput on;
SQL> exec test;#
执行test过程,正确输出
welcome to oracle!

PL/SQL procedure successfully completed.

SQL>

现在就可以把文件test.plb发给客户使用了,而不必担心你的源代码的暴露。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

2025年安全好用的虚拟币交易平台榜单汇总 2025年安全好用的虚拟币交易平台榜单汇总 Mar 25, 2025 pm 06:15 PM

2025年安全好用的虚拟币交易平台榜单汇总

2025年币圈十大虚拟币app交易所最新排行榜 2025年币圈十大虚拟币app交易所最新排行榜 Mar 27, 2025 pm 07:27 PM

2025年币圈十大虚拟币app交易所最新排行榜

2025年好用的虚拟货币app排行榜 十大数字货币app榜单汇总 2025年好用的虚拟货币app排行榜 十大数字货币app榜单汇总 Mar 27, 2025 pm 07:30 PM

2025年好用的虚拟货币app排行榜 十大数字货币app榜单汇总

十大数字货币交易所排行榜 最新虚拟数字货币交易平台app 十大数字货币交易所排行榜 最新虚拟数字货币交易平台app Mar 25, 2025 pm 06:21 PM

十大数字货币交易所排行榜 最新虚拟数字货币交易平台app

虚拟币的平台交易所哪个好  十大数字货币交易软件推荐 虚拟币的平台交易所哪个好 十大数字货币交易软件推荐 Mar 25, 2025 pm 06:09 PM

虚拟币的平台交易所哪个好 十大数字货币交易软件推荐

gate.io手机app使用教程 gate.io手机app使用教程 Mar 26, 2025 pm 05:15 PM

gate.io手机app使用教程

币种交易软件app前十  2025十大虚拟币交易app排行榜 币种交易软件app前十 2025十大虚拟币交易app排行榜 Mar 25, 2025 pm 05:57 PM

币种交易软件app前十 2025十大虚拟币交易app排行榜

币圈交易app推荐 2025十大主流虚拟币交易平台 币圈交易app推荐 2025十大主流虚拟币交易平台 Mar 25, 2025 pm 06:24 PM

币圈交易app推荐 2025十大主流虚拟币交易平台

See all articles