真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

oracle如何加密 oracle加密函數(shù)怎么使用

如何對(duì)Oracle中的PL/SQL源碼進(jìn)行加密

可以使用wrap 工具或者DBMS_DDL子程序?qū)L/SQL源碼進(jìn)行加密。wrap工具加密單個(gè)源文件,如SQL*Plus腳本。DBMS_DDL子程序加密單個(gè)動(dòng)態(tài)生成的PL/SQL單元,如一個(gè)CREATE PROCEDURE聲明。加密的源文件可以移動(dòng),備份,可被SQL*Plus和Improt和Export工具處理,但在靜態(tài)數(shù)據(jù)字典視圖*_SOURCE中無(wú)法看到源碼。 WRAP語(yǔ)法 wrap iname=input_file [oname=output_file ] 可省略文件擴(kuò)展名,如以下的命令是等同的: wrap iname=/mydir/myfile wrap iname=/mydir/myfile.sql 輸出文件默認(rèn)的擴(kuò)展名為.plb,當(dāng)然你也可以指定不同的文件名和擴(kuò)展名。 wrap iname=/mydir/myfile oname=/yourdir/yourfile.out wrap主要是混淆PL/SQL語(yǔ)句的主體部分,如下CREATE語(yǔ)句可以被加密: CREATE [OR REPLACE] FUNCTION function_name

創(chuàng)新互聯(lián)專注于寶安網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供寶安營(yíng)銷型網(wǎng)站建設(shè),寶安網(wǎng)站制作、寶安網(wǎng)頁(yè)設(shè)計(jì)、寶安網(wǎng)站官網(wǎng)定制、微信小程序定制開發(fā)服務(wù),打造寶安網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供寶安網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

CREATE [OR REPLACE] PROCEDURE procedure_name

CREATE [OR REPLACE] PACKAGE package_name

CREATE [OR REPLACE] PACKAGE BODY package_name

CREATE [OR REPLACE] TYPE type_name AS OBJECT

CREATE [OR REPLACE] TYPE type_name UNDER type_name

CREATE [OR REPLACE] TYPE BODY type_name CREATE [OR REPLACE] TRIGGER語(yǔ)句不能被加密,但你可調(diào)用加密的過(guò)程。加密文件中除了語(yǔ)句頭部和C風(fēng)格(/*…*/)注釋外,其它所有注釋被刪除。

Oracle如何加密視圖源碼?

最簡(jiǎn)單的,把sys收了,異用戶查詢授權(quán)。

要是涉及到代碼移交,那就用函數(shù)實(shí)現(xiàn)view,然后用DBMS_DDL.WRAP加密

Oracle--使用Wrap工具加密你的SQL

Oracle提供Wrap工具 可以用于加密你的Package等

不過(guò)需要注意的是 加密后的代碼無(wú)法解密 你需要保管好你的源代碼

以下是個(gè)例子

源代碼

create or replace function get_rowid

(l_rowid in varchar )

return varchar

is

ls_my_rowid???? varchar ( )

rowid_type????? number;

object_number?? number;

relative_fno??? number;

block_number??? number;

row_number????? number;

begin

dbms_rowid rowid_info(l_rowid rowid_type object_number relative_fno block_number row_number)

ls_my_rowid := Object# is????? : ||to_char(object_number)||chr( )||

Relative_fno is : ||to_char(relative_fno)||chr( )||

Block number is : ||to_char(block_number)||chr( )||

Row number is?? : ||to_char(row_number)

return ls_my_rowid ;

end;

/

代碼功能測(cè)試

[oracle@jumper tools]$ sqlplus scott/tiger

SQL*Plus: Release Production on Mon Nov : :

Copyright (c) Oracle Corporation ? All rights reserved

Connected to:

Oracle i Enterprise Edition Release Production

With the Partitioning option

JServer Release Production

SQL @f_get_rowid

Function created

SQL select rowid from dept where deptno= ;

ROWID

AAABiPAABAAAFRSAAA

SQL select get_rowid( AAABiPAABAAAFRSAAA ) from dual;

GET_ROWID( AAABIPAABAAAFRSAAA )

Object# is????? :

Relative_fno is :

Block number is :

Row number is?? :

SQL !

[oracle@jumper tools]$ ls

ct sql? ddlt sql? f_get_rowid sql? getevent sql

使用wrap加密及加密后的代碼

[oracle@jumper tools]$ wrap iname=f_get_rowid sql oname=f_get_rowid plb

PL/SQL Wrapper: Release Production on Mon Nov : :

Copyright (c) Oracle Corporation ? All Rights Reserved

Processing f_get_rowid sql to f_get_rowid plb

[oracle@jumper tools]$ cat f_get_rowid plb

create or replace function get_rowid wrapped

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

:e:

FUNCTION:

GET_ROWID:

L_ROWID:

VARCHAR :

RETURN:

LS_MY_ROWID:

:

ROWID_TYPE:

NUMBER:

OBJECT_NUMBER:

RELATIVE_FNO:

BLOCK_NUMBER:

ROW_NUMBER:

DBMS_ROWID:

ROWID_INFO:

Object# is????? :::

||:

TO_CHAR:

CHR:

:

Relative_fno is :::

Block number is :::

Row number is?? :::

a d f a b d b

: a c a a a a c

b a a c b a

a c b a a c

b a a c b a a

c b : a b : a a

a e e : a a b b e

e a a b b e e

e b e e : a a b b

e e a a b b e

e e b e e : a a b

b e e a a b b

e e e b e e : a a

b b e d : a b a

b f d b

f e b b

c b

c

d c a c

a c b b bc dd

cc d d c e e eb

ef f f fb ff

d d e

d

c a e

b e

e c f

a b a

b d e a a ab ac b

b b bc bd bf c c c

cd d d d db dd e ed

ef f f

a d : :

: e : e : : d :

: : : f : : f : : d

: d b

: e : : c

e : e : :

: : d f : f

: : :

: d f : f :

: : : :

:

: : :

: : : :

: : : a :b c

: d e : d : e

: d : e : d e

f : d : f : d

: f : d f

: d : : d :

: b :

fb

: :

:a e :

:

: :

: :

:

e a

: b

:

: d f

:

c :

f d

: :

c

:

: : c

a c

a : c

:

e : f

c b

: :

:

c c :

e : :

: b

c d

: f : c

d :

: a :

b : c :

d : e

: a

: :

: : a

: c a c

e e :

: :

:

: :

:

: :

: b :

c e b b

: :

: :

e

:

: :

b :

: : c

: e

d :

: :

: b

d

: :

: b d

: :

: d :

f

:

a :

: :

a d :

d c d c

a b : e

: a d

: e

:

:

e

c

d

f

b

d

f

d a f

a

f c

a

c

e

b

a

c

d

/

測(cè)試加密后的代碼

[oracle@jumper tools]$ exit

exit

SQL drop function get_rowid;

Function dropped

SQL @f_get_rowid plb

Function created

SQL select get_rowid( AAABiPAABAAAFRSAAA ) from dual;

GET_ROWID( AAABIPAABAAAFRSAAA )

Object# is????? :

Relative_fno is :

Block number is :

Row number is?? :

lishixinzhi/Article/program/Oracle/201311/18606


網(wǎng)頁(yè)名稱:oracle如何加密 oracle加密函數(shù)怎么使用
網(wǎng)站URL:http://weahome.cn/article/hpsedj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部