社区
C语言
帖子详情
随机生成10个100位的大素数
Nemo_0
2013-11-25 05:09:23
近在写RSA算法 这道题真是怎么做也做不出 跪求源代码 C/C++等等都可以 谢谢大大们!
...全文
1089
11
打赏
收藏
随机生成10个100位的大素数
近在写RSA算法 这道题真是怎么做也做不出 跪求源代码 C/C++等等都可以 谢谢大大们!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
FancyMouse
2013-11-29
打赏
举报
回复
搬凳子看小丑
一起来玩玩呗
2013-11-28
打赏
举报
回复
用Solovay-Strassen素性测试法或Miller-Rabin素性测试法进行是否是素数的测试...
赵4老师
2013-11-27
打赏
举报
回复
引用 8 楼 zhao4zhong1 的回复:
2048二进制位吧。
2048二进制位对应610多位十进制位 100十进制位对应330多位二进制位
FancyMouse
2013-11-26
打赏
举报
回复
一个数n是质数的概率粗略是1/log(n)。所以直接随机任何一个数,然后检测是否是质数,不是则重新生成直到生成一个质数,这个期望检测O(log(n))个数就能找到一个。
lt114896
2013-11-26
打赏
举报
回复
可以定义大数结构,然后重载除法和减法,去判断
赵4老师
2013-11-26
打赏
举报
回复
2048二进制位吧。
独孤过儿
2013-11-26
打赏
举报
回复
引用 6 楼 zhao4zhong1 的回复:
检测100位的大整数是否素数是一道耗时的难题,否则RSA将失去意义。
又满嘴跑火车!RSA的工业标准是2048位以上的 100位的数字,即使用deterministic的算法,有一小时都足够了!
赵4老师
2013-11-26
打赏
举报
回复
检测100位的大整数是否素数是一道耗时的难题,否则RSA将失去意义。
独孤过儿
2013-11-25
打赏
举报
回复
用GMP Library吧~~ 先用 mpz_urandomb()函数生成一个指定位数的大数,然后滤掉偶数。再用Miller Rabin Algorithm来测试primality。 参考这个链接 http://gmplib.org/gmp-man-5.1.3.pdf 第 5.13 和 5.9.
worldy
2013-11-25
打赏
举报
回复
先别做100位的,先做出64位二进制位,再做使用大整数的
实验三:实现一个大
素数
生成算法
本文介绍了大
素数
生成及素性测试方法,包括费马素性检验与Miller-Rabin测试,并提供了一个Java实现示例。
Go生成随机大
素数
本文介绍如何使用Go语言实现生成指定长度范围内的随机大
素数
,并通过Miller-Rabin素性检验确保其为
素数
。核心代码包括
素数
生成函数GenerateBigPrimeP和素性检查函数MillerRabbin,展示了在实际编程中的应用。
java生成大
素数
_重复造轮子之RSA算法(一) 大
素数
生成
本文介绍了作者从头实现RSA算法的第一步——生成大
素数
。通过Java的BigInteger库的probablePrime方法作为起点,讨论了费马素性检测和Miller-Rabin检测,以及如何优化算法减少假
素数
出现的概率。最后,给出了自定义的生成大
素数
的代码实现。
C语言实现RSA算法与大
素数
生成完整项目实战
本文详细介绍了使用C语言实现RSA非对称加密算法的全过程,涵盖大
素数
生成、米勒-拉宾素性检验、模逆元计算、快速幂取模等核心技术。项目基于数论原理,结合扩展欧几里得算法与模幂运算,完成密钥生成与加解密流程,适用于信息安全教学与工程实践。
重复造轮子之RSA算法(一) 大
素数
生成
本文介绍了作者尝试从头实现RSA算法的第一步——大
素数
生成。通过讨论Java BigInteger的`probablePrime()`方法,提出了基于费马素性检测的策略,以及如何通过优化减少假
素数
的出现。文中还提到了Carmichael数的问题,并给出了Miller-Rabin检测作为改进。最后,分享了实现代码,虽然性能不及标准库,但展示了整个过程。
C语言
70,039
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章