#存储加密

# 表空间透明加密

数据库的数据最终都是以存储介质为载体,除了对其物理上的安全保障(防止攻击、防止盗取)外,将数据进行加密存储是极其有效和牢固的安全保障方式。

YashanDB支持采用表空间级的TDE(透明加密)技术,由用户自由抉择表空间的加密属性,对加密表空间的数据在写入存储介质时自动加密(包括写入数据文件和写入日志文件),从存储读入数据库内时解密,对应用程序完全透明,用户对此过程不感知,不影响数据库的任何功能使用。

YashanDB采用符合国际标准的加密算法进行表空间数据加密,支持AES128和SM4加密算法,在保证密文的破解难度外,同时兼顾了加解密对数据库的低性能损耗,可适用于大数据量的表空间加密。

对某个表空间是否启用加密,需要在创建时就指定且不可更改。

对于分区表,YashanDB支持各分区可以任意存储在加密或非加密的表空间,即可对表进行部分数据加密。

另外,在加密表空间里创建的表对象,其索引也必须位于一个加密表空间。

创建加密表空间的具体操作请查阅CREATE TABLESPACE的encryption_clause语句。

# 表加密

YashanDB支持表级透明数据加密,旨在用最小的成本加密敏感数据。使用表加密后的相关数据在内存中以明文形式存在,在存储介质上将持久化为密文形式,有效提高数据安全性。

表加密在写入对应表的存储介质时自动加密,从存储读取至数据库buffer内时解密,对应用程序是透明的,数据库层的访问控制、SQL查询等都不会改变。表加密支持AES128算法和SM4算法,默认采用AES128算法。

如果同时使用表加密和表空间加密,目标将采用表加密算法。

创建加密表的具体操作请查阅CREATE TABLE的table_encryption_clause语句。

pdf-btn 下载文档
copy-btn 复制链接