笔趣阁 > 网游动漫 > 数学心 > 第六百八十五章 RSA算法(密码学)

第六百八十五章 RSA算法(密码学)

    时间来到了1976年,两位美国计算机学家威特菲尔德·迪菲(whitfield diffie)和马丁·赫尔曼(martin hellman),首次证明可以在不直接传递密钥的情况下,完成解密。这被称为“diffie-hellman密钥交换算法”。

    dh算法的出现有着划时代的意义:从这一刻起,启示人们加密和解密可以使用不同的规则,只要规则之间存在某种对应关系即可。

    这种新的模式也被称为“非对称加密算法”:

    (1)乙方生成两把密钥,公钥和私钥。公钥是公开的,任何人都可以获得,私钥则是保密的。

    (2)甲方获取乙方的公钥,用它对信息加密。

    (3)乙方得到加密后的信息,用私钥解密。

    公钥加密的信息只有私钥解得开,只要私钥不泄漏,通信就是安全的。

    就在dh算法发明后一年,1977年,罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)在麻省理工学院一起提出了RSA算法,RSA就是他们三人姓氏开头字母拼在一起组成的。

    新诞生的RSA算法特性比dh算法更为强大,因为dh算法仅用于密钥分配,而RSA算法可以进行信息加密,也可以用于数字签名。另外,RSA算法的密钥越长,破解的难度以指数倍增长。

    因为其强大的性能,可以毫不夸张地说,只要有计算机网络的地方,就有RSA算法。

    RSA算法是这样工作的?

    第一步,随机选择两个不相等的质数p和q。

    第二步,计算p和q的乘积n。n的长度就是密钥长度,一般以二进制表示,一般长度是2048位。位数越长,则越难破解。

    第三步,计算n的欧拉函数φ(n)。

    第四步,随机选择一个整数e,其中是1< e <φ(n),且e与φ(n)互质。

    第五步,计算e对于φ(n)的模反元素d。所谓“模反元素”就是指有一个整数d,可以使得ed被φ(n)除的余数为1。

    第六步,将n和e封装成公钥(n,e),n和d封装成私钥(n,d)。

新书推荐: 六州风云季 崩铁:是观影体,我们有救了! 勇敢者的女装潜行日记 玄学界显眼包 82年:学猎养狗训雕的赶山生活 觉醒成精灵从灵气复苏走向星际 武林情侠录 闪婚冷面兵王:老婆竟是玄学大佬 拒绝仇恨式修仙,感受正道之光 网游:从借钱买游戏头盔开始