【发布时间】:2010-05-08 13:16:21
【问题描述】:
arc4random 和 random 有什么区别?
【问题讨论】:
标签: iphone objective-c
arc4random 和 random 有什么区别?
【问题讨论】:
标签: iphone objective-c
random 众所周知是可预测的,因此不能用于安全的伪随机数生成。 arc4random 是一个更新的、更难预测的伪随机数生成器。如果您没有将它用于任何安全的事情,random 将可以正常工作。
【讨论】:
random 也比arc4random 快得多,这就是为什么你会使用它的原因。
rand 相比并使用了许多迭代:indieappsalliance.org/forum/viewtopic.php?f=10&t=13
根据您的系统,random() 可能是也可能不是旧的、可靠且可预测的 UNIX random()。在现代 FreeBSD 系统和具有 /dev/random 设备的 Linux 2.6 系统上,默认的 random() 实现从 /dev/random 读取,直到用尽。这可能会产生比任何数字序列生成器更好的随机数,具体取决于您在 /dev/random 中搅拌的随机性来源。
强烈建议您查阅正在部署程序的系统的文档(手册页等)。
【讨论】: