HackerTube English?
如何判断系统真的做对了? →

机器说「检查通过」,谁能独立核对?

从一张选票追到一块主板。一路只问三个问题:检查的是哪件东西,谁送来这个答案,以及作决定的人能否看到同一份证据。

本文的问题 · 15
  1. 一份正确的程序,一台正在使用的机器
  2. 取下闪存,为什么检查看不出改动?
  3. 重装系统,从第几步开始?
  4. 同一笔付款,两份不同的成功记录
  5. 一个签名能替谁同意?
  6. 报对号码,证明了哪一项?
  7. 温控器应该看烤箱,还是看面包?
  8. 一张漂亮照片、一份匹配报告,谁还能重做核对?
  9. 看见了启动标志,究竟查过了什么?
  10. 要独立检查计算机,探针能接到哪里?
  11. 信任贡献者,能替代检查变更吗?
  12. 用来判断对错的工具,也可能继承同一个错误
  13. 把核对交给另一台机器,谁来选它?
  14. 换了中间人,谁能看到数据,谁能核对记录?
  15. 能核对总票数,需要同时核对某个人的票吗?

一份正确的程序,一台正在使用的机器

假设两方都审过源代码,选举日机器旁也贴了正确的校验值。Tom Scott 让问题具体了一步:如果由机器自己读出正在运行的程序、计算散列、再把结果显示给选民,谁能分辨它真的读了一遍,还是直接显示了贴纸上的字符串?Andrew Huang把同一个问题推进到制造环节。设计文件和交到买家手里的芯片是两个对象。审过前者很有价值,但要把这个结论用于后者,买家还缺一次可行的实物检验。

原文与时间戳 · 3
what's actually loaded on that voting machine
Why Electronic Voting is a BAD Idea - Computerphile · ▶ 2:16–2:22
you have to trust the software that's checking that hash.
Why Electronic Voting is a BAD Idea - Computerphile · ▶ 2:28–2:32
you can't hash hardware.
36C3 - Open Source is Insufficient to Solve Trust Problems in Hardware · ▶ 25:45–25:49

取下闪存,为什么检查看不出改动?

Hudson 的装置插在闪存和读取方之间。把芯片取下单独读,读到的可以完全正确。装回去时,那段数据经过了另一条路。Rutkowska 从另一端追问:若主板本身在威胁模型里,从本机启动一个小系统去问固件「你是什么」,答复仍然经过可疑的主板。画图时把检查探针实际接在哪里标出来。两次读取看起来都在查固件,却可能根本没探到同一处。演示证明这种路径可行,Hudson 明确保留了现实中那宗新闻指控是否属实的问题。

原文与时间戳 · 3
because it's outside of the ROM chip.
35C3 - Modchips of the State · ▶ 22:22–22:28
I will not get reliable answers.
Joanna Rutkowska: Towards (reasonably) trustworthy x86 laptops · ▶ 12:05–12:12
So did it happen? I don't know.
35C3 - Modchips of the State · ▶ 27:31–27:40

重装系统,从第几步开始?

把磁盘清干净,重新安装系统,能排除硬盘上遗留的程序。Rutkowska 要求再画一张表,标出机器上所有能跨重启保存状态的位置。AMD 研究组给出了具体的先后顺序:在他们测试的平台上,安全处理器比 x86 核心更早执行代码。依赖后续系统给早期启动阶段作证,需要说明依据。这个演示还有一个实践边界:团队动手需要物理接触。读者评估自己的机器时,要先写出谁有这种接触机会。

原文与时间戳 · 3
So you reinstall the OS, but the malware still can re-infect.
Joanna Rutkowska: Towards (reasonably) trustworthy x86 laptops · ▶ 31:11–31:17
executing code even before the x86 cores have executed anything.
36C3 - Uncover, Understand, Own - Regaining Control Over Your AMD CPU · ▶ 18:29–18:43
everything we did requires physical access to the device.
36C3 - Uncover, Understand, Own - Regaining Control Over Your AMD CPU · ▶ 41:00–41:06

同一笔付款,两份不同的成功记录

Anderson 演示的中间设备向终端表示卡已经接受 PIN,同时向卡表示这是签名交易。事后只留一张「交易成功」的收据,会漏掉两端究竟同意了什么。把审计记录拆成两句完整的话:谁确认了哪个金额,用了哪种验证方式?若两句里的交易条件不同,即使两个设备都正常走到结束,也拼不出持卡人授权的同一笔付款。

原文与时间戳 · 2
the pin was accepted by the card
Chip & PIN Fraud Explained - Computerphile · ▶ 4:15–4:21
that it was a chip and signature transaction
Chip & PIN Fraud Explained - Computerphile · ▶ 4:21–4:24

一个签名能替谁同意?

Olson 讲述一种尴尬的转账:受骗者确实动用了自己的密钥,链也按规则接受了交易。发现被骗后,他还可以请交易平台下架那枚代币。把操作写成两行,一行是「转移登记」,另一行是「允许挂牌」;执行者和能拿来申诉的证据都变了。要在产品上写「所有权已验证」,先问读者会按哪一行来理解。

