oracle存储怎么加密 oracle 数据加密

Oracle 不可逆的存储过程加密方法或者产品

可以例用Oracle 自带的Wrap工具实现,此工具在$ORACLE_HOME/BIN目录下,具体如下

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站制作、成都网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的陈巴尔虎网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

1、设置字符集环境变量

set NLS_LANG=CHINESE_CHINA.ZHS16GBK

2、创建一个存储过程文件

在E:\下创建test.sql文件,内容如下:

create or replace procedure test1(i in number) as

begin

dbms_output.put_line(' 输入参数是'||to_char(i));

end;

3、加密

c:\ cd %ORACLE_HOME%\BIN

c:\wrap iname=e:\test1.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 test1.sql to test1.plb

4、运行test1.plb

sqlplus /nolog

SQLconn TEST/TEST@db01

SQL @e:\a.plb

过程已创建。

5、运行存储过程

SQL set serveroutput on

SQL execute test1(1);

输入参数是1

PL/SQL 过程已成功完成。

6、查看存储过程的代码

SQL select name,text from all_source where type='PROCEDURE' and name='TEST1';

结果:看不到其原码

关于oracle数据库加密的函数

Oracle 提供两种加密方式:

a)加密 API 例如包 和 dbms_crypto 使用这些包,可以构建我们自己的基础架构,对数据进行加密。 这种方法的灵活性最强,但是构建和管理却相当复杂。

b)透明的数据加密是 Oracle 数据库 ;使用该特性后,就不必手动进行密码管理了。

数据库管理密码,但是正如名称所指,加密是透明的——数据仅仅以加密的方式存储而已。在Oracle10g中出现了dbms_crypto替代了之前的dbms_obfuscation_toolkit,DBMS_CRYPTO增加了若干新的加密算法、哈希算法。

DBMS_CRYPTO还撤销了对于public组的执行权限。

如何在Oracle SecureFiles中加密数据

用于加密非LOB字段的透明数据加密语法与在Oracle SecureFiles中启用加密的语法完全相同。它们有一个重要的区别,非LOB字段可以使用NO SALT参数阻止TDE在加密数据之前先给数据添加一个随机字符串。Oracle SecureFile LOB字段不支持NO SALT选项。我们可以使用数据字典视图USER_ENCRYPTED_COLUMNS确定应该加密哪一些字段,以及这些字段的状态。下面是一些ENCRYPT子句的例子:

CREATE TABLE tab_3DES (col1 CLOB ENCRYPT USING '3DES168')

LOB(col1) STORE AS SECUREFILE(

CACHE

NOLOGGING

);

使用默认加密算法(AES192)和一个密码创建一个Oracle SecureFile LOB字段:

CREATE TABLE tab_enc_pw (col1 CLOB ENCRYPT IDENTIFIED BY badpassword)

LOB(col1) STORE AS SECUREFILE(

CACHE

);

使用AES256启用LOB加密:

ALTER TABLE tab_nocrypt MODIFY

( col1 CLOB ENCRYPT USING 'AES256');

通过重新生成加密密钥修改一个Oracle SecureFiles字段:

ALTER TABLE tab_3DES REKEY USING 'AES256';

Disable LOB encryption:

禁用LOB加密:

ALTER TABLE tab_enc_pw MODIFY

( col1 CLOB DECRYPT);

Oracle数据库中存储的大对象数据容量会继续增长,但是存储费用在不断下降。其中有许多的敏感数据,如医疗记录、员工数据和知识产权。能够对这些信息进行加密,这是非常宝贵的,也可以避免在将来投入大量金钱和精力去实现安全性。


当前文章:oracle存储怎么加密 oracle 数据加密
标题路径:http://pwwzsj.com/article/hjceoo.html