博客
关于我
csdn_export_md
阅读量:194 次
发布时间:2019-02-28

本文共 639 字,大约阅读时间需要 2 分钟。

RSA算法初步总结

RSA简介

1977年,三位数学家Rivest、Shamir 和 Adleman 设计了一种算法,可以实现非对称加密。这种算法用他们三个人的名字命名,叫做RSA算法。从那时直到现在,RSA算法一直是最广为使用的"非对称加密算法"。毫不夸张地说,只要有计算机网络的地方,就有RSA算法。

这里我尽量简短的解释一下RSA的算法原理,以避免冗杂,不好理解:

算法原理
RSA 加密
1:找出质数:p ,q
这个相信,做过rsa题目的人都知道。

2:n = p * q

3:φ(n) = (p-1)* (q-1) #(欧拉函数)一个根据欧拉函数推出来的式子

4:公钥e 要求:1<e<φ(n) #加密需要用到e

e,φ(n) 互质,私钥d #e与φ(n)满足的条件
e*d 除以φ(n) 余数为1 #这个是一个乘法逆元的式子 :de = 1 mod φ(n)
5:加密:m^e 除以 n 求余数为 c # c = (m^e) mod n : m的公钥加密
6:解密: c^d 除以n求余数为m # m = (c^d) mod n : 解出密文m

安全性:

传播:n ,e ,c # 只传播出:n,e,c
解密:n ,d ,c # 解密所需
公钥:(n,e)
私钥:(n,d)
例如
如果想要从以知e得到d 需要 知道φ(n),否则不能得到d。
如果想知道φ(n),就得知道q,p的值。

这样初步解释RSA,希望有帮助。

新手写给新手看的,如有错误,或建议欢迎指出

转载地址:http://pvhn.baihongyu.com/

你可能感兴趣的文章
MySql中的concat()相关函数
查看>>
mysql中的concat函数,concat_ws函数,concat_group函数之间的区别
查看>>
MySQL中的count函数
查看>>
MySQL中的DB、DBMS、SQL
查看>>
MySQL中的DECIMAL类型:MYSQL_TYPE_DECIMAL与MYSQL_TYPE_NEWDECIMAL详解
查看>>
MySQL中的GROUP_CONCAT()函数详解与实战应用
查看>>
MySQL中的IO问题分析与优化
查看>>
MySQL中的ON DUPLICATE KEY UPDATE详解与应用
查看>>
mysql中的rbs,SharePoint RBS:即使启用了RBS,内容数据库也在不断增长
查看>>
mysql中的undo log、redo log 、binlog大致概要
查看>>
Mysql中的using
查看>>
MySQL中的关键字深入比较:UNION vs UNION ALL
查看>>
mysql中的四大运算符种类汇总20多项,用了三天三夜来整理的,还不赶快收藏
查看>>
mysql中的字段如何选择合适的数据类型呢?
查看>>
MySQL中的字符集陷阱:为何避免使用UTF-8
查看>>
mysql中的数据导入与导出
查看>>
MySQL中的时间函数
查看>>
mysql中的约束
查看>>
MySQL中的表是什么?
查看>>
mysql中穿件函数时候delimiter的用法
查看>>