Objective-C的内置rand()函数的确切算法是什么?

时间:2011-01-18 12:45:49

标签: iphone objective-c c random

如果你有一个客户端/服务器应用程序并且想要复制rand()函数在客户端上生成的同一系列随机数,但是在服务器上,算法/伪代码是什么?客户端和服务器将被赋予相同的种子(客户端上的srand())。

谢谢!

请注意:

  • 这不知道吗?如果是,请说明
  • 可以进行逆向工程吗?如果是,请发布,除非任何许可协议会阻止您这样做。换句话说,不要做任何违法的事情
  • 我对客户端/服务器应用程序的设计建议不感兴趣
  • 我知道有更好的和更近期的方法来生成兰特数

2 个答案:

答案 0 :(得分:3)

来自Apple的Darwin源代码here is the Mac implementation of rand(),它应该与iOS上使用的相同。 Here也是random()实施。它们似乎都来自FreeBSD。

答案 1 :(得分:1)

我见过的大多数C编译器都使用linear congruential随机数生成器作为rand()函数。你不需要对它进行逆向工程:它是开源的。

BTW,如果这是某种加密/安全系统的基础。这是真的坏主意。

相关问题