量子通信会改变什么(媒体和公众都需要刷新的认知)
量子通信会改变什么(媒体和公众都需要刷新的认知)因为从媒体的宣传来说,量子密码专家一直强调的是RSA非对称算法的危机,从来没有对对称算法进行过安全问题的指责,更没有针对对称密钥分发环节出现什么危机进行过任何提示,那么相应地,当然是针对RSA算法。 也曾经与很多IT行业的专家工程师们恳谈,在多数情况下,他们对于量子通信的理解其实跟普通人的理解并无不同,把这项技术当作牢不可破的量子非对称加密技术,用来取代现今广泛应用的RSA算法。他们一点都不相信我告诉他们的,量子通信只是做了对称密钥分发的工作。 曾经向一位海外华人量子科学家请教有关量子通信方面的问题,尽管对方的研究方向并不在这个领域,但毕竟还是大行业方向内的专家。当讨论有关国内建设完成的京沪干线和墨子号卫星时,他对中国科学家在世界上率先实现纠缠模式的量子通信表示了敬佩之情,然而这仍然是一种误解。因为国内量子通信采用的BB84协议只是利用了单光子的四个偏振方向,并不是一对纠缠光子。他了解国内
【文/观察者网专栏作者 李红雨】
前言
当下中国科技界最耀眼的领域,无可争议的是量子通信,这是一个各种大小奖拿到手软,被各种光环笼罩的明星领域。同时这也是充满了争议和误解的领域,争议者主要来自科技界,误解的人群则是媒体和公众,但是也不尽然。
随便在大街上拦住一个行人,问问是否听说过量子通信,估计回答听说过的要占7成以上,但是如果接着问量子通信究竟做了些什么的时候,回答的内容可能就会千奇百怪,而且尤其奇怪的事情,他们所描述的量子通信似乎与实际相差甚远,根本就不是同一件事情,甚至连边都靠不上。
曾经向一位海外华人量子科学家请教有关量子通信方面的问题,尽管对方的研究方向并不在这个领域,但毕竟还是大行业方向内的专家。当讨论有关国内建设完成的京沪干线和墨子号卫星时,他对中国科学家在世界上率先实现纠缠模式的量子通信表示了敬佩之情,然而这仍然是一种误解。因为国内量子通信采用的BB84协议只是利用了单光子的四个偏振方向,并不是一对纠缠光子。他了解国内量子通信进展的渠道,很多就是国内媒体发表的各种科普性新闻类文章,几乎无一例外让他从专业上解读成纠缠模式的量子通信已经实现。
包括铺天盖地的墨子号卫星的宣传,有关量子纠缠分发与地面网络的各种结合的展望,很难不让人做这样的联想。徐令予老师在《警惕科普中的不正之风》就提到,由科学院主管、科学出版社主办的《Newton科学世界》2019年2月号,里面就在告诉大家,中国实现的量子通信手段就是采用的量子纠缠技术。
国内媒体甚至权威性媒体的不专业误导性宣传,如果连领域内专家都无法分辨真假,让普通人做到这一点就显得强人所难。
也曾经与很多IT行业的专家工程师们恳谈,在多数情况下,他们对于量子通信的理解其实跟普通人的理解并无不同,把这项技术当作牢不可破的量子非对称加密技术,用来取代现今广泛应用的RSA算法。他们一点都不相信我告诉他们的,量子通信只是做了对称密钥分发的工作。
因为从媒体的宣传来说,量子密码专家一直强调的是RSA非对称算法的危机,从来没有对对称算法进行过安全问题的指责,更没有针对对称密钥分发环节出现什么危机进行过任何提示,那么相应地,当然是针对RSA算法。
并且,以这些IT工程师们的专业知识和工程实践,有关对称密钥分发的机制已经研究得非常深入,尽管不能说尽善尽美,但是想要找到其中的漏洞那也是难上加难。这是经历过几十年考验的技术,得到了最广泛的应用,我们每天使用的互联网和手机应用、移动支付都离不开它。他们不能理解,对称密钥分发的过程,怎么就突然间在量子密码专家眼中变成了一个严重的薄弱环节,他们的准星不是一直在瞄着RSA吗?怎么没有试图去解决RSA问题?
所以,虽然好像大家都在谈论量子密码,都在热议一旦量子密码应用到比如军事领域,那该是多么傲视全球的黑科技,从此,斯诺登们再也不可能干扰窃取到我们任何一点机密,在国人眼中,量子密码团队简直就跟华为公司一样,分别站在量子科学领域和高端制造领域的顶峰,成为中国最耀眼的两张名片,堪称国之重器。
但是,这些可能都是媒体和公众,包括专家在内一厢情愿的想法,正如文章的标题所言,我们恐怕需要刷新一下有关量子密码的知识了。
还是从一篇尚未发表的论文谈起吧。
2018年9月26日,北京,中国国际信息通信展上,亨通光电未来移动通信信息安全,量子通信光载5G极速通信展台。图片来源@视觉中国
有关金贤敏论文
上海交大金贤敏团队的论文《Hacking Quantum Key Distribution via Injection Locking》(以下简称金文)发布在预印本文库arXiv上,在这篇论文中,提出了一个在信源端通过“注入锁定”的方法,获得高达60%的量子密码盗取成功率。文章中还实验了采用光隔离器防堵漏洞的方法,这种设备只允许光子在一个方向上行进,从而防范反向光的注入锁定。不过这个方法也不完美,由于该技术并不能完全阻绝非理想状态的光子行进方向,因此只能将入侵成功率从原本的60%降到36%,而不能完全根绝。
这个论文被《麻省理工科技评论》的编辑们发现,为此发表了一篇题为《有一种打破量子加密的新方法》的报道,这篇报道又被国内的DeepTech深科技转译发表在其公众号上,不料一件普通的事情,惹来轩然大波:
潘建伟等科学家在墨子沙龙公众号进行了权威发布《关于量子保密通信现实安全性的讨论》(以下简称潘文)
匿名量子黑客在量子客Qtumist上发表文章《量子黑客的独白:自媒体妖言惑众,“量子加密”被“惊现破绽”,我们需要底线!》(以下简称黑客文)
王向斌在知识分子上发表文章《王向斌谈量子保密通信:我为什么不愿回应自媒体的一些文章》(以下简称王文)
金贤敏等教授在墨子沙龙公众号上就此事发表了声明:《攻击是为了让密码更加安全》
袁岚峰在风云之声上发表文章《量子加密惊现破绽?请媒体提高知识水平,不要乱搞大新闻》(以下简称袁文)
尽管面对公众,量子密码团队做过无数次无条件安全的承诺,但是对于了解原理和技术详情的我们来说,量子密码存在漏洞一点也不令人惊奇,所以这次报道发现漏洞,我们对这些量子密码专家们的激烈反应,对上述文章用词之情绪化,就感到颇有些意外。只是对于媒体以及公众来说,这是量子密码神话破灭第一次现实地展现在面前,这让一直对量子密码抱有巨大期待的人们来说,或许情感上一时很难接受。
在所有已经发现的量子密码漏洞中,金文中所提到的“注入锁定”并非第一个漏洞,也不是最严重的漏洞,当然更不可能是最后一个漏洞,它所以引人注目,不过因为偶然间由于深科技公众号把这个漏洞揭露出来而已。
针对这个漏洞,根据潘文权威发布的声明,据说可以通过增加光隔离器的方式堵上。下面我将跟大家聊聊有关光隔离器的一些小知识,便于让大家了解这个光学器件是如何堵住漏洞的,或者它是否能够堵住这个漏洞。并且,我们还可以退一步假设这个隔离器确实能够很好工作,但是仍然能够通过使其失能,从而重新打开这个漏洞,文章的后面将介绍这些方法。
光隔离器是一种只允许单向光通过的无源光器件,它的工作原理利用了法拉第效应(又叫法拉第旋转、磁致旋光),这是一种在介质内光波与磁场的相互作用。通过将入射线偏振光和反射线偏振光的偏转方向各自向右旋转45度角,从而使得入射光与反射光的偏振方向相互正交,这时用偏振光过滤器就可以将反射光的大部分滤除。
光隔离器分有偏型和无偏型两种,有偏型只能对特定方向线偏振光起到隔离作用。量子密码BB84协议采用的是不同方向的线偏振光,所以不可能采用有偏型光隔离器,只能采用无偏型的光隔离器。但是无偏型的光隔离器的工作原理,首先需要将光分解成相互垂直的两个线偏振光,接下来处理这两个固定方向的线偏振光的隔离,就可以继续采用类似有偏型的光隔离器的工作原理。经过这样的无偏型隔离器的处理后,原始光中不同方向的线偏振光,都会被处理成由两个相互垂直的,偏振方向不变的线偏振光复合而成的输出光。
对于普通的光调制信号,不会用到光的偏振特性,因此这样的处理不会影响光信号的传输,但是对于量子密码则不然,这样的光经过分解后再做隔离处理,就完全破坏了原始信号光中偏振方向的信息,也就破坏了量子密码。所以现有的物理知识告诉我们,比如京沪干线上,量子密码要想采用光隔离器而不影响量子密码的传送,也许需要有新的科学原理性突破才能做得到。
我们注意到,无论是潘文还是在袁文,都只是笼统讲了这一个漏洞可以用光隔离器的技术来填补,但是从来没有任何明确的文字确认在京沪干线上是否已经采用了这个技术措施。不考虑光偏振性的问题,由于量子密码采用的是弱激光,本来在长距离传输过程中,激光的损耗已经足够大,根本不太可能有反射回去的激光,况且如果有这么强的激光功率,早就用在延长传输的公里数或者提高成码率上了。
而且无偏型的光隔离器对输入光的损耗是比较大的,这对本来就是强激光的普通光通讯一点问题都没有,对于量子密码采用的极其微弱的激光来说,这样的损耗可能就无法承受。
所以,从上面有关光隔离器的简单分析,我们就会对潘文的权威发布和袁文给出的见解产生疑问。量子密码团队有必要向公众明确确认在京沪干线上是否已经采用光隔离器防止这个漏洞的出现,并愿意的话,顺便向学术界介绍一下它们的工作原理。经过无偏隔离器后,还能保持入射光的偏振性,就我有限的知识来看,目前的原理和技术都还无法做到。
其实严格来说,在信源端发现漏洞的价值并不高,至少在密码学理论上是这样的,对于量子密码,也许算不上什么了不起的问题,要找类似的漏洞,传统信安系统的信源端一样都是一点都不少,因此这次量子密码专家的过度反应就有些耐人寻味。
当然,金文中提到的攻击手段其实是在信道上任何一点都可以发起的,京沪干线2000多公里上的每个点都可以进行这样的攻击,尽管攻击的目标是信源,但在很多密码专家的解读中,这类攻击还是可以归类到信道攻击。
无论潘文还是袁文,其实并不打算纠缠在理论安全和实验漏洞这个矛盾问题上,而是试图从两个角度化解媒体和公众的疑虑:
第一是宣称发现的漏洞是可以被轻易解决掉的;
第二是声讨新闻报道和批评者不专业的表现。
我觉得这样简单模糊的回应可能并不能消解媒体和公众的疑虑,就像我们都知道软件系统一定存在漏洞一样,我们也相信软件公司有能力修补漏洞。但是假如这个软件公司之前承诺绝对不存在漏洞,或者让你有这样的误会,那么存在漏洞的事实对用户来说,他的感觉就不会很好,因为这意味着之前的承诺不过是开的空头支票,发现一个漏洞,接下来还会有第二个和第三个。
黑客文中就不小心提及另外一个致盲攻击。在2011年的场地演示中,发起的攻击针对的是实际的QKD实验系统,实验获得100%成功并获得100%密钥,因此该黑客对于金文中的攻击方法只有60%的成功性很不以为然。当然,黑客文也强调了对于致盲攻击已经有强光警报等预防性手段用来修补漏洞。
黑客文侧面证实了我们的猜测,这明明就在告诉你,你所看到的金文中提到的漏洞只是冰山一角,更严重的你根本不知道,是否还有其它已知未知的漏洞,那就变得非常显然了。
袁岚峰是国内比较知名的软科普作家,虽然不是量子方面的专业人士,但一直活跃发表关于量子的科普文章。
袁文中有一个自问自答的片段:
问:中国的量子通信干线“京沪干线”有没有风险?要不要为此改装设备,增加成本?
答:上面已经说了,现在的量子通信设备已经能抵御这种攻击。所以京沪干线没有受到影响,不会为此多花钱。
按照一般的理解,这个回答可能告诉我们,京沪干线采用了光隔离器,但是你细品一下就会发现,其实里面做了巧妙的回避。姑且不深究这个问题,聪明的读者可能会进一步追问:是否今后还会发现其它漏洞,发现新的漏洞是否也同样不需要对现有设备进行升级改造?
你必须承认这是个无法回答的问题,所以袁文中干脆就不继续追问下去了,其实媒体和公众真正关心的恰恰是后面那个问题。
袁文用了大量篇幅吐槽深科技的译文错误,我倒不以为然,新闻也不是文学作品,尤其是科技方面的新闻翻译,要求达到信达雅的程度是强人所难了,对于成天看那些翻译过来的科技文献和科普文章的人来说,早就对这些硬译非常适应了,只要不发生严重的错译,都是在可原谅范畴之内,总不能要求深科技的翻译也达到量子密码专家的学术水平吧?而且无论潘文还是袁文,都有意将新闻和批评的范围限制在自媒体上,似乎都是一些没有专业知识、相互传抄的低水平的群众提出来的批评,并且抱怨这些人显然干扰了科学家的正常工作。
袁文也特别指出:金贤敏就是潘建伟的学生啊!言外之意就是,学生怎么可能刻意去做反对老师的事情?姑且不说真实情景如何,但是学生不赞同老师的观点,在科学界不是太平常不过的事情了吗?这里引述2300多年前古希腊著名哲学家亚里士多德的一句名言“吾爱吾师,但吾更爱真理”,与袁先生共勉。
有关传统密钥分发
传统加密算法分对称算法和非对称算法。非对称算法用到的公钥,是以明文公开在网上发布的,信息发布者用公钥加密信息,信息接收者用私钥解密信息,公钥不用来解密。
公钥不存在加密分发的事情,这恰恰是非对称算法独特的优势,需要做密钥分发工作的只有对称密钥。
对称密钥的分发可不是在网上直接明文过去,最常用的技术手段其实还是采用对称加密或者非对称加密算法,当然也有采用人工分发的手段,这或者是因为网络之间彼此隔离,或者干脆就是单位公司的制度要求。
有关密钥分发和管理是传统密码学领域研究得很深入也很成熟的环节,因为采用相同的加密算法,所以对称密钥分发的安全性全同于普通信息对称加密的安全水平,这也是为什么,传统密码学里面从来不将密钥分发的安全性问题单独罗列出来讨论的原因。
如果对称密钥分发存在安全性问题,也同样意味着对称加密算法存在安全性问题。这两个问题是等价的,这个结论非常重要,因为量子密码所做的工作恰恰就是将对称密钥分发的工作分离开来,导致加密算法的安全性与量子密钥分发的安全性完全不等价,需要额外对量子密钥分发的环节做安全性分析。
袁文中对于传统密钥的分发工作有一些有趣的看法,一方面,他提出一个问题:如果你在不安全的信道上传输密钥,那密钥被人窃取了怎么办?还能怎么做,加密传输啊,难道他认为传统密钥应该是以明文方式发送的吗?同时他还提出另一个惊人的问题:你有什么办法,不用信使就让通信双方共享密钥?难道他认为传统密钥分发必须派个密钥分发专员到处人工分发?不知道别人如何理解,反正我觉得袁对于传统密钥分发的原理理解得匪夷所思,好像处于两个平行世界,实在搞不清楚他心里所想的传统密钥分发的工作究竟是怎么一回事儿,也不知道这仅仅是他的看法,还是整个量子密码团队的看法。
下面几段主要讲述有关传统密码安全性度量的简单原理,这部分叙述会比较抽象枯燥,没有耐心的读者可以跳过,直接看这个小节末尾总结性的结论。
对称密钥分发的工作是否安全,取决于对称加密算法的安全性。对称加密算法有很多种,如果强调可证明的绝对安全性,香农早已经证明异或加密算法在满足密钥充分随机、密钥长度不小于明文长度、一次一密这三个条件的情况下是不可破解的(也即所谓的一次性便签,one-time pad)。但是一般人不知道的是,异或加密算法并不能够实际使用,因为密钥与明文等长,所以一旦你使用密钥进行了信息加密,也就没有后续密钥用来继续做密钥分发,于是加密工作就会因为密钥枯竭而停止。
为了解决异或加密密钥的枯竭问题,密码专家注意到异或加密对于密钥的利用率低得可怜,每一个密钥位只能用来加密一位明文信息,形象地说就是一个密钥位只掺杂到一个信息位里,如果能够采用一个理想的加密算法,让一个密钥位绝对充分而又均匀地掺杂到每个信息位中,那么破解加密后的密文就必须强力搜索整个密钥空间,并且可以证明不存在任何简便的破解算法。
这意味假如你采用的是128位密钥,通过这个理想的加密算法,能够让密钥的安全度等效于2128位异或加密的密钥长度,也就是说能够用来加密2128位信息,并且还能够保持绝对的加密信息安全。这个数有多大?粗略说,就是34后面加上37个0,也意味着当你用这个密钥加密128位信息时,可以重复使用2.66*1036次,仍然能够保证信息的绝对安全。这是非常非常大的数,假如我们将密钥的位数增大到256位,所能够安全加密的信息数就跟宇宙所有原子的数目大致相同。这个效应可以形象地称为密钥有效位数的指数爆炸。
实际上我们采用的加密算法远达不到充分而又均匀的程度,对于常用的128位或者256位密钥,每个加密算法等效理想加密算法多少位密钥,还缺少足够的证明,但是这个数目仍然是非常非常大,相比异或加密仍然能够呈现指数增长的关系,以至于目前我们要想破解加密信息仍然需要搜索整个密钥空间,仍然需要将现实加密算法看作某种程度的理想加密算法。
袁文中因为目前缺少加密算法与理想加密算法的等效密钥位数证明,缺少有关密钥掺杂均匀度和充分性的量化分析,就认为现实中使用的加密算法是不安全的,这种对加密算法安全度的理解在行家看来是非常浅层次的。
这些算法理论方面的安全性分析一直都在进行中,普遍业界公认的结论依然是,目前使用的对称算法没有明显的分布不均匀性证明,通俗点说,就是仍然是安全的。袁文中提到MD5和SHA-1摘要信息算法被破解,这跟对称加密算法是完全不同的两码事儿,只要稍微读一下相关论文就知道,破解摘要算法的成功标志只是仿照出来一个伪文,具有相同的数字签名,但是伪文可不是允许随心所欲撰写的,所以数字签名仍然可以保证有效性,而且摘要信息的原文是什么也根本没有办法还原,算不上严格意义上的破解。
摘要算法本来就不是设计用来加密信息的,所以与加密算法混在一起谈,只能说对这个领域里面,不同类型的算法所做的分工协作完全搞不清楚。顺便提一句,数字签名现在已经简单升级到SHA-256,算法加密位数从128位提高到256位,把全世界的超算算力加到一起也没有办法破解。
现实中的密钥分发过程中,通过采用过程密钥协议,即避免了主密钥在网上加密传送的过程,又能够将引入随机数的额外掺杂信息加入到主密钥中,相当于等效延长了几十位理想密钥位数,很大程度填补了现实加密算法与理想加密算法之间密钥长度的差距。
形象的比喻就是,假如现实加密算法采用128位密钥,等效于理想加密算法的60位密钥,那么通过补充随机数的过程密钥方式,又增加了20位理想密钥的加密强度,使得整个加密体制的加密安全度等效于80位理想密钥。这相当于1个密钥可以用来绝对安全加密280位信息,或者等效280位异或加密密钥。这回你知道异或加密算法与其它对称加密算法之间的关系了吧?你也应该知道为什么密码界不采用异或加密算法的原因了吧?
量子密码专家认为现实对称加密算法的安全性没有得到证明,这个是事实,的确任何一个算法的密钥位数等效理想密钥位数的关系一直没有得到证明,但是因此得出结论说,对称加密算法是不安全的就是严重的误导。
因为对称密钥算法能够安全加密天文数字的信息,因此大批量数据都是采用对称算法进行加密的。单纯采用对称算法进行密钥分发,前提条件是密钥收发双发都预先拥有对称密钥,这只能是在固定用户之间进行,如果两个陌生用户之间采用对称加密算法加密大量信息,目前唯一的途径只能通过类似RSA这类公钥体制将对称密钥分别发送给临时通信的双方,没有其它办法,量子密码天生注定做不到这一点。
采用对称算法进行密钥分发,安全性是绝对有保障的;在NP问题没有得到确实解决之前,公钥系统也是安全的。NP问题是千禧年7大问题之一,是可计算理论皇冠上的一颗明珠,全世界大量的数学家和计算机科学领域的科学家都在努力试图破解这个世界难题,尚看不到解决的光亮。一个对称密钥在其存在的整个生命周期中,所加密的信息包括进行密钥分发的消耗,远远小于密钥本身等效的异或算法密钥长度,如果只考虑采用对称算法进行密钥分发,密码界目前公认的一个看法就是不存在任何安全性问题。在评估对称加密算法安全性方面,显然量子密码专家拿不到足够的发言权。
有关量子密码的工作内容
量子密码并不像大家普遍想象的那样神秘莫测,说到底这就是一个实用技术,里面即不存在任何新的物理原理,也不存在任何新发明的黑科技,简单地说,量子密码所做的工作就是对称密钥分发。
读者会非常困惑,难道量子密码不是一个加密算法吗,难道不是一个用无法破解的量子方式对信息进行加密解密的方法吗?难道不是用来取代传统的加密算法的吗?难道不是用来解救RSA密码被破解后的密码危机的吗?
对上述问题的回答一律:不是。
读者会更加困惑,你刚告诉我们说,对称密钥分发绝对不存在任何问题,然后你马上又告诉我们,量子密码做的就是对称密钥分发的工作,你说话是认真的吗?那样的话量子密码又有什么存在的价值?
请千万不要怀疑我说话的真诚和专业水平,因为量子密码专家们早就在各种相关文章中告诉你这件事情了,只不过你的注意力都被分散到有关量子世界的神奇描述中去了。
当年IBM的本奈特提出BB84协议,也就是现在国内京沪干线上使用的量子密码协议,那个时代,个人计算机和网络刚刚起步,密码学研究大多停留在理论阶段,完全不是我们今天想象的那样成为日常生活中必不可少的技术手段。所以有关密码技术的各种实施方案层出不穷,包括密钥分发工作也还没有完全定型,采用量子的方式完成这项工作也就成了一个可选项。当然量子技术的成熟度远达不到可用的成度,与此同时,计算机加密技术随着网络的发展迅速落地成熟,于是有关对称密钥分发的技术和管理模式早已尘埃落定。
在传统密钥分发一节中我们已经知道,一方面异或加密的绝对安全性已经得到完全证明,另一方面我们也知道异或算法要求密钥与明文长度相同,你必须预先准备好足够长的密钥,否则你的加密过程就会因为密钥枯竭而被“卡”住,要想采用这个算法,除非提供另外一个密钥分发途径。但是异或算法是一个很重要的衡量安全度的重要指标,度量的单位就是等效异或密码位。
宏观来说,量子密码走了一条“轻”算法、“重”密钥的路,保留了异或算法,提供新的量子密钥分发途径,从而让加密过程不会被“卡”住。这种路径,密钥与信息等长,算法的安全性可证,安全性取决于密钥分发环节的安全度。加密信息位数与密钥分发的成本和时间呈线性相关性。
传统密码学走了一条“重”算法、“轻”密钥的路,通过提供非异或的对称算法,将一个密钥位“抻长”获得指数型扩张的天文数字一样的等效异或密钥位,从而解决密钥位枯竭问题。这种路径,密钥与信息长度位的指数呈线性相关性,安全性完全取决于密钥掺杂的充分性和均匀度,不同的算法掺杂程度都不同,这方面缺少足够的理论证明,但是与异或密钥位数的指数呈线性相关性是密码界的共识,密钥分发的时间和成本可以忽略不计。
做一个对比,假如一个128位非异或对称算法等效80位理想密钥,那么当你发送一个长达280位信息的大文件时,你只需要一个128位的密钥就可以绝对安全地送达,而量子密码需要分发280位密钥才能达到同样的效果。你明白其中的区别了吧?
量子密码专家笃定说,虽然我分发密钥的时间和成本很高,可是我的安全性是得到绝对证明了的。事实上,只有异或加密算法的安全性是得到了证明的,而在量子密码的密钥分发环节,要想获得绝对的安全性保障,必须保证分发的密钥的每一个密钥位都不能掺杂任何一点不安全因素,因为每一个被破解的密码位,都将对应一个加密信息位的失密。量子密码能做到这一点吗?或许金文已经告诉了我们这个问题的答案。
相比较来说,传统加密其实走的路要轻巧得多。勤俭持家的人可能都希望将一分钱掰成几份来花,量子密码相当于大富豪,手里拿着一张不可兑换零钱的百万大钞,只能用来买一个火柴头,传统密码则是将一个密码位掰成天文数字的密码零钱花,并且一分钱就可以买到一火车皮的火柴,当然其实比这对比还要强烈得多。量子密码和传统密码在同等安全保障的前提下,消耗的密钥位是呈指数关系增长的。
实际的信息安全体系关注的重点无非两件事:安全与成本,技术复杂度都可以折算到成本中。量子密码直接与异或算法结合,以1:1的关系对标等效异或密码位,异或算法计算量可以忽略不计,需要付出的代价是与加密信息等量的密钥分发量;非异或加密算法以指数的关系对标等效异或密码位,加密解密的算法复杂,但是相比计算机的算力仍然在可忽略的范畴内,并且由于密钥位数等效异或密码位呈指数关系,可以将其看作密钥大爆炸效应。与人们的印象完全不同,传统对称加密算法与量子密码之间的对比,就像氢弹和石块的关系,有过之而无不及,那属于完全不同的两个世代,传统加密算法更好地实现了安全与成本的平衡关系。
暂时先不考虑安全性指标,传统的对称加密体制全面碾压量子密钥分发 异或算法,不存在任何瓶颈,而量子密钥恰恰阻塞在密钥分发的环节中,量子通道的物理属性注定了这个环节绝对不可能跟得上普通光纤信道的传输率,因为它本身也不过是光纤介质,所以量子密钥如果进入实用阶段,就永远会处于枯竭状态,永远不会改善,除非你不使用它。况且为了传输量子密钥,你还必须修建一个专用的量子通道,这些都会成为不可承受的成本负担。
将量子密码纳入到完整的信安体系内,你就能够理性地评估量子密码应该安坐的位置,它只是在从来没人使用的异或算法分支里,在对称密钥分发环节中承担一个微不足道的作用,而且活干得还特别吃力,相比较来说,在另外一个流水线上,传统加密方法正在紧张而轻松地忙碌着。就像你在盖高楼,别人都是直接一个塔吊把整个建筑模块从一楼吊到100层的楼顶,而量子密码就像一个背背篓的民工,里面放着砖头瓦块,沿着阶梯吃力往上爬。
不是因为采用了貌似高大上的量子技术,就让这种背砖头的工作看起来光芒四射,再怎么大声嚷嚷,量子密钥分发工作在辉煌的密码学殿堂里,也只能拿个马扎坐在丝毫不起眼的角落里。哪怕是异或加密也是传统加密算法的一部分,离开了传统加密算法,量子密钥分发就什么都不是,只是一堆无用的随机数而已。当然你也可以拿这些随机数来算命或者买六合彩,然后美其名曰量子算命或者量子,比起量子针灸或者量子袜子,这可是如假包换的量子啊,绝对满满的黑科技。袁文中用了太多的篇幅来渲染量子密码的光辉,可惜他对于密码学的了解得还是太少了,在信安专家眼中,马扎永远不能当太师椅坐,更不可能摆在大厅中央。
有人说就靠量子密钥那种传输效率,哪怕拿几块硬盘,拷贝上密钥,然后骑上单车从北京跑到上海去,都要比量子密钥分发快得多,京沪干线要想完成同样的密钥量往好说也得需要一年半载,我深以为然。
有关量子密码的绝对安全
前面的章节谈了有关量子密码到底做了什么的问题,其中关于安全性问题我特别留了白,没有讨论,不是因为这方面量子密码安全得一塌糊涂,可以放心不用去细究,恰恰相反,这是一个非常值得拿出来好好品味一下的内容。
量子密码专家特别喜欢拿RSA说事儿,我经常有一种错觉,好像量子密码专家都搞不清楚对称算法和非对称算法究竟有什么区别,包括潘建伟在内,也都是拿RSA密码危机作为阐释量子密码威力的开篇。袁文中就提到:现在的绝大多数加密方法,都是基于某种数学问题的单向困难性。
我知道袁博士对密码学了解的不多,也就不挑剔他所谓的数学问题的单向性困难,其实正规说法应该是著名的可计算理论中的NP问题,这也是千禧年7大数学难题之一。但是他说的加密方法应用的都是NP问题那就完全错了,因为只有非对称算法才会利用到NP问题,而对称算法一律不是NP问题,加密解密的算法复杂度相同。
在上个章节中我们已经知道,量子密码坐落于从来没人使用过的异或加密算法分支中,并在这个分支干了密钥分发的工作。如果说对称算法在密码学大殿中站在左侧,那么非对称算法就站在右侧。一个在左侧的角落里坐马扎的角色,操着右侧队伍中英雄命运的心,这样的心胸不可谓不宽广,但是冷冷问一句跟你有啥关系?
姑且不谈量子计算机下50年是否会变为现实,变为现实是否能够轻易破解RSA密码,就算一觉醒来,这些都变成现实,那么一个分发对称密钥的角色,能干非对称加密的活?一个搬砖的角色能做包括建筑师在内一整个包工队的工作?实在搞不清楚人为制造RSA危机感的目的究竟是为了什么?我建议无论媒体还是公众,看到量子密码专家大谈RSA以及非对称密码的话题一律过滤掉,然后再看剩下的内容还有什么,这样会避免你的思路被误导到错误的线路上。
量子密码专家一直不断传达给众人的一个最关键的理念,就是量子密码是无条件安全的,认真的人就会继续追问,无条件安全的概念是什么?
黑客文中对有关什么是无条件安全给出来一个定义,这个定义源自于一本国外有关密码学的教科书:Cryptography: Theory and Practice(第四版,第62页,2018):
这本书是有中文版的,名字就叫《密码学原理与实践》,由电子工业出版社出版。这本书很有名,有些学校的研究生相关专业把这本书当作教材使用。不过就算你没有阅读这本书,只要从篇章目录中就能看出来,其实这本书从头到尾都在讲数学方式的加密解密算法与实践,而这个无条件安全的定义是针对数学形式的加密算法的,跟量子密码这类用物理方式实现的密钥分发是一点边都沾不上,况且人家谈论的根本不是密钥分发,而是加密算法,更是跟量子密码全无关联。
所以黑客文给出来的定义当然是硬掰了。不过黑客文也不是信口开河,潘建伟在不同场合也大谈有关无限的算力与无条件安全的等价关系,所以这个定义似乎还真的就是属于“权威发布”。
但是在王文中,开篇第一句就是:
量子保密通信的无条件安全性是指,一个未知量子态在传输过程中,窃听者无法做到既偷看又不留下痕迹。这一点是绝对的,它由量子物理学基本原理保证。
真的是不看不知道,一看吓一跳,到底无条件安全是如何定义的?难道这也要成为一个罗生门?既然把原话都摘录出来了,也顺便问一句,这里当然指的是BB84协议了,那么所说的未知量子态究竟是Eve未知还是Bob未知?但是我知道在BB84协议中,Alice对她发射的光量子到底是什么偏振方向可是知道得一清二楚,那么这还算不算是未知量子态?难道量子态是否未知还跟具体指的是哪个人有关系?
如果量子密码专家自己都搞不清楚无条件安全的准确概念,想让他人理解他们讲述的内容就有些强人所难。
不纠结无条件安全的概念问题,潘文中其实给出了几篇有关量子密码安全性证明的论文,大致翻看了一下这些论文,文章都不很长,虽然没有仔细阅读,但是我马上知道所谓的绝对安全证明是怎么一回事儿。
这些论文都是将物理世界形式化为数学模型,然后针对这些建模进行安全性讨论。这本来就是科学论文特别正规的做法。除了一些特殊的科学领域,比如复杂科学、生物科学等研究系统整体的科学不能充分将物理环境进行解析外,其它学科标准的处理模式都是将研究对象进行简单化、理想化和局部化处理,用放大镜来仔细审视研究对象的局部,忽略细枝末节的东西。潘文提到的这些论文就是对研究对象做这样的处理的,所以想要验证论文结论是否依然与现实世界符合,就需要在具体的实践中,将那些省略掉的东西再添加回来。这样说来,其实你就该明白所谓的安全性证明到底证明了些什么东西。不看论文阐述各种显性和隐性的先决条件,就把论文的结论当作现实世界的运行规律,这根本就是违反科学常识的。
科学论文不是工程设计文档,一定程度甚至完全理想化物理条件是必须采用的技术性处理手段,但是如果因此就把论文的结论直接搬到现实世界中,那么永动机就不再是幻想,满街跑的汽车也就不用消耗燃料。将现实的物理条件理想化,然后在数学模型处理方面做进一步的简单化,多数时候这样得出来的结果与实际情况大相径庭。将纸面上的东西转化成实际的技术需要走的路永远是漫长的,从发现牛顿运动定律到实现火箭上天需要300年的时间,而想要将惯性定律变成现实中的永动机需要花费的时间也许是宇宙的年龄。
2018年诺贝尔生理医学奖获得者日本京都大学特别教授本庶佑在参加一个记者访谈对话中就说:
关于研究,我自己本身总有想知道些什么的好奇心。还有一点,我不轻信任何事物。媒体经常报道某个观点来自《自然》或是《科学》,但是我认为《自然》、《科学》这些杂志上的观点9成是不正确的,10年过后就会知道只有1成是真的。所以我首先不相信论文或者其它文章。只相信自己的眼睛能确认的观点,这就是我对《科学》杂志采取的态度和做法。也就是说,只有通过自己思考,觉得可以理解才会接受。
对于潘文中列出的那些论文,金贤敏的论文以及黑客文给出的各种量子密码被破解的方法,已经在实践中将绝对安全的神话彻底击破了。
论文中的绝对安全与实践中发现了各种漏洞之间的矛盾根由,其实潘文中已经明确指出来了,所以其实专家们早就告诉你了,所谓的绝对安全就是你想象中的水中月:
后来,量子密钥分发逐步走向实用化研究,出现了一些威胁安全的攻击,这并不表示上述安全性证明有问题,而是因为实际量子密钥分发系统中的器件并不完全符合上述(理想)BB84协议的数学模型。
我不意外很多攻击量子密码的方法是由量子密码团队发现的,这本来就是他们的工作内容,毕竟这个领域也只有他们在做这方面的工作,真正的密码专家以及信安工程师根本没有参与其中,所以很大程度上来说,他们是在唱独角戏,但即便如此也是成果斐然,可以想象,假如其他领域专家大队人马杀入的时候,该会有多么壮观的成果发现。可惜我相信不会有这一天。
完整的量子密码术包括;量子密钥分发(QKD)和异或加密算法两部分,当然异或加密是属于传统密码学领域的内容,它的安全性分析已经由香农完成,那么关键的就是量子密钥分发或者简称QKD的安全性分析了。
QKD在专用的端到端量子通道内进行,采用BB84协议,用光子的偏振方向承载量子密钥信息,通过物理操作的方式实现Alice与Bob两端的密钥协商。这里需要强调的是,目前国内所有团队的QKD技术与量子纠缠无关,任何人如果在谈论量子密码的同时拿量子纠缠说事,那就是在有意误导你。
袁文中提到:量子密码的数学抗性是100%,物理抗性还没有达到100%,我没有理解他在谈论量子密码的时候是否包括了QKD和异或算法两部分,我觉得想要把安全问题搞清楚,还是将两者分开了谈为妙。
异或算法的安全性属于传统密码学范畴,如果袁所谓数学抗性100%指称的是异或算法,这部分工作根本与量子无关,属于“掠人之美”;如果指称的是QKD就有些意思了,因为QKD本质上是个物理过程,不是算法,当然是“无限算力”无法解决的问题,本来就是大路朝天各走两边的两码事。
借用袁文中提到的例子,假如你把党的秘密告诉给江姐,是否也属于无条件安全?因为用什么超算能够算出江姐心中埋藏的党的机密?当然你要是碰到甫志高,有点威胁给点甜头也会立刻叛变,这当然也不是算出来的秘密。所以“无限算力”跟安全与否可能完全风马牛不相及,物理的方法物理来,破解物理方式的QKD也许很难也许很简单,就看你是否找对了方法。
好歹袁还承认QKD还无法100%防范物理攻击,这部分才是量子密码专家真正做的工作,我们一直说的不就是这件事情吗?这回终于达到共识了,但是有一点恐怕你还是没有明确说出来,你可以今天堵住一个漏洞,明天堵住一个漏洞,但是你永远无法堵住所有的漏洞,所以你就算加上异或加密算法在内,量子密码术也永远无法兑现绝对安全的承诺,你同意这个观点吗?更何况异或加密算法固有的极度消耗密钥的贪婪,根本不是QKD那个小水龙头能够满足的。
袁文中提出一个非常新鲜的说法:量子密码术面临的威胁只来自物理,传统密码术面临的威胁来自数学加物理,因此,前者显然优于后者。
为了证明传统密码术还要面临物理攻击,袁借他的朋友,一个通信专家“奥卡姆剃刀”之口,给出两个物理攻击的例子,一个是“旁路攻击”,另一个是汽车打火开关电子锁破解方法。具体的内容我就不详细描述了,担心引用多了算侵权,参考袁文的链接。
我不敢评价这位通信专家对于密码学的理解是否到位,不过类似“旁路攻击”手段,在国外的很多文献里面,恰恰指向的是对量子密码的攻击。“奥卡姆剃刀”这些例子不太专业的有两点:第一,开机密码不是密钥,不用来加密信息,这本来在业界是人所共知的常识,不知道为什么这位通信专家竟然不知道?竟然还把这个当作密钥能够受到物理攻击的例子,你信不信有些小公司就敢把账号密码用明文方式传来传去的?
第二,传统加密算法保护的是信道,不包括信源与信宿,即使我们放宽尺度,将“旁路攻击”和汽车电子锁破解算作攻击加密算法(密码专家们不要骂我),显然这些也属于信源的范畴。
所以,你就知道了,袁文提到的这两个攻击方法完全都不在密码学的作用域内,无论袁博士本人还是那位“奥卡姆剃刀”专家,显然连哪些地方属于密码学发生作用的领域都没搞清楚,举出两个错误例子还不自知,不但没有说清楚传统密码学怎么会面临物理攻击,连带把对于密码学知识理解的短板也暴露出来了。
所谓孤证不立。日前,纽约时报曾经采访过量子密码专家陆朝阳(他们好愿意跟媒体打交道),其中谈及到有关量子密码和传统密码技术的优劣比较,这里引述一下:
陆朝阳说,使用传统通信方式时,窃听者可以在光纤线路上的每个点拦截数据流。政府可以在通信线路的任何地方进行窃听,而量子加密技术让长达1200英里的京沪干线上易受攻击的点减少到了几十个。
看懂这段文字可能有助于理解袁博士所谓传统密码术面临的物理攻击究竟是什么。当然了,这段话对于任何一个做信安的工程师来说都是匪夷所思的,因为传统加密信息在光纤上本来就不怕被窃听,加密算法保证你窃听到密文也无法破解。
按照这样的对安全性的理解,就不难知道为什么量子密码专家们在京沪干线上采用了三十多个“可信中继器”而一点都不担忧了。这里所谓的“可信中继器”跟我们一般人理解的中继器可是完全不同的两个东西,你可以简单理解这个中继器是光子接收检测装置 激光发射装置 与外网互联的计算机。在密码专家眼中这是妥妥的信源 信宿的复合体,里面的密钥和信息都是以明文方式存在的,所以这是京沪干线现实中最简单可被攻击和窃密的薄弱环节。原本2000多公里的安全信道被切割成30多个片段,并将每个切割出来的节点变成了易受攻击的信源信宿复合体,这才是这个量子密码示范工程示范给大家的一个真实样例。
这几天国盾量子设下一个奖金为100万的擂台,广邀天下好手攻击和破解量子密码,我想是否可以给出一个“可信中继器”的IP地址,让计算机黑客们享受一下攻击量子密码的快感?其实这种擂台对于攻击者来说是不公平的,笨理想想,现在想要攻击这些保护在实验室内的精密的光学仪器,不说能否找到进房间的大门,就说攻击这些仪器的设备,那好歹也是精密仪器,不是人人家里摆放的鼠标键盘,摆这样擂台真的有诚意吗?反正我只能甘拜下风。
量子密码专家都是追求“理想”的人,既然QKD运行在“不理想”的物理环境中,发生各种意想不到的意外,那是一种必然而不是或然,所以找到了一些破解的方法,一点不出意料之外,潘文中针对金贤敏论文揭露出来的问题给出一个堵漏方案,其实大家更想问的一个问题是:是否还有漏洞没有被发现?谁都知道微软视窗系统存在大量没有发现的漏洞,但是微软可没有向大家承诺说自己是无条件安全的,这才是对所有人来说,虽然不懂量子密码但是感到困惑和充满争议的地方。
人们经常听到物理学家告诉你,量子物理是完备的。如何理解物理的完备性是很有意思的话题。完备性其实是数学语言,跟物理一点关系都没有,这个还真是天才冯·诺依曼在《量子力学的数学基础》一书中提出来的观点。作为一位数学大师,他这种提法一点不奇怪,他那个时代,数学理论有关形式化系统的完备性讨论正进行得如火如荼,他本人也是其中重要的参与者和贡献者。
一般人出于对数学的敬畏,如果有人说物理理论是完备的,就以为这个物理理论可能等同于终极理论,那可就大错特错了。数学不能够用来证明物理的正确性,物理科学能够成长壮大,必须建立在理论与实践结合的基础上,用哲学一点的语言来说,就是科学是可证伪的。有人故意拿物理完备性来拔高物理理论的层次,其实是在欺负你连一点起码的科学素养都没有。
埃航刚刚发生的波音737MAX 8坠机事件,初步分析事故原因在于一个看似简单的MCAS系统设计存在重大失误。波音公司有如此强大的技术力量和丰富的设计经验,他们对于MCAS系统如此充满自信,以至于他们甚至向驾驶员隐瞒这个系统的存在,让这个系统默默工作。事实证明,哪怕是这个看起来简单的系统,在各方论证无误的情况下也仍然隐藏着如此重大的缺陷。过于自信的血的教训告诉我们,当我们提出来绝对安全的口号时,往往也是我们犯下重大安全事故的前兆。
关于量子密码之抓窃听者
量子密码专家经常告诉大家,采用量子密码比传统加密信息在网上传输的优势之一就是能够发现潜在的窃密者,听起来量子密码还能充当网络警察的角色,这是很神奇的功能。
量子密码采用BB84协议完成对称密钥的协商分发,这个协商在量子通道的收发双方之间,也就是Alice和Bob间进行,而在量子通道整个的协商过程中,所有的密钥信息,在密码专家眼中,其实是以明文的方式传输的,所以一旦窃密者获取了光子的偏振信息,并且能够让Alice与Bob无法察觉,那么密钥就会被完整窃取。这是一个猫捉老鼠的游戏,明文的密钥是巨大的诱惑。
传统密钥分发能否发现窃密者?回答是:否,但是因为是密文,并不会造成泄密。
量子密钥分发是否能发现窃密者?回答是:未必,一旦没有发现就完全失密。
所以量子密码绝对不是好心青年在帮着公安机关抓窃贼,而是因为一旦发现不了窃密行为,那就意味着失密。发现窃密者不但不是量子密码的优势,恰恰是量子密码缺少鲁棒性的根本原因。能把脆弱性也包装成为特别的优势,这种语言的力量实在令人敬佩。
关于RSA
由于量子密码专家的不懈宣传,现在可能相当多人都知道RSA这个专业的加密算法,也知道当量子计算机出现之后,RSA可能就面临被破解的危险。
RSA是一个很著名的非对称加密算法。非对称加密算法的应用场合,是在两个陌生人之间进行保密信息传输,典型的就是互联网和移动应用,我们每天用的移动支付也离不开非对称加密算法。
既然RSA像量子密码专家所说如此不安全,为什么我们不能放弃它,改用其它加密算法,比如对称加密算法?这是因为采用对称加密的一个前提是通信的双方都需要首先具有相同的密钥。两个陌生人之间都是临时发起信息加密传输的,根本不可能预先存在共同已知的对称密钥。所以对称加密算法和非对称加密算法的应用人群根本就不同,非对称加密可以用在对称加密的工作场合,反过来,对称加密却完全无法用在非对称加密的工作场合。
那么QKD提供的是什么?只是对称密钥,连对称加密算法都是借用的传统对称加密算法。QKD连加密算法都不是,更不可能完成类似RSA非对称加密的工作。所以了解QKD都做了些什么的时候,你会很纳闷,量子密码专家渲染RSA危机的目的究竟何在?
最糟糕的情况出现了,假如明天量子计算机出现了,而且能够轻易破解RSA密码,这个时候QKD能提供什么帮助?分发几个对称密钥?那样的话不是成了南郭先生的现代版?我不清楚量子密码专家是否意识到对称加密和非对称加密之应用场合巨大的不同,但是通过贩卖焦虑来推销QKD的做法,实在不应该。
关于诱骗态
潘建伟在公开的媒体上强调过很多次,量子密码必须采用单光子,多光子的情况下是不安全的。虽然量子密码专家一直在宣传单光子的BB84协议,实际上京沪干线进行密钥分发采用的是弱激光形式的诱骗态协议。
为什么采用诱骗态而不是单光子,理由有二:
第一单光子制备是非常困难的,制备出来绝对的单光子是不可能的,只能在概率上尽可能实现这个目标;
第二单光子无论在光纤内还是自由空间中损耗极大,可探测到的传输距离大致不超过10公里远,所以采用弱激光就能够大大提高传输的距离。
所以袁文中提到“诱骗态协议”是用来对抗“光子数分离攻击”,这个说法是不准确的,搞反了因果关系。因为采用弱激光传输密钥明文,如果窃听者Eve分离出来几个光子进行测量,就能完全掌握量子密码,所以诱骗态的设计必须能够避免这个方法的攻击。
诱骗态不是量子态的一种,只是仿照了量子态的术语。诱骗态协议的设计是比较复杂的,没有BB84协议的简洁性。
窃听者Eve和接收者Bob在传统密码学中,是具有不同的内在知识的,通俗说,Bob知道解密的密钥,Eve没有密钥,这造成了双方在接收到同样加密信息时的不同表现。
但是QKD,包括BB84协议和诱骗态协议中,因为本来就是在做密钥协商分发工作,所以Bob手里是没有现成的密钥的,因此,Eve和Bob在技术和知识方面是全同的。于是就出现一个疑问,处于完全相同地位的Eve和Bob为何能在密钥分发过程中表现不同?奥秘全都在不可克隆原理上。
BB84协议设计当Eve截获了光子并进行测量后,因为不能复制相同的光子,所以无法向Bob发送仿冒的光子,因此Bob就能够发现无法接收到光子或者收到的光子误码率异常,从而推测存在窃听者Eve,于是就可以终止当前的密钥分发工作。有关不可克隆原理的问题在文章后面会谈到。
对于诱骗态来说,因为采用弱激光模式,密钥信息同时存放到很多光子上,如果Eve只是简单截获1、2个光子进行测量,Bob是无法判断失去的光子究竟是线路损耗还是因为窃听造成的,因此会造成失密。所以诱骗态设计出来不同的光强,分别用来存放真假密钥信息,比如说略强的光用来存放真实的密钥信息,比较弱的光用来存放诱骗信息,让真假信息混合在一起进行传播。
由于Eve窃取密钥时需要将强光光子和弱光光子都截获分析,诱骗态设计者认为Eve无法区分不同光强下的信息是真是假,并且他由于不可克隆原理的限制,也不能将截获的光子原样复制发送给Bob,这样这会导致强弱光之间的光子分布发生变化,所以能够让Bob发现其中的异常,于是判断存在潜在的窃听者。
这样的叙述其实是非常简化的,诱骗态设计有很复杂的运算推导过程,那就不是普通人能够参与讨论的了,当然你也要知道,有关诱骗态设计的数学推导中,不同光强的数学表达是相同的,也就意味着虽然从物理角度上来看,强光与弱光有明显的区别,但是Eve采用光子数分离攻击时,无法利用这种不同的信息来分辨真假。这里采用的原理性描述也不是诱骗态专家给出的标准描述方法,其中可能会有很多理解偏差的地方。但是读者需要知道的是,无论怎么解释,都需要用到不可克隆原理,而且诱骗态的设计就是为了克服也只能用来克服光子数分离攻击。
聪明的读者马上就会发现问题,为什么Eve连光强这么简单的物理现象都无法分辨?光强对应于光子数,简单说光子数越多光强越强。事实上,有很多论文确实也指出来有关Eve采用光子强度分析的攻击手段。
清华王向斌教授是发展诱骗态理论的重要人物,在描述有关诱骗态理论的工作原理的时候,打了一个泉水中掺杂毒药的形象化比喻,通过萃取的方式,Bob将毒药从泉水中分离出去,从而能够喝到健康无毒的泉水。这样的比喻没有说清楚的关键一点是,既然Eve跟Bob具有同等知识和能力,为什么Eve没有办法将毒药分离出去。恰恰这点而不是如何分离毒药,才是诱骗态是否成功的关键。
袁岚峰在《你完全可以理解量子信息》中有关诱骗态的理论介绍就更简单了,他说:“诱骗态方法可以使得实验等效于只用单光子脉冲。对于量子密码术的安全性而言,这相当于把实际的不完美的光源变成了完美的单光子源。”这样简单地解释诱骗态,如果你看了就能懂得工作原理,我敬你为神仙,这样的解释你甚至都不知道诱骗态之诱骗是出于什么典故。
通常的通信协议设计都是需要简明扼要,BB84协议具有这个特点,诱骗态协议设计是相当模糊的,可以说是一种概念化设计,它所提供的安全性保障是一种盖然性,也就是说在多大的概率下,Eve的窃密行为不会被发现。或许这可以单独定义成为概率安全。
复杂逻辑设计的安全性从来都是挑战人类智慧的难题,一个复杂的软件系统必然存在一系列的漏洞,这是一个很普通的常识。这也是为什么协议设计一定要简单明了的重要原因。尽管诱骗态有很多论文论证了其安全性,但是正如有关对量子密码安全性证明一样,在抽象的数学层次上进行的推导计算,是不能完全复现在现实的物理世界的,数学的抽象一律都是复杂的物理世界的理想化、简单化和局部化的产物,它的有效性还需要回到物理世界中进行验证。
诱骗态的设计原理决定了这是一种相当脆弱的系统,不但取决于具体的每个网络硬件片段,而且环境的变化也能使得安全的盖然性发生漂变,这样的结果意味着每个网络片段的参数调整都是个性化的,参数调整也需要随时间的流逝而不断进行。并且诱骗态的安全水平与传输距离和成码率呈显著的负相关,距离的延长和成码率的提高是以安全的绝对降低为代价的。实现相对稳定的密钥分发是现实的客观要求,这就需要系统具有起码的鲁棒性,而鲁棒性越好的诱骗态系统,潜台词就是越难发现正在窃听的人,这个结论是物理原理决定的,绝对安全的系统也就是绝对敏感的系统,它的成码率就是0。这个结论有日本专家在发表的论文中已经提到过,但是从来没有哪个量子密码专家告诉过你。
诱骗态设计就是防范光子分离攻击,那么假如出现其它类型的攻击,诱骗态该怎么应对?这样的事情不是可能,而是必然。
有关几个破解方案
潘文中对于目前发现的各种针对QKD攻击的手段进行了归纳总结:针对器件不完美的攻击一共有两大类,即针对发射端—光源的攻击和针对接收端—探测器的攻击。
我强调过,密码学作用域只包括信道,不包括信源和信宿。密码学并不万能,无法大包大揽。潘院士们总结出来的这两个攻击环节,其实并不属于密码学需要关注的内容,但是金文中提到的“注入锁定”攻击或许可以归类到“类信道”攻击范畴,量子密码专家经常提到的信道攻击就是“光子数分离”攻击,这也是BB84协议和京沪干线上采用的诱骗态原生设计上唯一可防范的信道攻击。
我们已经知道,QKD在量子通道上分发的密钥,其实是采用明文方式发送的,针对这一点,我们其实还可以想到其它种类的信道攻击,这里举两个例子。
中间人攻击:
在目前京沪干线上,采用了30多个“可信中继器”,我们可以在2000多公里长线路的任何一点插入一个伪“可信中继器”Eve,他具有同时控制量子通道和经典通道的能力,可以分别仿冒密钥的分发者F_Alice和接收者F_Bob 。
Alice只能与F_Bob协商量子密钥QK1,同时F_Alice与Bob协商另外一个量子密钥QK2,这样窃听者Eve将同时拥有通信双方的QK1和QK2。当Alice将明文M用QK1加密后,将M QK1在经典信道发送给F_Alice,而Eve用QK1解密后,将M用QK2加密,将M QK2发送给Bob。这样虽然表面上Alice与Bob完成了保密通讯,但是其实信息的明文M早就完全掌控在窃听者Eve手里。
这样的事情能够发生的原因就在于,目前不存在任何量子理论和技术能够在Alice和Bob之间进行身份认证,所以如果没有其他认证方法的话,2000公里的京沪干线就是每个信道点都是可以发生泄密的地方。
“可信中继器”只能采用传统密码学里用到的身份认证手段,在经典信道里面进行身份认证,这点可以让量子密码专家们来确认。身份认证的技术手段无非消息摘要和对称加密以及非对称加密算法的组合。当然,量子密码专家认为非对称密钥可能是不安全的,所以可选的技术只有消息摘要和对称加密算法。
我们知道对称密钥分发其实就是采用对称加密算法本身,如果这类算法存在类似袁文中所提到的那么多潜在的不安全性,那么这个传统加密算法的不安全性就能够通过身份认证这个环节完全传递给量子密码中,从而导致身份认证失效,进一步的导致量子密码100%被窃取而无法发现。可以有这样一个结论,传统密码身份认证的安全等级不低于量子密码的安全等级。这样简单的结论是每个信安工程师都能够看得懂的,潘文中列出来那么几篇国外论文,指称量子密码的绝对安全证明,究竟在多大程度上有效,大家从这个实际的例子中就能够了解个大概,那些论文中从来就没有身份认证这个环节,也没有“可信中继器”这个设备,所以压根就没想到,还会出现一个通过插入伪中继器的方式进行的中间人攻击。
非线性晶体下自发参量下转换攻击:
PPKTP或者BBO非线性晶体的作用之一就是将一个输入的光子分裂成一个光子对,当然输出的光子对频率也折半,这样的效应称为自发参量下转换(Spontaneous Parametric Down-Conversion,缩写:SPDC)。通常,我们把输入的光子称为“泵浦光子”,把输出的光子对任意称为“信号光子”和“闲置光子”,这个光子对如果偏振方向相同,并与“泵浦光子”偏振方向垂直,就称为第一型关联(type I)。
做这样的设想,将Alice发送的光子作为泵浦光输入到第一型非线性晶体中,输出来的就是两个偏振方向全同的光子,并且与泵浦光偏振方向垂直,这意味着,假如Alice发送的量子密钥是bit 1,那么经过非线性晶体下转换处理后,出来的是一对包含bit 0 信息的光子,剩下的事情其实就是用什么检测基片把这个bit 0检测出来。既然已经有了两个相同偏振的光子,分别用BB84协议中用到的两个检测基检测就是了,测量结果取反就是实际发送的密钥信息,检测出来正确结果的基片,就是Alice发送密钥时使用的基片。
知道了Alice发送光子的偏振方向,再原样仿制出来一个同样偏振和频率的光子就是一件简单的事情。我们假设窃听者Eve具有Alice的完整能力,所以Alice能够做到的,Eve同样能够做到。经过这样的一番操作,看来不可克隆原理终究没有成为BB84协议宣称的金钟罩铁布衫。
这样的攻击方法发生在信道中,只是一种思想实验。事实上非线性晶体发生下转换的效率并不高,所以实际工程的可行性未必显著,但是材料和技术的进步会让这类的攻击变得具有威胁性,更重要的其实这种攻击方法启发了一个新的思路。
映射是一种非直接的检测方法,这是一个强大无比的武器。难道获取信息必须是信息本身吗?为什么不能是信息的映射?逻辑电路的开与关与逻辑信息中的0与1就是映射关系,没有说开必须对应1,关必须对应0,映射关系就是信息的本质。光子偏振方向偏转90度,信息仍然没有丢失,只是发生一次信息映射关系的转换而已。映射的关系可以很简单,也可以非常复杂,有了映射的思想,就跳出了通过直接检测进行安全性攻防的狭窄的小圈子,进入一个新的更加宽广的无限的物理世界。所有有关量子密码安全性证明,本质上都落入这个直接检测光子信息的陷阱中,所以表面上看起来合理的安全性证明,其实是因为思想被圈在一个非常有限的小圈子里。
映射关系展现的世界会有多广阔,没有人知道,这恰恰也是物理世界充满魅力的原因。我们相信这类的方法是无穷无尽的,其实金贤敏论文中提到的就是一种通过共振引出光子偏振信息的典型的映射攻击模式。
金贤敏实验的补充:
潘文中提出来用增加光隔离器的方式,就可以堵上金文提及的激光注入锁定方式的漏洞。
光隔离器发生作用的关键,其实是通过永磁铁产生的磁场。守方在光路中增加光隔离器用来堵住反向的注入光,对于攻方来说,反制的手段不过是让光隔离器失效而已,简单说就是消除光隔离器内部的磁场。
有两种方法做到这一点。
第一点就是高温消磁。所有永磁铁都有一个致命弱点,那就是在高温下会消磁,当代性能最好的钕铁硼磁铁,最高工作温度只有不到200度。将磁铁加温到这个温度是很低级的技术,要不要担心光隔离器里面的光学玻璃会因为这点温度发生变化?这些玻璃的熔点毕竟都在1000度以上,加热不会熔化,至于是否会有细微的影响,这么简单的补充实验现在就可以做,金贤敏完全可以把这个实验结果补充进论文的修改稿中。
另一个方法就是提供逆向的磁场,对冲永磁铁的磁场。这个方法要文雅很多,也略有些技术含量,但是仍然属于低技术的范畴。
孙子曰:“夫未战而庙算胜者,得算多也,未战而庙算不胜者,得算少也。多算胜,少算不胜,而况于无算呼?” 与数学方式的对攻一样,物理方式的对攻同样是道高一尺魔高一丈,引入的东西越多,其实在另一方面来说也意味着引入更多可被攻击的对象。潘文中权威发布的填补漏洞的方法,这里都能轻松提供两个破解的思路,全世界那么多聪明的人,一定会想到更多的着法。
永远不要低估潜在的对手,尤其你的对手假如是美欧日这类的科技大国。
关于不可克隆原理适用性问题
从不可克隆原理的证明条件和证明过程来看,严格来说不可克隆原理应该叫做单量子叠加态不可克隆原理,它所适应的范围只限于处于叠加态的单量子。
BB84协议采用了4个光子的偏振方向,也可以看作是光子的偏振态,那么具有固定偏振方向的光子是否适用就是一个值得思考的问题。
我看到的材料有两种说法。
第一种认为,因为BB84协议中偏振方向固定的光子无疑是处于本征态的,所以不可克隆原理适用的就是本征态量子。
另一种认为,因为不可克隆原理的证明是针对叠加态量子,所以BB84协议用到的光子就是叠加态。
第二种看法其实就是袁文中提到过的,表面看来确实没有问题,但是这个问题其实可以反过来问,如果对于Alice来说光子的偏振方向是已知的,并且还处于叠加态,那么对应的本征态光子的偏振方向又该是什么?类似的问题在前面有关无条件安全一节中,我也针对王文提出过同样的质疑。
这里并不是讨论这个学术问题的合适场合,但是我们确实发现了其中的困惑,这样一个最根本性的问题,根本不可能回避。这个问题有多重要呢?这么说吧,整个量子密码的有效性都建立在这个原理能否适用的基础上,这是量子密码理论成立绝对必要的先决条件,也是必须回答的问题。
关于质疑人的资格问题
“我是科学家,不是辩论家”,这是量子密码专家王向斌在王文中的一句发自内心的话。
的确,科学家都忙于研究和实验,如果精力都浪费在无谓的口舌之争上,哪还有时间做正经事儿?所以我是很赞同王教授对于质疑者的抱怨的。
但是,这种赞同不能建立在质疑者的资历和头衔基础上,而应该是针对质疑的问题本身,不知道我的这个看法是否正确。
尽管包括袁文中也不断抱怨批评者的不专业,也好像做了很多回应的动作,但是细心的人其实不难发现,包括徐令予老师在内的很多对量子密码的质疑者提出的问题,其实无论在哪个回应中都没有被真正地提到,这样的回复效果如何可想而知。
举一个例子,徐令予老师提出来京沪干线工程用到的可信中继器不安全,这个主张应该是确切无疑不可否认的;包括量子密码只是点对点协议无法完成终端组网,这也是毫无疑问的专业判断,就是因为无法进行终端组网,所以量子密码想要实现进入千家万户那是绝对不可能的事情。至于其它的各种问题,无论重要性还是专业性只要罗列出来,专家学者都能做出准确的判断。
再譬如说我本人,虽然不在量子密码行业里工作,但是对相关知识还是有一点了解,也努力去消化理解那些专业论文,并且更重要的,我在IT领域也是工作多年,在网络和信安方面我可以比较有自信能够做出专业的判断,一点也不像袁文中所说的那些什么都不懂就敢到处质疑的那类人。坦率地说,敢于对量子密码提出批评的,还真没见过一点科学和专业的常识都不懂的人,相反的反而基本都是道听途说,一知半解的粉丝的行为。
我也注意到袁文中最后提到的致谢人的名单,无一例外都是从事量子密码方面的专家教授,里面没有一个通讯行业和密码学领域的专家,这样的知识组成是不够平衡的,对于量子密码这个跨行业的交叉学科来说,这不是一个学科间良好沟通的组成。量子密码领域并不是量子理论的创新,而是一种技术应用,更确切说是交叉学科的技术应用,需要的是各领域专家的共同协作,缺少了其它领域专家的参与,让量子密码专家唱独角戏,一定会在很多场合跑偏方向。
科学存在的精义就是勇于面对各种批评,这是科学能够健康发展的最重要动力源,也是科学之所以为科学的哲学内涵。存在问题不要紧,从来不存在完美的科学和技术,包括传统密码学在内,都是在不断的自我否定中前行的。一个有自信的科学领域恰恰能够敞开胸怀,拥抱各种不同的意见,并且往往有建设性的批评是科学进步的最大推手。在量子理论的发展史中,最精彩的那段华章就是爱因斯坦与波尔阵营的对攻,包括量子纠缠都是通过爱因斯坦的质疑文章中得以发现的,窃以为这才是科学本应该有的面目和气度。
作者:
李红雨,网信安全第一线的资深工程师,曾就职中国科学院沈阳计算技术研究所、IBM(大连),现为中国科学院所属某技术公司产品运行监护中心主任
本文系观察者网独家稿件,未经授权,不得转载。