数据库透明加密

数据库透明加密是指对库内数据的加密和解密,对数据库的访问程序是完全无感知的。特别是应用系统,不需要做任何修改和编译,就能够直接应用到加密库上。

与透明加密相对应的,是在应用系统中对数据进行加密,然后再存储到数据库中。需要真实数据的时候,从数据库中读取密文,再解密出明文。严格的说,这种方式并不是数据库加密,而是数据加密。

数据库透明加密就是把数据信息即明文转换为不可辨识的形式即密文的过程,目的是使不应了解该数据信息的人不能够知道和识别。将密文转变为明文的过程就是解密。加密和解密过程形成加密系统,明文与密文统称为报文。

1、加密系统组成

任何加密系统通常都包括如下4个部分:

(1) 需要加密的报文,称为明文P。

(2) 加密以后形成的报文,称为密文Y。

(3) 加密(解密)算法E(D)。

(4) 用于加密和解密的钥匙,称为密钥K。

2、加密过程

加密过程可描述为:在发送端利用加密算法E和加密密钥Ke对明文P进行加密,得到密文Y=EKe(P)。密文Y被传送到接收端后应进行解密。解密过程可描述为:接收端利用解密算法D和解密密钥Kd对密文Y进行解密,将密文恢复为明文P=DKd(Y)。在密码学中,把设计密码的技术称为密码编码,把破译密码的技术称为密码分析。密码编码和密码分析合起来称为密码学。在加密系统中,算法是相对稳定的。为了加密数据的安全性,应经常改变密钥。