如何在C++中创建一个随机的160位素数
How to create a random 160 bit prime number in C++?
我在学校做一个项目,需要创建一个160位的值。我有一段时间没有编程了,所以我不知道该如何实现。如有任何帮助,我们将不胜感激。
您需要一个大整数库(假设您不能只使用现成的加密库)。
首先创建一个随机的160位值,不一定是素数。根据平台的不同,您可以使用/dev/random
、CryptGenRandom
或其他一些复制源(可能是多个,组合使用)。
然后在循环中增加值,例如对每个候选者应用Miller-Rabin(伪)素性测试,直到找到素数。
相关文章:
- 使用std::mt19937从字符串中返回一个随机单词
- 如何生成一个随机的 n 位数,其中 n 是任意的
- 当我尝试使用它时,Scanf 会抛出一个随机异常(scanf_s 也是如此)
- C++14 : 2 个随机生成器 - 一个有效,另一个无效
- 我将如何在 cpp 中生成一个随机且独特的标题
- 从C++数组中选择一个随机元素
- 随机自动点击器C++使用一个键进行开/关
- 如何将矩阵的行随机复制到内存中的另一个矩阵的过程并行化?
- 如何更改此notify_one以便它选择一个随机线程
- 为什么我的函数名称中会随机出现一个额外的字母
- 如何编写一个递归函数,以随机的方式混淆从0到6的数字
- C++ 在运行时选择一个随机对象
- 如何将 50 行和 50 列的二维数组编码为一个为元素随机分配星号的函数?
- C++ 制作一个随机数字/字母生成器,代码中有问题
- 将一个随机的字符序列和int序列解析为单独的向量
- 如何在C 程序中随机做一个
- C 从向量的子集返回一个随机值
- 如何创建一个随机访问式的Rreference以访问.RC文件中定义的资源
- 随机生成一个没有重复元素的枚举数组 (C++)
- 堆缓冲区溢出随机发生。对于一个简单的代码?(我是C++新手)