zoukankan      html  css  js  c++  java
  • oracle Wrap加密

    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';

  • 相关阅读:
    设置函数环境——setfenv(转)
    全局变量声明的规范化(转)
    利用__index和__newindex实现默认值表、监控表、只读表(转)
    php中的$_GET怎样获取带有井号“#”的參数
    Servlet配置load-on-startup
    LinQ—扩展方法
    CRT
    [C++] 获取IE代理server的账号password
    一步一步写算法(之hash表)
    android之PackageManager简单介绍
  • 原文地址:https://www.cnblogs.com/fanweisheng/p/11113552.html
Copyright © 2011-2022 走看看