CN115226416B - 一种根密钥保护方法和系统 - Google Patents
一种根密钥保护方法和系统 Download PDFInfo
- Publication number
- CN115226416B CN115226416B CN202180003923.0A CN202180003923A CN115226416B CN 115226416 B CN115226416 B CN 115226416B CN 202180003923 A CN202180003923 A CN 202180003923A CN 115226416 B CN115226416 B CN 115226416B
- Authority
- CN
- China
- Prior art keywords
- node
- key
- key material
- information
- nodes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 239000000463 material Substances 0.000 claims abstract description 476
- 238000004364 calculation method Methods 0.000 claims abstract description 96
- 238000004891 communication Methods 0.000 claims description 35
- 238000012545 processing Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 12
- 230000011218 segmentation Effects 0.000 claims description 11
- 230000006870 function Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 14
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000010295 mobile communication Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例提供了一种根密钥保护方法和系统,使能在基于安全两方计算中,容错3个以上节点中的任意两个节点发生故障,并且在2个节点参与计算的基础上,只增加一个节点就能容错任意一个节点发生故障,该方法在冗余节点上部署多份密钥材料,提高了根密钥保护方法的可靠性,并且保证了同一节点上的密钥材料无法恢复出根密钥,保证了安全性。该根密钥保护方法通过使用二进制标签对参与安全两方计算的节点进行分类,使能将参与安全两方计算的节点在协商密钥的过程中分为主节点和辅节点,其中主节点负责所有节点的密钥的生成,辅节点负责生成自身所需密钥,并且使得任意两个节点的密钥材料中的相同列的密钥材料的异或结果相同,即根密钥相同。
Description
技术领域
本申请涉及通信领域,并且更具体地,涉及一种根密钥保护方法和系统。
背景技术
在三层密钥分层体系中,根密钥加密主密钥,主密钥加密工作密钥,工作密钥加密业务敏感数据。根密钥位于密钥分层的最底层,已经无密钥对其进行加密,因此其决定了整个密码系统的安全性。安全两方计算(secure two-party computation,2PC)可实现对根密钥的有效保护。
安全两方计算的成功执行需要参与计算的两方节点同时可用,任意一个节点出现故障,都将使两方计算失败。在确保安全性的基础上,目前通过增加冗余的计算节点(或称主备方式,即为两方计算的主节点增加备用节点)保障两方计算的顺利执行,并且在两个节点的基础上至少需要再增加两个节点来容错任意一个节点发生故障。然而这种方式并不能容错多个节点(节点数量大于3)中的任意两个节点发生故障,因此如何提高基于2PC的密钥保护方法的可靠性是一个亟待解决的问题。
发明内容
本申请提供一种根密钥保护方法和系统,使能在基于安全两方计算的对根密钥的保护中,容错多个节点(节点数量大于3)中的任意两个节点发生故障,或者容错三个节点中的任意一个节点发生故障,有效地提高基于安全两方计算的密钥保护方法的可靠性。
第一方面,提供了一种根密钥保护方法,应用在包括n个节点的系统中,所述n个节点包括第一主节点、第二主节点和至少一个辅节点,所述n个节点中的每个节点存储有第一关联关系信息,所述第一关联关系信息用于指示所述n个节点中的每个节点对应的二进制标签,n为大于2的整数,2k≥n,k为所述二进制标签的位数,所述第一主节点对应的第一二进制标签的每一位都是0,所述第二主节点对应的第二二进制标签的每一位都是1,任意两个辅节点对应的二进制标签不同,且每个辅节点对应的二进制标签中包括至少一个数字0和至少一个数字1,所述方法包括:第一辅节点从第一主节点接收第一信息,所述第一信息包括第一密钥材料的一部分,所述第一密钥材料是所述第一主节点使用的密钥材料,所述第一信息是基于所述第一辅节点对应的第三二进制标签确定的;第一辅节点从第二主节点接收第二信息,所述第二信息包括第二密钥材料的一部分,所述第二密钥材料是所述第二主节点使用的密钥材料,所述第二信息是基于所述第三二进制标签确定的;所述第一辅节点根据所述第一信息和所述第二信息,生成第三密钥材料,其中,所述第一密钥材料和所述第二密钥材料中相同列的密钥材料的异或结果相同,所述第二密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同,所述第一密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同;所述第一辅节点将所述第三密钥材料中的一个密钥材料作为安全两方计算的输入。
本申请实施例需要说明的是,在协商密钥的时候,才有主辅节点之分,在后续的执行多方计算加解密过程中,所有节点是平等节点,功能相同。
本申请实施例中,通过使用二进制标签对参与两方计算的节点进行分类,使能将参与两方计算的节点在协商密钥的过程中分为主节点和辅节点,其中主节点负责所有节点的密钥的生成,辅节点负责自身所需密钥的生成,并且使得任意两个节点的密钥材料中的相同列的密钥材料的异或结果相同,即根密钥相同。在基于安全两方计算中,该方法能容错多个节点(节点数量大于3)中的任意两个节点发生故障,并且在2个节点参与两方计算的基础上,可以只增加一个节点就可以容错任意一个节点发生故障,该方法在冗余节点上部署多份密钥材料,有效提高了(2,n)阈值的基于两方计算的根密钥保护方法的可靠性,并且保证了同一节点上的密钥材料无法恢复出根密钥,保证了安全性。
结合第一方面,在第一方面的某些实现方式中,所述第一密钥材料为所述第一主节点生成的k个随机数。
结合第一方面,在第一方面的某些实现方式中,所述第二密钥材料为所述第二主节点根据第一随机数和第一辅助信息确定的,所述第一辅助信息是所述第一主节点根据所述第一密钥材料确定的。
本申请实施例中,第一主节点通过生成第一辅助信息,使能第二主节点根据第一随机数和第一辅助信息确定第二密钥材料,只根据该第二密钥材料无法获知第一密钥材料,并且无法恢复出根密钥,进一步提高了(2,n)阈值的基于两方计算的根密钥保护方法的安全性。
结合第一方面,在第一方面的某些实现方式中,所述第一信息包括第一密钥材料的一部分包括:所述第一信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为1的值为0,所述k个值中对应的所述第三二进制标签位为0的值为所述第一密钥材料中对应位置的值。
本申请实施例中,假设第一密钥材料为(R0,R1),该第一密钥材料对应的二进制标签为“0,0”,第一信息对应的二进制标签(即第三二进制标签)为“0,1”,那么第一信息为(R0,0)。
结合第一方面,在第一方面的某些实现方式中,所述第二信息包括第二密钥材料的一部分包括:所述第二信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为0的值为0,所述k个值中对应的所述第三二进制标签位为1的值为所述第二密钥材料中对应位置的值。
本申请实施例中,假设第二密钥材料为(R2,R3),该第二密钥材料对应的二进制标签为“1,1”,第一信息对应的二进制标签(即第三二进制标签)为“0,1”,那么第一信息为(0,R3)。
本申请实施例中,第一辅节点通过利用第一信息和第二信息生成第三密钥材料,例如(R0,R3),保证了任意两个节点的密钥材料中的相同列的密钥材料的异或结果相同,即(2,n)阈值的基于两方计算的根密钥保护方法的可靠性,并且从第三密钥材料中无法恢复出第一密钥材料和第二密钥材料,保证了安全性。
结合第一方面,在第一方面的某些实现方式中,所述第一辅节点将所述第三密钥材料中的一个密钥材料作为安全两方计算的输入包括:所述第一辅节点获取可用两方节点指定模块发送的可用两方节点标识,所述可用两方节点标识包括第一标识和第二标识;所述第一辅节点确定所述第一标识为所述第一辅节点的节点标识,所述第一辅节点根据所述第三密钥材料确定第一输入密钥材料,所述第一输入密钥材料是所述第三密钥材料的其中一个密钥材料,所述第一辅节点将所述第一输入密钥材料作为安全两方计算的输入。
本申请实施例中,可用两方节点指定模块发送的可用两方节点标识,可以辅助在容错多个节点(节点数量大于3)中的任意两个节点发生故障(或者三个节点中任意一个节点发生故障)的过程中可用节点的指定,更好的应对故障的发生。
第二方面,提供了一种根密钥生成网络设备,所述网络设备被包括在n个节点的系统中,所述n个节点包括第一主节点、第二主节点和至少一个辅节点,所述n个节点中的每个节点存储有第一关联关系信息,所述第一关联关系信息用于指示所述n个节点中的每个节点对应的二进制标签,n为大于2的整数,2k≥n,k为所述二进制标签的位数,所述第一主节点对应的第一二进制标签的每一位都是0,所述第二主节点对应的第二二进制标签的每一位都是1,任意两个辅节点对应的二进制标签不同,且每个辅节点对应的二进制标签中包括至少一个数字0和至少一个数字1,所述网络设备为第一辅节点,所述网络设备包括:接收单元,所述接收单元用于从第一主节点接收第一信息,所述第一信息包括第一密钥材料的一部分,所述第一密钥材料是所述第一主节点使用的密钥材料,所述第一信息是基于所述第一辅节点对应的第三二进制标签确定的;所述接收单元用于从第二主节点接收第二信息,所述第二信息包括第二密钥材料的一部分,所述第二密钥材料是所述第二主节点使用的密钥材料,所述第二信息是基于所述第三二进制标签确定的;处理单元,所述处理单元用于根据所述第一信息和所述第二信息,生成第三密钥材料,其中,所述第一密钥材料和所述第二密钥材料中相同列的密钥材料的异或结果相同,所述第二密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同,所述第一密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同;所述处理单元用于将所述第三密钥材料中的一个密钥材料作为安全两方计算的输入。
本申请实施例需要说明的是,在协商密钥的时候,才有主辅节点之分,在后续的执行多方计算加解密过程中,所有节点是平等节点,功能相同。
本申请实施例中,通过使用二进制标签对参与两方计算的节点进行分类,使能将参与两方计算的节点在协商密钥的过程中分为主节点和辅节点,其中主节点负责所有节点的密钥的生成,辅节点负责自身所需密钥的生成,并且使得任意两个节点的密钥材料中的相同列的密钥材料的异或结果相同,即根密钥相同。在基于安全两方计算中,该方法能容错多个节点(节点数量大于3)中的任意两个节点发生故障,并且在2个节点参与两方计算的基础上,可以只增加一个节点就可以容错任意一个节点发生故障,该方法在冗余节点上部署多份密钥材料,有效提高了(2,n)阈值的基于两方计算的根密钥保护方法的可靠性,并且保证了同一节点上的密钥材料无法恢复出根密钥,保证了安全性。
结合第二方面,在第二方面的某些实现方式中,所述第一密钥材料为所述第一主节点生成的k个随机数。
结合第二方面,在第二方面的某些实现方式中,所述第二密钥材料为所述第二主节点根据第一随机数和第一辅助信息确定的,所述第一辅助信息是所述第一主节点根据所述第一密钥材料确定的。
本申请实施例中,第一主节点通过生成第一辅助信息,使能第二主节点根据第一随机数和第一辅助信息确定第二密钥材料,只根据该第二密钥材料无法获知第一密钥材料,并且无法恢复出根密钥,进一步提高了(2,n)阈值的基于两方计算的根密钥保护方法的安全性。
结合第二方面,在第二方面的某些实现方式中,所述第一信息包括第一密钥材料的一部分包括:所述第一信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为1的值为0,所述k个值中对应的所述第三二进制标签位为0的值为所述第一密钥材料中对应位置的值。
本申请实施例中,假设第一密钥材料为(R0,R1),该第一密钥材料对应的二进制标签为“0,0”,第一信息对应的二进制标签(即第三二进制标签)为“0,1”,那么第一信息为(R0,0)。
结合第二方面,在第二方面的某些实现方式中,所述第二信息包括第二密钥材料的一部分包括:所述第二信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为0的值为0,所述k个值中对应的所述第三二进制标签位为1的值为所述第二密钥材料中对应位置的值。
本申请实施例中,假设第二密钥材料为(R2,R3),该第二密钥材料对应的二进制标签为“1,1”,第一信息对应的二进制标签(即第三二进制标签)为“0,1”,那么第一信息为(0,R3)。
本申请实施例中,第一辅节点通过利用第一信息和第二信息生成第三密钥材料,例如(R0,R3),保证了任意两个节点的密钥材料中的相同列的密钥材料的异或结果相同,即(2,n)阈值的基于两方计算的根密钥保护方法的可靠性,并且从第三密钥材料中无法恢复出第一密钥材料和第二密钥材料,保证了安全性。
结合第二方面,在第二方面的某些实现方式中,所述处理单元用于将所述第三密钥材料中的一个密钥材料作为安全两方计算的输入包括:所述接收单元获取可用两方节点指定模块发送的可用两方节点标识,所述可用两方节点标识包括第一标识和第二标识;所述处理单元用于确定所述第一标识为所述第一辅节点的节点标识,所述处理单元用于根据所述第三密钥材料确定第一输入密钥材料,所述第一输入密钥材料是所述第三密钥材料的其中一个密钥材料,所述处理单元用于将所述第一输入密钥材料作为安全两方计算的输入。
本申请实施例中,可用两方节点指定模块发送的可用两方节点标识,可以辅助在容错多个节点(节点数量大于3)中的任意两个节点发生故障(或者三个节点中任意一个节点发生故障)的过程中可用节点的指定,更好的应对故障的发生。
第三方面,提供了一种根密钥保护系统,包括n个参与密钥计算的节点、二进制标签分配服务器、可用两方节点指定模块;所述二进制标签分配服务器用于根据n生成二进制标签,n为大于2的整数,2k≥n,k为所述二进制标签的位数,将所述二进制标签分配给所述n个节点,向所述n个节点发送第一关联关系信息,所述第一关联关系信息用于指示所述n个节点中的每个节点对应的二进制标签、第一主节点、第二主节点和至少一个辅节点,其中,所述第一主节点对应的第一二进制标签的每一位都是0,所述第二主节点对应的第二二进制标签的每一位都是1,任意两个辅节点对应的二进制标签不同,且每个辅节点对应的二进制标签中包括至少一个数字0和至少一个数字1;所述第一主节点用于确定第一密钥材料,所述第一密钥材料的列数为k,所述第一密钥材料用于作为所述第一主节点执行安全两方计算的输入;所述第二主节点用于确定第二密钥材料,所述第二密钥材料的列数为k,所述第二密钥材料用于作为所述第二主节点执行安全两方计算的输入;第一辅节点用于接收第一信息和第二信息,并根据所述第一信息和所述第二信息确定第三密钥材料,所述第三密钥材料的列数为k,所述第三密钥材料用于作为所述第一辅节点执行安全两方计算的输入,所述第一辅节点为所述至少一个辅节点中的一个,其中,所述第一信息是所述第一主节点根据所述第一辅节点对应的第三二进制标签确定并发送的,所述第一信息包括所述第一密钥材料的一部分,所述第二信息是所述第二主节点根据所述第一辅节点对应的第三二进制标签确定并发送的,所述第二信息包括所述第二密钥材料的一部分,所述第一密钥材料和所述第二密钥材料中相同列的密钥材料的异或结果相同,所述第二密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同,所述第一密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同;所述可用两方节点指定模块用于接收第一指示信息,所述第一指示信息用于指示两个可用于执行安全两方计算的节点,根据所述第一指示信息向所述两个可用于执行安全两方计算的节点发送第二指示信息,所述第二指示信息用于指示所述两个可用于执行安全两方计算的节点执行安全两方计算以及使用的密钥材料所对应的第一列数。
本申请实施例中,由于任意两个节点的密钥材料的相同列的异或结果相同,使能在基于安全两方计算的对根密钥的保护中,容错多个节点(节点数量大于3)中的任意两个节点发生故障,或者容错三个节点中的任意一个节点发生故障,有效地提高基于安全两方计算的密钥保护方法的可靠性,并且保证了同一节点上的密钥材料无法恢复出根密钥,保证了安全性。
结合第三方面,在第三方面的某些实现方式中,所述系统还包括根密钥分割模块,所述根密钥分割模块用于确定k个随机数作为所述第一密钥材料,根据第一根密钥和所述第一密钥材料确定所述第二密钥材料,向所述第一主节点发送所述第一密钥材料,向所述第二主节点发送所述第二密钥材料。
本申请实施例中,当两个主协商节点协商不成功时,通过设置根密钥分割模块,辅助参与两方计算的节点的各自密钥材料的生成,进一步提高了基于安全两方计算的密钥保护方法的可靠性。
结合第三方面,在第三方面的某些实现方式中,所述第一主节点用于确定k个随机数作为所述第一密钥材料,根据所述第一密钥材料确定第一辅助信息,所述第一辅助信息用于所述第二主节点确定第二密钥材料,并向所述第二主节点发送所述第一辅助信息。
结合第三方面,在第三方面的某些实现方式中,所述第二主节点用于接收所述第一辅助信息,并根据第一随机数和所述第一辅助信息确定第二密钥材料。
本申请实施例中,第一主节点通过生成第一辅助信息,使能第二主节点根据第一随机数和第一辅助信息确定第二密钥材料,只根据该第二密钥材料无法获知第一密钥材料,并且无法恢复出根密钥,进一步提高了(2,n)阈值的基于两方计算的根密钥保护方法的安全性。
结合第三方面,在第三方面的某些实现方式中,所述第一信息包括所述第一密钥材料的一部分包括:所述第一信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为1的值为0,所述k个值中对应的所述第三二进制标签位为0的值为所述第一密钥材料中对应位置的值。
本申请实施例中,假设第一密钥材料为(R0,R1),该第一密钥材料对应的二进制标签为“0,0”,第一信息对应的二进制标签(即第三二进制标签)为“0,1”,那么第一信息为(R0,0)。
结合第三方面,在第三方面的某些实现方式中,所述第二信息包括所述第二密钥材料的一部分包括:所述第二信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为0的值为0,所述k个值中对应的所述第三二进制标签位为1的值为所述第二密钥材料中对应位置的值。
本申请实施例中,假设第二密钥材料为(R2,R3),该第二密钥材料对应的二进制标签为“1,1”,第一信息对应的二进制标签(即第三二进制标签)为“0,1”,那么第一信息为(0,R3)。
本申请实施例中,第一辅节点通过利用第一信息和第二信息生成第三密钥材料,例如(R0,R3),保证了任意两个节点的密钥材料中的相同列的密钥材料的异或结果相同,即(2,n)阈值的基于两方计算的根密钥保护方法的可靠性,并且从第三密钥材料中无法恢复出第一密钥材料和第二密钥材料,保证了安全性。
结合第三方面,在第三方面的某些实现方式中,所述第一主节点接收所述第二指示信息,所述第一主节点确定所述第二指示信息包括所述第一主节点的标识,所述第一主节点根据所述第二指示信息确定所述第一列数,并将所述第一列数对应的第一密钥材料中的第一输入密钥材料作为执行安全两方计算的输入。
本申请实施例中,可用两方节点指定模块发送的可用两方节点标识,可以辅助在容错多个节点(节点数量大于3)中的任意两个节点发生故障(或者三个节点中任意一个节点发生故障)的过程中可用节点的指定,更好的应对故障的发生。
结合第三方面,在第三方面的某些实现方式中,所述第二主节点接收所述第二指示信息,所述第二主节点确定所述第二指示信息包括所述二主节点的标识,所述第二主节点根据所述第二指示信息确定所述第一列数,并将所述第一列数对应的第二密钥材料中的第二输入密钥材料作为执行安全两方计算的输入。
结合第三方面,在第三方面的某些实现方式中,所述第一辅节点接收所述第二指示信息,所述第一辅节点确定所述第二指示信息包括所述第一辅节点的标识,所述第一辅节点根据所述第二指示信息确定所述第一列数,并将所述第一列数对应的第三密钥材料中的第三输入密钥材料作为执行安全两方计算的输入。
第四方面,提供了一种通信设备,所述通信设备包括用于执行第一方面或第一方面任一种可能实现方式的各个单元,该通信设备可以为网络设备或基带芯片。
第五方面,提供了一种通信系统,所述通信系统包括用于执行第三方面或第三方面任一种可能实现方式的各个设备,其中,该通信系统可以由网络设备组成。
第六方面,提供了一种通信设备,包括收发组件和处理器,使得该通信设备执行第一方面或第一方面任一种可能实现方式中的方法。其中,该通信设备可以是网络设备或基带芯片。若该通信设备为网络设备,该收发组件可以为收发机,若该通信设备为基带芯片,该收发组件可以为基带芯片的输入/输出电路。
第七方面,提供了一种通信系统,该通信系统由第三方面的各个通信设备构成,每个通信系设备包括收发组件和处理器。其中,通信设备可以是网络设备或基带芯片。若通信设备为网络设备,该收发组件可以为收发机,若通信设备为基带芯片,该收发组件可以为基带芯片的输入/输出电路。
第八方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被通信设备运行时,使得所述通信设备执行上述第一方面或第一方面任一种可能实现方式中的方法。
第九方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被通信设备运行时,使得所述通信设备执行上述第三方面或第三方面任一种通信设备涉及的方法。
第十方面,提供了一种计算机可读介质,所述计算机可读介质存储有程序代码,所述程序代码包括用于执行第一方面或第一方面任一种可能实现方式中的方法的指令。
第十一方面,提供了一种计算机可读介质,所述计算机可读介质存储有程序代码,所述程序代码包括用于执行第三方面或第三方面任一种通信设备涉及的方法的指令。
第十二方面,提供了一种芯片系统,包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有所述芯片系统的通信装置执行如上述第一方面或第一方面任一种可能实现方式中的方法。
第十三方面,提供了一种无线通信的装置,包括:用于实现如上述第一方面或第一方面任一种可能实现方式中的方法的单元。
在本申请中,通过使用二进制标签对参与两方计算的节点进行分类,使能将参与两方计算的节点在协商密钥的过程中都参与了密钥的生成,并且任意两个节点的密钥材料中的相同列的密钥材料的异或结果相同,即根密钥相同。在基于安全两方计算中,该方法能容错多个节点(节点数量大于3)中的任意两个节点发生故障,并且在2个节点参与两方计算的基础上,可以只增加一个节点就可以容错任意一个节点发生故障,该方法在冗余节点上部署多份密钥材料,有效提高了(2,n)阈值的基于两方计算的根密钥保护方法的可靠性,并且保证了同一节点上的密钥材料无法恢复出根密钥,保证了安全性。
附图说明
图1是本申请的实施例应用的场景示意图;
图2是本申请的实施例应用的另一场景示意图;
图3是本申请的(2,n)阈值的基于2PC的密钥保护方法的场景示意图;
图4是本申请的实施例的根密钥保护方法的一例示意性交互图;
图5是本申请的实施例的根密钥保护方法的另一例示意性交互图;
图6是根据本申请实施例的网络设备的一例的示意性框图;
图7是根据本申请实施例的网络设备的又一例的示意性框图;
图8是根据本申请实施例的根密钥保护系统的一例的示意性框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
还应理解,申请实施例中的“第一”或“第二”或“第三”仅为了区分,不应对本申请构成任何限定。
本申请实施例的技术方案可以应用于各种通信系统,例如:全球移动通讯(globalsystem of mobile communication,GSM)系统、码分多址(code division multipleaccess,CDMA)系统、宽带码分多址(wideband code division multiple access,WCDMA)系统、通用分组无线业务(general packet radio service,GPRS)、长期演进(long termevolution,LTE)系统、LTE频分双工(frequency division duplex,FDD)系统、LTE时分双工(time division duplex,TDD)、通用移动通信系统(universal mobiletelecommunication system,UMTS)、全球互联微波接入(worldwide interoperabilityfor microwave access,WiMAX)通信系统、第五代(5th generation,5G)系统或新无线(newradio,NR)等。
本申请实施例中的终端设备,也可以称为用户设备(user equipment,UE)、接入终端、终端设备单元(subscriber unit)、终端设备站、移动站、移动台(mobile station,MS)、远方站、远程终端、移动设备、用户终端、终端(terminal)、无线通信设备、终端设备代理或终端设备装置。终端设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备。还可以包括用户单元、蜂窝电话(cellular phone)、智能手机(smart phone)、无线数据卡、个人数字助理(personaldigital assistant,PDA)电脑、平板型电脑、无线调制解调器(modem)、手持设备(handset)、膝上型电脑(laptop computer)、机器类型通信(machine typecommunication,MTC)终端、无线局域网(wireless local area networks,WLAN)中的站点(station,ST)。可以是蜂窝电话、无绳电话、会话启动协议(session initiationprotocol,SIP)电话、无线本地环路(wireless local loop,WLL)站以及下一代通信系统,例如,5G网络中的终端设备或者未来演进的PLMN网络中的终端设备等。
本申请实施例中的网络设备可以是用于与终端设备通信的设备,该网络设备可以是全球移动通讯(global system of mobile communication,GSM)系统或码分多址(codedivision multiple access,CDMA)中的基站(base transceiver station,BTS),也可以是宽带码分多址(wideband code division multiple access,WCDMA)系统中的基站(nodeB,NB),还可以是LTE系统中的演进型基站(evolutional nodeB,eNB或eNodeB),还可以是云无线接入网络(cloud radio access network,CRAN)场景下的无线控制器,或者该网络设备可以为中继站、接入点、车载设备、可穿戴设备以及5G网络中的网络设备或者未来演进的PLMN网络中的网络设备等,本申请实施例并不限定。
为了便于理解,以下将对本申请实施例所涉及的基本概念作简单介绍。
1-out-2不经意传输(OT):在1-out-2不经意传输协议中,爱丽丝每次发两条信息(m1、m2)给鲍勃,鲍勃提供一个输入,并根据输入获得输出信息,在协议结束后,鲍勃得到了自己想要的那条信息(m1或者m2),其它剩余的信息不能得到,而爱丽丝并不知道鲍勃最终得到的是哪条信息。
安全多方计算(Secure Multi-Party Computation,MPC):针对无可信第三方的情况下,如何安全地计算一个约定函数的问题。多方计算的目标就是对一组计算的参与者,每个参与者拥有自己的输入数据,并且不信任其它参与者和任何第三方,在这种前提下,如何在保护各自私密输入数据下共同合作完成一个约定功能函数的计算任务。
安全两方计算(secure two-party computation,2PC):2PC是MPC的子问题,2PC允许两方共同在各自的输入数据上计算任意函数,而无需与对方共享其输入数据。不经意传输OT是2PC的一个重要技术。
三层密钥分层体系:根密钥加密主密钥,主密钥加密工作密钥,工作密钥加密业务敏感数据。
根密钥:在三层密钥分层体系中,根密钥位于密钥分层的最底层,决定了整个密码系统的安全性。
主密钥:在三层密钥分层体系中,主密钥是直接被根密钥加密的数据对象。
布尔电路:将两方参与的安全计算函数编译成布尔电路的形式。根据计算模型理论,任何安全计算函数都可转换成对应布尔电路的形式。
混淆电路:首先将两方参与计算的安全函数编译成布尔电路的形式,然后将布尔电路的真值表加密打乱,从而实现电路的正常输出而又不泄露参与计算的双方私有信息。
基于2PC的密钥保护:随机生成两份密钥材料,将两份密钥材料的异或结果作为密钥。这两份密钥材料分别作为2PC两方计算参与者的私密输入,两方参与者在各自私密的输入数据上共同计算加密/解密算法,最终得到加密结果或者解密结果,计算过程中任何一方无法恢复出密钥或者同时获取两份密钥材料。
(2,n)阈值的基于2PC的密钥保护:n个计算节点,任意两个节点中存在两份密钥材料的异或结果等于密钥。即任意两个节点存在两份密钥材料可作为基于2PC的密钥保护的输入,进行两方计算计算加解密结果。换句话说,任意n-2个节点发生故障,只要存在有两个节点可用,便可以执行两方计算算法。
下面将结合附图,对本申请中的技术方案进行描述。
图1是本申请的实施例应用场景100示意图。
图1示出了随机协商根密钥场景下,基于2PC的根密钥保护实现方法。总的来说,可分为以下步骤进行:
步骤S110:随机生成两份密钥材料R0和R1,将这两份密钥材料的异或结果作为根密钥;
步骤S120:将密钥材料R0和R1分别保存在两方节点,即节点1和节点2;
步骤S130:两方节点将各自的密钥材料作为两方计算的秘密输入,共同合作计算一个约定的加解密函数。
图2是本申请的实施例应用的另一场景200示意图。
图2示出了已知根密钥场景下,基于2PC的根密钥保护实现方法。总的来说,可分为下步骤进行:
步骤S210:将已知根密钥分割成两份密钥材料R0和R1,分割原则为两份密钥材料的异或结果等于根密钥;
步骤S220:将密钥材料R0和R1分别保存在两方节点,即节点1和节点2;
步骤S230:两方节点将各自的密钥材料作为两方计算的秘密输入,共同合作计算一个约定的加解密函数。
图3是本申请的(2,n)阈值的基于2PC的密钥保护方法的又一场景300示意图,其中,n>2。该场景涉及的网元/节点有以下几种:
二进制标签分配服务器310:该二进制标签分配服务器310为所有节点分配二进制标签,并将分配到全0和全1的二进制标签的节点指定为主协商节点。然后,将所有节点对应的二进制标签和主协商节点信息分发到每个节点上存储。
具体地,该二进制标签分配服务器310的分配标签的过程可以是:
步骤a1:从n个节点获取n个节点标识NodeID0,NodeID1,...,NodeIDn。
步骤a2:根据数量n确定整数k,使得2^k>=n,然后生成位数为k的二进制标签,标签数量为2^k个,分别为{Label0,Label1,...,Lable2^(k-1)}。
步骤a3:将该2^k个二进制标签分配给n个节点,将分配到全0和全1的标签的节点指定为主协商节点(例如为NodeID0分配全0标签,为NodeIDn分配全1标签),分配到其它标签的节点指定为非主协商节点。
步骤a4:将所有节点对应的二进制标签信息分发到每个节点上,每个节点都会存储该所有节点对应的二进制标签信息。
在一种可能的实施方式中,该二进制标签分配服务器310将主协商节点信息发送到每个节点上,每个节点都会存储该主协商节点信息。
在一种可能的实施方式中,该二进制标签分配服务器310与所有节点约定为:分配到全0标签的节点和全1标签的节点为主协商节点,应理解,此时则不需该二进制标签分配服务器310发送主协商节点信息。
例如,节点数量n=3时,该二进制标签分配服务器310确定整数k为2,生成二进制标签列表,然后分配给3个节点,分配到全0和全1的标签的节点指定为主协商节点,标签列表和节点的关系例如表1。
表1
二进制标签序列 | 二进制标签 | 节点 | 节点类型 |
Label0 | 0,0 | 节点1 | 主协商节点 |
Label1 | 0,1 | 节点2 | 非主协商节点 |
Label2 | 1,0 | 空 | 空 |
Label3 | 1,1 | 节点3 | 主协商节点 |
从表1中可以看出,节点1和节点3为主协商节点,节点2为非主协商节点,不为二进制标签“1,0”分配节点。应理解,节点2的二进制标签也可以为“1,0”,不为二进制标签“0,1”分配节点。
二进制标签服务器310可应用的场景为,例如,当全0标签节点和/或全1标签节点不能正常工作时,二进制标签服务器310可重新对所有节点进行二进制标签分配,重新确定主协商节点和非主协商节点。
可用两方节点指定模块320:负责从n个节点中获取任意两个可用节点信息并发送给对应的两个节点,以指导两个可用节点选择对应的密钥材料作为两方计算的秘密输入并执行两方计算算法。
可用两方节点指定模块320可应用于,例如,当负责进行两方计算的两个节点不能进行两方计算时,可用两方节点指定模块320重新指定可以进行两方计算的节点。
根密钥分割模块330:负责将已知根密钥通过异或操作分割成两组密钥材料,使得两组密钥材料对应的每一列(相同位置/相同列数的密钥材料)的异或结果等于根密钥。还负责将生成的第一密钥材料组分发给全0标签节点存储,第二密钥材料组分发给全1标签节点存储。
根密钥分割模块330可应用于,例如,当全0标签节点和全1标签节点协商根密钥不成功时,根密钥分割模块330可根据已知根密钥生成两组密钥材料,并将两组密钥材料分别分发给全0标签节点和全1标签节点。
主协商节点(标签全0)340:负责接收和存储二进制标签分配服务器310发送的所有节点的二进制标签和主协商节点信息。在随机协商根密钥场景,负责随机生成全0二进制标签对应的密钥材料,并将密钥材料辅助计算信息发送给主协商节点(标签全1)350,其中密钥材料辅助计算信息不泄露主协商节点(标签全0)340的任一密钥材料;在已知根密钥场景,主协商节点(标签全0)340负责接收根密钥分割模块330的第一密钥材料组作为全0二进制标签对应的密钥材料。负责接收和认证其他非主协商节点的密钥材料请求,并为非主协商节点的二进制标签中值为0的列分配对应的密钥材料。还负责接收可用两方节点指定模块320发送的两个可用节点的信息,如果该信息中的可用节点标识包含自身标识,则将可用两方节点指定模块确定的第i列的密钥材料作为两方计算算法的秘密输入(i为主协商节点的二进制标签中的位数,例如i=0,1,...,k-1),并执行两方计算算法。
主协商节点(标签全1)350:负责接收和存储二进制标签分配服务器310发送的所有节点的二进制标签和主协商节点信息。在随机协商根密钥场景,接收主协商节点(标签全0)340的密钥材料辅助计算信息,根据密钥材料辅助计算信息计算得到主协商节点(标签全1)350对应的密钥材料。在已知根密钥场景,负责接收根密钥分割模块发送的第二密钥材料组作为主协商节点(标签全1)350对应的密钥材料。负责接收和认证其他非主协商节点的密钥材料请求,并为非主协商节点的二进制标签中值为1的列分配对应的密钥材料。如果该信息中的可用节点标识包含自身标识,则将可用两方节点指定模块确定的第i列的密钥材料作为两方计算算法的秘密输入(i为主协商节点的二进制标签中的位数,例如i=0,1,...,k-1),并执行两方计算算法。
非主协商节点(其他标签)360:负责接收和存储二进制标签分配服务器310发送的所有节点的二进制标签和主协商节点信息。负责向主协商节点(标签全0)340和主协商节点(标签全1)350请求获取对应的密钥材料。如果该信息中的可用节点标识包含自身标识,则将可用两方节点指定模块确定的第i列的密钥材料作为两方计算算法的秘密输入(i为主协商节点的二进制标签中的位数,例如i=0,1,...,k-1),并执行两方计算算法。
为了提高基于两方计算的根密钥保护方法的可靠性,本申请通过设计实现n(n>2)个计算节点中任意两个节点都可以执行两方计算约定的加解密函数,而且不影响根密钥的安全性。为了在密钥协商过程中协商出所有节点各自的密钥材料,本申请提供一个二进制标签分配服务器为所有节点分配对应的二进制标签,并将所有节点的标识和对应的二进制标签存储在每个节点上。在协商密钥材料时,所有节点根据自身的二进制标签获取对应的密钥材料。在执行两方计算前,两方计算节点根据两方计算节点对应的二进制标签选择对应列的密钥材料,作为两方计算的秘密输入。以下将结合图4-图8详细描述本申请提出的根密钥保护方法。
图4是本申请的实施例的密钥保护方法400的一例示意性交互图。该方法为(2,n)阈值的基于两方计算的根密钥保护方法,其中n>2,可在协商随机根密钥场景下实施,包括如下步骤:
步骤S410:二进制标签分配服务器生成二进制标签,并对所有参与计算的节点进行二进制标签的分配。具体过程如下:
步骤a:二进制标签分配服务器获取所有参与计算的节点的标识信息。
在一种可能的实施方式中,参与计算的n个节点向二进制标签分配服务器发送节点标识信息,该节点标识信息包括各自节点的标识;
在一种可能的实施方式中,将参与计算的n个节点对应的节点标识配置在二进制标签分配服务器中。
步骤b:二进制标签分配服务器根据数量n生成二进制标签,然后向所有参与计算的n个节点分配二进制标签,并指定主协商节点;
在该步骤中,二进制标签分配服务器分别为n个节点(NodeID0~NodeIDn-1)分配二进制标签,二进制标签(lable0~lable2 k -1)的个数2k应满足n≤2k,其中k为每个二进制标签的位数,下面将举例进行具体说明:
(1)以(2,3)阈值的基于两方计算为例,2表示执行两方计算,3表示参与计算的节点的个数(NodeID0~NodeID2)。二进制标签分配服务器需要为这3个节点分配二进制标签,可分配的二进制标签为4个:Lable0{0,0},Lable1{0,1},Lable2{1,0},Lable3{1,1}。
(2)以(2,5)阈值的基于两方计算为例,2表示执行两方计算,5表示参与计算的节点的个数(NodeID0~NodeID4)。二进制标签分配服务器需要为这5个节点分配二进制标签,可分配的二进制标签为8个:Lable0{0,0,0},Lable1{0,0,1},Lable2{0,1,0},Lable3{0,1,1},Lable4{1,0,0},Lable5{1,0,1},Lable6{1,1,0},Lable7{1,1,1}。
在该步骤中,二进制标签分配服务器指定主协商节点,主协商节点的二进制标签为全0标签(二进制位都是0)和全1标签(二进制位都是1),下面将举例进行具体说明:
(1)以(2,3)为例,二进制标签分配服务器将NodeID0和NodeID2指定为主协商节点,并将全0标签Lable0{0,0}分配给节点NodeID0,并将全1标签Lable3{1,1}分配给节点NodeID2。
(2)以(2,5)为例,二进制标签分配服务器将NodeID0和NodeID4指定为主协商节点,并将全0标签Lable0{0,0,0}分配给节点NodeID0,并将全1标签Lable7{1,1,1}分配给节点NodeID4。
(3)以(2,n)为例,二进制标签分配服务器将NodeID0和NodeIDn-1指定为主协商节点,将全0标签分配给节点NodeID0,将全1标签分配给节点NodeIDn-1。
在该步骤中,二进制标签将剩余的标签中的全部或者部分分配给其他非主协商节点。
步骤c:将所有节点的节点标识和对应的二进制标签,以及主协商节点信息发送给所有参与计算的节点存储。下面将举例进行具体说明:
以(2,3)为例中,所有节点存储的信息如表2所示:
表2
可以理解的是,上述NodeID1的二进制标签还可以为(1,0)。
以(2,5)为例中,所有节点存储的信息如表3所示:
表3
/>
可以理解的是,节点NodeID1~节点NodeID3的二进制标签可以是步骤b中,以(2,5)为例中的可分配的除了全0标签和全1标签以外的二进制标签中的任意3个,即Lable1~Lable6这6个二进制标签中的任意3个都可作为节点NodeID1~节点NodeID3的二进制标签,上述举例只是为了便于理解,对此不构成任何限定。
步骤S420:主协商节点#1生成k列随机数作为密钥材料#1,并根据密钥材料#1计算密钥材料#1的辅助计算信息。
在该步骤中,全0标签节点NodeID0(主协商节点#1)生成k个随机数作为节点NodeID0的k列密钥材料,得到密钥材料组KSet0={R00,R10,...,R(i-1)0,Ri0,...,R(k-1)0}并进行本地存储。NodeID0在本地计算密钥材料辅助信息Ai0=Ri0 xor R(i-1)0,其中i=1,2,...k-1,符号“xor”表示“异或”,得到Aset={A10,...,Ai0,...,A(k-1)0},其中Aset不泄露节点NodeID0密钥材料组KSet0的任何信息。
以(2,3)为例中,
NodeID0生成密钥材料KSet0={R00,R10},计算密钥材料辅助信息A10=R10 xor R00,故Aset=A10。
以(2,5)为例中,
NodeID0生成密钥材料KSet0={R00,R10,R20},计算密钥材料辅助信息A10=R10 xorR00,A20=R20 xor R10,故Aset={A10,A20}。
步骤S421:主协商节点#1将密钥材料#1的辅助计算信息发送给主协商节点#2。
在该步骤中,NodeID0(主协商节点#1)将Aset={A10,...,Ai0,...,A(k-1)0}发送给NodeIDn-1(主协商节点#2)。
以(2,3)为例中,
NodeID0将密钥材料辅助信息A10发送给NodeID2。
以(2,5)为例中,
NodeID0将密钥材料辅助信息{A10,A20}发送给NodeID4。
步骤S430:主协商节点#2根据密钥材料#1的辅助计算信息确定密钥材料#2。
在该步骤中,主协商节点#2(全1标签)NodeIDn-1生成一个随机数R01。NodeIDn-1根据R01和密钥材料辅助信息Aset计算另一组密钥材料KSetn-1={R01,R11,...,R(i-1),Ri1,...,R(k-1)1}并进行本地储存,其中Ri1=Ai0 xor R(i-1),i=1,2,...k-1。
其中,密钥材料#1和密钥材料#2的相同列的密钥的异或结果是随机协商的根密钥,即,RK=R00 xor R01=R10 xor R11=R20 xor R21=...=R(k-1)0 xor R(k-1)1,异或结果即是随机协商出的密钥RK。
在一种可能的实施方式中,步骤S440:非主协商节点向主协商节点#2发送密钥材料请求信息#A,密钥材料请求信息#A用于请求密钥材料#3。
在一种可能的实施方式中,步骤S441:非主协商节点#3(此处可以有多个非主协商节点,以非主协商节点#3为例进行说明,其它非主协商节点具有相同的功能)向主协商节点#1发送密钥材料请求信息#B,密钥材料请求信息#B用于请求密钥材料#4。
在步骤S440和步骤S441中,NodeIDi(i=1,2,...,n-2)向NodeID0和NodeIDn-1请求密钥材料#3和密钥材料#4,密钥材料#3是密钥材料#1的一部分,密钥材料#4是密钥材料#2的一部分,密钥材料#3和密钥材料#4用于NodeIDi生成密钥材料#5。
在一种可能的实施方式中,步骤S450:主协商节点#2认证非主协商节点的身份。如果认证失败,则拒绝请求;如果认证成功,则根据密钥材料#2确定密钥材料#3。
在一种可能的实施方式中,步骤S451:主协商节点#1认证非主协商节点的身份。如果认证失败,则拒绝请求;如果认证成功,则根据密钥材料#1确定密钥材料#4。
在步骤S450中和步骤S451中,如果认证成功,主协商节点#2(NodeIDn-1)建立一组值为空的密钥材料Kseti1,主协商节点#1(NodeID0)建立一组值为空的密钥材料Kseti0。
在一种可能的实施方式中,主协商节点#2(NodeIDn-1)和主协商节点#1(NodeID0)直接分别建立一组值为空的密钥材料Kseti1和一组值为空的密钥材料Kseti0。
其中,主协商节点#2(NodeIDn-1)获取NodeIDi对应的二进制标签中值为1的所有列(计作CS1列),将本地密钥材料KSetn-1中对应的所有CS1列的密钥材料赋值给密钥材料组Kseti1对应的CS1列。将赋值后的密钥材料组Kseti1(密钥材料#3)返回给非主协商节点NodeIDi。
其中,主协商节点#1(NodeID0)获取NodeIDi对应的二进制标签中值为0的所有列(计作CS0列),将本地密钥材料KSet0中对应的所有CS0列的密钥材料赋值给密钥材料组Kseti0对应CS0列。将赋值后的密钥材料组Kseti0(密钥材料#4)返回给非主协商节点NodeIDi。
步骤S460,主协商节点#2向非主协商节点#3发送密钥材料#3。
步骤S461,主协商节点#1向非主协商节点#3发送密钥材料#4。
在步骤S450~步骤S461中,以(2,3)为例中,
NodeID0二进制标签为(0,0),对应密钥材料#1为{R00,R10};NodeID2的二进制标签为(1,1),对应密钥材料#2为{R01,R11}。
NodeID1的二进制标签为(0,1),NodeID0将密钥材料#4{R00,空}(此处的“空”代表不赋值)发送给NodeID1,NodeID2将密钥材料#3{空,R11}(此处的“空”代表不赋值)发送给NodeID1。
在步骤S450~步骤S461中,以(2,5)为例中,
NodeID0的二进制标签为(0,0,0),对应密钥材料#1为{R00,R10,R20};NodeID4的二进制标签为(1,1,1),对应密钥材料#2为{R01,R11,R21}。
NodeID1的二进制标签为{0,0,1},NodeID0将密钥材料#4{R00,R10,空}(此处的“空”代表不赋值)发送给NodeID1,NodeID4将密钥材料#3{空,空,R21}(此处的“空”代表不赋值)发送给NodeID1;
NodeID2的二进制标签为{0,1,0},NodeID0将密钥材料#4{R00,空,R20}(此处的“空”代表不赋值)发送给NodeID2,NodeID4将密钥材料#3{空,R11,空}(此处的“空”代表不赋值)发送给NodeID2;
NodeID3的二进制标签为{0,1,1},NodeID0将密钥材料#4{R00,空,空}(此处的“空”代表不赋值)发送给NodeID3,NodeID4将密钥材料#3{空,R11,R21}(此处的“空”代表不赋值)发送给NodeID1。
应理解,当上述节点的二进制标签可以为其他值,上述仅为便于理解举例说明,对此不构成任何限定,当二进制标签另取它值时,密钥材料#3和密钥材料#4的确定和发送方式与此类似,此处不再赘述。
步骤S470,非主协商节点#3根据密钥材料#3和密钥材料#4确定密钥材料#5。
以(2,3)为例中,
NodeID1的二进制标签为(0,1),则NodeID1将NodeID0发来的密钥材料#4{R00,空}和NodeID2发来的密钥材料#3{空,R11}拼接得到NodeID1的密钥材料#5{R00,R11}。
以(2,5)为例中,
NodeID1的二进制标签为{0,0,1},则NodeID1将NodeID0发来的密钥材料#4{R00,R10,空}和NodeID4发来的密钥材料#3{空,空,R21}拼接得到NodeID1的密钥材料#5{R00,R10,R21};
NodeID2的二进制标签为{0,1,0},则NodeID2将NodeID0发来的密钥材料#4{R00,空,R20}和NodeID4发来的密钥材料#3{空,R11,空}拼接得到NodeID2的密钥材料#5{R00,R11,R20};
NodeID3的二进制标签为{0,1,1},则NodeID3将NodeID0发来的密钥材料#4{R00,空,空}和NodeID4发来的密钥材料#3{空,R11,R21}拼接得到NodeID3的密钥材料#5{R00,R11,R21}。
应理解,当上述节点的二进制标签可以为其他值,上述仅为便于理解举例说明,对此不构成任何限定,当二进制标签另取它值时,密钥材料#5的确定方式与此类似,此处不再赘述。
步骤S480~步骤S482,确定两个可用的进行安全两方计算的节点。
在一种可能的实施方式中,各个节点可自行按照固定的频率通过发送广播信息告知其它节点自己可进行安全两方计算,并根据自身对应的二进制标签使用数值较小的顺序(或数值较大的顺序)的前两位作为进行安全两方计算的节点,例如“0,0”和“0,1”,当某个节点在固定的周期中没有发送广播信息,则认为该节点不可用,则跳过该节点,顺序在后的节点自行作为进行安全两方计算的节点的其中一个。
在一种可能的实施方式中,使用可用两方节点指定模块确定两个可用节点标识信息,以及两个可用节点所使用的密钥材料所对应的列数,并将该信息和该列数发送给所有节点。
在一种可能的实施方式中,可用两方节点指定模块任意指定k列中的一列作为两个可用节点所使用的密钥材料所对应的列数。
步骤S490~步骤S492,可用两方节点指定的两个可用节点(以下称为指定节点#1和指定节点#2),指定节点#1(指定节点#2)根据本地存储的节点和二进制标签信息,确定指定节点#2(指定节点#1)的二进制标签信息,指定节点#1(指定节点#2)将自身的二进制标签和指定节点#2(指定节点#1)的二进制标签进行异或运算,得到的结果为1(或者结果为0)时的列对应的密钥材料作为两方计算的输入方。
在一种可能的实现方式中,在从指定节点#1和指定节点#2的二进制标签中的首列开始遍历进行异或运算时,在首次得到结果为1时,则将该列对应的密钥材料作为两方计算的输入方。
以(2,3)为例中,若指定节点为NodeID0(0,0)和NodeID1(0,1),则将NodeID0的第二列对应的密钥材料和NodeID1的第二列对应的密钥材料作为两方计算的输入方。
以(2,5)为例中,若指定节点为NodeID1{0,0,1}和NodeID3{0,1,1},则将NodeID1第二列对应的密钥材料和NodeID3第二列对应的密钥材料作为两方计算的输入方。
图5是本申请的实施例的密钥保护方法的另一例示意性交互图。该方法为(2,n)阈值的基于两方计算的根密钥保护方法,其中n>2,可在已知根密钥场景下实施,包括如下步骤:
步骤S510与步骤S410类似,此处不再赘述。
步骤S520,根密钥分割模块将已知根密钥#1分割成两组密钥材料,这两组密钥材料相同列的异或结果为根密钥#1。
在该步骤中,根密钥分割模块随机生成k个随机数作为第一组密钥材料KSet0={R00,R10,...,R(i-1)0,Ri0,...,R(k-1)0}并进行本地存储。
根密钥分割模块将已知根密钥RK与第一组密钥材料的每一列密钥材料逐一进行异或,即Ri1=RK xor Ri0,i=0,1,...,k-1。k列异或结果作为第二组密钥材料KSetn-1={R01,R11,..,R(i-1)1,Ri1,...,R(k-1)1}。
步骤S521,根密钥分割模块将第一组密钥材料发送给主协商节点#1。
步骤S522,根密钥分割模块将第二组密钥材料发送给主协商节点#2。
步骤S530,主协商节点#1将第一组密钥材料进行存储,并确定为密钥材料#1。
步骤S531,主协商节点#2将第二组密钥材料进行存储,并确定为密钥材料#2。
步骤S520中,以(2,3)为例中,
根密钥分割模块生成2个随机数{R00,R10},作为NodeID0的第一组密钥材料为KSet0={R00,R10},根据第一组密钥材料确定NodeID2的第二组密钥材料为KSet2={R01,R11},其中R01=RK xor R00,R11=RK xor R10。
步骤S1140~步骤S1160中,以(2,5)为例中,
根密钥分割模块生成3个随机数{R00,R10,R20},作为NodeID0的第一组密钥材料为KSet0={R00,R10,R20},根据第一组密钥材料确定NodeID4的密钥材料为KSet2={R01,R11,R21},其中R01=RK xor R00,R11=RK xor R10,R21=RK xor R20。
步骤S540~步骤S592分别与步骤S440~步骤S492类似,此处不再赘述。
图6是根据本申请实施例的网络设备的一例的示意性框图。如图6所示,网络设备600被包括在n个节点的系统中,所述n个节点包括第一主节点、第二主节点和至少一个辅节点,所述n个节点中的每个节点存储有第一关联关系信息,所述第一关联关系信息用于指示所述n个节点中的每个节点对应的二进制标签,n为大于2的整数,2k≥n,k为所述二进制标签的位数,所述第一主节点对应的第一二进制标签的每一位都是0,所述第二主节点对应的第二二进制标签的每一位都是1,任意两个辅节点对应的二进制标签不同,且每个辅节点对应的二进制标签中包括至少一个数字0和至少一个数字1,所述网络设备为第一辅节点,所述网络设备600包括:
接收单元610,所述接收单元610用于从第一主节点接收第一信息,所述第一信息包括第一密钥材料的一部分,所述第一密钥材料是所述第一主节点使用的密钥材料,所述第一信息是基于所述第一辅节点对应的第三二进制标签确定的;
所述接收单元610还用于从第二主节点接收第二信息,所述第二信息包括第二密钥材料的一部分,所述第二密钥材料是所述第二主节点使用的密钥材料,所述第二信息是基于所述第三二进制标签确定的;
处理单元620,所述处理单元620用于根据所述第一信息和所述第二信息,生成第三密钥材料,其中,所述第一密钥材料和所述第二密钥材料中相同列的密钥材料的异或结果相同,所述第二密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同,所述第一密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同;
所述处理单元620还用于将所述第三密钥材料中的一个密钥材料作为安全两方计算的输入。
在一种可能的实施方式中,所述第一密钥材料为所述第一主节点生成的k个随机数。
在一种可能的实施方式中,所述第二密钥材料为所述第二主节点根据第一随机数和第一辅助信息确定的,所述第一辅助信息是所述第一主节点根据所述第一密钥材料确定的。
在一种可能的实施方式中,所述第一信息包括第一密钥材料的一部分包括:
所述第一信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为1的值为0,所述k个值中对应的所述第三二进制标签位为0的值为所述第一密钥材料中对应位置的值。
在一种可能的实施方式中,所述第二信息包括第二密钥材料的一部分包括:
所述第二信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为0的值为0,所述k个值中对应的所述第三二进制标签位为1的值为所述第二密钥材料中对应位置的值。
在一种可能的实施方式中,所述处理单元620还用于将所述第三密钥材料中的一个密钥材料作为安全两方计算的输入包括:
所述接收单元610获取可用两方节点指定模块发送的可用两方节点标识,所述可用两方节点标识包括第一标识和第二标识;
所述处理单元620用于确定所述第一标识为所述第一辅节点的节点标识,所述处理单元用于根据所述第三密钥材料确定第一输入密钥材料,所述第一输入密钥材料是所述第三密钥材料的其中一个密钥材料,所述处理单元用于将所述第一输入密钥材料作为安全两方计算的输入。
图7是根据本申请实施例的网络设备的另一例的示意性框图。如图7所示,所述网络设备700包括收发机710以及处理器720。所述处理器720被配置为支持网络设备执行上述方法中网络设备600相应的功能。可选的,所述网络设备700还可以包括存储器730,所述存储器730用于与处理器720耦合,保存网络设备700必要的程序指令和数据。处理器720具体用于执行存储器730中存储的指令,当指令被执行时,所述网络设备700执行上述方法中网络设备600所执行的方法。
需要说明的是,图6中所示的网络设备600可以通过图7中所示的网络设备700来实现。例如,图6中所示接收单元610可以由收发机710实现,处理单元620可以由处理器720实现。
应理解,本申请实施例中,该处理器可以为中央处理单元(central processingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random accessmemory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
图8为根据本申请实施例的根密钥保护系统的一例示意性框图。如图8所述,根密钥保护系统800包括:二进制标签分配服务器810,参与密钥计算的节点820,其中,参与密钥计算的节点820包括第一主节点821(二进制标签为全0),第二主节点822(二进制标签为全1),第一辅节点823(二进制标签包括至少一个数字“0”和至少一个数字“1”),可用两方节点指定模块830,根密钥保护系统800还可以包括:根密钥分割模块840。
其中,所述二进制标签分配服务器810用于根据参与密钥计算的节点数量n生成二进制标签,n为大于2的整数,2k≥n,k为所述二进制标签的位数,将所述二进制标签分配给所述n个节点,向所述n个节点发送第一关联关系信息,所述第一关联关系信息用于指示所述n个节点中的每个节点对应的二进制标签、第一主节点821、第二主节点822和至少一个辅节点,其中,所述第一主节点821对应的第一二进制标签的每一位都是0,所述第二主节点822对应的第二二进制标签的每一位都是1,任意两个辅节点对应的二进制标签不同,且每个辅节点对应的二进制标签中包括至少一个数字0和至少一个数字1;
所述第一主节点821用于确定第一密钥材料,所述第一密钥材料的列数为k,所述第一密钥材料用于作为所述第一主节点821执行安全两方计算的输入;
所述第二主节点822用于确定第二密钥材料,所述第二密钥材料的列数为k,所述第二密钥材料用于作为所述第二主节点822执行安全两方计算的输入;
第一辅节点823用于接收第一信息和第二信息,并根据所述第一信息和所述第二信息确定第三密钥材料,所述第三密钥材料的列数为k,所述第三密钥材料用于作为所述第一辅节点823执行安全两方计算的输入,所述第一辅节点823为所述至少一个辅节点中的一个,
其中,
所述第一信息是所述第一主节点821根据所述第一辅节点823对应的第三二进制标签确定并发送的,所述第一信息包括所述第一密钥材料的一部分,
所述第二信息是所述第二主节点822根据所述第三二进制标签确定并发送的,所述第二信息包括所述第二密钥材料的一部分,
所述第一密钥材料和所述第二密钥材料中相同列的密钥材料的异或结果相同,所述第二密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同,所述第一密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同;
所述可用两方节点指定模块830用于接收第一指示信息,所述第一指示信息用于指示两个可用于执行安全两方计算的节点,根据所述第一指示信息向所述两个可用于执行安全两方计算的节点发送第二指示信息,所述第二指示信息用于指示所述两个可用于执行安全两方计算的节点执行安全两方计算以及使用的密钥材料所对应的第一列数。
在一种可能的实施方式中,所述系统还包括根密钥分割模块840,所述根密钥分割模块840用于确定k个随机数作为所述第一密钥材料,根据第一根密钥和所述第一密钥材料确定所述第二密钥材料,向所述第一主节点821发送所述第一密钥材料,向所述第二主节点822发送所述第二密钥材料。
在一种可能的实施方式中,所述第一主节点用于确定k个随机数作为所述第一密钥材料,根据所述第一密钥材料确定第一辅助信息,所述第一辅助信息用于所述第二主节点822确定第二密钥材料,并向所述第二主节点822发送所述第一辅助信息。
在一种可能的实施方式中,所述第二主节点822用于接收所述第一辅助信息,并根据第一随机数和所述第一辅助信息确定第二密钥材料。
在一种可能的实施方式中,所述第一信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为1的值为0,所述k个值中对应的所述第三二进制标签位为0的值为所述第一密钥材料中对应位置的值。
在一种可能的实施方式中,所述第二信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为0的值为0,所述k个值中对应的所述第三二进制标签位为1的值为所述第二密钥材料中对应位置的值。
在一种可能的实施方式中,所述第一主节点821接收所述第二指示信息,所述第一主节点821确定所述第二指示信息包括所述第一主节点821的标识,所述第一主节点821根据所述第二指示信息确定所述第一列数,并将所述第一列数对应的第一密钥材料中的第一输入密钥材料作为执行安全两方计算的输入。
在一种可能的实施方式中,所述第二主节点822接收所述第二指示信息,所述第二主节点822确定所述第二指示信息包括所述二主节点822的标识,所述第二主节点822根据所述第二指示信息确定所述第一列数,并将所述第一列数对应的第二密钥材料中的第二输入密钥材料作为执行安全两方计算的输入。
在一种可能的实施方式中,所述第一辅节点823接收所述第二指示信息,所述第一辅节点823确定所述第二指示信息包括所述第一辅节点823的标识,所述第一辅节点823根据所述第二指示信息确定所述第一列数,并将所述第一列数对应的第三密钥材料中的第三输入密钥材料作为执行安全两方计算的输入。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,数字通用光盘(digital versatile disc,DVD))、或者半导体介质。半导体介质可以是固态硬盘。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者无线接入网设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (25)
1.一种根密钥保护方法,其特征在于,应用在包括n个节点的系统中,所述n个节点包括第一主节点、第二主节点和至少一个辅节点,所述n个节点中的每个节点存储有第一关联关系信息,所述第一关联关系信息用于指示所述n个节点中的每个节点对应的二进制标签,n为大于2的整数,2k≥n,k为所述二进制标签的位数,所述第一主节点对应的第一二进制标签的每一位都是0,所述第二主节点对应的第二二进制标签的每一位都是1,任意两个辅节点对应的二进制标签不同,且每个辅节点对应的二进制标签中包括至少一个数字0和至少一个数字1,所述方法包括:
第一辅节点从所述第一主节点接收第一信息,所述第一信息包括第一密钥材料的一部分,所述第一密钥材料是所述第一主节点使用的密钥材料,所述第一信息是基于所述第一辅节点对应的第三二进制标签确定的,所述第一辅节点为所述至少一个辅节点中的一个;
所述第一辅节点从所述第二主节点接收第二信息,所述第二信息包括第二密钥材料的一部分,所述第二密钥材料是所述第二主节点使用的密钥材料,所述第二信息是基于所述第三二进制标签确定的;
所述第一辅节点根据所述第一信息和所述第二信息,生成第三密钥材料,其中,所述第一密钥材料和所述第二密钥材料中相同列的密钥材料的异或结果相同,所述第二密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同,所述第一密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同;
所述第一辅节点将所述第三密钥材料中的一个密钥材料作为安全两方计算的输入。
2.如权利要求1所述的方法,其特征在于,所述第一密钥材料为所述第一主节点生成的k个随机数。
3.如权利要求2所述的方法,其特征在于,所述第二密钥材料为所述第二主节点根据第一随机数和第一辅助信息确定的,所述第一辅助信息是所述第一主节点根据所述第一密钥材料确定的。
4.如权利要求1-3中任一项所述的方法,其特征在于,所述第一信息包括第一密钥材料的一部分包括:
所述第一信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为1的值为0,所述k个值中对应的所述第三二进制标签位为0的值为所述第一密钥材料中对应位置的值。
5.如权利要求4所述的方法,其特征在于,所述第二信息包括第二密钥材料的一部分包括:
所述第二信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为0的值为0,所述k个值中对应的所述第三二进制标签位为1的值为所述第二密钥材料中对应位置的值。
6.如权利要求1-3中任一项所述的方法,其特征在于,所述第一辅节点将所述第三密钥材料中的一个密钥材料作为安全两方计算的输入包括:
所述第一辅节点获取可用两方节点指定模块发送的可用两方节点标识,所述可用两方节点标识包括第一标识和第二标识;
所述第一辅节点确定所述第一标识为所述第一辅节点的节点标识,所述第一辅节点根据所述第三密钥材料确定第一输入密钥材料,所述第一输入密钥材料是所述第三密钥材料的其中一个密钥材料,所述第一辅节点将所述第一输入密钥材料作为安全两方计算的输入。
7.一种根密钥生成网络设备,其特征在于,所述网络设备被包括在n个节点的系统中,所述n个节点包括第一主节点、第二主节点和至少一个辅节点,所述n个节点中的每个节点存储有第一关联关系信息,所述第一关联关系信息用于指示所述n个节点中的每个节点对应的二进制标签,n为大于2的整数,2k≥n,k为所述二进制标签的位数,所述第一主节点对应的第一二进制标签的每一位都是0,所述第二主节点对应的第二二进制标签的每一位都是1,任意两个辅节点对应的二进制标签不同,且每个辅节点对应的二进制标签中包括至少一个数字0和至少一个数字1,所述网络设备为第一辅节点,所述第一辅节点为所述至少一个辅节点中的一个,所述网络设备包括:
接收单元,所述接收单元用于从所述第一主节点接收第一信息,所述第一信息包括第一密钥材料的一部分,所述第一密钥材料是所述第一主节点使用的密钥材料,所述第一信息是基于所述第一辅节点对应的第三二进制标签确定的;
所述接收单元用于从所述第二主节点接收第二信息,所述第二信息包括第二密钥材料的一部分,所述第二密钥材料是所述第二主节点使用的密钥材料,所述第二信息是基于所述第三二进制标签确定的;
处理单元,所述处理单元用于根据所述第一信息和所述第二信息,生成第三密钥材料,其中,所述第一密钥材料和所述第二密钥材料中相同列的密钥材料的异或结果相同,所述第二密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同,所述第一密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同;
所述处理单元用于将所述第三密钥材料中的一个密钥材料作为安全两方计算的输入。
8.如权利要求7所述的网络设备,其特征在于,所述第一密钥材料为所述第一主节点生成的k个随机数。
9.如权利要求8所述的网络设备,其特征在于,所述第二密钥材料为所述第二主节点根据第一随机数和第一辅助信息确定的,所述第一辅助信息是所述第一主节点根据所述第一密钥材料确定的。
10.如权利要求7-9中任一项所述的网络设备,其特征在于,所述第一信息包括第一密钥材料的一部分包括:
所述第一信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为1的值为0,所述k个值中对应的所述第三二进制标签位为0的值为所述第一密钥材料中对应位置的值。
11.如权利要求10所述的网络设备,其特征在于,所述第二信息包括第二密钥材料的一部分包括:
所述第二信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为0的值为0,所述k个值中对应的所述第三二进制标签位为1的值为所述第二密钥材料中对应位置的值。
12.如权利要求7-9中任一项所述的网络设备,其特征在于,所述处理单元用于将所述第三密钥材料中的一个密钥材料作为安全两方计算的输入包括:
所述接收单元获取可用两方节点指定模块发送的可用两方节点标识,所述可用两方节点标识包括第一标识和第二标识;
所述处理单元用于确定所述第一标识为所述第一辅节点的节点标识,所述处理单元用于根据所述第三密钥材料确定第一输入密钥材料,所述第一输入密钥材料是所述第三密钥材料的其中一个密钥材料,所述处理单元用于将所述第一输入密钥材料作为安全两方计算的输入。
13.一种根密钥保护系统,其特征在于,包括n个参与密钥计算的节点、二进制标签分配服务器、可用两方节点指定模块;
所述二进制标签分配服务器用于根据n个节点生成二进制标签,n为大于2的整数,2k≥n,k为所述二进制标签的位数,将所述二进制标签分配给所述n个节点,向所述n个节点发送第一关联关系信息,所述第一关联关系信息用于指示所述n个节点中的每个节点对应的二进制标签,所述n个节点包括第一主节点、第二主节点和至少一个辅节点,其中,所述第一主节点对应的第一二进制标签的每一位都是0,所述第二主节点对应的第二二进制标签的每一位都是1,任意两个辅节点对应的二进制标签不同,且每个辅节点对应的二进制标签中包括至少一个数字0和至少一个数字1;
所述第一主节点用于确定第一密钥材料,所述第一密钥材料的列数为k,所述第一密钥材料用于作为所述第一主节点执行安全两方计算的输入;
所述第二主节点用于确定第二密钥材料,所述第二密钥材料的列数为k,所述第二密钥材料用于作为所述第二主节点执行安全两方计算的输入;
第一辅节点用于接收第一信息和第二信息,并根据所述第一信息和所述第二信息确定第三密钥材料,所述第三密钥材料的列数为k,所述第三密钥材料用于作为所述第一辅节点执行安全两方计算的输入,所述第一辅节点为所述至少一个辅节点中的一个,
其中,
所述第一信息是所述第一主节点根据所述第一辅节点对应的第三二进制标签确定并发送的,所述第一信息包括所述第一密钥材料的一部分,
所述第二信息是所述第二主节点根据所述第三二进制标签确定并发送的,所述第二信息包括所述第二密钥材料的一部分,
所述第一密钥材料和所述第二密钥材料中相同列的密钥材料的异或结果相同,所述第二密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同,所述第一密钥材料和所述第三密钥材料中相同列的密钥材料的异或结果相同;
所述可用两方节点指定模块用于接收第一指示信息,所述第一指示信息用于指示两个可用于执行安全两方计算的节点,根据所述第一指示信息向所述两个可用于执行安全两方计算的节点发送第二指示信息,所述第二指示信息用于指示所述两个可用于执行安全两方计算的节点执行安全两方计算以及使用的密钥材料所对应的第一列数。
14.如权利要求13所述的系统,其特征在于,所述系统还包括根密钥分割模块,
所述根密钥分割模块用于确定k个随机数作为所述第一密钥材料,根据第一根密钥和所述第一密钥材料确定所述第二密钥材料,向所述第一主节点发送所述第一密钥材料,向所述第二主节点发送所述第二密钥材料。
15.如权利要求13或14所述的系统,其特征在于,所述第一主节点用于确定k个随机数作为所述第一密钥材料,根据所述第一密钥材料确定第一辅助信息,所述第一辅助信息用于所述第二主节点确定第二密钥材料,并向所述第二主节点发送所述第一辅助信息。
16.如权利要求15所述的系统,其特征在于,所述第二主节点用于接收所述第一辅助信息,并根据第一随机数和所述第一辅助信息确定第二密钥材料。
17.如权利要求13-14中任一项所述的系统,其特征在于,所述第一信息包括所述第一密钥材料的一部分包括:
所述第一信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为1的值为0,所述k个值中对应的所述第三二进制标签位为0的值为所述第一密钥材料中对应位置的值。
18.如权利要求17所述的系统,其特征在于,所述第二信息包括所述第二密钥材料的一部分包括:
所述第二信息包括对应所述第三二进制标签的k个值,所述k个值中对应的所述第三二进制标签位为0的值为0,所述k个值中对应的所述第三二进制标签位为1的值为所述第二密钥材料中对应位置的值。
19.如权利要求13-14中任一项所述的系统,其特征在于,所述第一主节点接收所述第二指示信息,所述第二指示信息包括所述第一主节点的标识,所述第一主节点根据所述第二指示信息确定所述第一列数,并将所述第一列数对应的第一密钥材料中的第一输入密钥材料作为执行安全两方计算的输入。
20.如权利要求13-14中任一项所述的系统,其特征在于,所述第二主节点接收所述第二指示信息,所述第二指示信息包括所述二主节点的标识,所述第二主节点根据所述第二指示信息确定所述第一列数,并将所述第一列数对应的第二密钥材料中的第二输入密钥材料作为执行安全两方计算的输入。
21.如权利要求13-14中任一项所述的系统,其特征在于,所述第一辅节点接收所述第二指示信息,所述第二指示信息包括所述第一辅节点的标识,所述第一辅节点根据所述第二指示信息确定所述第一列数,并将所述第一列数对应的第三密钥材料中的第三输入密钥材料作为执行安全两方计算的输入。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,当所述计算机程序运行时,
使得装置执行如权利要求1至6中任意一项所述的方法。
23.一种芯片系统,其特征在于,包括:处理器,用于从存储器中调用并运行计算机程序,
使得安装有所述芯片系统的通信装置执行如权利要求1至6中任意一项所述的方法。
24.一种无线通信的装置,其特征在于,包括:
用于实现权利要求1至6中任一项所述的方法的单元。
25.一种计算机程序产品,其特征在于,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被计算机运行时,使得所述计算机执行如权利要求1至6中任意一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/077072 WO2022174419A1 (zh) | 2021-02-20 | 2021-02-20 | 一种根密钥保护方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115226416A CN115226416A (zh) | 2022-10-21 |
CN115226416B true CN115226416B (zh) | 2024-05-03 |
Family
ID=82931946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180003923.0A Active CN115226416B (zh) | 2021-02-20 | 2021-02-20 | 一种根密钥保护方法和系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115226416B (zh) |
WO (1) | WO2022174419A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115549907B (zh) * | 2022-11-24 | 2023-03-24 | 北京智芯微电子科技有限公司 | 根密钥管理系统、备份方法、恢复方法、装置及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101478548A (zh) * | 2009-01-22 | 2009-07-08 | 上海交通大学 | 数据传输的加密和完整性校验方法 |
CN102160324A (zh) * | 2008-09-19 | 2011-08-17 | 皇家飞利浦电子股份有限公司 | 用于在网络中安全通信的方法、用于其的通信设备、网络及计算机程序 |
CN105681034A (zh) * | 2016-02-24 | 2016-06-15 | 山东超越数控电子有限公司 | 一种基于数字标签的文档保密管理方法及系统 |
CN106534050A (zh) * | 2015-09-11 | 2017-03-22 | 中移(杭州)信息技术有限公司 | 一种实现虚拟专用网络密钥协商的方法和装置 |
CN110545252A (zh) * | 2018-05-29 | 2019-12-06 | 华为技术有限公司 | 一种认证和信息保护的方法、终端、控制功能实体及应用服务器 |
CN111262699A (zh) * | 2020-03-03 | 2020-06-09 | 成都量安区块链科技有限公司 | 一种量子安全的密钥服务方法与系统 |
CN112118568A (zh) * | 2019-06-21 | 2020-12-22 | 华为技术有限公司 | 一种设备身份鉴权的方法及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BRPI1006182B1 (pt) * | 2009-03-19 | 2021-02-17 | Koninklijke Philips N.V. | método para comunicações seguras entre um primeiro nó e um segundo nó em uma rede, dispositivo de gerenciamento provido de material de geração de chave raiz e rede |
IN2015DN01110A (zh) * | 2012-09-13 | 2015-06-26 | Nec Corp | |
EP3189618B1 (en) * | 2014-09-04 | 2020-06-17 | Koninklijke Philips N.V. | Cryptographic system arranged for key sharing |
JP7059282B6 (ja) * | 2017-01-05 | 2022-06-03 | コーニンクレッカ フィリップス エヌ ヴェ | ネットワークデバイス及び信頼できるサードパーティデバイス |
-
2021
- 2021-02-20 CN CN202180003923.0A patent/CN115226416B/zh active Active
- 2021-02-20 WO PCT/CN2021/077072 patent/WO2022174419A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102160324A (zh) * | 2008-09-19 | 2011-08-17 | 皇家飞利浦电子股份有限公司 | 用于在网络中安全通信的方法、用于其的通信设备、网络及计算机程序 |
CN101478548A (zh) * | 2009-01-22 | 2009-07-08 | 上海交通大学 | 数据传输的加密和完整性校验方法 |
CN106534050A (zh) * | 2015-09-11 | 2017-03-22 | 中移(杭州)信息技术有限公司 | 一种实现虚拟专用网络密钥协商的方法和装置 |
CN105681034A (zh) * | 2016-02-24 | 2016-06-15 | 山东超越数控电子有限公司 | 一种基于数字标签的文档保密管理方法及系统 |
CN110545252A (zh) * | 2018-05-29 | 2019-12-06 | 华为技术有限公司 | 一种认证和信息保护的方法、终端、控制功能实体及应用服务器 |
CN112118568A (zh) * | 2019-06-21 | 2020-12-22 | 华为技术有限公司 | 一种设备身份鉴权的方法及设备 |
CN111262699A (zh) * | 2020-03-03 | 2020-06-09 | 成都量安区块链科技有限公司 | 一种量子安全的密钥服务方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2022174419A1 (zh) | 2022-08-25 |
CN115226416A (zh) | 2022-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110830989B (zh) | 一种通信方法和装置 | |
US11778458B2 (en) | Network access authentication method and device | |
CN109428874B (zh) | 基于服务化架构的注册方法及装置 | |
US11246033B2 (en) | Authentication method, and related device and system | |
CN111866871B (zh) | 通信方法和装置 | |
CN115567931A (zh) | 一种密钥生成方法及装置 | |
CN113239403A (zh) | 一种数据共享方法及装置 | |
CN110621016A (zh) | 一种用户身份保护方法、用户终端和基站 | |
US9210578B2 (en) | Methods and apparatus for authentication | |
CN115226416B (zh) | 一种根密钥保护方法和系统 | |
CN113766495A (zh) | 信息保护方法、系统及通信装置 | |
US20190149326A1 (en) | Key obtaining method and apparatus | |
EP4184860A1 (en) | Key management method and communication apparatus | |
CN116530117A (zh) | 一种WiFi安全认证方法及通信装置 | |
CN116235524A (zh) | 一种安全通信方法以及装置 | |
JP2022548137A (ja) | エアインターフェース情報セキュリティ保護方法および装置 | |
CN112752265B (zh) | 网络切片的访问控制方法、装置及存储介质 | |
CN115885496B (zh) | 一种通信方法及相关装置 | |
KR102593167B1 (ko) | 통신 네트워크 시스템의 동작방법 | |
WO2023131044A1 (zh) | 认证与安全方法、装置及存储介质 | |
US20230087265A1 (en) | Key negotiation method, apparatus, and system | |
CN113285805B (zh) | 一种通信方法及装置 | |
CN116863565A (zh) | 基于密钥的智能门锁控制方法及装置 | |
CN113556736A (zh) | 接入方法、服务端、待接入端、电子设备及存储介质 | |
CN116758659A (zh) | 一种基于远程控制的智能门锁的控制方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |