Oracle 11g透明数据加密安全特性解析

升级大对象(Large Object,即LOB)存储能力的关键原因是在Oracle 11g中数据安全需求越来越高,本文主要是研究如何扩充对LOB和表空间的透明数据加密(Transparent Data Encryption,即TDE)特性来提高数据的安全性,并解释这些特性是如何保护复杂的、非结构化数据的,如医学数字图像通讯信息(Digital Imaging for Communication of Medical Information,即DICOM)对象。

Oracle 11g新的SecureFile特性主要是集中在数据压缩和重复数据删除方面,主要是为了节约存储LOB对象的空间,当然在安全特性方面Oracle 11g不仅只有这两个,所有这些安全特性也非常符合最近当选的美国总统奥巴马颁布的议事日程,白宫的技术方向明确指明新的管理计划:

在电子信息技术系统方面增加投入以降低医疗保健方面的成本,使用卫生信息技术降低医疗保健方面的成本,每年投入100亿美元,到五年后让美国的医疗保健系统扩展为基于标准的电子医疗信息系统,包括电子健康记录。

加密LOB:把安全放进SecureFile

Oracle 11g现在把在SecureFile LOB中存储敏感信息放在非常重要的战略位置,因为这样才能够证明在Oracle 10gR2中推出的透明数据加密(TDE)的作用,TDE在列级提供了遵循工业标准的自动加密算法(如3DES168,AES128,AES192和AES256)。

1、开启透明数据加密

在开始使用透明数据加密特性之前,需要在数据库中进行一翻设置,幸运的是,在Oracle 11g数据库中这个设置非常简单了,因为现在只需要在数据库的网络配置文件中添加合适的配置目录即可,在之前的Oracle版本中,最简单的方法就是通过Oracle Wallet Manager utility设置这个“wallet”文件,欲了解前期版本是如何启用透明数据加密特性的,请参考我之前的文章“如何在Oracle 10g R2中实现透明数据加密”。

清单1中的内容显示了我在SQLNET.ORA网络配置文件中添加的内容,以便在我指定的目录中创建默认的TDE PKI密钥文件ewallet.p12,然后我使用ALTER SYSTEM SET ENCRYPTION KEY命令打开这个“wallet”并开启加密特性。

清单1 开启透明数据加密

在SQLNET.ORA网络配置文件中添加参数设置开启Oracle 11g数据库的透明数据加密功能

ENCRYPTION_WALLET_LOCATION =

