量子通信工程走下神坛的原因与真相 (下篇)
作者:徐令予
下篇:量子通信工程的可行性分析
本文从量子通信(QKD)的基本原理出发,对量子通信工程化的可行性和实用性作出科学的分析判断。
1984年,物理学家Bennett和密码学家Brassard提出了利用“量子不可克隆定理”实现密钥分发的方案,后称BB84协议。协议就是完成通信或服务所必须遵循的基本规则和约定,BB84协议是中国已建或在建的所有量子通信工程的技术基础。
BB84协议与量子纠缠无关,它只是利用光子的偏振态的不可克隆原则秘密地传送密钥。只需对照下面两张示意图并耐心地读完相关的解说文字,对量子密钥分发就不会再有神秘感。图1是提供预备知识,图2是QKD的原理图,BB84协议的工作机制全在这张图中。
图中的小黄球代表单个光子,黑色箭头代表光子的偏振方向,左边蓝色人是信息发送方,而绿色人是接收方。收发双方都手持偏振滤色片,发送方有四种不同的滤色片,分别为上下、左右偏振(第一组)、上左下右、上右下左偏振(第二组)四种滤色片,发送方把不同的滤色片遮于单光子源前,就可分别得到四种不同偏振的光子,分别用来代表“0”和“1”。请注意,每个代码对应于两种不同的光子偏振状态,它们出自两组不同偏振滤色片(见图1中的左下角,它和通常光通讯的编码不尽相同)。接收方就只有两种偏振滤色片,上下左右开缝的“十”字式和斜交开缝的“X”字式。接收方如果使用了“十”字滤色片,上下或左右偏振的光子可以保持原量子状态顺利通过(见图中上面的第一选择,接收方用了正确的滤色片),而上左下右、上右下左偏振的光子在通过时量子状态改变,变成上下或左右偏振且状态不确定(见图中第四选择,用了错误的滤色片)。接送方如果使用X字滤色片情况正好相反,见图中第二选择(错误)和第三选择(正确)。
有了以上的预备知识,就不难理解QKD技术了。图2第一横排是发送方使用的不同偏振滤色片,从左至右将九个不同偏振状态的光子随时间先后逐个发送给下面绿色接收方,这些光子列于第二排。由于接收方无法预知到达的每个光子的偏振状态,他只能隨机挑选使用“十”字或“X”字偏振滤色片将送达的光子逐一过滤,见第三排,接收到的九个光子的状态显示在第四排。
这里是密钥(Key)产生的关键步骤:接收方通过公开信道(电子邮件或电话)把自己使用的偏振滤色片的序列告知发送方,发送方把接收方滤色片的序列与自己使用的序列逐一对照,然后告知接收方哪几次用了正确的滤色片(打勾??的1,4,5,7,9)。对应于这些用了正确滤色片后接收到的光子状态的代码是:00110,接发双方对此都心知肚明、毫无疑义,这组代码就是它们两人共享的密钥。
为什么第三者不可能截获这个密钥呢?假设窃密者在公开信道上得知了接送方使用的偏振滤色片序列,也知道了发送方的确认信息(打勾??的1,4,5,7,9),但是窃密者依旧无法确认密钥序列。譬如对第一列,窃密者知道接收方用的是“十”字滤色片,而且发送方确认是对的,但这可能对应于上下或左右偏振的两种不同的光子,它们分别代表的是“1”或“0”,当然发送和接收的双方对“1”还是“0”的认定不存在问题,而窃密者无法在公开信道上获取确定值。
窃密者如真要确认的话,必须在光子传送途中插入偏振滤色片进行观察,但它又无法事先知道应该使用“十”还是“X”滤色片,一旦使用错误滤色片,光子状态改变,窃密的行为立即暴露。再以第一列光子为例,如果窃密者在接收端前插入“X”滤色片,光子偏振状态可能改变成上右下左的斜偏振,接收方仍使用“十”滤色片,得到左右偏振光子,经确认后此位变成“1”。结果通信双方的密钥在第一位不一致,这种出错经过奇偶校验核对非常容易发现和纠正。通常的做法是通信双方交换很长的光子序列,得到确认的密钥后分段使用奇偶校验核对,只要出错,无论是技术误差、信号干扰还是被人窃听,一律整段予以刪除,防止密钥被窃。
BB84协议分发的密钥的每一位是依靠单个光子的量子偏振态传送的,窃密者企图截获并复制单个光子的量子状态而不被察觉原则上是不可能的,这是由“量子不可克隆定理”决定的。“量子不可克隆定理”(No-Cloning Theorem)是“海森堡测不准原理”的推论,即对任意一个未知的量子态进行完全相同的复制是不可实现的,因为复制的前提是测量,而测量必然会改变该量子的状态。所以BB84协议分发的密钥具有较强的保密性。
BB84协议虽在理论上具有较强的保密性,但为此也付出了沉重的代价。首先,该方案要求使用理想的单光子源和单光子探测器;其次,在分发密钥的整个过程中通信双方必须建立直接并持续相连的量子信道;更令人纠结的是该方案很难分辨出干涉信号和窃密行为之间的区别,只要受到任何轻微干涉必须放弃密钥分发过程。“量子通信”使用的BB84协议就是温室?房中弱不经风的林妹妹,心比天高命比纸薄。说到底,BB84协议就是一个物理实验示范方案。
量子通信要从实验室走向工程化的征途上有以下四条难以跨越的鸿沟:
一)量子通信技术困境之一:极低的成码率
理想单光子源价格太过昂贵,是BB84协议走向实用的不可承受之重。BB84的升级版“诱骗态量子密钥分发”放弃了单光子方案改用微弱激光,但是密钥的传输仍然依靠数量极其有限的光子,通信过程中有效信号太弱的本质没有什么改变。
众所周知,任何通信环境中都有噪声污染。在具有噪声环境中保证信号传递的准确无误的对策很简单,要想在嘈杂的酒吧里与人交谈,无非就是“放开嗓门加大音量”或是“放慢语速不断重复”这两个办法,研究数据最大传输速率的香农定律讲的就是这个道理。在量子密钥分发中量子信号太弱,所以“放慢语速不断重复”就成了唯一可选项,用专业术语来描述,就是QKD的成码率极低。
密钥分发的成码率是单位时间内生成有效的共享密钥总位数。成码率是密钥分发最重要的技术指标,它反应了密钥分发的效率,也决定了该技术的应用范围。目前QKD在百公里距离上的成码率仅为Kbps量级,而目前光纤数据通信速率可达Tbps量级,两者相差了9个数量级,也就是十亿倍!
而所谓绝对安全的“量子通信“又必须要求“密钥与明文等长”和“一次一密”,也就是说QKD的成码率必须不低于光纤的数据通信速率。由此可知,蜗牛般低速的成码率使得量子通信要为现代化通信保驾护航永远只能是不切实际的幻想。如果强制使用量子通信,其结果必然把目前的通信速度至少降低千万倍!
二)量子通信技术困境之二:不能与互联网兼容
QKD的基础是美国科学家在1984年制定的BB84协议,BB84是前互联网时代留下的技术活化石。这种点到点的密钥分发技术要求在通信双方之间建立一条被双方独占的直接的物理通路,这种通信方式只能使用电路交换协议(Circuit Switching)组网。但是构建现代互联网的基础是分组交换协议(Packet Switching ),电路交换协议与分组交换协议从基础原理上水火不容,这就从根本上断绝了QKD组成现代通信网络与互联网兼容的可能性,它为互联网通信安全提供有效的服务也就无从谈起。这是京沪量子通信干线工程至今未有广泛应用的一个根本原因。
三)量子通信技术困境之三:极不安全的可信中继站
由于光纤中的损耗使得光子的传输距离很有限,而QKD是依赖光子的量子特性传递密钥,在QKD的传输信道中又不能使用放大器,这就决定了QKD的有效距离仅为百公里左右,超过这个界限QKD的成码率和安全性能将更为糟糕难堪。所以在北京和上海之间是无法通过光纤直接进行远程量子密钥分发的。
可信中继站就是为了解决远程量子密钥分发的一个无奈的举措。在京沪量子通信干线的沿途设立几十个中继站,每两个中继站之间的距离不超过一百公里,然后让所有相邻的两个中继站之间作QKD协商出N个不同的密钥。在所有相邻的中继站之间都有了一个共享密钥之后,再依赖传统对称加密技术和传统线路把真正要传递的密钥在相邻的每两个中继站之间反复地加密解密,把密钥从上海一路护送到北京。
密钥在两个中继站之间是以量子状态传递的,中间窃听可以被发现,但是密钥到达每个可信中继站后是以传统电信号的明文格式存在的。换言之,密钥从上海送往北京的一路上被反复穿衣脱衣(即加密解密)三十多次,它们在中继站里是完全是裸奔的。而这些中继站里对密钥进行处理和存贮的计算机又是必须联网的,QKD窃听必被察觉的原理不适用中继站内部,这就带来极为严重的安全隐患。
京沪量子通信干线的30多个可信中继站全都可能成为黑客的攻击目标,而且只需突破一点,全线立即崩溃。黑客既可利用这些中继站的计算机系统的安全漏洞发起攻击,也可在中继站的上百个工作人员中寻找突破口。黑客通过以上手段窃取密钥比直接破解密码要容易得多,所以京沪量子通信干线的安全性远低于传统加密通信干线。
面对量子通信中继站的严重安全隐患,工程的推动者只能依靠人力对中继站采取日以继夜严防死守的下下策,还美其名曰:物理隔离。如果物理隔离可保万无一失。那么又要密码系统何用?使用物理隔离的中继站就称为“可信中继站”,请注意,这个“可信”是量子通信工程建设方定义的,至于量子通信项目的使用者和国家密码管理局认为可信还是不可信,那又是另一回事了。
四)量子通信技术困境之四:缺失身份认证机制,无法抵?“中间人攻击”
网络名言:“你永远不知道网络的对面是一个人还是一条狗!”因此安全通信的前提是你得知道对方是谁,其次才是对话内容的保密,否则就等于主动送上秘密,这是常识。
量子通信(QKD)为甲乙双方分发密钥的过程中,如果彼此的真实身份无法确认,攻击者可以在通信线路中间对甲方冒充乙方,同时对乙方冒充甲方。甲方与攻击者之间、攻击者与乙方之间照样可以顺利协商得到二个密钥,然后甲方把通信内容加密后传送给了攻击者,攻击者用第一个密钥解密获得了全部通信内容,然后再把通信内容用第二个密钥加密后传送给乙方,乙方用密钥解密得到通信内容。甲乙双方还以为依靠量子通信完成了绝对安全的通信,谁知攻击者在暗处偷笑:量子通信传递的秘密“尽入吾彀中矣。”
以上就是典型的“中间人攻击”实例,由此可见通信的安全性有着比私密性更高更强的要求,它不仅要求通信双方传送的内容不能被任何第三者知道,还要确认收发方各自的真实身份,同时还要确保通信内容的完整性和不可篡改性。
传统密码系统依靠数字证书和数字签名来保证文件传送过程中的不可扺赖性和不可篡改性,从而杜绝“中间人攻击”。公钥加密技术由于巧妙地运用了“公钥”和“私钥”这样一对密钥,为通信过程中的身份认证和数字签名提供了灵活有效的解决方案。
虽然理论上对称加密技术在某些特定场合也可提供身份认证的功能,但是在今天的互联网通信环境中,只有一个共享密钥的对称加密技术作身份认证和数字签名是不可想像的。
所谓的量子通信(QKD)只能分发一个共享密钥,它其实只是对称加密技术中的一个子功能,因此量子通信完全不具备为互联网提供切实有效的身份认证和数字签名的能力。量子通信用物理原理依靠硬件偏面追求通信的私密性,误以为通信的私密性就等于通信的安全性(其实QKD在私密性方面也是有争议的),从一开始就走入了歧途把自己带入了深坑中。
由于量子通信本身缺失身份认证和数字签名功能,量子通信在密钥分发时为了防御“中间人”攻击,在它的量子通道和传统检验通道上都必须依赖传统密码作身份认证,被吹嘘得神乎其神的量子通信其实更像是泥菩萨过河—自身难保。众所周知,一个系统的总体安全水平是被系统中的短板决定的,无论量子通信中的量子密钥分发部分有多私密,只要它离不开传统密码,那么量子通信系统的总体安全性就绝不可能超越传统密码系统,
更可悲的是量子通信这个泥菩萨要过河,传统密码技术恐怕也救不了它。因为量子通信QKD分发密钥是一个时间很长的连续过程,而“中间人攻击”可能隨时隨地发生,在这种状况下,无论用何种方法作严格的身份认证都是不可完成的任务。
2020年3月24日,隶属于英国情报部门的国家网络安全中心(NCSC)发布了一份白皮书。该白皮书明确否定了量子通信QKD的实用价值,否定的理由就在“身份认证”这个关键问题上。老谋深算的大英帝国情报机构对密码系统的评估独具慧眼,缺乏身份认证机制确实是量子通信工程化道路上难以逾越的鸿沟。
有必要强调指出,以上四大技术困境都是被量子密钥分发的BB84物理原理所决定了的,单靠工程技术的进步是极难取得实质性的改变。面对上述四大技术困境,正确的方法应审时度势,静下心来加强基础研究,应该考虑扬弃三十多年前IBM的BB84协议,寻找量子通信的全新模式。可惜中国的量子通信团队反其道而行之,非要吊在BB84这棵枯树上,把技术上不成熟又毫无使用价值的BB84协议包装成为工程项目,完全置工程的实用性、可行性、必要性和经济效益于不顾,实属罕见。
为了掩盖量子通信的四大技术困境,就转移视线泡制了两个神话故事。1)“量子通信的无条件安全性是可以用数学证明的”;2)“只有量子通信可以拯救公钥密码危机。”
这两个神话故事就成了对付量子通信批评质疑的挡箭牌。神话故事背后的潜台词就是:虽然量子通信工程有许多技术障碍,但它是无条件绝对安全的,“一好遮百丑”,所有的技术缺陷只能将就吧;虽然量子通信并不具备工程建设的可行性,但传统密码的天空都要塌了,甭多想了不惜代价先上工程再说吧。
以上两个神话故事成了某些人对抗量子通信批评质疑的护身符,也是他们陷入量子通信建设泥潭后手握的最后两根救命稻草。这两个神话误导了许多人、也欺骗了很长时间,现在该是揭露其真相的时候了。
五)量子通信神话之一:量子通信的无条件安全性可以用数学证明
众所周知,传统密码系统基于数学原理,而量子通信是基于物理原理。“量子通信专家”反复宣称:基于数学原理的传统密码的绝对安全性是无法用数学证明的,但是基于物理原理的量子通信的绝对安全性却是可以用数学证明的。能编造出这样离奇的谎言大概也算是创新吧。
“量子通信的无条件安全性是可以用数学证明的”实际上来自两个完全独立的命题:“量子通信的物理过程可以抽象出一个数学模型”,“量子通信的数学模型的无条件安全性是可以用数学证明的”。而“量子通信的无条件安全性是可以用数学证明的”是由前两个命题拼湊出来的一个新命题,它不是三段论逻辑推演的结果,即使前两个命题都是真命题,也不能保证这个新命题就是真命题。
举个例子,气象专家把大气运动过程抽象出一个数学模型,然后利用大型电子计算机求解数学模型中的动力学方程组来制作天气预报。这几十年来,数学建模做得尽善尽美,电子计算机求解方程组的精度要多高可以有多高,但是谁也不会认为天气预报是绝对正确的。从技术水平和成熟程度上来看,量子通信的数学建模和建模后的数值分析的二个方面都较气象预报差之甚远,因此“量子通信的无条件安全性是可以用数学证明的”只能是个伪命题。
事实上到目前为止,“量子通信数学模型的无条件安全性是可以用数学证明的”命题的真实性也一直有争议的,只需查查有关量子通信安全性证明的论文就一清二楚了[5][6]。退一万步,即使量子通信的抽象数学模型将来被证明是无条件安全的,也不能证明量子通信真实的物理过程是无条件绝对安全的,因为数学模型不等于真实的物理过程。无论数学模型做得多完美,它只可能是真实世界部分的和近似的反映,对模型的任何分析和证明只能是真实世界特性的近似结果。
通过QKD取得共享密钥的全过程不单纯是量子力学过程,所以量子力学的不可克隆原理无法保证通过QKD获得的密钥具有绝对的私密性,QKD也不能保证分发的密钥是真随机数,因而使用QKD得到密钥作加密就存在被第三方破解的风险。更可笑的是量子通信推动者错误地把宝都压在了通信的保密性上,殊不知,通信的保密性、真实性、完整性、和可用性共同保证了通信的安全,它们是不可分割的集体。量子通信不仅在理论上无法保证通信的绝对保密性,它对保证通信的真实性、完整性、和可用性等方面更是捉襟见肘、无能为力。“量子通信在理论上是无条件安全的”这句话听上去更像是一种讽刺。
六)量子通信神话之二:QKD可以拯救公钥密码危机
第二个神话编造了如下一个故事:传统公钥密码的安全性无法得到证明,更可怕的是,当量子计算机进入实用阶段后,公钥密码会被轻易破解,这将导致通信系统的灾难。敌对势力甚至现在可能就在收集那些依靠公钥密码保护的文件,等待量子计算机出来后将逐一破解,因此不顾一切地投入量子通信建设是情有可原的。
利用量子计算机在基础研究中的一些成果,宣传量子计算机可以轻易地破解公钥密码,这已经太夸张了,同时又把量子通信工程打扮成拯救公钥密码危机的白马王子,那更是错得离谱。
事实上,能够破解1024位字长公钥密码的量子计算机如果真能造出来的话,那也是在遥远的将来。公钥密码远不是想像中那样的脆弱,抗量子攻击的公钥密码算法(PQC)的研究已经取得实质性成果,新一代的量子计算机无法破解的公钥密码算法产品已经投入测试阶段,公钥密码无需英雄救美。
把量子通信打扮成拯救公钥密码危机的白马王子更是自作多情、不自量力。量子通信工程没有自己的密码算法,它只能为确定的“熟人”之间分发一个共享密钥,本质上仅是对称密码中的一个子功能。如果把公钥密码比作智能手机,那么量子通信工程顶多只能算作固定座机电话。认为固定座机可以代替智能手机的想象力实在也太丰富了。
西方有这样一句谚语:“Be careful what you wish for, it might just come true”(许愿要小心,预想成真并非是好事。)我劝量子通信的推动者就不要再天天咀咒公钥密码了,如果有一天公钥密码真的崩溃了,量子通信才真正脸面扫地走到尽头了。因为到那时人们恍然大悟量子通信原来是百无一用的银样蜡枪头。
“量子通信的无条件安全性是可以用数学证明的”、“只有量子通信可以拯救公钥密码危机”是两个毫无科学根据的神话故事,“极低的成码率”、“不能与互联网兼容”、“极不安全的可信中继站”和“缺失身份认证机制”是量子通信工程无法逾越的四座大山。编造和宣传这两个虚假的神话故事目的是为了掩盖量子通信面临的实实在在难以解决的工程困境。虚假的神话故事与真实的工程困境是硬币的两面。量子通信面临的工程困境越是残酷真实,走入歧途的工程推动者越发需要依赖虚幻的神话去掩盖自己的窘态;神话故事越是虚假离奇,只能说明故事的编导者面对的困境太真实太严酷了,他们除了意淫没有任何其它的对策。
“假作真时真亦假,骗的多是吃瓜人。”京沪量子通信工程完工已有二年,上述四大技术困境一个也没有得到解决,量子通信工程的现在只剩下各级政府买单了。工程投资的费用就不去说它了,现在估计连日常运营维护都无法自理。
工程项目都是效益为王,用户说了算。京沪量子通信工程建成开通已经整整二年过去了,经济效益和用户体验揭示了问题的本质,在这些铁的事实面前一切文字也许是多余的。
“言者谆谆、听者藐藐”,笔者从不奢望能劝醒某些装睡的人。“我们坚持做一件事情,并不是因为这样做一定会有什么效果,而是坚信这样做是对的。”只要有读者能从本文的科普中有所收获和感悟,笔者就心满意足了。
参考文献
[5] Security of Quantum Key Distribution
Security of Quantum Key Distribution
[6] A Correct Security Evaluation of Quantum Key Distribution
https://www.tamagawa.jp/en/research/quantum/bulletin/pdf/Tamagawa.Vol.4-1.pdf