目前,数据加密常用的算法为对称算法,以DES、IDEA为代表,加密、解密采用相同的密钥,其优点是加密、解密速度快,缺点是密钥分发困难。实际应用中往往采用非对称算法协助分发对称算法密钥的策略,其中以RSA加密算法最为常用。RSA加密算法是PKI的基础核心,由于PKI的市场优势.选择RSA算法,系统部署会相对容易。
通过以上对加密算法的简单介绍,利用DES和RSA加密算法可以很好地解决大多数数据库系统的加密要求。
DES加密算法及其实现
DES使用相同的算法对数据进行加密和解密,所用的加密密钥和解密密铡也足相同的。而且DES加密算法适合于大量数据的加密,所以数据库数数据加密一般选择DES加密算法。
该算法的输入是64 hit的明文,在56 bit的密钏控制下,通过初始换位fP变成TO= IP (T).再对TO经过16层的加密变换,最后通过逆初始变换得到64 bit的密文。密文的每一位都是明文的每一位和密钥的每一位联合确定的。DES的加密过程可以分为加密处理、加密变换以及子密钥的生成和解密等部分。
RSA加密算法及其实现
RSA加密算法既能用于数据加密,也能用于数字签名.RSA的理论依据为寻找两个大素数比较简单,而将它们的乘积分解开则非常困难。
在RSA加密算法中,包含两个密钥:加密密钥(e,n)和解密密钥 (d,n),在加密的时候,先把明文转换成(0,n一1)范围内的整数M。当明文较长时,先分隔成适当的组,然后再进行变换。
RSA加密算法的优点是密钥空间大;缺点是加密速度慢。如果RSA和DES结合使用,则正好弥补RSA的缺点。即DES用于明文加密;RSA用于密钥的加密。由于DES加密速度快,适合加密大量的数据,主要应用在计算机网络通信、电子资金传送系统、用户识别和用户文件的保护;而RSA可解决DES密钥的分配和管理问题。
小知识之数据库加密:
对数据库中数据加密是为增强普通关系数据库管理系统的安全性,提供一个安全适用的数据库加密平台,对数据库存储的内容实施有效保护。它通过数据库存储加密等安全方法实现了数据库数据存储保密和完整性要求,使得数据库以密文方式存储并在密态方式下工作,确保了数据安全。