寻找随机数

 

border=0在一定程度上,今天这个一切电脑化的世界还得依赖一个电脑自身无法产生的特性:随机性。

例如,在网上的隐私保护和金融安全,就得依靠一串串随机产生的数字,以给电子商务和其他敏感信息交流活动中传递的信息加上密码。

随机数字也是赌博网站和博彩的基础,不管它是不是去决定谁赢得航海的机会还是哪个雇员要接受毒品测试。它们对那些想模拟天气模型或股市行情之类复杂系统的科学家来说也是至关重要的。

但是,尽管电脑对随机数字的“胃口”很大,它们本身却不能产生随机数字,因为电脑所做的一切都是按照规则。而从定义上说,只要有规则,就没有随机性。

“问题是,如何让被设计好精确运行的东西做想不到的事情。”旧金山“系统专家公司”电脑安全咨询师兰东•科特•诺尔(Landon Curt Noll)说,“如果一台电脑作出一些令人想不到的事,通常我们都会送它去修理。”

 

对随机数字最大的需求来自密码业。电脑用以一套数学规则和一个密钥,将信用卡号之类的机密信息转化成难以破戒的冗长乱码。密钥是一长串数字,用于控制对信息的加码和解码。

无论加密的过程多么复杂,如果电脑黑客或诈骗老手获得了密钥,他们就能解读信息。同样,密钥中的任何模式都会让他们找到攻击点,“惟一能够保护信息交流的措施是选择一个难以猜测到的密钥。这就是随机密钥”日内瓦大学的物理学家格利高里•里波迪(Gregoire Ribordy)说。从该大学分立出去的公司ID Quantique就销售一种能产生随机数字的设备。

同样,一个网上赌场如果显露出任何可预测性,很快就会倒闭。研究者们也希望确保他们的模拟能真正反映他们所研究的任何过程,同时不被数学计算上的意外结果误导。“确实有一部分科学研究结果被它们的随机数字的低质量所破坏的。” 里波迪先生说。

目前,大多数电脑使用的通过数学程序产生的数字串看起来像随机数字,其实不是。1990年代中期,加利福尼亚的电脑专家曾通过破解生成这种“并不随机”的随机数字的程序,而攻破网景浏览器的保密安全。虽然现在这类生成程序很难被破解了,但它们还远远没到完美而无懈可击的地步。“随机性没有被恰当地利用。”诺尔先生说,“问题很严重,并且没有被很好地认识。”

 

在一串随机数字中,所有数字(无论是以二进制、十进制还是其他任何进制)的出现频率都应该相同,在一个序列中抽到一个数字的概率不受之前抽到的那个数字的影响:在某个位置抽到数字2并不会让你接下来抽到数字0的机会增加或减少。

但是把真正的随机性与纯粹一团乱码区分开来是很困难的。即使在随机性中也会出现似乎有迹可寻的现象:在随机数字的无穷序列中,每一种数字组合都可能出现——比如一千个4排成一排,圆周率的数字,1957年英国郡县板球赛比分等等。美国政府对这个问题十分重视,专门启动了一个项目,要求随机数字生成程序接受复杂的数学测试,以检验起随机性。

 

生成随机数字的一种好方法是从电脑之外事物的物理过程中抽取数据。科学家也已经拿出了各种独特的方案将这种数据融合进电脑中。1996年,诺尔先生和他的同事申请了一种密码生成器的专利,他们用一部摄像机对准一台“熔岩灯”(lava lamp),用电脑将灯架玻璃瓶内无规律生成的泡泡转化成数字。去年,这支团队又制造出另一种生成器,这种生成器基于一部盖上镜盖的网络摄像头。电脑将这个摄像头黑漆漆内部的电子噪音转化成数字。他们将这种转化程序放在他们的网站www.Lavarnd.com上,免费供任何人下载使用。

都柏林三一学院的计算机科学家麦兹•哈尔(Mads Haahr)也采用了类似的方法。他的网站www.random.org能将简易的便携式收音机调到空白波长时发出的白噪音转化成数字。哈尔先生和他的同事们在为一个网上赌场工作时想到了这个点子。这个赌博网站生意一直不怎么样,但哈尔先生现在每秒钟可以向他网站的访问者提供多达4000个随机数字。

在光顾哈尔的常客中,有采用随机方式设计锁的锁匠,有音乐家,纺织品设计师,还有用数字玩塔罗牌或算易经的技术神秘主义者。心理玄学师用随机数字生成器来验证人的思维是否能够预测或影响它们产生的结果。哈尔先生也满足赌场操盘手和进行随机药物测试的研究者之类更常规的需求。

“我对随机数字能派这么多用场而感到惊讶。”哈尔先生说,“所以我在满足需求上有点问题。”他有两台收音机同时运行,现在正计划增加到三台。

 

研究者也许会很乐意从互联网上下载随机数字。但是像赌场或网上商店这样需要绝对保密的生意则不愿意这样。

科技公司正在努力满足需求。芬兰电脑公司Areanus计划从8月份开始销售一种价格为150欧元的软件插件,它能以每秒10万比特的速度将电子噪音转化成随机数字。

 

“潜在客户正在测试生成密钥的原型单元。”该公司的软件工程师安德里斯•古斯塔夫森(Andreas Gustafsson)说,“一些有兴趣进行财务模拟的人士也来向我们咨询。”

诺尔先生说,最终,个人电脑和移动电话都将有这种内置式设备。事实上,这个趋势已经开始。最新几代英特尔奔腾芯片都有一个随机数字生成器,它根据自身二极管发出的噼啪声工作。

你能信赖的随机数字

电脑在产生随机性方面表现也许不出色,但大自然赐于了我们一个随机性的可靠资源:量子物理学。约翰•惠特菲尔德(John Whitfield)这样写道。

量子论已经显示,像电子、光子这样的粒子运动完全无迹可寻。比如,越是确切地了解一个粒子的运动速度,就越是无法把握它的位置。

所以,量子理论是产生随机数字的理想方式,一位加州电脑安全专家兰东•科特•诺尔(Landon Curt Noll)说,“这一基础物理学将防止你预测出即将发生的事情。”

 

获得这种效果的方法之一,就是通过放射性衰变。有一种被称为Hotbits的网上随机数字生成器,用指向发射性氪标本的一个盖格计数器发出的噼啪声,来转化随机数字。但是,放射性电脑部件有明显的缺点。

物理学家格利高里•里波迪和他在日内瓦Id Quantique公司的同事发觉,要把量子的不可预测性转化成随机数字,其实只要利用普通的光就可以了。

他们的设备逐个向一个半镜面发出光子。光子通过镜子和被反弹回去的可能性各占50%,但是人们无法预先知道任何一个光子将走那条途径。电脑把每一次结果转化为1或0。“据我所见,这看起来确实是一个很好的解决方案。”诺尔先生说。

Id Quantique在三月份开通了一个网站(www.randomnumbers.info)提供免费的随机数字,并开始卖一种安装在电脑内部的设备。一套基本的设备要花费1000欧元。它能在一秒钟内生成令人惊叹的400万比特随机数字。

“从某种意义上说,这是第一台量子电脑。”里波迪先生说。理论上,量子微粒同时处在各种物理状态的能力可以用来制造功能强大的电脑,让它一次性做许多事情。而今天的电脑一次只做一件事情。但是物理学家们目前还只能用量子微粒进行简单的计算。

译者/杜松 原作者: 约翰•惠特菲尔德

 

其他文章:

在VC中使用 Flash 美化你的程序

C语言面试题大汇总

linux下获得硬盘序列号的c源代码

一个图形界面的俄罗斯方快c源码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值