(SOURCE=
(METHOD=FILE)
(METHOD_DATA=
(DIRECTORY=/u01/app/oracle/admin/orcl/wallet))

然后,打开wallet并设置加密密钥密码激活Oracle 11g的加密功能

SQL> ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY "r3aL1y!T16ht";

SQL> ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY "r3aL1y!T16ht";

2、控制SecureFile加密

完成TDE设置后,在开启SecureFile LOB加密相对就简单了,和在Oracle表中开启其它类型的加密很类似,ENCRYPT告诉Oracle在现有SecureFile LOB上应用TDE加密,也可以通过DECRYPT告诉Oracle从SecureFile LOB上移除加密特性。

3、改变SecureFile加密算法或加密密钥

和其它Oracle数据类型一样,ALTER TABLE REKEY命令可以用来修改当前的加密算法,如默认的加密算法AES192改为AES256,TDE PKI密钥发生变化的话,REKEY命令也可以用于重新加密现有的SecureFile LOB。Oracle将会在块级进行加密,确保重新加密执行得更有效。

但请注意在相同的分区下对应的SecureFile LOB段只能够被修改为启用或禁用加密,如LOB段不能被REKEY,这是因为Oracle 11g在相同的LOB分区内对所有SecureFile LOB使用了相同的加密算法。

时间: 2024-10-29 06:29:19

Oracle 11g透明数据加密安全特性解析的相关文章

oracle 10g 11g 透明数据加密(Transparent Data Encryption)

Oracle TDE的全称是Transparent Data Encryption 透明数据加密,从10gr2开始支持基于列的加密,从11g开始支持基于表空间的加密.它的优点是对应用透明,管理简便,无需应用设置,但它也有如下限制: – 只能使用B-Tree索引 – 加密的列无法对索引进行rang scan操作. – 外部对象 – 可传输表空间 – exp/imp操作 TDE - 基于列的加密 由于有了Oracle的TDE-基于列的加密,你所要做的只是定义需要加密的列,Oracle将为包含加密列的

《Oracle达人修炼秘籍:Oracle 11g数据库管理与开发指南 》一2.4 Oracle 11g数据库的新特性

2.4 Oracle 11g数据库的新特性 2007年7月12日,Oracle公司在美国纽约宣布推出Oracle 11g数据库,这是迄今为止Oracle公司推出的所有产品中最具创新性和质量最高的软件.Oracle 11g数据库增强了Oracle数据库独特的数据库集群.数据中心自动化和工作量管理功能,可以在安全的.高度可用的.可扩展的.由低成本服务器和存储设备组成的网格上,满足最苛刻的交易处理.数据仓库和内容管理应用. 1.自助式管理和自动化能力 Oracle 11g的各项管理功能可用来帮助企业轻

oracle tde透明数据加密用法详解

oracle的透明数据加密,是Oracle高级安全选项中的一个部分,需要额外支付软件费用. 这一选项,可以结合多种手段进行加密,包括使用Wallet(PKCS#12标准)以及支持PKCS#11 RAS硬件设备. 在10g中,透明加密支持基于列级的加密,而在Oracle 11gR2中,增加了基于表空间的透明加密. 以下是官方文档中关于加密解密的流程图:psKwaVEgF3V+0RxWZbO3Y/mP2is2i2G/prqMWlBg7R5i70E6HIucZXtxwJLdvWTWokL6Z3F+0R

Oracle数据库透明数据加密技术(TDE)

关于数据加密的原理,可以参考<[数据安全]谈谈密码学的数学原理> http://blog.csdn.net/u010415792/article/details/9007931.如何加密的技术都源自这里,在了解 具体即时之前,一定要先了解公钥密钥的原理,知其然,也要知其所以然. Oracle TDE的全称是Transparent Data Encryption 透明数据加密,从10gr2开始支持基于列的加密 ,从11g开始支持基于表空间的加密.它的优点是对应用透明,管理简便,无需应用设置,但它

Oracle 11g r2分析函数新特性简介(三)分析函数LAG和LEAD的增强

在11gr2中,Oracle分析函数的功能进一步增强. 这篇介绍分析函数LAG和LEAD的增强. 11gr2对LAG和LEAD函数进行了增强,添加了IGNORE NULLS的功能. SQL> select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database11gEnterprise Edition Rele

Oracle 11g r2分析函数新特性简介(二)分析函数LISTAGG

在11gr2中,Oracle分析函数的功能进一步增强. 这篇介绍新增的分析函数LISTAGG. 11gr2还新增了一个分析函数LISTAGG,这个函数的功能实现字符串的连接 在11gr2中,Oracle终于实现了这个分析函数: SQL> select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database11g

Oracle 11g r2分析函数新特性简介(一)分析函数NTH_VALUE

在11gr2中,Oracle分析函数的功能进一步增强. 这篇介绍新增的分析函数NTH_VALUE. 以前版本的分析函数,提供了FIRST_VALUE和LAST_VALUE的功能,而11gr2中,Oracle增加了一个NTH_VALUE的功能,这个功能包含了FIRST_VALUE和LAST_VALUE的功能,还可以取任意的正数或倒数的没个记录. 简单看一个这个分析函数的用法: SQL> select * from v$version; BANNER ------------------------

初了解Oracle 11g的Automatic Diagnostic Repository新特性

Oracle 11g之前,当数据库出现问题时,往往第一时间需要看alert日志,看看里面记录了哪些错误,可以给我们提示.alert文件名则 是alert_<ORACLE_SID>.log,文件存储路径由参数background_dump_dest决定,例如: SQL> show parameter background_dump_dest NAME                                            TYPE         VALUE --------

在SQL Server 2008中执行透明数据加密

问题 安全是任何公司的一个主要考量.数据库备份容易被偷并被恢复到另一个SQL Server实例上.当我们浏览SQL Server 2008的新特性时,我们对一个叫做透明数据加密的特性很感兴趣,我们可以用它来加密我们的数据库备份.你能为我们详细介绍下应该怎样使用这个新功能吗? 专家解答 透明数据加密是SQL Server 2008的一个新特性,它执行数据库级别的加密,补充了目前在SQL Server 2005中使用的记录级别加密.它直接或通过恢复一个数据库备份到另一个SQL Server实例上来保