由于后置代理加密过于依赖数据库自身所具备的扩展机制,且数据在数据库共享内存中也是密文,导致在部分场景下的数据库性能表现不佳。所以,在后置代理加密技术的基础上,又发展出了我们今天文章的主角——透明数据加密技术。

透明数据加密技术简介

透明数据加密技术英文名为Transparent Data Encryption,简称TDE。其出现的目的是在保持后置代理加密优势的同时,降低对数据库自身扩展机制的依赖性,从而让数据库系统性能保持在相对合理的水平之上。

透明数据加密

透明数据加密技术的原理

透明数据加密技术是一种对应用系统完全透明的数据库端存储加密技术,通常在数据库引擎中实现。简单来说就是,数据在数据库共享内存中是以明文形态存在的,而在数据文件中则以密文形态存在。同时,由于该技术的透明性,任何合法且有权限的数据库用户都可以访问和处理加密表中的数据。

透明数据加密技术适用场景

透明数据加密技术算得上是目前使用最多的数据库加密技术,几乎适用于全部有数据库加密需求的应用场景,尤其是在对数据加密透明化有要求,或需要对数据库超级用户进行数据访问权限控制,以及对数据加密后数据库性能有较高要求的场景中。

透明数据加密

透明数据加密技术的优点

  • 应用透明

透明数据加密是在数据库层面对敏感数据进行处理,应用系统对数据本身及处理过程完全无感。因此,透明数据加密技术在应用时也不会对现有的应用系统产生影响,应用系统也不用做任何改造。

  • 独立权控体系

使用插件形式的透明数据加密技术同样可以有效防止特权用户(如DBA)对敏感数据的无限制访问,进一步保证敏感数据不会被不正当地访问和泄露。

  • 更强的开放性

透明数据加密技术对数据库自身的依赖性小,可以在更多类型的数据库上使用透明数据加密技术。

  • 性能优势

透明数据加密加密技术不影响数据库性能,数据库自身在数据存储、管理和使用等方面的所有优势可以得到保留。

透明数据加密

透明数据加密技术的劣势

  • 密钥管理问题

由于透明数据加密功能完全依赖于厂商的设计,尤其是在密钥管理的开放性方面,通常不能集成使用第三方密钥系统,而且,这些数据库内置的透明数据加密无法屏蔽超级用户对加密数据的无限制访问。

  • 插件技术问题

插件形式的透明数据加密可以解决密钥系统开放性和权限问题。但由于插件技术原因,对于数据库有较强类型的依赖,仅能对几种类型的数据库实现透明数据加密插件,在适用性上有一定的限制。

免责声明:素材源于网络,如有侵权,请联系删稿。