CN110166239B - 用户私钥生成方法、系统、可读存储介质及电子设备 - Google Patents
用户私钥生成方法、系统、可读存储介质及电子设备 Download PDFInfo
- Publication number
- CN110166239B CN110166239B CN201910481449.7A CN201910481449A CN110166239B CN 110166239 B CN110166239 B CN 110166239B CN 201910481449 A CN201910481449 A CN 201910481449A CN 110166239 B CN110166239 B CN 110166239B
- Authority
- CN
- China
- Prior art keywords
- private key
- key
- key generation
- user
- private
- 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
Images
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/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- 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
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
-
- 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
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本公开涉及一种用户私钥生成方法、一种用户私钥生成系统、一种计算机可读存储介质及一种电子设备。该用户私钥生成方法包括当接收到用户端发送的私钥请求时,获取所述用户端利用第一随机数计算的随机掩点;利用M个所述密钥生成中心的主私钥和所述随机掩点执行密态运算操作得到掩私钥,以便所述用户端解掩所述掩私钥得到用户私钥。本方法能够避免用户私钥泄露,提高系统安全性。
Description
技术领域
本公开涉及信息安全技术领域,特别涉及一种用户私钥生成方法、系统、一种计算机可读存储介质及一种电子设备。
背景技术
国家商用密码标准算法SM9是一种基于标识的密码算法,包括:数字签名、密钥交换、密钥封装和公钥加密四种机制。在SM9算法中,用户的身份标识(比如:身份证号、手机号和邮箱地址等)可作为用户的公钥,不需要传统公钥密码体制中的证书中心对用户分发证书,保证用户公钥和用户身份标识的绑定,减少了繁琐的证书管理机制。
在相关技术中,SM9的密钥生成中心KGC掌握系统主私钥,负责给系统用户分发私钥且拥有所有用户的私钥。但是上述相关技术难以满足密码应用中的合规性(即:电子签名法要求用户私钥仅有用户自己拥有),导致一旦KGC的主私钥泄露该KGC所对应的所有用户私钥将会全部泄露,整个密码系统的安全性受到严重威胁。
因此,如何避免用户私钥泄露,提高系统安全性是本领域技术人员目前需要解决的技术问题。
发明内容
本公开的目的是提供一种用户私钥生成方法、系统、一种计算机可读存储介质及一种电子设备,能够避免用户私钥泄露,提高系统安全性。
为解决上述技术问题,本公开提供一种用户私钥生成方法,应用于包括T个密钥生成中心的密钥生成系统,该用户私钥生成方法包括:
当接收到用户端发送的私钥请求时,获取用户端利用第一随机数计算的随机掩点;
利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥,以便用户端解掩掩私钥得到用户私钥;其中,M∈(1,T]。
可选的,利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥包括:
利用M个密钥生成中心的主私钥和随机掩点执行同态加密运算操作得到掩私钥;
或,利用M个密钥生成中心的主私钥和随机掩点执行门限同态加密运算操作得到掩私钥。
可选的,当密钥生成中心的数量M为2时,利用M个密钥生成中心的主私钥和随机掩点执行同态加密运算操作得到掩私钥包括:
利用第一密钥生成中心计算并公布第一密文E(ks1);其中,E()为加法同态公钥密码的加密算法,ks1为第一密钥生成中心的主私钥;
利用第二密钥生成中心计算并公布第二密文E(k2(ks+h));其中,k2为第二随机数,ks为系统主私钥,ks、ks1和ks2符合预设主私钥组合形式,h=H(IDA||hid,N);
利用第一密钥生成中心解密第二密文E(k2(ks+h))得到k2(ks+h),利用k2(ks+h)计算并公布第一掩参数[ks1(k2(h+ks))-1]Q和第二掩参数[(k2(h+ks))-1]Q;其中,Q=[r]P1,Q为随机掩点,r为第一随机数,P1为N阶循环群的生成元;
利用第二密钥生成中心根据第一掩参数和第二掩参数计算并公布掩私钥[ks(h+ks)-1]Q。
可选的,当密钥生成中心的数量M为2时,利用M个密钥生成中心的主私钥和随机掩点执行门限同态加密运算操作得到掩私钥包括:
利用第一密钥生成中心计算并公布第一密文E’(ks1);其中,E’()为门限加法同态公钥密码的加密算法,ks1为第一密钥生成中心的主私钥;
利用第二密钥生成中心计算并公布第二密文E’(ks2);其中,ks2为第二密钥生成中心的主私钥;
利用第一密钥生成中心计算并公布第三密文E’(k1(h+ks));其中,k1为第三随机数,ks为系统主私钥,ks、ks1和ks2符合预设主私钥组合形式,h=H(IDA||hid,N);
利用第二密钥生成中心计算第四密文E’(k1k2(h+ks)),并利用第二密钥生成中心的门限解密算法解密第四密文计算并公布第二解密结果D2(k1k2(h+ks));其中,D2为门限加法同态公钥密码的第二方解密算法;
利用第一密钥生成中心计算第一解密结果D1(k1k2(h+ks)),根据第一解密结果D1(k1k2(h+ks))和第二解密结果D2(k1k2(h+ks))计算明文k1k2(h+ks),计算并公布第三掩参数[ks1k1(k1k2(h+ks))-1]Q和第四掩参数[k1(k1k2(h+ks))-1]Q;其中,D1为门限加法同态公钥密码的第一方解密算法;
利用第二密钥生成中心根据第三掩参数和第四掩参数计算并公布掩私钥[ks(h+ks)-1]Q。
可选的,预设主私钥组合形式包括第一组合形式、第二组合形式、第三组合形式和第四组合形式;其中,第一组合形式为ks=ks1+ks2,第二组合形式为ks=ks1*ks2,第三组合形式为ks=ks1-ks2,第四组合形式为ks=ks1/ks2。
可选的,在利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥之后,还包括:
将掩私钥发送至用户端,以便用户端利用第一随机数解掩掩私钥得到用户私钥。
可选的,在利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥之前,还包括:
根据私钥生成请求确定M个密钥生成中心。
本公开还提供了一种用户私钥生成系统,应用于包括T个密钥生成中心的密钥生成系统,该用户私钥生成系统包括:
随机掩点获取模块,用于当接收到用户端发送的私钥请求时,获取用户端利用第一随机数计算的随机掩点;
密态运算模块,用于利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥,以便用户端解掩掩私钥得到用户私钥;其中,M∈(1,T]。
本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序执行时实现上述用户私钥生成方法执行的步骤。
本公开还提供了一种电子设备,包括存储器和处理器,存储器中存储有计算机程序,处理器调用存储器中的计算机程序时实现上述用户私钥生成方法执行的步骤。
本公开提供了一种用户私钥生成方法,应用于包括T个密钥生成中心的密钥生成系统,该用户私钥生成方法包括当接收到用户端发送的私钥请求时,获取用户端利用第一随机数计算的随机掩点;利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥,以便用户端解掩掩私钥得到用户私钥;其中,M∈(1,T]。
本公开通过包括T个密钥生成中心的密钥生成系统相互协作生成用户私钥,首先在接收到用户端的私钥请求时获取用户端的随机掩点,由于随机掩点是由用户端根据第一随机数计算得到的,因此只有用户端能够对M个密钥生成中心运算得到的掩私钥进行解掩进而得到用户私钥,可以保证多个密钥生成中心在进行密态运算操作的过程中无法得知用户私钥的内容。本公开利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥,需要M个密钥生成中心合谋才能推导得到掩私钥,因此即使存在小于M个数量的密钥生成中心的主私钥泄露也不会导致用户私钥的泄露。相对于相关技术中使用单一密钥生成中心生成用户私钥的方案,本公开采用多个密钥生成中心协作的方式生成用户私钥,并使用随机掩点保证解掩用户私钥生成与分发过程的安全性。因此本公开能够避免用户私钥泄露,提高系统安全性。本公开同时还提供了一种用户私钥生成系统、一种计算机可读存储介质和一种电子设备,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本公开实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1为根据一示例性实施例示出的一种用户私钥生成方法的流程图;
图2为根据一示例性实施例示出的一种基于同态加密的分布式SM9密钥生成和分发方法的流程图;
图3为根据一示例性实施例示出的另一种基于同态加密的分布式SM9密钥生成和分发方法的流程图;
图4为根据一示例性实施例示出的一种基于门限同态加密的分布式SM9密钥生成和分发方法的流程图;
图5为根据一示例性实施例示出的另一种基于门限同态加密的分布式SM9密钥生成和分发方法的流程图;
图6为根据一示例性实施例示出的一种用户私钥生成系统的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
在SM9加密算法中,密钥生成中心用于为系统用户生成和分发私钥(即用户私钥)。但是由于传统SM9加密算法密钥生成流程的固有缺陷,相关技术中由单一的密钥生成中心为系统用户生成和分发私钥,因此上述相关技术中存在用户私钥泄露的风险。针对于上述相关技术中存在的安全问题,本公开通过以下几个实施例提供新的用户私钥生成方式,能够达到避免用户私钥泄露,提高系统安全性的目的。
下面请参见图1,图1为根据一示例性实施例示出的一种用户私钥生成方法的流程图,相关步骤可以包括:
在步骤S101中,当接收到用户端发送的私钥请求时,获取用户端利用第一随机数计算的随机掩点;
其中,本实施例的执行主体可以为密钥生成系统,密钥生成系统可以包括T个密钥生成中心,T为大于1的整数,此处不对T的数值进行限定。可以理解的是,在获取随机掩点之前可以存在选择T个密钥生成中心构建密钥生成系统的操作,密钥生成系统可以与用户端进行信息交互。
私钥请求为需要密钥生成系统为用户端生成用户私钥的请求信息,在S101之前可以存在用户端向密钥生成系统发送私钥请求的操作,本实施例不限定用户端发送私钥请求的方式,例如可以由使用用户端的操作人员发送私钥请求,也可以是用户端自动发送的私钥请求。更进一步的,本实施例默认在S101之前用户端存在生成第一随机数并利用第一随机数计算随机掩点的操作,需要注意的是第一随机数由用户端生成且不在密钥生成系统中公布,因此本实施例在执行S102后只有用户端才能对掩私钥进行解掩得到用户私钥,达到了用户私钥仅由用户自己拥有的效果,符合密码应用中的合规性。
在步骤S102中,利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥,以便用户端解掩掩私钥得到用户私钥;
其中,本实施例中提到的M的取值范围为(1,T],当M等于T时,相当于客户端向密钥生成系统中所有的密钥生成中心发送私钥请求,以便所有的密钥生成中心协作生成掩私钥;当M小于T时,可以存在密钥生成系统从所有的T个密钥生成中心中选取M个密钥生成中心,以便利用M个密钥生成中心协作生成掩私钥。进一步的,当M小于T时,本实施例可以不限定从T个密钥生成中心中选择M个密钥生成中心的方式,例如可以基于每一密钥生成中心的当前业务压力选择,当前业务压力较小的M个密钥生成中心;也可以选择安全性较优的M个密钥生成中心。
每一密钥生成中心(KGC,Key Generation Center)中存在有与其对应的主私钥,每一密钥生成中心拥有自身的主私钥而不拥有其他密钥生成中心的主私钥。本实施例中所提到的利用主私钥和随机掩点执行密态运算操作可以为M个密钥生成中心相互协作生成掩私钥的过程,随机掩点可以保证在多个密钥生成中心协作生成掩私钥之后掩私钥的保密性,即只有用户端能解掩掩私钥得到用户私钥,其他密钥生成中心无法对掩私钥进行解掩操作。
掩私钥是由M个密钥生成中心协作执行密态运算操作得到,即通过M个密钥生成中心相互协作M个主私钥均参与到掩私钥的生成过程中,由于本实施例采用了密态运算的方式生成掩私钥,因此即使本实施例存在密钥生成中心基于主私钥进行信息交互的过程,任一密钥生成中心也无法得到其他密钥生成中心的主私钥。作为一种可行的实施方式,可以在利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥之后,将掩私钥发送至用户端,以便用户端利用第一随机数解掩掩私钥得到用户私钥。本实施例中单一KGC仅拥有用户私钥的部分信息,部分KGC主私钥的泄露不影响用户私钥的安全性。生成用户私钥过程中的交互信息可公开,用户私钥分发不需要额外的加密操作。
本实施例通过包括T个密钥生成中心的密钥生成系统相互协作生成用户私钥,首先在接收到用户端的私钥请求时获取用户端的随机掩点,由于随机掩点是由用户端根据第一随机数计算得到的,因此只有用户端能够对M个密钥生成中心运算得到的掩私钥进行解掩进而得到用户私钥,可以保证多个密钥生成中心在进行密态运算操作的过程中无法得知用户私钥的内容。本实施例利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥,需要M个密钥生成中心合谋才能推导得到掩私钥,因此即使存在小于M个数量的密钥生成中心的主私钥泄露也不会导致用户私钥的泄露。相对于相关技术中使用单一密钥生成中心生成用户私钥的方案,本实施例采用多个密钥生成中心协作的方式生成用户私钥,并使用随机掩点保证解掩用户私钥过程的安全性。因此本实施例能够避免用户私钥泄露,提高系统安全性。
作为对图1对应的实施例的进一步补充,图1对应的实施例中S102利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥可以分为以下两类操作:
第一类操作:利用M个密钥生成中心的主私钥和随机掩点执行同态加密运算操作得到掩私钥;
第二类操作:利用M个密钥生成中心的主私钥和随机掩点执行门限同态加密运算操作得到掩私钥。
上述第一类操作利用多个密钥生成中心基于随机掩点,通过公开的交互通信生成用户的掩私钥。第一类操作中各个密钥生成中心采用同态加密技术保证各方KGC隐私数据的机密性,保证各方KGC可以在密态下进行数据计算,保证数据传输的可公开性。第二类操作利用多个密钥生成中心基于随机掩点,通过公开的交互通信生成用户的掩私钥。第二类操作中各个密钥生成中心采用门限加法同态加密技术保证各方KGC隐私数据的机密性,保证各方KGC可以在密态下进行数据计算,保证数据传输的可公开性。进一步的,由于第二类操作采用门限同态加密运算操作,要求参与解密的KGC数量达到门限值,可保证各方KGC的公平性和安全性。
下面以2个密钥生成中心为例,说明上述提到的第一类操作和第二类操作的过程:
例一、基于同态加密运算的掩私钥生成方式
在步骤1中,利用第一密钥生成中心计算并公布第一密文E(ks1);
其中,E()为加法同态公钥密码的加密算法,ks1为第一密钥生成中心的主私钥。
在步骤2中,利用第二密钥生成中心计算并公布第二密文E(k2(ks+h));
其中,k2为第二随机数,ks为系统主私钥,ks、ks1和ks2符合预设主私钥组合形式,h=H(IDA||hid,N)。H、IDA和hid都是按照标准SM9中定义的已知参数。H是哈希函数(标准SM9中使用SM3),IDA是用户A的身份,hid是用户私钥生成函数识别符是系统参数。计算h是因为SM9的私钥形式就是[ks(h+ks)-1]P1,为了构造最后的用户私钥所以需要第二密钥生成中心计算h。
在步骤3中,利用第一密钥生成中心解密第二密文E(k2(ks+h))得到k2(ks+h),利用k2(ks+h)计算并公布第一掩参数[ks1(k2(h+ks))-1]Q和第二掩参数[(k2(h+ks))-1]Q;
其中,Q=[r]P1,Q为随机掩点,r为第一随机数,P1为N阶循环群的生成元;加法同态公钥密码的加密算法能够使得解密方只能获知最后的结果,而无法获得每一个密文的消息,可以提高信息的安全性。Q和P1分别表示椭圆曲线上的两个点;P1点就是SM9的系统参数点(按照SM9的方式确定,一般而言就是由系统随机产生,或者使用SM9标准示例中的P1点)。[]表示椭圆曲线运算中的倍点乘,比如:[r]P1表示r个P1点相加。
在步骤4中,利用第二密钥生成中心根据第一掩参数和第二掩参数计算并公布掩私钥[ks(h+ks)-1]Q。
本实施例通过多个KGC和用户交互通信生成用户私钥,保障用户私钥仅由用户个人掌握,单一KGC无法掌握用户私钥。本实施例采用同态加密算法和用户掩点操作,保障协议交互信息的机密性,用户的私钥分发不需要额外的加密算法。用户端解掩后的私钥与SM9标准算法的格式一致,不影响SM9标准的数字签名、密钥交换、密钥封装和公钥加密算法的使用。
例一还可以通过第二密钥生成中心预存第一密钥生成中心的私钥密文E(ks1)进行优化。通过预存的方式,在用户提出私钥申请时只需KGC双方一轮交互即可生成用户的掩私钥,用户解掩即可获得自己的私钥。
例二、基于门限同态加密运算的掩私钥生成方式。本实施例中的参数解释可以参见基于同态加密运算的掩私钥生成方式的参数解释,此处不再赘述。
在步骤1中,利用第一密钥生成中心计算并公布第一密文E’(ks1);
其中,E’()为门限加法同态公钥密码的加密算法,ks1为第一密钥生成中心的主私钥;
在步骤2中,利用第二密钥生成中心计算并公布第二密文E’(ks2);
其中,ks2为第二密钥生成中心的主私钥;
在步骤3中,利用第一密钥生成中心计算并公布第三密文E’(k1(h+ks));
其中,k1为第三随机数,ks为系统主私钥,ks、ks1和ks2符合预设主私钥组合形式,h=H(IDA||hid,N);H、IDA和hid都是按照标准SM9中定义的已知参数。H是哈希函数(标准SM9中使用SM3),IDA是用户A的身份,hid是用户私钥生成函数识别符是系统参数。计算h是因为SM9的私钥形式就是[ks(h+ks)-1]P1,为了构造最后的用户私钥所以需要第一密钥生成中心计算h。
在步骤4中,利用第二密钥生成中心计算第四密文E’(k1k2(h+ks)),并利用第二密钥生成中心的门限解密算法解密第四密文计算并公布第二解密结果D2(k1k2(h+ks));
其中,D2为门限加法同态公钥密码的第二方解密算法;
在步骤5中,利用第一密钥生成中心计算第一解密结果D1(k1k2(h+ks)),根据第一解密结果D1(k1k2(h+ks))和第二解密结果D2(k1k2(h+ks))计算明文k1k2(h+ks),计算并公布第三掩参数[ks1k1(k1k2(h+ks))-1]Q和第四掩参数[k1(k1k2(h+ks))-1]Q;
其中,D1为门限加法同态公钥密码的第一方解密算法;
在步骤6中,利用第二密钥生成中心根据第三掩参数和第四掩参数计算并公布掩私钥[ks(h+ks)-1]Q。
本实施例通过多个KGC和用户端交互通信生成用户私钥,保障用户私钥仅由用户个人掌握,单一KGC无法掌握用户私钥;采用门限同态加密算法和用户掩点操作,保障协议交互信息的机密性,用户的私钥分发不需要额外的加密算法。采用例二的方法,用户端解掩后的私钥与SM9标准算法的格式一致,不影响SM9标准的数字签名、密钥交换、密钥封装和公钥加密算法的使用。
作为进一步补充,例二还可以通过KGC1和KGC2相互预存对方的私钥密文E(ks1)和E(ks1)进行优化。如此,在用户提出私钥申请时,只需KGC双方一轮半交互即可生成用户的掩私钥,用户解掩即可获得自己的私钥。
作为对例一和例二的进一步补充,上述提到的所述预设主私钥组合形式可以包括第一组合形式、第二组合形式、第三组合形式和第四组合形式;其中,所述第一组合形式为ks=ks1+ks2,所述第二组合形式为ks=ks1*ks2,所述第三组合形式为ks=ks1-ks2,所述第四组合形式为ks=ks1/ks2。更进一步的,还可以存在其他的主私钥组合形式,只要ks、ks1和ks2三者之间存在函数关系即可,此处不进行限定。
下面通过在实际应用中的四个实施例说明上述实施例描述的生成用户私钥的流程。
请参见图2,图2为根据一示例性实施例示出的一种基于同态加密的分布式SM9密钥生成和分发方法的流程图,在本实施例中用户端首先向多个密钥生成中心(KGC)分别提出私钥申请,并公布SM9基点的一个随机掩点,多个KGC基于该随机掩点,通过公开的交互通信生成用户的掩私钥。最后,用户端通过解掩可获得用户私钥。各方KGC采用门限加法同态加密技术保证各方KGC隐私数据的机密性,保证各方KGC可以在密态下进行数据计算,保证数据传输的可公开性,同时该加密技术要求参与解密的KGC数量达到门限值,可保证各方KGC的公平性和安全性。本实施例采用的系统主私钥组合形式为各方KGC私钥的和,下面以两方KGC为例分别展示通过协议一生成用户私钥的步骤。本实施例的参数按照SM9标准算法的系统参数组,两个N阶循环群G1和G2的生成元分别为P1和P2,双线性对e的值域为N阶乘法循环群GT。假设密钥生成中心KGC1和KGC2合作为用户A分发私钥dsA,KGC1和KGC2的主私钥分别为ks1和ks2。
协议一的内容为:系统主私钥为各方KGC私钥之和:ks=ks1+ks2。令E()和D()表示加法同态公钥密码的加密算法和解密算法,比如Paillier算法,⊕表示同态加密运算,⊙表示数乘运算。选择KGC1的公钥进行数据密态运算,过程如下:
在步骤1中,用户端向KGC1和KGC2提出私钥申请。用户端随机选择r∈[1,N-1],计算掩点Q=[r]P1公布;
在步骤2中,KGC1计算密文E(ks1)并公布;
在步骤3中,KGC2计算h=H(IDA||hid,N),随机选择k2∈[1,N-1],计算密文k2⊙(E(h)⊕E(ks1)⊕E(ks2))=E(k2(ks1+ks2+h))=E(k2(ks+h))并公布;
在步骤4中,KGC1解密D(E(k2(ks+h)))获得k2(ks+h),计算并公布[ks1(k2(h+ks))-1]Q和[(k2(h+ks))-1]Q;
在步骤5中,KGC2计算并公布ks2k2[(k2(h+ks))-1]Q+k2[ks1(k2(h+ks))-1]Q=ks(h+ks)-1]Q;
在步骤6中,用户端解掩r-1[ks(h+ks)-1]Q=[ks(h+ks)-1]P1。
用户A的私钥为dsA=[ks(h+ks)-1]P1,系统主公钥为[ks]P2=[ks1+ks2]P2,与SM9标准的用户私钥和系统主公钥保持一致。用户的私钥仅由用户端掌握,KGC1和KGC2分别掌握部分私钥,两者合谋才能推出用户私钥。由于在协议交互开始,用户端选择随机掩点,整个交互过程可以公开进行,不会泄露用户私钥信息。
协议一中系统主私钥等于各方KGC的私钥之和,ks=ks1+ks2。该协议采用同态加密技术,选定一方KGC的公钥进行隐私数据的密态运算,组合用户的掩私钥并公开发送掩私钥给用户。该协议交互过程较少,随机数较少,协议过程清晰简单。
请参见图3,图3为根据一示例性实施例示出的另一种基于同态加密的分布式SM9密钥生成和分发方法的流程图,本实施例与图2对应的实施例采用的协议不同,其他内容可以相互参见。本实施例采用的协议二的内容包括:系统主私钥等于各方KGC的私钥之积,ks=ks1*ks2。该协议采用同态加密技术,选定一方KGC的公钥进行隐私数据的密态运算,组合用户的掩私钥并公开发送掩私钥给用户。该协议同样具有协议一的优势,而且各方KGC的交互通信量更少。令E()和D()表示加法同态公钥密码的加密算法和解密算法,比如Paillier算法,⊕表示同态加密运算,⊙表示数乘运算。选择KGC1的公钥进行数据密态运算,过程如下:
在步骤1中,用户端向多个KGC提出私钥申请,随机选择r∈[1,N-1],计算掩点Q=[r]P1公布;
在步骤2中,KGC1计算并公布密文E(ks1);
在步骤3中,KGC2计算h=H(IDA||hid,N),随机选择k2∈[1,N-1],计算并公布密文;
k2⊙((ks2⊙E(ks1))⊕E(h))=E((ks1ks2+h)k2)=E((ks+h)k2);
在步骤4中,KGC1解密D(E((ks+h)k2))获得(ks+h)k2;计算并公布[ks1(k2(h+ks))-1]Q;
在步骤5中,KGC2计算并公布ks2k2[ks1(k2(h+ks))-1]Q=[ks(h+ks)-1]Q;
在步骤6中,用户端解掩获得私钥r-1[ks(h+ks)-1]Q=[ks(h+ks)-1]P1。
用户A的私钥为dsA=[ks(h+ks)-1]P1,系统主公钥为[ks]P2=[ks1ks2]P2,与SM9标准的用户私钥和系统主公钥保持一致。用户的私钥仅由用户端掌握,KGC1和KGC2分别掌握部分私钥,两者合谋才能推出用户私钥。由于在协议交互开始,用户选择随机掩点,整个交互过程可以公开进行,不会泄露用户私钥信息。
请参见图4,图4为根据一示例性实施例示出的一种基于门限同态加密的分布式SM9密钥生成和分发方法的流程图,在本实施例中用户端首先向多个密钥生成中心(KGC)分别提出私钥申请,并公布SM9基点的一个随机掩点,多个KGC基于该随机掩点,通过公开的交互通信生成用户的掩私钥。最后,用户端通过解掩可获得用户私钥。各方KGC采用门限加法同态加密技术保证各方KGC隐私数据的机密性,保证各方KGC可以在密态下进行数据计算,保证数据传输的可公开性,同时该加密技术要求参与解密的KGC数量达到门限值,可保证各方KGC的公平性和安全性。下面以两方KGC为例分别展示通过协议三生成用户私钥的步骤。本实施例的参数按照SM9标准算法的系统参数组,两个N阶循环群G1和G2的生成元分别为P1和P2,双线性对e的值域为N阶乘法循环群GT。假设密钥生成中心KGC1和KGC2合作为用户A分发私钥dsA,KGC1和KGC2的主私钥分别为ks1和ks2。
协议三的内容包括:系统主私钥为各方KGC私钥之和:ks=ks1+ks2。令E()和Di()表示门限加法同态的公钥密码的加密算法和第i方的解密算法,比如门限的Paillier算法,⊕表示同态加密运算,⊙表示数乘运算。过程如下:
在步骤1中,用户向多个KGC提出私钥申请,随机选择r∈[1,N-1],计算掩点Q=[r]P1公布;
在步骤2中,KGC1计算密文E(ks1)并公布,KGC2计算密文E(ks2)并公布;
在步骤3中,KGC1计算h=H(IDA||hid,N),随机选择k1∈[1,N-1],使用同态运算和数乘运算计算并公布:
k1⊙(E(h)⊕E(ks1)⊕E(ks2))=E(k1(h+ks1+ks2))=E(k1(h+ks));
在步骤4中,KGC2随机选择k2∈[1,N-1],使用同态运算和数乘运算计算c=k2⊙E(k1(h+ks))=E(k2k1(h+ks)),运行KGC2的门限解密算法计算D2(c)并公布;
在步骤5中,KGC1运行门限解密算法计算D1(c),使用D1(c)和D2(c)计算出明文k2k1(h+ks),并计算[ks1k1(k2k1(h+ks))-1]Q和[k1(k2k1(h+ks))-1]Q公布;
在步骤6中,KGC2计算并公布ks2k2[k1(k2k1(h+ks))-1]Q+k2[ks1k1(k2k1(h+ks))-1]Q=[ks(h+ks)-1]Q;
在步骤7中,用户解掩计算r-1[ks(h+ks)-1]Q=[ks(h+ks)-1]P1。
用户A的私钥为dsA=[ks(h+ks)-1]P1,系统主公钥为[ks]P2=[ks1+ks2]P2,与SM9标准的用户私钥和系统主公钥保持一致。用户的私钥仅由用户端掌握,KGC1和KGC2分别掌握部分私钥,两者合谋才能推出用户私钥。由于在协议交互开始,用户选择随机掩点,整个交互过程可以公开进行,不会泄露用户私钥信息。
请参见图5,图5为根据一示例性实施例示出的另一种基于门限同态加密的分布式SM9密钥生成和分发方法的流程图,本实施例与图4对应的实施例采用的协议不同,其他内容可以相互参见。本实施例采用的协议四的内容包括:系统主私钥为各方KGC私钥之积:ks=ks1ks2。令E()和Di()表示门限加法同态的公钥密码的加密算法和第i方的解密算法,比如门限的Paillier算法,⊕表示同态加密运算,⊙表示数乘运算。过程如下:
在步骤1中,用户向多个KGC提出私钥申请,随机选择r∈[1,N-1],计算掩点Q=[r]P1公布;
在步骤2中,KGC1计算密文E(ks1)并公布,KGC2计算密文E(ks2)并公布;
在步骤3中,KGC1计算h=H(IDA||hid,N),随机选择k1∈[1,N-1],使用同态运算和数乘运算计算并公布:
k1⊙(E(h)⊕(E(ks1)⊙E(ks2)))=E(k1(h+ks1ks2))=E(k1(h+ks));
在步骤4中,KGC2随机选择k2∈[1,N-1],使用同态运算和数乘运算计算c=k2⊙E(k1(h+ks))=E(k2k1(h+ks)),运行KGC2的门限解密算法计算D2(c)并公布;
在步骤5中,KGC1运行门限解密算法计算D1(c),使用D1(c)和D2(c)计算出明文k2k1(h+ks),并计算[ks1k1(k2k1(h+ks))-1]Q公布;
在步骤6中,KGC2计算ks2k2[ks1k1(k2k1(h+ks))-1]Q=[ks(h+ks)-1]Q并公布;
在步骤7中,用户解掩计算r-1[ks(h+ks)-1]Q=[ks(h+ks)-1]P1。
用户A的私钥为dsA=[ks(h+ks)-1]P1,系统主公钥为[ks1+ks2]P2=[ks]P2,与SM9标准的用户私钥和系统主公钥保持一致。用户的私钥仅由用户端掌握,KGC1和KGC2分别掌握部分私钥,两者合谋才能推出用户私钥。由于在协议交互开始,用户选择随机掩点,整个交互过程可以公开进行,不会泄露用户私钥信息。
请参见图6,图6为根据一示例性实施例示出的一种用户私钥生成系统的结构示意图;
该用户私钥生成系统包括:
随机掩点获取模块100,用于当接收到用户端发送的私钥请求时,获取用户端利用第一随机数计算的随机掩点;
密态运算模块200,用于利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥,以便用户端解掩掩私钥得到用户私钥;其中,M∈(1,T]。
本实施例通过包括T个密钥生成中心的密钥生成系统相互协作生成用户私钥,首先在接收到用户端的私钥请求时获取用户端的随机掩点,由于随机掩点是由用户端根据第一随机数计算得到的,因此只有用户端能够对M个密钥生成中心运算得到的掩私钥进行解掩进而得到用户私钥,可以保证多个密钥生成中心在进行密态运算操作的过程中无法得知用户私钥的内容。本实施例利用M个密钥生成中心的主私钥和随机掩点执行密态运算操作得到掩私钥,需要M个密钥生成中心合谋才能推导得到掩私钥,因此即使存在小于M个数量的密钥生成中心的主私钥泄露也不会导致用户私钥的泄露。相对于相关技术中使用单一密钥生成中心生成用户私钥的方案,本实施例采用多个密钥生成中心协作的方式生成用户私钥,并使用随机掩点保证解掩用户私钥过程的安全性。因此本实施例能够避免用户私钥泄露,提高系统安全性。
进一步的,密态运算模块200包括:
同态加密单元,用于利用M个密钥生成中心的主私钥和随机掩点执行同态加密运算操作得到掩私钥;
或,门限同态加密单元,用于利用M个密钥生成中心的主私钥和随机掩点执行门限同态加密运算操作得到掩私钥。
进一步的,当密钥生成中心的数量M为2时,同态加密单元包括:
同态第一运算子单元,用于利用第一密钥生成中心计算并公布第一密文E(ks1);其中,E()为加法同态公钥密码的加密算法,ks1为第一密钥生成中心的主私钥;
同态第二运算子单元,用于利用第二密钥生成中心计算并公布第二密文E(k2(ks+h));其中,k2为第二随机数,ks为系统主私钥,ks、ks1和ks2符合预设主私钥组合形式,h=H(IDA||hid,N);
同态第三运算子单元,用于利用第一密钥生成中心解密第二密文E(k2(ks+h))得到k2(ks+h),利用k2(ks+h)计算并公布第一掩参数[ks1(k2(h+ks))-1]Q和第二掩参数[(k2(h+ks))-1]Q;其中,Q=[r]P1,Q为随机掩点,r为第一随机数,P1为N阶循环群的生成元;
同态第四运算子单元,用于利用第二密钥生成中心根据第一掩参数和第二掩参数计算并公布掩私钥[ks(h+ks)-1]Q。
进一步的,当密钥生成中心的数量M为2时,门限同态加密单元包括:
门限第一运算子单元,用于利用第一密钥生成中心计算并公布第一密文E’(ks1);其中,E’()为门限加法同态公钥密码的加密算法,ks1为第一密钥生成中心的主私钥;
门限第二运算子单元,用于利用第二密钥生成中心计算并公布第二密文E’(ks2);其中,ks2为第二密钥生成中心的主私钥;
门限第三运算子单元,用于利用第一密钥生成中心计算并公布第三密文E’(k1(h+ks));其中,k1为第三随机数,ks为系统主私钥,ks、ks1和ks2符合预设主私钥组合形式,h=H(IDA||hid,N);
门限第四运算子单元,用于利用第二密钥生成中心计算第四密文E’(k1k2(h+ks)),并利用第二密钥生成中心的门限解密算法解密第四密文计算并公布第二解密结果D2(k1k2(h+ks));其中,D2为门限加法同态公钥密码的第二方解密算法;
门限第五运算子单元,用于利用第一密钥生成中心计算第一解密结果D1(k1k2(h+ks)),根据第一解密结果D1(k1k2(h+ks))和第二解密结果D2(k1k2(h+ks))计算明文k1k2(h+ks),计算并公布第三掩参数[ks1k1(k1k2(h+ks))-1]Q和第四掩参数[k1(k1k2(h+ks))-1]Q;其中,D1为门限加法同态公钥密码的第一方解密算法;
门限第六运算子单元,用于利用第二密钥生成中心根据第三掩参数和第四掩参数计算并公布掩私钥[ks(h+ks)-1]Q。
进一步的,预设主私钥组合形式包括第一组合形式、第二组合形式、第三组合形式和第四组合形式;其中,第一组合形式为ks=ks1+ks2,第二组合形式为ks=ks1*ks2,第三组合形式为ks=ks1-ks2,第四组合形式为ks=ks1/ks2。
进一步的,还包括:
掩私钥发送模块,用于将掩私钥发送至用户端,以便用户端利用第一随机数解掩掩私钥得到用户私钥。
进一步的,还包括:
中心确定模块,用于根据私钥生成请求确定M个密钥生成中心。
由于系统部分的实施例与方法部分的实施例相互对应,因此系统部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本公开还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本公开还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本公开原理的前提下,还可以对本公开进行若干改进和修饰,这些改进和修饰也落入本公开权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (9)
1.一种用户私钥生成方法,其特征在于,应用于包括T个密钥生成中心的SM9密钥生成系统,所述用户私钥生成方法包括:
当接收到用户端发送的私钥请求时,获取所述用户端利用第一随机数计算的随机掩点;其中,所述第一随机数由所述用户端生成且不在所述密钥生成系统中公布;
利用M个所述密钥生成中心的主私钥和所述随机掩点执行密态运算操作得到掩私钥,以便所述用户端解掩所述掩私钥得到用户私钥;其中,M∈(1,T],M、T均为整数,且T大于等于2;每一所述密钥生成中心拥有自身的主私钥但不拥有其他密钥生成中心的主私钥;所述密钥生成中心用于为系统用户生成和分发用户私钥;其中,所述密态运算操作包括同态加密运算操作或门限同态加密运算操作。
2.根据权利要求1所述用户私钥生成方法,其特征在于,当所述密钥生成中心的数量M为2时,利用M个所述密钥生成中心的主私钥和所述随机掩点执行同态加密运算操作得到所述掩私钥包括:
利用第一密钥生成中心计算并公布第一密文E(ks1);其中,E()为加法同态公钥密码的加密算法,ks1为所述第一密钥生成中心的主私钥;
利用第二密钥生成中心计算并公布第二密文E(k2(ks+h));其中,所述k2为第二随机数,ks为系统主私钥,ks、ks1和ks2符合预设主私钥组合形式,h=H(IDA||hid,N);
利用所述第一密钥生成中心解密所述第二密文E(k2(ks+h))得到k2(ks+h),利用k2(ks+h)计算并公布第一掩参数[ks1(k2(h+ks))-1]Q和第二掩参数[(k2(h+ks))-1]Q;其中,Q=[r]P1,Q为所述随机掩点,r为所述第一随机数,P1为N阶循环群的生成元;
利用所述第二密钥生成中心根据所述第一掩参数和所述第二掩参数计算并公布所述掩私钥[ks(h+ks)-1]Q。
3.根据权利要求1所述用户私钥生成方法,其特征在于,当所述密钥生成中心的数量M为2时,利用M个所述密钥生成中心的主私钥和所述随机掩点执行门限同态加密运算操作得到所述掩私钥包括:
利用第一密钥生成中心计算并公布第一密文E’(ks1);其中,E’()为门限加法同态公钥密码的加密算法,ks1为所述第一密钥生成中心的主私钥;
利用第二密钥生成中心计算并公布第二密文E’(ks2);其中,ks2为所述第二密钥生成中心的主私钥;
利用所述第一密钥生成中心计算并公布第三密文E’(k1(h+ks));其中,所述k1为第三随机数,ks为系统主私钥,ks、ks1和ks2符合预设主私钥组合形式,h=H(IDA||hid,N);
利用所述第二密钥生成中心计算第四密文E’(k1 k2(h+ks)),并利用所述第二密钥生成中心的门限解密算法解密所述第四密文计算并公布第二解密结果D2(k1 k2(h+ks));其中,所述D2为门限加法同态公钥密码的第二方解密算法;
利用所述第一密钥生成中心计算第一解密结果D1(k1 k2(h+ks)),根据所述第一解密结果D1(k1 k2(h+ks))和所述第二解密结果D2(k1 k2(h+ks))计算明文k1 k2(h+ks),计算并公布第三掩参数[ks1k1(k1k2(h+ks))-1]Q和第四掩参数[k1(k1k2(h+ks))-1]Q;其中,所述D1为门限加法同态公钥密码的第一方解密算法;
利用所述第二密钥生成中心根据所述第三掩参数和所述第四掩参数计算并公布所述掩私钥[ks(h+ks)-1]Q。
4.根据权利要求2或3所述用户私钥生成方法,其特征在于,所述预设主私钥组合形式包括第一组合形式、第二组合形式、第三组合形式和第四组合形式;其中,所述第一组合形式为ks=ks1+ks2,所述第二组合形式为ks=ks1*ks2,所述第三组合形式为ks=ks1-ks2,所述第四组合形式为ks=ks1/ks2。
5.根据权利要求1所述用户私钥生成方法,其特征在于,在利用M个密钥生成中心的主私钥和所述随机掩点执行密态运算操作得到掩私钥之后,还包括:
将所述掩私钥发送至所述用户端,以便所述用户端利用所述第一随机数解掩所述掩私钥得到用户私钥。
6.根据权利要求1所述用户私钥生成方法,其特征在于,在利用M个所述密钥生成中心的主私钥和所述随机掩点执行密态运算操作得到掩私钥之前,还包括:
根据所述私钥生成请求确定M个所述密钥生成中心。
7.一种用户私钥生成系统,其特征在于,应用于包括T个密钥生成中心的SM9密钥生成系统,所述用户私钥生成系统包括:
随机掩点获取模块,用于当接收到用户端发送的私钥请求时,获取所述用户端利用第一随机数计算的随机掩点;其中,所述第一随机数由所述用户端生成且不在所述密钥生成系统中公布;
密态运算模块,用于利用M个所述密钥生成中心的主私钥和所述随机掩点执行密态运算操作得到掩私钥,以便所述用户端解掩所述掩私钥得到用户私钥;其中,M∈(1,T],M、T均为整数,且T大于等于2;每一所述密钥生成中心拥有自身的主私钥但不拥有其他密钥生成中心的主私钥;所述密钥生成中心用于为系统用户生成和分发用户私钥;其中,所述密态运算操作包括同态加密运算操作或门限同态加密运算操作。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述用户私钥生成方法的步骤。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述用户私钥生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910481449.7A CN110166239B (zh) | 2019-06-04 | 2019-06-04 | 用户私钥生成方法、系统、可读存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910481449.7A CN110166239B (zh) | 2019-06-04 | 2019-06-04 | 用户私钥生成方法、系统、可读存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110166239A CN110166239A (zh) | 2019-08-23 |
CN110166239B true CN110166239B (zh) | 2023-01-06 |
Family
ID=67627360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910481449.7A Active CN110166239B (zh) | 2019-06-04 | 2019-06-04 | 用户私钥生成方法、系统、可读存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110166239B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110896351B (zh) * | 2019-11-14 | 2022-07-26 | 湖南盾神科技有限公司 | 基于全域哈希的身份基数字签名方法 |
CN111262704A (zh) * | 2020-01-15 | 2020-06-09 | 江苏芯盛智能科技有限公司 | Sm9数字签名生成方法、装置、计算机设备和存储介质 |
CN112291059B (zh) * | 2020-07-28 | 2022-10-21 | 北京金山云网络技术有限公司 | 密钥生成方法及装置、存储介质及电子设备 |
CN111901111B (zh) * | 2020-08-06 | 2023-07-25 | 成都卫士通信息产业股份有限公司 | Sm9密钥生成方法、装置、系统及可读存储介质 |
CN112637836B (zh) * | 2020-12-18 | 2023-08-11 | 珠海格力电器股份有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN113067823B (zh) * | 2021-03-22 | 2021-11-23 | 西安电子科技大学 | 邮件用户身份认证和密钥分发方法、系统、设备及介质 |
CN112926075B (zh) * | 2021-03-26 | 2023-01-24 | 成都卫士通信息产业股份有限公司 | 一种sm9密钥生成方法、装置、设备及存储介质 |
CN112926074B (zh) * | 2021-03-26 | 2022-08-23 | 成都卫士通信息产业股份有限公司 | 一种sm9密钥门限化生成方法、装置、设备及存储介质 |
CN113572612B (zh) * | 2021-06-22 | 2023-01-31 | 南京南瑞信息通信科技有限公司 | 一种国密sm9算法私钥分发方法、用户终端和密钥生成中心 |
CN113381850B (zh) * | 2021-06-25 | 2023-03-31 | 成都卫士通信息产业股份有限公司 | 一种sm9用户密钥生成方法、装置、设备及存储介质 |
CN114189338B (zh) * | 2021-12-07 | 2023-12-19 | 浙江大学 | 基于同态加密技术的sm9密钥安全分发和管理系统及方法 |
CN114499887B (zh) * | 2022-02-15 | 2024-04-26 | 北京无字天书科技有限公司 | 签名密钥生成及相关方法、系统、计算机设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107566128A (zh) * | 2017-10-10 | 2018-01-09 | 武汉大学 | 一种两方分布式sm9数字签名生成方法与系统 |
CN107579819A (zh) * | 2017-09-13 | 2018-01-12 | 何德彪 | 一种sm9数字签名生成方法及系统 |
CN108173639A (zh) * | 2018-01-22 | 2018-06-15 | 中国科学院数据与通信保护研究教育中心 | 一种基于sm9签名算法的两方合作签名方法 |
CN108418686A (zh) * | 2017-11-23 | 2018-08-17 | 矩阵元技术(深圳)有限公司 | 一种多分布式的sm9解密方法与介质及密钥生成方法 |
CN108599950A (zh) * | 2018-04-09 | 2018-09-28 | 北京无字天书科技有限公司 | 一种适用于sm9标识密码的用户密钥申请下载安全协议的实现方法 |
CN109660361A (zh) * | 2019-02-27 | 2019-04-19 | 武汉大学 | 一种对称环境下多方联合生成sm9数字签名的方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060072747A1 (en) * | 2001-03-30 | 2006-04-06 | Wood Matthew D | Enhancing entropy in pseudo-random number generators using remote sources |
US7644275B2 (en) * | 2003-04-15 | 2010-01-05 | Microsoft Corporation | Pass-thru for client authentication |
US8094811B2 (en) * | 2005-03-31 | 2012-01-10 | Panasonic Corporation | Data encryption device and data encryption method |
CN101908959B (zh) * | 2010-07-28 | 2012-08-22 | 北京握奇数据系统有限公司 | 一种建立共享密钥的方法、设备及其系统 |
DK2648170T3 (en) * | 2012-04-06 | 2015-02-23 | Kapsch Trafficcom Ag | METHOD OF DETECTING A VEHICLE SPEED Violation |
CN102594570A (zh) * | 2012-04-11 | 2012-07-18 | 福建师范大学 | 基于等级身份加密的密钥门限算法 |
CN103825733A (zh) * | 2014-02-28 | 2014-05-28 | 华为技术有限公司 | 基于组合公钥密码体制的通信方法、装置及系统 |
CN105429941B (zh) * | 2015-10-27 | 2018-07-27 | 西安电子科技大学 | 多接收者身份匿名签密方法 |
CN106357401B (zh) * | 2016-11-11 | 2019-09-10 | 武汉理工大学 | 一种私钥存储及使用方法 |
CN107947913B (zh) * | 2017-11-15 | 2020-08-07 | 武汉大学 | 一种基于身份的匿名认证方法与系统 |
CN109728910A (zh) * | 2018-12-27 | 2019-05-07 | 北京永恒纪元科技有限公司 | 一种高效的门限分布式椭圆曲线密钥生成及签名方法和系统 |
-
2019
- 2019-06-04 CN CN201910481449.7A patent/CN110166239B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107579819A (zh) * | 2017-09-13 | 2018-01-12 | 何德彪 | 一种sm9数字签名生成方法及系统 |
CN107566128A (zh) * | 2017-10-10 | 2018-01-09 | 武汉大学 | 一种两方分布式sm9数字签名生成方法与系统 |
CN108418686A (zh) * | 2017-11-23 | 2018-08-17 | 矩阵元技术(深圳)有限公司 | 一种多分布式的sm9解密方法与介质及密钥生成方法 |
CN108173639A (zh) * | 2018-01-22 | 2018-06-15 | 中国科学院数据与通信保护研究教育中心 | 一种基于sm9签名算法的两方合作签名方法 |
CN108599950A (zh) * | 2018-04-09 | 2018-09-28 | 北京无字天书科技有限公司 | 一种适用于sm9标识密码的用户密钥申请下载安全协议的实现方法 |
CN109660361A (zh) * | 2019-02-27 | 2019-04-19 | 武汉大学 | 一种对称环境下多方联合生成sm9数字签名的方法 |
Non-Patent Citations (1)
Title |
---|
SM9标识密码算法综述;袁峰等;《信息安全研究》;20161105(第11期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110166239A (zh) | 2019-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110166239B (zh) | 用户私钥生成方法、系统、可读存储介质及电子设备 | |
CN108667625B (zh) | 协同sm2的数字签名方法 | |
CN107634836B (zh) | 一种sm2数字签名生成方法及系统 | |
CN107733648B (zh) | 一种基于身份的rsa数字签名生成方法及系统 | |
US8429408B2 (en) | Masking the output of random number generators in key generation protocols | |
US7716482B2 (en) | Conference session key distribution method in an ID-based cryptographic system | |
CN110120939B (zh) | 一种基于异构系统的可否认认证的加密方法和系统 | |
US20120278628A1 (en) | Digital Signature Method and System | |
CN109873699B (zh) | 一种可撤销的身份公钥加密方法 | |
Gong et al. | A secure and lightweight certificateless hybrid signcryption scheme for Internet of Things | |
CN107707358A (zh) | 一种ec‑kcdsa数字签名生成方法及系统 | |
EP2792098B1 (en) | Group encryption methods and devices | |
CN110147681A (zh) | 一种支持灵活访问控制的隐私保护大数据处理方法及系统 | |
CN111953479B (zh) | 数据处理的方法及装置 | |
CN111030821B (zh) | 一种基于双线性映射技术的联盟链的加密方法 | |
CN109905229B (zh) | 基于群组非对称密钥池的抗量子计算Elgamal加解密方法和系统 | |
CN103297230A (zh) | 信息加解密方法、装置及系统 | |
Shabisha et al. | Elliptic curve qu-vanstone based signcryption schemes with proxy re-encryption for secure cloud data storage | |
CN108964906B (zh) | 协同ecc的数字签名方法 | |
CN110971404B (zh) | 一种面向安全跨域通信的无证书群密钥协商方法 | |
EP2395698B1 (en) | Implicit certificate generation in the case of weak pseudo-random number generators | |
CN114697001B (zh) | 一种基于区块链的信息加密传输方法、设备及介质 | |
JP2004246350A (ja) | 暗号化装置および復号化装置、並びにこれらを備えた暗号システム、暗号化方法および復号化方法 | |
CN112667995A (zh) | 受限Paillier加密系统及其在密钥分发和身份认证中的应用方法 | |
CN112769563A (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 | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: No. 333, Yunhua Road, high tech Zone, Chengdu, Sichuan 610041 Patentee after: China Electronics Technology Network Security Technology Co.,Ltd. Address before: No. 333, Yunhua Road, high tech Zone, Chengdu, Sichuan 610041 Patentee before: CHENGDU WESTONE INFORMATION INDUSTRY Inc. |