oracle解密加密的数据,利用Oracle的dbms_obfuscation_toolkit加密解密数据

利用Oracle的dbms_obfuscation_toolkit加密解密数据

作者:叶枫

版权声明:本文可以自由转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明

作者:叶枫(http://blog.matrix.org.cn/page/叶枫)

原文:[][/url]

关键字:Oracle 加密 解密

为了保护敏感数据,oracle从8i开始提供一个数据加密包:dbms_obfuscation_toolkit.利用这个包,我们可以对数据进行DES,Triple DES或者MD5加密. 本文就此讲解如何使用以及使用过程需要注意的问题.

1. dbms_obfuscation_toolkit简介

dbms_obfuscation_toolkit主要有一下几个存储过程:-

DESGETKEY   -- 产生密钥,用于DES算法

DES3GETKEY  -- 产生密钥,用于Triple DES算法

DESENCRYPT  -- 用DES算法加密数据

DESDECRYPT  -- 用DES算法解密数据

DES3ENCRYPT -- 用Triple DES算法加密数据

DES3DECRYPT -- 用DES算法解密数据

MD5         -- 用MD5算法加密数据

2. 准备数据表

在开始前,我们先创建表users:

drop table users;

create table users(

userid varchar2(50) primary key,

password varchar2(64),  --密码原文

encrypted varchar2(64)  --加密后的密码

);

insert into users values ('user1','user1234',null);

insert into users values ('user2','abcd1234',null);

insert into users values ('user3','oracle12',null);

commit;

3. 创建包PG_ENCRYPT_DECRYPT

create  or replace package PG_ENCRYPT_DECRYPT is

iKey varchar2(8):='oracle9i';

function GEN_RAW_KEY  ( iKey in varchar2) return raw;

function DECRYPT_3KEY_MODE(iValue in raw,iMode in pls_inte

你可能感兴趣的:(oracle解密加密的数据)