应用于数据库及数据库加解密方面的RSA算法(一)

2018 年 11 月 15 日 0 条评论 1.58k 次阅读 0 人点赞

加密应用

1.RSA算法

RSA算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。RS算法的加解密过程完全类同于公开密钥密码体制,所不同的且极具特点的是使用了指数表达式。

RSA是一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,是一种特殊的可逆模指数运算。据各自不同的需求,人们基于RSA算法开发了大量的加密方案与产品。像 Internet所采用的电子邮件安全协议PGP( Pretty Good Privacy)将RSA作为传送会话密钥和数字签名的标准算法。

RSA算法的体制构造是基于数论的欧拉定理,它是密钥系统最安全的一种体制,其算法的安全性基于数论中大素数分解的困难性。此算法利用了数论领域的一个事实,那就是虽然将两个大质数相乘生成一个合数非常容易,但要把一个合数分解成两个质数却十分困难。但近年来研究表明,位数较低的大数(512bit二进制数)已被成功分解,这就告诉人们,在使用Rs算法加密时,密钥蓄足够长,就是模数n 必须选大一些。

2.RSA算法在数据库加解密方面的应用

数据库加密系统分成两个功能独立的主要部件:加解密字典管理程序和数据库加解密引擎。数据库加密系统将用户对数据库信息具体的加密要求记载在加密字典中。加密字典是数据库加密系统的基础信息,加密字典管理程序是管理加密字典的实用程序,是数据库管理员变更加密要求的工具,它通过数据库加解密引擎实现对数据库表的加密解密及数据转换等功能。数据库加解密引擎是数据库加密系统的核心部件,负责在后台完成数据库信息的加解密处理,对应用开发人员和操作人员是透明的。