原文与时间戳 · 2
transactions followed the rules of the software.
Line Goes Up – The Problem With NFTs · ▶ 83:44–83:50
delisting stolen tokens.
Line Goes Up – The Problem With NFTs · ▶ 84:34–84:40

报对号码,证明了哪一项?

Grey 指出社会保障号码可以帮助机构找对记录,同时又经常被当成身份凭据。想象同事递给你一张写有号码的表单:你找到了记录,但还没有得到独立证据,说明对方就是记录的主人。与 Olson 讲的代币转移对照,一个系统可以准确执行它定义的检查;下一位使用者需要知道,这个检查究竟核对了号码、签名,还是本人的授权。

原文与时间戳 · 3
a card with a unique number that many places will ask for to prove who you are.
America Keeps Rejecting an ID Card It Already Has · ▶ 0:22–0:27
ask for the last four digits as a code to identify you as you
America Keeps Rejecting an ID Card It Already Has · ▶ 4:50–4:55
transactions followed the rules of the software.
Line Goes Up – The Problem With NFTs · ▶ 83:44–83:50

温控器应该看烤箱,还是看面包?

第二片面包下去时烤面包机可能已经很热。固定计时器只数秒,照向面包表面的恒温器却可随食材状态改变结束时刻。感雨器也不是把传感器伸到雨里,而是监测挡风玻璃处的光学变化。检查两个设计时都要问:在哪些条件下,即使传感器有读数,这个数也可能偏离真正关心的状态?

原文与时间戳 · 4
Having the thermostat react to the surface temperature of the bread
How to design an actually good toaster with lessons from the 1940's · ▶ 2:11–2:15
It not only compensates for a hot toaster, but for cold bread.
How to design an actually good toaster with lessons from the 1940's · ▶ 6:24–6:28
it leverages the effect of total internal reflection.
The simple, clever sensor behind automatic windshield wipers · ▶ 3:29–3:34
Wet glass will allow some of the light produced by the LEDs to actually escape
The simple, clever sensor behind automatic windshield wipers · ▶ 5:50–5:58

一张漂亮照片、一份匹配报告,谁还能重做核对?

克隆研究的回顾列举当年论文声称的卵细胞数量和细胞系数量。发布照片和公开展示容易复制传播,细胞系对应到哪一位供者却要从原始材料验证。Galef 讲笔迹调查时,替代样本的出现直接改变了比较对象。为一个匹配结果设计核验时,至少保留两样东西:独立可取的原始对象,以及能与最初解释竞争的另一种匹配。

原文与时间戳 · 4
professional photographers.
The man who faked human cloning · ▶ 19:35–19:38
This new paper used just 185 eggs, and made 11 stem cell lines.
The man who faked human cloning · ▶ 51:32–51:38
they compared Dreyfus's handwriting to that on the memo
Why "scout mindset" is crucial to good judgment | Julia Galef | TEDxPSU · ▶ 2:34–2:37
Much closer than Dreyfus's handwriting.
Why "scout mindset" is crucial to good judgment | Julia Galef | TEDxPSU · ▶ 7:05–7:07

看见了启动标志,究竟查过了什么?

Steil 解释,Game Boy 开机时显示的标志取自卡带;机器还会比较那段图案。于是一个看起来只是品牌展示的画面,背后有一个具体的输入检查。把它与 Abagnale 在演讲里讲述的飞行员制服对照:人可以认出衣着,供应商还可以索要员工编号。下一步都要追问匹配的依据来自哪里。能复现图案、能填写编号、能得到独立系统的确认,是三个不同的条件。这里引用的是 Abagnale 的讲述,未将其当作航空公司留存的事件记录。

原文与时间戳 · 4
It compares the logo because the game has to have a copy of that Nintendo logo inside.
The Ultimate Game Boy Talk (33c3) · ▶ 19:45–19:52
that logo, though, is actually presented from the cartridge.
The Ultimate Game Boy Talk (33c3) · ▶ 20:21–20:26
I certainly looked old enough to be the pilot
Frank Abagnale | Catch Me If You Can | Talks at Google · ▶ 8:12–8:16
Put your employee number.
Frank Abagnale | Catch Me If You Can | Talks at Google · ▶ 8:31–8:32

要独立检查计算机,探针能接到哪里?

前面的固件例子要求找出检查信号经过哪条路径。阿波罗计算机的修复把这个问题变成了实际操作:这台开发机的大部分模块没有灌封,团队可以用电路图定位引脚,切换输入,再看每个 NOR 门是否给出预期输出。若外围连线让某个门难以单独驱动,就直接测量中间状态。这里多出来的证据是可触及的物理信号,而非机器自己显示的一句「正常」。但检查范围也必须写清:一块模块里的门都能翻转,并不等于存储器、接口和整套任务软件已经一起通过验证。灌封的内存正好提醒我们,检查的边界有时由封装决定。

原文与时间戳 · 2
we can get right in and check the signals on the chip
Apollo Guidance Computer Part 1: Restoring the computer that put man on the Moon · ▶ 8:51–9:01
see every nor gate function with every input
Apollo Guidance Computer Part 1: Restoring the computer that put man on the Moon · ▶ 19:19–19:26

信任贡献者,能替代检查变更吗?

独立检查不仅需要能接触到机器,也取决于谁还会认真看变更。Kamp 的演讲用一个明确虚构的情境指出:长期提交有用补丁的人可能逐渐获得直接提交权限,而其他人因为熟悉他而少做检查。这里值得借用的是这个失效路径,不是把讽刺演讲中的组织或行动代号当成事实。与前面的硬件探测对照,两个条件缺一不可:系统要提供可观察的证据,团队也要保留实际检查证据的过程。它提醒我们,在阅读审计报告时,除了问「有没有检查机制」,还应问「哪些变更实际经过了检查」。这并不意味着每个贡献者都不可信,更不证明某个真实项目已经遭到渗透。

原文与时间戳 · 2
you should imagine a junior NSA staffer
NSA operation ORCHESTRA: Annual Status Report · ▶ 1:44–1:51
people will start to trust you and not check your patches
NSA operation ORCHESTRA: Annual Status Report · ▶ 24:07–24:09

用来判断对错的工具,也可能继承同一个错误

Domas 没有先把反汇编结果当成处理器行为,而是让处理器执行候选输入,观察解码长度和异常,再与反汇编器比较。这让两种证据有机会互相冲突。但冲突还不等于找到硬件错误:他发现作为「标准答案」代理的反汇编器本身就有 bug,有些误解还出现在多个工具里。这个例子给独立检查加了一条要求:除了数有几个检查器,还要追踪它们的判断依据是否真正不同。同一份文档或同一个架构假设衍生出来的多个输出,并不是自动获得了多份独立证明。演讲提供的是一种发现差异的方法,解释差异仍需要结合具体芯片、运行环境与人工分析。

原文与时间戳 · 2
I just used a disassembler as my ground truth
Breaking the x86 Instruction Set · ▶ 20:32–20:38
all of them were absolutely littered with bugs
Breaking the x86 Instruction Set · ▶ 28:57–29:03

把核对交给另一台机器,谁来选它?

Tom Scott 在电子投票讲解里同时追问选票匿名与公众能否信任计票。把校验交给另一套软件以后,仍要解释观察者凭什么相信它。Moxie Marlinspike 在 2011 年的证书演讲里提出由使用者选择见证节点,同时指出正常站点也可能在不同网络路径上返回不同证书。

投票和证书的目标不同。把它们放在一起,可以检查验证的两个前提:谁有权选验证者,验证者看到差异时又能得出什么结论?

原文与时间戳 · 2
anonymity and trust.
Why Electronic Voting Is Still A Bad Idea · ▶ 0:32–0:34
individual users can decide where to Anchor their trust
BlackHat USA 2011: SSL And The Future Of Authenticity · ▶ 26:36–26:40

换了中间人,谁能看到数据,谁能核对记录?

Tom Scott 说,把流量交给 VPN 转发,会改变谁能看到连接元数据。他用不留日志的承诺追问,消费者能从外部核实多少。Mickens 从另一头看记录系统。他举出写入者少且已知的场景,提出可用签名核对一条记录来自哪里。对一份由服务商保管的记录,先写下谁有机会看到或写入它,再问其他人手里有什么能独立核对。签名可以为记录来源提供依据,完整性和现实中的真伪还需要各自的证据。

原文与时间戳 · 3
Metadata does give away a lot of information
This Video Is Sponsored By ███ VPN · ▶ 3:08–3:10
changing who can see that metadata.
This Video Is Sponsored By ███ VPN · ▶ 3:24–3:28
the number of writers is oftentimes quite small
Blockchains Are a Bad Idea (James Mickens) · ▶ 8:12–8:18

能核对总票数,需要同时核对某个人的票吗?

James D’Angelo 的历史评论提出一种施压机制:如果第三方能核实某人怎么投票,就能检查对方是否照办。Tom Scott 的电子投票讲解则把选票匿名和公众对计票的信任列成两个需要同时满足的要求。

可以用这两个问题检查一种投票设计。公众能观察哪些步骤来核对总数?单个投票人又能向第三方证明什么?两个答案会影响问责与施压分别能走到哪一步。

原文与时间戳 · 2
If you can show how you voted it is much, much easier to sell your vote.
The Cardboard Box Reform - Nixon's Ghost Bill & A Crucial Flaw in Democracy · ▶ 20:57–21:03
anonymity and trust.
Why Electronic Voting Is Still A Bad Idea · ▶ 0:32–0:34

读完再想一步

找一条你每天见到的「验证成功」。请另一人只看你留下的记录,说明她能重新核对哪一件事。若她只能再问一次原来的机器,给她补一个独立观察点。