CN110519040B - 基于身份的抗量子计算数字签名方法和*** - Google Patents

基于身份的抗量子计算数字签名方法和*** Download PDF

Info

Publication number
CN110519040B
CN110519040B CN201910642852.3A CN201910642852A CN110519040B CN 110519040 B CN110519040 B CN 110519040B CN 201910642852 A CN201910642852 A CN 201910642852A CN 110519040 B CN110519040 B CN 110519040B
Authority
CN
China
Prior art keywords
key
random number
signature
message
signer
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
Application number
CN201910642852.3A
Other languages
English (en)
Other versions
CN110519040A (zh
Inventor
富尧
钟一民
余秋炜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ruban Quantum Technology Co Ltd
Nanjing Ruban Quantum Technology Co Ltd
Original Assignee
Ruban Quantum Technology Co Ltd
Nanjing Ruban Quantum Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ruban Quantum Technology Co Ltd, Nanjing Ruban Quantum Technology Co Ltd filed Critical Ruban Quantum Technology Co Ltd
Priority to CN201910642852.3A priority Critical patent/CN110519040B/zh
Publication of CN110519040A publication Critical patent/CN110519040A/zh
Application granted granted Critical
Publication of CN110519040B publication Critical patent/CN110519040B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本申请涉及一种基于身份的抗量子计算数字签名方法和***,本发明中,使用的密钥卡是独立的硬件隔离设备。群组对称密钥池和签名私钥及算法参数均存储在密钥卡中的数据安全区,被恶意软件或恶意操作窃取密钥的可能性大大降低,也不会被量子计算机获取并破解。由于在经典网络中均无涉及公钥和相关算法参数的传输,因此非对称密钥被破解的风险很低。同时非对称算法和群组对称密钥池的结合使用,增加了签名私钥破解的难度。

Description

基于身份的抗量子计算数字签名方法和***
技术领域
本申请涉及安全通信技术领域,特别是涉及基于身份的抗量子计算数字签名方法和***。
背景技术
人类进行二十一世纪,信息化浪潮已经席卷了地球的每一个角落。互联网已经将整个世界联系起来,网络深刻的影响着人类的生活方式,它改变了传统的事物处理方法,给我们提供了前所未有的便捷和无线的发展空间。
信息安全有三个原则,通常被称为“三大”(TheBigThree),它起源于对信息资源的机密性、完整性和可用性(Confidentiality,integrity,availability)维护的需要。
数字签名(又称电子签名)作为一项重要的安全技术,在保证数据的完整性、私有性和不可抵赖性方面起着极其重要的作用。同时,随着信息技术的发展及其在商业、金融、法律、政府等部门的普及,数字签名技术的研究将越来越重要。
目前,数字签名技术己应用于商业、金融、政治、军事等领域,特别是在电子邮件(E-mial)、电子资金转帐(EFT)、电子数据交换(EDI)、电子现金(E-cash)、软件分发数据存储和数据完整性检验和源鉴别中的应用,更使人们看到了数字签名的重要性。
数字签名技术利用散列函数保证数据的完整性,同时结合公私钥加解密的优点,保证信息的保密性与不可抵赖性。
对称密钥密码***的安全性依赖以下两个因素。第一,加密算法必须是足够强的,仅仅基于密文本身去解密信息在实践上是不可能的;第二,加密方法的安全性来自于密钥的秘密性,而不是算法的秘密性。对称加密***最大的问题是密钥的分发和管理非常复杂、代价高昂。对称加密算法另一个缺点是不容易实现数字签名。所以,在当今的移动电子商务领域中的加密算法实现主要是依赖于公开密钥体制。
自公钥加密问世以来,学者们提出了许多种公钥加密方法,它们的安全性都是基于复杂的数学难题。但是在传统的公钥密码学中,公钥是与身份无关的字符串,存在如何确认公钥真实性的问题。公钥基础设施PKI运用可信任第三方——认证中心(CertificationAuthority,CA)颁发公钥证书的方式来绑定公钥和身份信息。但是PKI***理复杂,需搭建复杂的CA***,证书发布、吊销、验证和保存需求占用较多资源,这就限制PKI在实时和低带宽环境中的广泛应用。
2001年,斯坦福大学的密码学专家Dan Boneh和加州大学戴维斯分校的教授MattFranklin设计出了实用的基于身份的加密方案IBE。但是该IBE方案并没有说明是否可以用于签名算法。后来Jae Choon Cha和Jung Hee Cheon提出了基于Gap Diffie-Hellman群和身份的数字签名算法IBS。
但是随着量子计算机的发展,经典非对称密钥算法将不再安全,无论加解密算法、签名算法还是密钥交换算法,量子计算机都可以通过公钥计算得到私钥,因此目前常用的非对称密钥将在量子时代变得不堪一击。因此依靠现有的经典非对称算法很难保证签名者的身份。
现有技术存在的问题:
1.现有体系下的公钥所有用户均可访问得到,而量子计算机可以轻松通过公钥计算得到对应的私钥;
2.IBS现有的签名要实现抗量子计算需要涉及到用对称密钥算法加密签名,加密的计算会增加设备端的负担。
发明内容
基于此,有必要针对上述技术问题,提供一种能够减少服务站存储数据量的基于身份的抗量子计算数字签名方法。
本申请公开了基于身份的抗量子计算数字签名方法,实施在签名方,所述抗量子计算数字签名方法包括:
所述签名方将自身的签名方设备信息进行计算得到第一哈希值,利用所述第一哈希值作为密钥指针随机数进行运算得到第一密钥指针,根据所述第一密钥指针在自身存储的群组对称密钥池内找到第一随机数序列,利用所述签名方设备信息和所述第一随机数序列得到第一密钥,利用所述第一密钥进行计算得到第一公钥;
对需要发送的第一消息进行哈希运算得到第二哈希值,利用所述第二哈希值作为密钥指针随机数进行运算得到第二密钥指针,根据所述第二密钥指针在自身存储的群组对称密钥池内找到第二随机数序列,按预设条件生成第一随机数,利用所述第一随机数和所述第一公钥得到第三密钥;利用所述第一消息和所述第二随机数序列生成第一验证码,利用所述第一验证码和所述第三密钥生成第三哈希值,利用所述第一随机数、所述第三哈希值以及自身存储的签名方私钥生成密钥消息,利用所述密钥消息和第三密钥生成第一签名;
向验签方发送所述签名方设备信息,所述第一消息以及所述第一签名;所述签名方设备信息用于供所述验签方计算并验证所述第一签名。
本申请公开了基于身份的抗量子计算数字签名方法,实施在验签方,所述抗量子计算数字签名方法包括:
所述验签方获取来自签名方的签名方设备信息,第一消息以及第一签名,所述第一签名由所述签名方利用密钥消息和第三密钥生成,所述密钥消息由所述签名方利用第一随机数、第三哈希值以及签名方私钥生成,所述第一随机数由所述签名方按照预设条件生成,所述第三哈希值由所述签名方利用第一验证码和所述第三密钥生成,所述第一验证码由所述签名方利用所述第一消息和第二随机数序列生成,所述第二随机数序列由所述签名方根据第二密钥指针在自身存储的群组对称密钥池内找到,所述第二密钥指针由所述签名方利用第二哈希值作为密钥指针随机数进行运算得到,所述第二哈希值由所述签名方利用所述第一消息进行哈希运算得到;所述第三密钥由所述签名方利用所述第一随机数和第一公钥得到,所述第一公钥由所述签名方利用第一密钥进行计算得到,所述第一密钥由所述签名方利用所述签名方设备信息和第一随机数序列得到,所述第一随机数序列由所述签名方根据第一密钥指针在自身存储的群组对称密钥池内找到,所述第一密钥指针由所述签名方利用第一哈希值作为密钥指针随机数进行运算得到,所述第一哈希值由所述签名方利用所述签名方设备信息进行计算得到;按照预设规则解密后验证所述第一签名。
本申请公开了基于身份的抗量子计算数字签名方法,包括签名方和验签方,所述抗量子计算数字签名方法包括:
所述签名方将自身的签名方设备信息进行计算得到第一哈希值,利用所述第一哈希值作为密钥指针随机数进行运算得到第一密钥指针,根据所述第一密钥指针在自身存储的群组对称密钥池内找到第一随机数序列,利用所述签名方设备信息和所述第一随机数序列得到第一密钥,利用所述第一密钥进行计算得到第一公钥;
对需要发送的第一消息进行哈希运算得到第二哈希值,利用所述第二哈希值作为密钥指针随机数进行运算得到第二密钥指针,根据所述第二密钥指针在自身存储的群组对称密钥池内找到第二随机数序列,按预设条件生成第一随机数,利用所述第一随机数和所述第一公钥得到第三密钥;利用所述第一消息和所述第二随机数序列生成第一验证码,利用所述第一验证码和所述第三密钥生成第三哈希值,利用所述第一随机数、所述第三哈希值以及自身存储的签名方私钥生成密钥消息,利用所述密钥消息和第三密钥生成第一签名;
向验签方发送所述签名方设备信息,所述第一消息以及所述第一签名;
所述验签方获取所述签名方设备信息,所述第一消息以及所述第一签名后解密、计算并验证所述第一签名。
优选的,所述第一消息由所述签名方加密发送至所述验签方。
本申请公开了一种签名方设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中的所述抗量子计算数字签名方法的中的签名方的步骤。
优选的,所述签名方配置有密钥卡,密钥卡内存储有群组对称密钥池、自身私钥以及签名算法参数。
本申请公开了一种验签方设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中的所述抗量子计算数字签名方法的中的验签方的步骤。
优选的,所述验签方配置有密钥卡,密钥卡内存储有群组对称密钥池、自身私钥以及签名算法参数。
本申请公开了基于身份的抗量子计算数字签名***,包括设有签名方,验签方以及通信网络;所述签名方,验签方通过所述通信网络实现上述技术方案中的所述抗量子计算数字签名方法的步骤。
优选的,所述签名方和验签方均配置有密钥卡,各密钥卡内存储有群组对称密钥池、自身私钥以及签名算法参数。本发明中,使用的密钥卡是独立的硬件隔离设备。群组对称密钥池和签名私钥及算法参数均存储在密钥卡中的数据安全区,被恶意软件或恶意操作窃取密钥的可能性大大降低,也不会被量子计算机获取并破解。由于在经典网络中均无涉及公钥和相关算法参数的传输,因此非对称密钥被破解的风险很低。同时非对称算法和群组对称密钥池的结合使用,增加了签名私钥破解的难度。
本发明中,由于数字签名基于含密钥的ID和含密钥的消息,计算所得的数字签名可以抵抗量子计算机对基于身份的公钥密码学的攻击。因此数字签名可以直接传输,无需加密以应对量子计算机的破解。因此本专利方法避免了使用对称密钥加密的方式来抵抗量子计算机的攻击,降低了各方的设备负担。
附图说明
图1为本发明身份ID的处理流程图;
图2为本发明的密钥卡密钥区的分布示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。其中本申请中的服务站在未做特殊说明的情况下均为量子通信服务站,本申请中的各名称以字母和数字组合为准,例如Q,服务站Q,服务站在下文表示同一含义,即服务站Q;再例如第一密钥KR1,KR1,真随机数KR1,第一密钥在下文中表示同一含义,即第一密钥KR1,其余名称同理。
本申请公开了基于身份的抗量子计算数字签名方法,实施在签名方,所述抗量子计算数字签名方法包括:
所述签名方将自身的签名方设备信息进行计算得到第一哈希值,利用所述第一哈希值作为密钥指针随机数进行运算得到第一密钥指针,根据所述第一密钥指针在自身存储的群组对称密钥池内找到第一随机数序列,利用所述签名方设备信息和所述第一随机数序列得到第一密钥,利用所述第一密钥进行计算得到第一公钥;
对需要发送的第一消息进行哈希运算得到第二哈希值,利用所述第二哈希值作为密钥指针随机数进行运算得到第二密钥指针,根据所述第二密钥指针在自身存储的群组对称密钥池内找到第二随机数序列,按预设条件生成第一随机数,利用所述第一随机数和所述第一公钥得到第三密钥;利用所述第一消息和所述第二随机数序列生成第一验证码,利用所述第一验证码和所述第三密钥生成第三哈希值,利用所述第一随机数、所述第三哈希值以及自身存储的签名方私钥生成密钥消息,利用所述密钥消息和第三密钥生成第一签名;
向验签方发送所述签名方设备信息,所述第一消息以及所述第一签名;所述签名方设备信息用于供所述验签方计算并验证所述第一签名。
本申请公开了基于身份的抗量子计算数字签名方法,实施在验签方,所述抗量子计算数字签名方法包括:
所述验签方获取来自签名方的签名方设备信息,第一消息以及第一签名,所述第一签名由所述签名方利用密钥消息和第三密钥生成,所述密钥消息由所述签名方利用第一随机数、第三哈希值以及签名方私钥生成,所述第一随机数由所述签名方按照预设条件生成,所述第三哈希值由所述签名方利用第一验证码和所述第三密钥生成,所述第一验证码由所述签名方利用所述第一消息和第二随机数序列生成,所述第二随机数序列由所述签名方根据第二密钥指针在自身存储的群组对称密钥池内找到,所述第二密钥指针由所述签名方利用第二哈希值作为密钥指针随机数进行运算得到,所述第二哈希值由所述签名方利用所述第一消息进行哈希运算得到;所述第三密钥由所述签名方利用所述第一随机数和第一公钥得到,所述第一公钥由所述签名方利用第一密钥进行计算得到,所述第一密钥由所述签名方利用所述签名方设备信息和第一随机数序列得到,所述第一随机数序列由所述签名方根据第一密钥指针在自身存储的群组对称密钥池内找到,所述第一密钥指针由所述签名方利用第一哈希值作为密钥指针随机数进行运算得到,所述第一哈希值由所述签名方利用所述签名方设备信息进行计算得到;按照预设规则解密后验证所述第一签名。
本申请公开了基于身份的抗量子计算数字签名方法,包括签名方和验签方,所述抗量子计算数字签名方法包括:
所述签名方将自身的签名方设备信息进行计算得到第一哈希值,利用所述第一哈希值作为密钥指针随机数进行运算得到第一密钥指针,根据所述第一密钥指针在自身存储的群组对称密钥池内找到第一随机数序列,利用所述签名方设备信息和所述第一随机数序列得到第一密钥,利用所述第一密钥进行计算得到第一公钥;
对需要发送的第一消息进行哈希运算得到第二哈希值,利用所述第二哈希值作为密钥指针随机数进行运算得到第二密钥指针,根据所述第二密钥指针在自身存储的群组对称密钥池内找到第二随机数序列,按预设条件生成第一随机数,利用所述第一随机数和所述第一公钥得到第三密钥;利用所述第一消息和所述第二随机数序列生成第一验证码,利用所述第一验证码和所述第三密钥生成第三哈希值,利用所述第一随机数、所述第三哈希值以及自身存储的签名方私钥生成密钥消息,利用所述密钥消息和第三密钥生成第一签名;
向验签方发送所述签名方设备信息,所述第一消息以及所述第一签名;
所述验签方获取所述签名方设备信息,所述第一消息以及所述第一签名后解密、计算并验证所述第一签名。
优选的,所述第一消息由所述签名方加密发送至所述验签方。
本申请公开了一种签名方设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中的所述抗量子计算数字签名方法的中的签名方的步骤。
优选的,所述签名方配置有密钥卡,密钥卡内存储有群组对称密钥池、自身私钥以及签名算法参数。
本申请公开了一种验签方设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中的所述抗量子计算数字签名方法的中的验签方的步骤。
优选的,所述验签方配置有密钥卡,密钥卡内存储有群组对称密钥池、自身私钥以及签名算法参数。
本申请公开了基于身份的抗量子计算数字签名***,包括设有签名方,验签方以及通信网络;所述签名方,验签方通过所述通信网络实现上述技术方案中的所述抗量子计算数字签名方法的步骤。
优选的,所述签名方和验签方均配置有密钥卡,各密钥卡内存储有群组对称密钥池、自身私钥以及签名算法参数。
本发明实现基于身份和密钥卡的数字签名技术。本发明中的密钥卡存储有群组对称密钥池。关于群组对称密钥池的说明可见申请号为“201810385109.X”的专利。群组对称密钥池由大数据量的真随机数组成,存储大小大于等于1GB。作为优选,真随机数为量子随机数。密钥卡不仅可以存储大量的数据,还具有处理信息的能力。本发明中,密钥卡内存在相应的算法以满足发明的需求。
密钥卡的描述可见申请号为“201610843210.6”的专利。当为移动终端时,密钥卡优选为密钥SD卡;当为固定终端时,密钥卡优选为密钥USBkey或主机密钥板卡。
与申请号为“201610843210.6”的专利相比,密钥卡的颁发机制有所类似。本专利的密钥卡颁发方为密钥卡的主管方,一般为群组的管理部门,例如某企业或事业单位的管理部门;密钥卡被颁发方为密钥卡的主管方所管理的成员,一般为某企业或事业单位的各级员工。用户端首先到密钥卡的主管方申请开户。当用户端进行注册登记获批后,将得到密钥卡(具有唯一的密钥卡ID)。密钥卡存储了客户注册登记信息。同一群组下的客户端密钥卡中的群组对称密钥池都下载自同一个密钥管理服务器,且其颁发的每个客户端密钥卡中存储的群组对称密钥池是完全一致的。优选为,密钥卡中存储的密钥池大小可以是1G、2G、4G、8G、16G、32G、64G、128G、256G、512G、1024G、2048G、4096G等等。
密钥卡从智能卡技术上发展而来,是结合了真随机数发生器(优选为量子随机数发生器)、密码学技术、硬件安全隔离技术的身份认证和加解密产品。密钥卡的内嵌芯片和操作***可以提供密钥的安全存储和密码算法等功能。由于其具有独立的数据处理能力和良好的安全性,密钥卡成为私钥和密钥池的安全载体。每一个密钥卡都有硬件PIN码保护,PIN码和硬件构成了用户使用密钥卡的两个必要因素。即所谓“双因子认证”,用户只有同时取得保存了相关认证信息的密钥卡和用户PIN码,才可以登录***。即使用户的PIN码被泄露,只要用户持有的密钥卡不被盗取,合法用户的身份就不会被仿冒;如果用户的密钥卡遗失,拾到者由于不知道用户PIN码,也无法仿冒合法用户的身份。
实施例
1、密钥卡生成:
密钥卡内密钥池由密钥管理服务器颁发所得。密钥管理服务器创建一个群组时,需要为该群组创建密码***。
密钥管理服务器产生大数据量的真随机数,所述真随机数优选为量子随机数。密钥管理服务器将真随机数写入到一个文件内形成密钥池文件,即为群组对称密钥池。
下文涉及的算法所有数学***及函数可参考《An Identity-Based Signaturefrom Gap Diffie-Hellman Groups》。密钥管理服务器创建一个素数q阶的有限循环群G,群G的生成元为P。随机选择一个数s∈Zq。计算得到密钥管理服务器的公共密钥Ppub=sP。选择得到两个加密的哈希函数H1:{0,1}*×G→Zq和H2:{0,1}*→G。密钥管理服务器将s作为主密钥保存在服务器内,将{G,q,P,Ppub,H1,H2}作为该群组数字签名的***参数。为密钥卡颁发密钥时,密钥管理服务器会将数字签名的算法参数{G,q,P,Ppub,H1,H2}写入到密钥卡的数据安全区内,并为密钥卡赋予一个身份ID。
密钥管理服务器根据密钥卡的ID进行哈希运算得到HID=HASH(ID)。将HID作为密钥指针随机数,进行密钥指针函数Fp计算得到密钥指针PID=Fp(HID)。密钥管理服务器根据密钥指针PID去本地密钥卡内的群组对称密钥池内找到对应的随机数序列KID。密钥管理服务器利用指定算法FC计算ID和KID得到处于{0,1}*范围内的含密钥的CID=FC(ID,KID),FC算法可以为异或、HMAC、拼接等小计算量的运算方式。密钥管理服务器计算得到对应的私钥DID=sH2(CID)。并将计算得到私钥DID存入到对应ID密钥卡的安全区内。
下文签名和验证签名的过程发生在对应的密钥卡内。
2、签名:
设签名方身份信息为IDS,签名方对IDS进行哈希运算得到HIDS=HASH(IDS)。将HIDS作为密钥指针随机数,进行密钥指针函数Fp计算得到PIDS=Fp(HIDS)。签名方根据密钥指针PIDS去密钥卡内的群组对称密钥池内找到对应的随机数序列KIDS。签名方利用指定算法计算IDS和KIDS得到具有唯一性的含密钥的ID即CIDS=FC(IDS,KIDS)。签名方对CIDS进行计算得到公钥QIDS=H2(CIDS)。
设消息为m。签名方取密钥卡内的自身私钥DIDS和算法参数对消息m进行签名。签名方对m进行哈希运算得到Hm=HASH(m)。将Hm作为密钥指针随机数,进行密钥指针函数Fp计算得到密钥指针Pm=Fp(Hm)。签名方根据密钥指针Pm去密钥卡内的群组对称密钥池内找到对应的随机数序列Km。选择一个随机数r∈Zq。签名方计算得到U=rQIDS,含密钥的消息M=MAC(m,Km),h=H1(M,U)和V=(r+h)DIDS(所述MAC(a,b)表示MAC算法,a为计算内容,b为本次计算使用的密钥)。签名方得到签名σ=(U,V)。由于量子计算机作为非群组成员,不拥有群组对称密钥池,因此无法得到含密钥的ID即CIDS;由于QIDS=H2(CIDS),因此量子计算机无法得到QIDS;因此量子计算机无法通过U和QIDS得到随机数r。同样地,量子计算机无法得到含密钥的消息M;因此量子计算机无法通过M得到h;由于量子计算机无法得到r和h,因此量子计算机无法通过V=(r+h)DIDS得到DIDS。综上所述,公开的数字签名能抵抗量子计算机对基于身份的公钥密码学的攻击。
签名方最终发出的带签名消息为:{IDS||m||σ}。
3、验证签名
验签方获取签名方发出的带签名消息。
验签方获取得到签名方的身份信息IDS。通过IDS进行一系列计算得到签名方的公钥QIDS。计算过程参考签名中第一段的描述。验签方对消息m进行哈希运算得到Hm=HASH(m)。将Hm作为密钥指针随机数,进行密钥指针函数Fp计算得到Pm=Fp(Hm)。验签方根据密钥指针Pm去密钥卡内的群组对称密钥池内找到对应的随机数序列Km。验签方取密钥卡内的算法参数,计算得到M=MAC(m,Km)和h=H1(M,U)。检查{P,Ppub,U+hQIDS,V}是否为一个有效的Diffie-Hellman元组。
结论
本发明中,使用的密钥卡是独立的硬件隔离设备。群组对称密钥池和签名私钥及算法参数均存储在密钥卡中的数据安全区,被恶意软件或恶意操作窃取密钥的可能性大大降低,也不会被量子计算机获取并破解。由于在经典网络中均无涉及公钥和相关算法参数的传输,因此非对称密钥被破解的风险很低。同时非对称算法和群组对称密钥池的结合使用,增加了签名私钥破解的难度。
本发明中,由于数字签名基于含密钥的ID和含密钥的消息,计算所得的数字签名可以抵抗量子计算机对基于身份的公钥密码学的攻击。因此数字签名可以直接传输,无需加密以应对量子计算机的破解。因此本专利方法避免了使用对称密钥加密的方式来抵抗量子计算机的攻击,降低了各方的设备负担。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (3)

1.签名方设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现基于身份的抗量子计算数字签名方法,基于身份的抗量子计算数字签名方法实施在签名方设备,所述签名方设备配置有密钥卡,密钥卡内存储有群组对称密钥池、自身私钥以及签名算法参数,所述抗量子计算数字签名方法包括:
所述签名方设备将自身的签名方设备信息进行计算得到第一哈希值,利用所述第一哈希值作为密钥指针随机数进行运算得到第一密钥指针,根据所述第一密钥指针在自身存储的群组对称密钥池内找到第一随机数序列,利用所述签名方设备信息和所述第一随机数序列得到第一密钥,利用所述第一密钥进行计算得到第一公钥;
对需要发送的第一消息进行哈希运算得到第二哈希值,利用所述第二哈希值作为密钥指针随机数进行运算得到第二密钥指针,根据所述第二密钥指针在自身存储的群组对称密钥池内找到第二随机数序列,按预设条件生成第一随机数,利用所述第一随机数和所述第一公钥得到第三密钥;利用所述第一消息和所述第二随机数序列通过MAC算法生成第一验证码,利用所述第一验证码和所述第三密钥生成第三哈希值,利用所述第一随机数、所述第三哈希值以及自身存储的签名方私钥生成密钥消息,利用所述密钥消息和第三密钥生成第一签名,具体包括:
获得密钥指针:Hm=HASH(m),Pm=Fp(Hm),式中m为第一消息,Hm为第二哈希值,Pm为利用密钥指针函数Fp获得的密钥指针;
根据密钥指针Pm在自身存储的群组对称密钥池内找到第二随机数序列Km;
得到第三密钥:U=rQIDS,式中U为第三密钥,r为第一随机数,QIDS为第一公钥;
生成第一验证码:M=MAC(m,Km),式中M为第一验证码,m为第一消息,Km为第二随机数序列,MAC表示MAC算法;
生成密钥消息:V=(r+h)DIDS,h=H1(M,U),式中V为密钥消息,r为第一随机数,h为第三哈希值,DIDS为签名方私钥,M为第一验证码,U为第三密钥,H1表示哈希函数;
生成第一签名:σ=(U,V),式中,σ为第一签名,U为第三密钥,V为密钥消息;
向验签方设备发送所述签名方设备信息,所述第一消息以及所述第一签名;所述签名方设备信息用于供所述验签方设备计算并验证所述第一签名;
所述第一消息由所述签名方设备加密发送至所述验签方设备。
2.验签方设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现基于身份的抗量子计算数字签名方法,基于身份的抗量子计算数字签名方法实施在验签方设备,所述验签方设备配置有密钥卡,密钥卡内存储有群组对称密钥池、自身私钥以及签名算法参数,所述抗量子计算数字签名方法包括:
所述验签方设备获取来自签名方设备的签名方设备信息,第一消息以及第一签名,所述第一签名由所述签名方设备利用密钥消息和第三密钥生成,所述密钥消息由所述签名方设备利用第一随机数、第三哈希值以及签名方私钥生成,所述第一随机数由所述签名方设备按照预设条件生成,所述第三哈希值由所述签名方设备利用第一验证码和所述第三密钥生成,所述第一验证码由所述签名方设备利用所述第一消息和第二随机数序列生成,所述第二随机数序列由所述签名方设备根据第二密钥指针在自身存储的群组对称密钥池内找到,所述第二密钥指针由所述签名方设备利用第二哈希值作为密钥指针随机数进行运算得到,所述第二哈希值由所述签名方设备利用所述第一消息进行哈希运算得到;所述第三密钥由所述签名方设备利用所述第一随机数和第一公钥得到,所述第一公钥由所述签名方设备利用第一密钥进行计算得到,所述第一密钥由所述签名方设备利用所述签名方设备信息和第一随机数序列得到,所述第一随机数序列由所述签名方设备根据第一密钥指针在自身存储的群组对称密钥池内找到,所述第一密钥指针由所述签名方设备利用第一哈希值作为密钥指针随机数进行运算得到,所述第一哈希值由所述签名方设备利用所述签名方设备信息进行计算得到;按照预设规则解密后验证所述第一签名;
所述第一签名的生成过程包括:获得密钥指针:Hm=HASH(m),Pm=Fp(Hm),式中m为第一消息,Hm为第二哈希值,Pm为利用密钥指针函数Fp获得的密钥指针;
根据密钥指针Pm在自身存储的群组对称密钥池内找到第二随机数序列Km;
得到第三密钥:U=rQIDS,式中U为第三密钥,r为第一随机数,QIDS为第一公钥;
生成第一验证码:M=MAC(m,Km),式中M为第一验证码,m为第一消息,Km为第二随机数序列,MAC表示MAC算法;
生成密钥消息:V=(r+h)DIDS,h=H1(M,U),式中V为密钥消息,r为第一随机数,h为第三哈希值,DIDS为签名方私钥,M为第一验证码,U为第三密钥,H1表示哈希函数;
生成第一签名:σ=(U,V),式中,σ为第一签名,U为第三密钥,V为密钥消息;
所述第一消息由所述签名方设备加密发送至所述验签方设备。
3.基于身份的抗量子计算数字签名***,其特征在于,包括签名方设备,验签方设备以及通信网络;所述签名方设备,验签方设备通过所述通信网络实现基于身份的抗量子计算数字签名方法,基于身份的抗量子计算数字签名方法实施在签名方设备和验签方设备,所述签名方设备和验签方设备均配置有密钥卡,各密钥卡内存储有群组对称密钥池、自身私钥以及签名算法参数,所述抗量子计算数字签名方法包括:
所述签名方设备将自身的签名方设备信息进行计算得到第一哈希值,利用所述第一哈希值作为密钥指针随机数进行运算得到第一密钥指针,根据所述第一密钥指针在自身存储的群组对称密钥池内找到第一随机数序列,利用所述签名方设备信息和所述第一随机数序列得到第一密钥,利用所述第一密钥进行计算得到第一公钥;
对需要发送的第一消息进行哈希运算得到第二哈希值,利用所述第二哈希值作为密钥指针随机数进行运算得到第二密钥指针,根据所述第二密钥指针在自身存储的群组对称密钥池内找到第二随机数序列,按预设条件生成第一随机数,利用所述第一随机数和所述第一公钥得到第三密钥;利用所述第一消息和所述第二随机数序列通过MAC算法生成第一验证码,利用所述第一验证码和所述第三密钥生成第三哈希值,利用所述第一随机数、所述第三哈希值以及自身存储的签名方私钥生成密钥消息,利用所述密钥消息和第三密钥生成第一签名,具体包括:
获得密钥指针:Hm=HASH(m),Pm=Fp(Hm),式中m为第一消息,Hm为第二哈希值,Pm为利用密钥指针函数Fp获得的密钥指针;
根据密钥指针Pm在自身存储的群组对称密钥池内找到第二随机数序列Km;
得到第三密钥:U=rQIDS,式中U为第三密钥,r为第一随机数,QIDS为第一公钥;
生成第一验证码:M=MAC(m,Km),式中M为第一验证码,m为第一消息,Km为第二随机数序列,MAC表示MAC算法;
生成密钥消息:V=(r+h)DIDS,h=H1(M,U),式中V为密钥消息,r为第一随机数,h为第三哈希值,DIDS为签名方私钥,M为第一验证码,U为第三密钥,H1表示哈希函数;
生成第一签名:σ=(U,V),式中,σ为第一签名,U为第三密钥,V为密钥消息;
向验签方设备发送所述签名方设备信息,所述第一消息以及所述第一签名;
所述验签方设备获取所述签名方设备信息,所述第一消息以及所述第一签名后解密、计算并验证所述第一签名;
所述第一消息由所述签名方设备加密发送至所述验签方设备。
CN201910642852.3A 2019-07-16 2019-07-16 基于身份的抗量子计算数字签名方法和*** Active CN110519040B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910642852.3A CN110519040B (zh) 2019-07-16 2019-07-16 基于身份的抗量子计算数字签名方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910642852.3A CN110519040B (zh) 2019-07-16 2019-07-16 基于身份的抗量子计算数字签名方法和***

Publications (2)

Publication Number Publication Date
CN110519040A CN110519040A (zh) 2019-11-29
CN110519040B true CN110519040B (zh) 2023-04-18

Family

ID=68623025

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910642852.3A Active CN110519040B (zh) 2019-07-16 2019-07-16 基于身份的抗量子计算数字签名方法和***

Country Status (1)

Country Link
CN (1) CN110519040B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111935075A (zh) * 2020-06-23 2020-11-13 浪潮云信息技术股份公司 一种基于区块链的数字身份签发方法、设备及介质
CN114254284B (zh) * 2022-02-28 2022-06-17 南京大学 数字证书生成、身份认证方法及量子ca认证中心与***

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109660338A (zh) * 2018-11-19 2019-04-19 如般量子科技有限公司 基于对称密钥池的抗量子计算数字签名方法和抗量子计算数字签名***
CN109936456A (zh) * 2019-01-15 2019-06-25 如般量子科技有限公司 基于私钥池的抗量子计算数字签名方法和***

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101873307A (zh) * 2010-03-19 2010-10-27 上海交通大学 基于身份的前向安全的数字签名方法、装置及***

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109660338A (zh) * 2018-11-19 2019-04-19 如般量子科技有限公司 基于对称密钥池的抗量子计算数字签名方法和抗量子计算数字签名***
CN109936456A (zh) * 2019-01-15 2019-06-25 如般量子科技有限公司 基于私钥池的抗量子计算数字签名方法和***

Also Published As

Publication number Publication date
CN110519040A (zh) 2019-11-29

Similar Documents

Publication Publication Date Title
US11552792B2 (en) Systems and methods for generating signatures
CN106961336B (zh) 一种基于sm2算法的密钥分量托管方法和***
CN108292402B (zh) 用于信息的安全交换的公共秘密的确定和层级确定性密钥
CN107483212B (zh) 一种双方协作生成数字签名的方法
CN110959163B (zh) 能够在多个存储节点上安全存储大型区块链的计算机实现的***和方法
US7634085B1 (en) Identity-based-encryption system with partial attribute matching
EP3841702B1 (en) Method, user device, management device, storage medium and computer program product for key management
CN109660338B (zh) 基于对称密钥池的抗量子计算数字签名方法和***
JP2010220212A (ja) 第1のユーザによって第2のユーザに送信される通信の安全化
CN109936456B (zh) 基于私钥池的抗量子计算数字签名方法和***
CN110535626B (zh) 基于身份的量子通信服务站保密通信方法和***
CN109672530A (zh) 基于非对称密钥池的抗量子计算数字签名方法和抗量子计算数字签名***
CN109921905B (zh) 基于私钥池的抗量子计算密钥协商方法和***
CN109728906A (zh) 基于非对称密钥池的抗量子计算非对称加密方法和***
CN110519226B (zh) 基于非对称密钥池和隐式证书的量子通信服务端保密通信方法和***
CN116830523A (zh) 阈值密钥交换
CN110519040B (zh) 基于身份的抗量子计算数字签名方法和***
Kumar et al. An efficient implementation of digital signature algorithm with SRNN public key cryptography
CN110048852B (zh) 基于非对称密钥池的量子通信服务站数字签密方法和***
CN111585756B (zh) 一种适用于多副本-多云情形下的无证书云审计方法
Hassouna et al. A New Level 3 Trust Hierarchal Certificateless Public Key Cryptography Scheme in the Random Oracle Model.
CN110572788B (zh) 基于非对称密钥池和隐式证书的无线传感器通信方法和***
CN105187213A (zh) 一种计算机信息安全的方法
CN110572257A (zh) 基于身份的抗量子计算数据来源鉴别方法和***
Chen et al. A private online system for executing wills based on a secret sharing mechanism

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