BB84 攻防模拟器实战
先备导航:你需要 071(BB84 原理与 25% 错误率)、029(真随机)、002(测量扰动)、091(统计呼吸)。 下一篇预告:095《在模拟器上跑一遍表面码 cycle》。
先备导航:你需要 071(BB84 原理与 25% 错误率)、029(真随机)、002(测量扰动)、091(统计呼吸)。
下一篇预告:095《在模拟器上跑一遍表面码 cycle》。
BB84 攻防模拟器实战
军队不上战场怎么学打仗?沙盘推演。密码学同款:BB84 的攻防,不上光纤也能玩——一台笔记本电脑、几行代码,你轮流扮演发方、收方、窃听者三个角色,把 071 篇的每一个数字亲手"跑"出来。
本篇就是那份沙盘推演手册。071 篇的三个关键数——保留率 50%、全窃听错误率 25%、漏网概率 10⁻¹³——今天全部落地成你自己的实验记录。
沙盘规则
071 篇协议的落地版,三个角色的操作手册:
- 发方:每个比特,随机选一套基("+" 或 "×")、随机选一个值(0 或 1),把"偏振光子"发出;
- 收方:每个比特,随机选一套基测量——记下(基,读数);
- 公开环节:两边公布各自选基序列(只公布基,不公布值),保留基相同的比特——这就是协商出的密钥;
- 窃听者:想在半路读光子——她必须选基测量(不测读不到),选错基就把光子"测坏"再重发。
实验一:无窃听基准线
发方 1000 个光子,无窃听,跑一遍:
- 保留约 500 个比特(同基率 50%——两个随机选基对上的概率);
- 保留段的错误率 约 0%(模拟器设备理想)。
实验二:全窃听——25% 的现场
窃听者上线,截下每一个光子再重发。保留段错误率立刻跳到——约 25%。
071 篇的这个数字今天亲手跑了出来,账也当场能对:她选错基的概率 1/2 × 选错基时读数被扰动的概率 1/2 = 1/4。发收双方抽样 100 个保留比特比对:全对的概率 (3/4)¹⁰⁰≈3×10⁻¹³——一千亿次才漏网一次。窃听者在量子链路上不存在"低调"的全量选项:读就必被抓。
实验三:低调窃听与"疑罪从有"
狡猾一点的窃听者:只截 10% 的光子。错误率掉到约 2.5%——低于朴素警报线,看起来混过去了?
这正是真实协议设计的现场:实战系统把警报线收紧(比如 1% 触发中断),并补上最后一件武器——隐私放大:双方把协商出的密钥做一次公开的"压缩搅拌"(哈希运算,术语就叫这个名),哪怕窃听者只漏网了少量信息,也会被搅拌稀释到不可用的地步。
攻防到此合龙:QKD 的安全哲学是"疑罪从有"——不赌窃听者低调,而是假设任何低于警报线的残余泄漏都存在,然后用信息论把它挤干。071 篇说"物理保证",本篇补全:物理保证(必被抓)+信息保证(稀释残余)=完整防线。
模拟器的诚实注脚
两条注脚,防止沙盘学成错觉:
- 模拟器的"随机"是伪随机数(程序生成)——071 篇的"物理保证"在沙盘里没有物理,模拟的只是概率结构;真随机那半(029 篇)由真设备补足;
- 模拟器不模拟设备漏洞(071 篇滤镜第三条的回响)——真实系统的攻击历史全在"侧信道"(探测器、光源的缺陷),沙盘里 E 只能正面攻,真实世界的窃贼从不正面攻。
把类比拆掉
沙盘借了哪里:
- 不像之一:军事沙盘的随机性是掷骰子(人定的概率);BB84 沙盘的随机性是协议设计者写死的代码——它演示的是"如果概率如此,攻防如此",不是"物理如此"。沙盘学策略,真机学工程。
- 不像之二:沙盘可以无限重来、无成本试错;真链路的光子一次一毁(028)——推演里养出的直觉可以带上战场,操作肌肉要在真设备上重练。
带走的行李
1. 三个数字亲手跑出:保留率 50%(同基率)、全窃听 25%(选错基×扰动,1/2×1/2)、漏网 10⁻¹³(抽样百比特)——071 篇的数字从"背下来"变成"跑出来"。 2. 攻防合龙:低调窃听可压错误率,但警报线收紧+隐私放大接力——QKD 哲学是疑罪从有:物理保证必被抓,信息保证稀释残余。 3. 沙盘的两条边界:伪随机无物理、设备漏洞不模拟——模拟学策略,真机学工程(两副肌肉别混练)。
下一站的钩子:沙盘护密钥,下一站护量子态本体——在模拟器上跑一遍表面码的一轮巡逻:稳定子怎么读、校验子怎么指错、纠正怎么落子——055 篇的棋盘,今天亲手上脚。095《在模拟器上跑一遍表面码 cycle》。
#量子计算 #从硬币到纠错 #BB84 #量子密码