随着墨子号上天量子密码热遍了大江南北,许多单位都加入了量子密码机制的研发,连一向不甘寂寞、凡事喜欢出头的电商也沾上了量子密码的光环。
量子密码并不是用量子比特直接编码明文产生密文,而是收发双方(Alice和Bob)利用量子的不可复制性实行密钥分配,随后用此密钥进行数学意义上的密码算法。任何窃听者(Eve)的被动监听都能被Alice和Bob发现。典型的量子密钥分配协议有BB84、B92和EPR等。其中EPR要用到量子纠缠,在工程上怎么远距离产生纠缠的量子对尚且不明,这里我也不去猜测了。BB84协议被证明是安全的,量子们其实也没有被经典意义上的“编码”过,而只是被强制为某种偏振态并定义为代表了经典比特的0或1。量子力学的简单粗暴让攻击者看着量子干瞪眼。
但是工程实践中量子密钥分配的密码系统一定是安全的吗?我想至少在以下六个方面它是存疑的。
第一,如果利用量子分配了密钥,而后用它执行经典(这里用经典区分量子)密码学的分组加密算法,那么任何针对此分组加密的破解方法仍然可用于对这个“量子密钥分配的密码系统”的破解。
量子密钥分配的优势只存在于密钥分配过程的“绝对安全”,然而很多密码学破解并不用获得密钥,经典密码学利用公钥机制分配密钥至少目前也是实践中安全的。量子密钥分配的密码系统只有应用于一次一密才是完美的,可是量子密钥成码率约占量子比特总数的1/4使得密钥一般被节约着用于分组加密。
第二,量子密钥分配的工程真能再现量子信息理论的完备性吗?
Alice和Bob发现Eve监听是因为Eve动了他们之间的“那个”量子,但是假如Eve没动呢?假如Alice传给Bob的并不是一个一个单量子串,而是两个一团、甚至三个一团的量子串呢?Eve只监听两个量子中的一个、放走另一个给Bob能被发现吗?怎么保证Alice发送的是纯净的单量子串?我们可以做到只激活一个量子飞出去吗?能证明吗?理论上要么量子串是单一的纯净,要么每个量子团纠缠在一起。
第三,假如Eve不是为了破解、而是专注于干扰呢?
Eve只是被动的监听,达到让Alice和Bob一直处于密钥协商的状态,却无法传送消息。这相当于DOS攻击了。
第四,假如Eve主动介入通道中呢?
Alice和Bob的设备首先需要解决相互认证的问题,设备是通过物理安全还是自动化的认证协议来保护?这可能又回归到经典密码学领域了。Eve能充当中间人,分别和Alice和Bob建立量子通道吗?Eve有可能替换了量子中继器吗?量子再强大,这些攻击和量子也无关。
第五,Alice编码量子偏振态的那串随机数和量子无关,可以认为是一串控制用的经典比特。它的随机性和经典密码学的随机数生成相当,越接近真随机越好。
第六,假如整个量子通道是理论般完备的,那么设备端就是防护的重点了,其中用到的芯片、软件可以被植入后门吗?
Eve不是在量子上煞费苦心,而是专注于当量子比特转化为经典比特后的那些经典的攻击了。
本文转自d1net(转载)