相关疑难解决方法(0)

用于C语言加密的快速伪随机数发生器

我使用以下代码生成用于加密目的的伪随机数序列,但后来我在某处读到它可能不是很安全.有人可以给我一个更好的生成器的C实现 - 主要目标是这个方法快速.例如,我做了一些研究并遇到了Blum Blum Shub方法,它会通过执行pow(N)计算完全扼杀性能.

PS.请不要引用没有C/C++代码的维基百科文章.我正在寻找我在下面展示的C或C++代码示例.

#define ROL(v, shift) ((((v) >> ((sizeof(v) * 8) - (shift))) | ((v) << (shift))))

ULONGLONG uiPSN = doSeed();   //64-bit unsigned integer

for(int i = 0; i < sizeOfArray; i++)
{
    uiPSN = uiPSN * 214013L + 2531011L;
    uiPSN = ROL(uiPSN, 16);

    //Apply 'uiPSN'
}
Run Code Online (Sandbox Code Playgroud)

c c++ random cryptography

10
推荐指数
2
解决办法
1万
查看次数

标签 统计

c ×1

c++ ×1

cryptography ×1

random ×1