大数算法
文章平均质量分 80
lixuean0408
信息学照亮世界!!!
展开
-
C++RSA非对称加密
1、随机选择两个不相同的质数(素数)p和q2、计算公共模数n=p*q3、计算欧拉函数φ(n)=(p-1)(q-1)4、计算随机整数公钥e,e要满足的条件有e大于一、小于欧拉函数φ(n)并和欧拉函数φ(n)互质。5、计算模反元素密钥d,d要满足的条件是(d*e)%φ(n)=16、加密,密文数据c=明文数据m的e次幂再取余公共模数n,也就是c=(m^e)%n7、解密,明文数据m=密文数据c的d次幂再取余公共模数n,也就是m=(c^d)%n。原创 2024-01-19 11:44:52 · 573 阅读 · 1 评论 -
C++大整数类/高精度类/LargeNum(上万位数秒算)
项目名称:C++大整数类开发环境:devc++优化级别:自动C++标准:ISOC++11在我们实际的编程当中,C++自带的整数类型只占用固定的内存,所以变量的最大值和最小值也就是固定的,非常的不妙。即使是最大的unsigned long long,也只能存储2^64-1的数,对于某些算法(例如RSA非对称加密算法),它们需要极大的数据存储量。因此,我就制作了一个大整数类。原创 2024-01-18 12:15:17 · 2261 阅读 · 0 评论