1.5 新方法
这群家伙这次从两个方面下手:第一,想出一种办法可以让他们有不同的赢法,如满堂红、顺子、清一色等,这样就不会因每次赢法都一样而引起注意;第二,想出更简便的办法可以进行程序运算,而不用每次跑出去打电话。
赌场提供的日本产的机器数量十分有限,这帮家伙开始瞄准一种由美国公司设计的,功能更齐全的机器。他们以同样的方法拆卸机器,发现这种机器的随机数生成程序相当复杂:这种机器不是用一个生成器,而是用两个生成器同时工作。“程序员非常清楚一个生成器很有可能被攻破”,Alex总结道。
但四个人再次发现了设计者所犯的错误。“他们显然读过文献,知道如果加上一个寄存器,就可以改进随机数的任意性,但他们还是错了。”因为这样的话,扑克牌就是这样被决定的:第一个生成器的数字加上第二个生成器的数字。
对第二个生成器进行调用的正确方式是使用迭代—— 当第一个生成器工作完后,挑选出了一张扑克牌,第二个生成器对此进行迭代,从而改变扑克牌的花式或点数。但设计者们并没有那么做,他们仅仅让第二个生成器在每局开始的时候迭代一次,产生一个数字,然后第一个生成器产生的每一个数字都依次加上这个数,这样屏幕上的扑克牌就产生了。
对Alex来说,两个寄存器的使用是一种挑战,“涉及到密码学的研究”,他知道那项技术有点像加密信息中使用的技术,他从前也学过一些这方面的知识,但还不足以使他攻克这个难题,所以他开始“造访”附近一所大学的图书馆。
如果设计者阅读加密系统方面的书籍时更仔细一点的话,他们就不会犯那样的错误。而且他们应更有效地检测系统,以防备我们的侵袭。
任何一个计算机专业的大学生,如果他明白一段程序欠缺什么了的话,他就能像我们一样写出代码。这当中最令人讨厌的部分是用尽可能快的方法找出算法,最好能够只花几秒钟了解机器的运行情况;反过来如果你对这一切不熟悉的话,可能会要几个小时。
我们真的是不错的程序员,至今我们仍以编程技术为生,我们的技术不断得到优化。我不认为这样很浅薄。
我记得Norton(在Symantec收购该公司之前)的一个程序员在做Diskreet产品时犯过这样的错误:所做的应用程序允许用户自己创建加密虚拟驱动器。开发人员错误地执行了这段程序—— 也有可能是故意的—— 密钥的存储空间由56字节缩减到30字节。联邦政府的数据加密标准用的是56位的密钥,这被认为是不可攻破的。Norton给客户的感觉是他们的数据都是以这个标准进行保护的。因为这个程序员的错误,用户的数据其实仅仅是以30位加密的,而不是56位。即使在今天,仍然可以用蛮力攻击30位的密钥。所有使用这种产品的客户都被一种错误的安全观误导了:黑客总是能用自己的密钥在某个时刻访问到用户的数据。这些家伙在这种机器的程序里发现了同样的错误。
同时,伙计们在编写程序,打算用它在新的目标机器上赚钱。他们一再劝说Alex发明一种不需要跑到公用电话机的方法。这个答案来自于Eudaemonic Pie上提供的办法:造出一个可穿戴的计算机。Alex设计了一种微型计算机,计算机的微处理器板是由Mike和Marco找到的目录纸板充当,并且与微处理器相匹配的有:一个适合放在鞋里的控制按钮和一个无声震颤器(就像今天手机中普遍用的那种)。他们将这个成果称作“口袋计算机”。
“在一个小芯片和很小的存储空间的基础上编写程序,我们得聪明一点”,Alex说道,“我们做了一个漂亮的硬件,它不但适合放在鞋里,而且非常符合‘人机工程’。”(我估计这里的“人机工程”指的是该硬件很小,放在鞋里,人走起来不会一瘸一拐!)
| 回书目 上一节 下一节 |
|
· Linux笔试面试题选摘测.. · 08年5月软考网管上午真.. · 性能测试从零开始 目录 · 08年5月软考网工上午真.. · 上周拒绝服务攻击(DDo.. · 08年5月各大网上书店及.. |
· 2008年5月24日软考试题.. · 软件设计师专家临考模.. · 上周网络管理员专家自.. · 网络工程师自测获奖名.. · 08年4月各大网上书店及.. · 系统分析师自测获奖名.. |
|
||||
| · ASP.NET开发教程 · 专题:ASP.NET 2.0基础.. · LAMP技术精解 · 服务器节能与绿色IT · ARP攻击防范与解决方案 · Linux 集群技术专题 · Windows集群服务应用 · CISSP认证成长之路 |
· SQL Server 2008/2005.. · SQL Server入门到精通 · 网络工程师职业规划与.. · 浏览器的战国时代 · 运营商封堵ADSL共享 中.. · 微软出价446亿美元收购.. · 技术人求职简历完备手册 · 开源虚拟化技术Xen |
|||
|
||||
| · SOA 面向服务架构 · SQL Server 2008/2005.. · Apache技术专题 · 三层交换技术专题 · SQL Server入门到精通 · Apache技术专题 · Windows集群服务应用 · 国际文档格式标准开战 |
· 路由器设置与口令恢复 · Linux 集群技术专题 · PHP开发应用手册 · SOA 面向服务架构 · 企业数据恢复指南 · 了解统一威胁管理(UTM).. · 专题:AIX操作系统管理.. · 访问控制列表(ACL)介绍 |
|||
|
||||
| · SQL Server入门到精通 · SQL Server 2008/2005.. · SOA 面向服务架构 · Apache技术专题 · 三层交换技术专题 · Apache技术专题 · 企业数据恢复指南 · Windows集群服务应用 |
· 路由器设置与口令恢复 · Linux 集群技术专题 · SOA 面向服务架构 · 了解统一威胁管理(UTM).. · 反垃圾邮件技术应用 · 访问控制列表(ACL)介绍 · ASP.NET开发教程 · PHP开发应用手册 |
|||