1.一种用于多节点间加密的量子密钥分发与重构方法,应用于网络通信系统,所述网络通信系统包括服务器和n个节点,n≥2,服务器和n个节点通过网络连接,其特征在于:所述服务器和节点均包括相同的混合密码加密模块,服务器还包括量子随机数发生器和密钥拆分模块,节点还包括混合密码解密模块和密钥重构模块;所述方法分为密钥分发和密钥重构两个阶段;
其中,密钥分发阶段包括如下步骤:
S1:预设一段量子随机数序列s1,并将该量子随机数序列s1作为预置密钥存储在硬盘中,备用,服务器和节点均能够通过C语言文件读写命令调用所述预置密钥;
S2:服务器通过其内部的量子随机数发生器生成量子随机数序列S,量子随机数序列S即为量子密钥S;
S3:服务器通过其内部的密钥拆分模块将步骤S2中所述量子密钥S分为n份子密钥;
S4:服务器通过其内部的混合密码加密模块加密步骤S3中所述n份子密钥,并将加密后的n份子密钥分别对应分发给n个节点,完成密钥分发;
其中,密钥重构阶段包括如下步骤:
S1:n个节点分别接收服务器分发的加密后的n份子密钥,各个节点使用自身混合密码解密模块对其接收到的已加密子密钥进行解密,并将解密后的子密钥存储在其内部;
S2:任意两个节点A、B在进行通信之前,节点A向服务器发送与节点B建立通信连接请求消息;
S3:服务器接收所述请求消息并分别验证节点A和节点B身份;
S4:若节点A和节点B中任一节点未通过验证,则请求失败;若均通过验证,服务器向节点A和节点B发送通信许可,进入步骤S5;
S5:节点A从除节点A和节点B以外剩余的n‑2个节点中任意挑选k‑2个节点,请求该k‑2个节点以及节点B的子密钥;同时节点B从除节点A和节点B以外剩余的n‑2个节点中任意挑选k‑2个节点,请求所述k‑2个节点以及节点A的子密钥;
S6:步骤S5中被请求的节点分别使用自身的混合密码加密模块加密子密钥,并将加密后的子密钥发送给节点A、节点B;
S7:节点A和节点B接收加密后的子密钥并采用自身的混合密码解密模块解密已加密子密钥,得到解密后的子密钥;
S8:节点A和节点B分别通过密钥重构模块重构量子密钥S,进行通信。
2.根据权利要求1所述的用于多节点间加密的量子密钥分发与重构方法,其特征在于:所述密钥拆分模块用于将量子密钥S通过Shamir密钥共享算法进行(k,n)门限密钥共享分为n份子密钥。
3.根据权利要求2所述的用于多节点间加密的量子密钥分发与重构方法,其特征在于:所述混合密码加密模块用于通过混合密码加密子密钥,具体作为子密钥的发送方使用对称算法产生对称密钥T,并从硬盘中调取出预置密钥,将所述预置密钥配置在对称密钥T的前面组合成新的组合密钥K,使用所述组合密钥K加密子密钥,得到加密后的子密钥,同时子密钥的发送方用子密钥接收方的公钥加密所述对称密钥T,得到加密对称密钥,加密对称密钥与加密后的子密钥组合,得到加密后的子密钥消息。
4.根据权利要求3所述的用于多节点间加密的量子密钥分发与重构方法,其特征在于:所述混合密码解密模块用于通过混合密码解密子密钥,子密钥接收方接收到加密后的子密钥消息之后,将其分离,得到加密对称密钥与加密后的子密钥,并用自己的私钥解密加密对称密钥得到对称密钥T,然后将所述对称密钥T与所述预置密钥组合产生新的组合密钥K,用所述组合密钥K解密加密后的子密钥得到子密钥信息。
5.根据权利要求4所述的用于多节点间加密的量子密钥分发与重构方法,其特征在于:所述密钥重构模块用于根据子密钥构造拉格朗日插值公式,得出量子密钥S。