接触过程序设计的人一定对随机数不陌生,随机数的用途很广,比如在测试、分布和统计程序、游戏中。大多数编程语言也提供了随机数库,可以方便的使用。
不过从严格意义上来讲,这些程序生成的随机数并不是真正的随机,它们大多根据一个种子和一个固定的公式计算出“随机”值,理论上来讲这样产生的随机数列最终还是会重复,所以一般称它们为伪随机数。
一般情况下,伪随机数已经够用,但是想通过程序获得严格并且严肃的统计结果,一个真正的随机数生成器还是必要的。又比如,如果你是在设计一个大规模的抽奖程序的话,使用伪随机数肯定会被人质疑。
Random.org 这个网站就提供了真正的随机数序列,他通过大气噪音 (Atmospheric Noise) 这种大自然的随机现象来产生。
你可以通过 Http、SOAP、CORBA 等方式在程序中请求特定的随机数列,网站上有详细的接口文档。