CN106357401A - 一种私钥存储及使用方法 - Google Patents

一种私钥存储及使用方法 Download PDF

Info

Publication number
CN106357401A
CN106357401A CN201610994919.6A CN201610994919A CN106357401A CN 106357401 A CN106357401 A CN 106357401A CN 201610994919 A CN201610994919 A CN 201610994919A CN 106357401 A CN106357401 A CN 106357401A
Authority
CN
China
Prior art keywords
private key
user
secret share
service platform
cryptographic service
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.)
Granted
Application number
CN201610994919.6A
Other languages
English (en)
Other versions
CN106357401B (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.)
Wuhan University of Technology WUT
Original Assignee
Wuhan University of Technology WUT
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 Wuhan University of Technology WUT filed Critical Wuhan University of Technology WUT
Priority to CN201610994919.6A priority Critical patent/CN106357401B/zh
Publication of CN106357401A publication Critical patent/CN106357401A/zh
Application granted granted Critical
Publication of CN106357401B publication Critical patent/CN106357401B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及私钥存储方法及相应的使用方法:用户的一个私钥被分割成m+n份私钥秘密份额,其中的m份被用户的其他密钥加密,另外的n份被密码服务平台的公钥加密;加密的私钥秘密份额被保存在用户计算装置中;当用户计算装置中的密码程序要使用用户私钥时,密码程序使用用户密钥解密对应的m份中的1份或多份,密码服务平台使用平台的私钥解密对应的n份;之后密码程序从被加密的私钥秘密份额恢复出用户私钥,然后进行密码运算,或者密码程序和密码服务平台分别使用解密后的私钥秘密份额进行密码运算,然后将运算结果合并;若私钥秘密份额经加法同态加密,密码程序通过对提交到密码服务平台的私钥秘密份额进行扰动,进一步提高私钥使用的安全。

Description

一种私钥存储及使用方法
本发明属于信息安全技术领域,特别是在不使用密码硬件的情况下针对用户私钥安全存储及使用的方法。
背景技术
在密码技术的应用中,用户密钥的安全是非常重要的,用户密钥一旦泄露,受保护的数据将面临安全风险,有可能会出现敏感信息被泄露、信息被伪造、用户被假冒的情况。由于目前的密码应用,或者是基于公开密钥密码算法的,或者是采用对称密钥密码算法和公开密钥密码算法相结合的,因此,用户密钥的安全主要是用户私钥的安全。
目前针对用户私钥的存储和使用主要有两种方案。
一是,用户私钥存储在密码硬件中,如存储在USB Key、SmartCard中,私钥不出密码硬件;用户计算装置(如个人计算机、移动终端)(中的程序)通过连接密码硬件,使用存储在密码硬件中的用户私钥,并由密码硬件在密码硬件内部使用用户私钥进行密码运算;这种情况虽然安全,但由于需要额外的密码硬件,因此,只在安全性要求较高的场合中使用,如网上支付中使用。
二是,用户私钥经用户口令(PIN码)导出的密钥加密后存储在用户计算装置的永久性存储介质中;当用户程序需要使用用户私钥进行密码运算时,密码软件(如密码动态库)通过用户输入的口令(PIN码)导出密钥,将被加密的用户私钥解密,然后将私钥装入到内存中后使用;这种方案简单、方便,无需额外的硬件,但存在用户私钥被泄露的风险,比如,攻击者通过窃取用户私钥,破解用户口令,从而获得用户私钥;再者,攻击者有可能在私钥使用过程中,通过内存攻击的方式获得用户私钥的明文数据(虽然难度很大)。
发明内容
本发明的目的是提出一种在不使用硬件密码装置的情况下能有效保护用户私钥的方法,包括私钥安全存储及使用的方法。
针对上述目的,本发明的技术方案包括一种私钥存储方法和相应的私钥使用方法,具体如下。
本发明提出的私钥存储方法如下。
用户的一个私钥被(如密码程序)分割成m+n份,或者由采用私钥分割生成方式(如由私钥生成系统)生成的m+n份组合形成,每份称为私钥秘密份额,其中m、n分别大于等于1;m+n份私钥秘密份额中的m份经(使用)用户的其他密钥加密,另外的n份中的每一份经(使用)密码服务平台的公钥加密;加密后的m+n份私钥秘密份额被保存在用户计算装置中;所述用户的其他密钥指被分割的或按分割方式生成的用户私钥所对应的公钥以外的其他密钥(如从用户口令导出的密钥,或用户的其他密钥,包括用户的其他公钥)。
若用户私钥是生成后分割的,则对用户私钥的分割采用门限分割(使用门限秘密共享算法进行分割)或非门限分割(不使用门限秘密共享算法进行分割);
若用户私钥是采用分割方式生成的,则用户私钥的生成采用门限分割方式生成(使用门限秘密共享算法进行生成)或非用门限分割方式生成(不使用门限秘密共享算法进行生成)。
以上所述私钥存储方法中的密码服务平台是一个通过网络提供密码服务的系统或云平台;所述密码服务平台中的密码服务器属于一个机构或多个机构;若属于多个机构,则不同的机构有不同的公钥,而对n份私钥秘密份额中的每份分别进行加密所使用的密码服务平台的公钥是同一个机构的,或者是不同机构的。
与以上所述私钥存储方法相对应,本发明设计了四种私钥使用方法,具体如下。
私钥使用方法一、
当用户计算装置中的密码程序(即,使用私钥进行密码运算的程序,包括动态库、独立运行的程序)需要使用用户私钥时,密码程序和密码服务平台按如下方式进行操作:
密码程序使用用户密钥(如从用户口令导出的密钥)解密使用用户密钥加密的m份私钥秘密份额中的1份或多份;
密码程序将使用密码服务平台的公钥加密的n份私钥秘密份额,提交到密码服务平台;
密码服务平台使用私钥,即与加密私钥秘密份额所用的公钥相对应的私钥,解密被加密的n份私钥秘密份额;在验证、确认密码程序的用户是私钥秘密份额的拥有者后,密码服务平台将解密后的私钥秘密份额返回给密码程序;
密码程序利用自己解密后的私钥秘密份额和密码服务平台解密后的私钥秘密份额恢复出用户私钥(采用门限秘密共享算法或非门限秘密共享算法,取决于私钥分割时的算法或私钥分割生成所采用的方式);
最后密码程序使用恢复的用户私钥(对数据)进行密码运算。
私钥使用方法二、
当用户计算装置中的密码程序(即,使用私钥进行密码运算的程序,包括动态库、独立运行的程序)需要使用用户私钥时,密码程序和密码服务平台按如下方式进行操作:
密码程序使用用户密钥(如从用户口令导出的密钥)解密使用用户密钥加密的m份私钥秘密份额中的1份或多份,然后使用解密后的私钥秘密份额(对数据)进行密码运算;
密码程序将使用密码服务平台的公钥加密的n份私钥秘密份额,提交到密码服务平台;
密码服务平台使用私钥,即与加密私钥秘密份额所用的公钥相对应的私钥,解密被加密的n份私钥秘密份额;在验证、确认密码程序的用户是私钥秘密份额的拥有者后,密码服务平台使用解密后的n份私钥秘密份额分别(对数据)进行密码运算;
最后由密码程序或密码服务平台,将密码程序使用私钥秘密份额(对数据)进行密码运算的结果和密码服务平台使用解密后的n份私钥秘密份额分别(对数据)进行密码运算的结果合并,运算得到最终的(使用用户私钥对数据进行)密码运算的结果(采用门限密码算法或非门限密码算法,取决于私钥分割时的算法或私钥分割生成所采用的方式)。
私钥使用方法三、
若使用密码服务平台的公钥对用户私钥的n份私钥秘密份额进行加密所使用的密码算法是加法同态加密算法,使用的密码服务平台的公钥是加法同态加密算法的公钥,且用密码服务平台的公钥加密的n私钥秘密份额中的每份是整数类型的数据或者被当作整数类型的数据提交到被密码服务平台(另外的m份经用户的其他密钥加密的私钥秘密份额中的每份可以是整数类型的数据,也可以不是整数类型的数据),则当用户计算装置中的密码程序(即使用私钥进行密码运算的程序,包括动态库、独立运行的程序)需要使用用户私钥时,密码程序和密码服务平台按如下方式进行操作:
密码程序使用用户密钥(如从用户口令导出的密钥)解密经用户密钥加密的m份私钥秘密份额中的1份或多份;使用同态加密算法,将使用密码服务平台公钥加密的n份私钥秘密份额中的每份分别加上或减去一个(不同的或相同的)随机整数(若是减,则同态加密算法同时支持同态加密减法运算,很多同态加密算法能做到这点),得到n份被随机整数修改的、且被加密的私钥秘密份额,每份被修改的私钥秘密份额称为被扰动的私钥秘密份额;通过同态加密算法对n份私钥秘密份额中的每份进行修改的随机整数称为扰动参数;
密码程序将n份加密的被扰动的私钥秘密份额提交到密码服务平台,由密码服务平台使用私钥,即与加密被扰动的私钥秘密份额所用的公钥相对应的私钥,解密被加密的n份被扰动的私钥秘密份额,在验证、确认密码程序的用户是私钥秘密份额的拥有者后,密码服务平台将解密后的被扰动的私钥秘密份额返回给密码程序;
密码程序利用扰动参数、经用户密钥解密后的私钥秘密份额、以及解密后的被扰动的私钥秘密份额恢复出用户私钥(采用门限秘密共享算法或非门限秘密共享算法算法,取决于私钥分割时的算法或私钥分割生成所采用的方式);
最后密码程序使用恢复的用户私钥进行密码运算。
私钥使用方法四、
若使用密码服务平台的公钥对用户私钥的n份私钥秘密份额进行加密所使用的密码算法是加法同态加密算法,使用的密码服务平台的公钥是加法同态加密算法的公钥,且用密码服务平台的公钥加密的n私钥秘密份额中的每份是整数类型的数据(另外的m份经用户的其他密钥加密的私钥秘密份额中的每份可以是整数类型的数据,也可以不是整数类型的数据),则当用户计算装置中的密码程序(即使用私钥进行密码运算的程序,包括动态库、独立运行的程序)需要使用用户私钥时,密码程序和密码服务平台按如下方式进行操作:
密码程序使用用户密钥(如从用户口令导出的密钥)解密经用户密钥加密的m份私钥秘密份额中的1份或多份;使用同态加密算法,将使用密码服务平台公钥加密的n份私钥秘密份额中的每份分别加上或减去一个(不同的或相同的)随机整数(若是减,则同态加密算法同时支持同态加密减法运算,很多同态加密算法能做到这点),得到n份被随机整数修改的、且被加密的私钥秘密份额,每份被修改的私钥秘密份额称为被扰动的私钥秘密份额;通过同态加密算法对n份私钥秘密份额中的每份进行修改的随机整数称为扰动参数;
密码程序使用扰动参数以及自己解密后的私钥秘密份额(对数据)进行密码运算;
密码程序将n份加密的被扰动的私钥秘密份额提交到密码服务平台,由密码服务平台使用私钥,即与加密被扰动的私钥秘密份额所用的公钥相对应的私钥,解密被加密的n份被扰动的私钥秘密份额;在验证、确认密码程序的用户是私钥秘密份额的拥有者后,密码服务平台使用解密后的n份被扰动的私钥秘密份额分别(对数据)进行密码运算;
最后由密码程序或密码服务平台,将密码程序使用扰动参数以及解密后的私钥秘密份额(对数据)进行密码运算的结果,以及密码服务平台使用解密后的n份被扰动的私钥秘密份额分别(对数据)进行密码运算的结果合并,运算得到最终的(使用用户私钥对数据进行)密码运算的结果(采用门限密码算法或非门限密码算法,取决于私钥分割时的算法或私钥分割生成所采用的方式)。
以上所述私钥使用方法四中,密码程序按如下方式使用扰动参数以及自己解密后的私钥秘密份额(对数据)进行密码运算:
用扰动参数对使用用户密钥解密后的私钥秘密份额进行修改(如对解密后的一份或多份私钥秘密份额,或对多份私钥秘密份额的合并值,进行修改),形成修改后的私钥秘密份额,然后用修改后的私钥秘密份额(对数据)进行密码算法;
或者,使用扰动参数对(密码程序和/或密码服务平台)使用解密后的私钥秘密份额进行密码运算的结果进行修改;
或者,将扰动参数作为私钥秘密份额(扰动参数有多个,则可以将多个扰动参数合并为一个私钥秘密份额,或作为多个私钥秘密份额),然后使用扰动参数、以及使用用户密钥解密后的私钥秘密份额(对数据)分别进行密码运算。
在以上所述方法一到方法四中,若n份私钥秘密份额是使用密码服务平台中属于不同机构的公钥加密的,则用户计算装置中的密码程序在需要使用用户私钥(对数据)进行密码运算时,将使用一个机构的公钥加密的私钥秘密份额提交到对应机构的密码服务器。
从以上发明内容可以看到,基于本发明的私钥存储和使用方法,由于私钥的秘密份额一部分是使用用户的密钥(如用从用户口令导出的密钥加密)加密,一部分是使用密码服务平台的公钥加密,攻击者即便获得了私钥秘密份额,破解了用户的密钥,由于攻击者很难破解或窃取密码服务平台的私钥,因此,攻击者仍然无法获得用户的私钥;同时,由于密码服务平台没有被用户其他密钥加密的私钥秘密份额,因此,密码服务平台也无法恢复出用户私钥;进一步地,基于本发明的私钥使用方法二、方法四,由于被密码服务平台公钥加密的私钥秘密份额不会以明文出现在用户计算装置中,攻击者也无法通过内存攻击的方式从内存中获得被密码服务平台解密后的私钥秘密份额,从而无法利用内存攻击恢复出用户私钥;更进一步地,基于本发明的私钥使用方法三、方法四,密码服务平台也无法获得使用其公钥加密的用户私钥秘密份额的明文数据,从而进一步减小了用户私钥被泄露的风险。总之,本发明的技术方案能在不使用密码硬件的情况下,保证用户私钥存储和使用的安全。
附图说明
无。
具体实施方式
下面结合实施例对本发明作进一步的描述。以下实施例只是本发明几种可能的实施方式,不是全部可能的实施方式,不作为对本发明的限定。
对私钥存储方法的实施是比较简单的,其中,对m份私钥秘密份额加密的用户其他密钥可以是从用户的私钥保护口令(也称为PIN码)导出的密钥,也可以是用户其他的密钥,包括被分割存储的私钥所对应的公钥以外的其他公钥。对n份私钥秘密份额的加密,可以采用通常的公开密钥密码算法(如RSA、ECC、IBC),也可以是加法同态加密算法,相应地,加密的公钥可以是普通公开密钥密码算法的公钥(如RSA、ECC、IBC公钥),也可以是加法同态加密算法(支持同态加密加运算)的公钥。
使用用户密钥对私钥秘密份额加密,通常由用户计算装置中的密码程序进行。使用密码服务平台的公钥对私钥秘密份额的加密,可以由用户计算装置中的密码程序(如密码模块)进行,也可以由生成私钥的密钥服务系统进行,还可以由密码服务平台进行。
实施例1、
此实施例针对是椭圆曲线密码(Elliptic Curve Cryptography, ECC)私钥的存储和使用。假设密码运算所采用的椭圆曲线群的基点是G,群的阶是一个大素数p,用户的私钥是[1,p-1]中的整数s。对私钥s的分割可采用简单分割方案,即选取m+n个s1,s2,…,sm+n,使得s=s1+s2+…+sm+n。可在[1,p-1]中任取整数s1,s2,…,sm+n-1,计算sm=s-(s1+s2+…+sm+n-1),则s1,s2,…,sm+n即为私钥s分割后的n+m份私钥秘密份额,其中s1,s2,…,sm经用户的其他密钥加密,sm+1,sm+2,…,sm+n经密码服务平台的公钥加密。
当用户计算装置中的密码程序需要使用用户私钥时,密码程序使用用户的密钥,解密被加密的s1,s2,…,sm;密码程序将加密的sm+1,sm+2,…,sm+n提交到密码服务平台,由平台使用私钥解密得到sm+1,sm+2,…,sm+n;在验证、确认密码程序的用户是私钥秘密份额的拥有者后,密码服务平台将解密后的私钥份额返回给密码程序;密码程序通过s=s1+s2+… +sm+n计算得到(恢复出)用户私钥s,然后使用s进行密码运算。
实施例2、
此实施例与实施例1一样针对的是椭圆曲线密码(Elliptic Curve Cryptography,ECC)私钥的存储和使用,但进一步地,此椭圆曲线密码算法的应用私钥的密码运算(如数字签名或数据解密)支持门限密码运算。设密码运算所采用的椭圆曲线群的基点是G,群的阶是一个大素数p,用户的私钥是[1,p-1]中的整数s。对私钥s的分割采用门限秘密共享算法(在域Zp上),分割得到的秘密是x1,x2,…,xm+n,秘密恢复的门限是n+t,t≥1,m≥t;x1,x2,…,xm经用户的其他密钥加密,xm+1,xm+2,…,xm+n经密码服务平台的公钥加密。
当用户计算装置中的密码程序需要使用用户私钥时,密码程序使用用户的密钥解密被加密的x1,x2,…,xm中的t个;密码程序将加密的xm+1, xm+2,…,xm+n提交到密码服务平台,由平台使用私钥解密xm+1,xm+2,…,xm+n;在验证、确认密码程序的用户是私钥秘密份额的拥有者后,密码服务平台将解密后的私钥秘密份额xm+1,xm+2,…,xm+n返回给密码程序;密码程序利用x1,x2,…,xm中解密后的t份和密码服务平台解密后的xm+1,xm+2,…,xm+n恢复出用户私钥s,然后使用s进行密码运算。
实施例1、2是私钥使用方法一的可能实施方式。
实施例3、
此实施例同实施例1一样针对的是椭圆曲线密码(Elliptic Curve Cryptography,ECC)私钥的存储和使用,实施例3与实施例1的差别如下。
椭圆曲线密码算法的应用私钥的密码运算具有这种特点:将使用私钥秘密份额s1,s2,…,sm+n(对数据)分别进行密码运算得到的结果合并运算后,可以得到使用私钥s(对数据)进行密码运算的结果。
当密码程序需要使用用户私钥进行密码运算时,一方面,密码程序使用解密后的s1,s2,…,sm进行密码运算,另一方面密码服务平台使用解密后的sm+1,sm+2,…,sm+n进行密码运算;之后,由密码程序或密码服务平台将密码程序和密码服务平台计算得到的结果合并,运算得到使用s进行密码运算的结果。
实施例4、
此实施例同实施例2一样针对的是椭圆曲线密码(Elliptic Curve Cryptography,ECC)私钥的存储和使用,实施例4实施例2的差别如下。
椭圆曲线密码算法的应用私钥的密码运算(数字签名或数据解密)具有这种特点:将使用私钥的分割秘密x1,x2,…,xm+n中n+t份分别进行密码运算得到的结果合并运算,能得到使用私钥s进行密码运算的结果(即支持门限密码运算)。
当密码程序需要使用用户私钥进行密码运算时,一方面,密码程序使用x1,x2,…,xm中被解密的t个私钥秘密份额进行密码运算,另一方面,密码服务平台使用解密后的xm+1,xm+2,…,xm+n(对数据)分别进行密码运算,之后,由密码程序或密码服务平台将密码程序和密码服务平台分别计算得到的结果合并,计算得到使用用户私钥s进行密码运算的结果(门限密码运算)。
实施例3、4是私钥使用方法二的可能实施方式。
实施例5、
此实施例针对是椭圆曲线群G1的基于双线性映射e:G1×G1àG2的标识密码(IBC)中用户私钥的存储和使用。假设G1的阶是一个大素数p,生成标识私钥的主密钥是s,公开参数中的基点(或generator)是Q,Qpub=sQ,用户的一个标识ID对应的私钥是sQID。基于双线性映射的IBC,使用私钥进行密码运算的一个关键是计算e(sQID,R)的值。对sQID的一种分解方案是:在[1,p-1]中任取m+n-1个整数s2,s3,…,sm+n,计算Q1=sQID-(s2+ s3+…+sm+n)QID,则Q1,s2,s3,…,sm+n(或Q1,Q2=s2QID, Q3=s3QID,…, Qm+n=sm+nQID)构成了用户私钥的m+n份秘密份额,其中Q1,s2,s3,…,sm(或Q1,Q2=s2QID, Q3=s3QID,…,Qm=smQID)经用户的其他密钥加密,sm+1,sm+2,…,sm+n(或Qm+1= sm+1QID,Qm+2=sm+2QID,…, Qm+n=sm+nQID)经密码服务平台的公钥加密。
当用户计算装置中的密码程序需要使用私钥时,密码程序使用用户的密钥,解密被加密的Q1,s2, s3,…,sm(或Q1,Q2=s2QID,Q3=s3QID,…,Qm=smQID);密码程序将加密的sm+1,sm+2,…,sm+n(或Qm+1=sm+1QID, Qm+2=sm+2QID,…,Qm+n= sm+nQID)提交到密码服务平台;由密码服务平台解密得到sm+1,sm+2,…,sm+n(或Qm+1=sm+1QID, Qm+2= sm+2QID,…,Qm+n=sm+nQID),并返回给密码程序;密码程序通过计算Q1+s2QID +…+sm+nQID得到(恢复)用户私钥sQID,并使用sQID进行密码运算。
实施例6、
此实施例与实施例5一样针对的是椭圆曲线群G1的基于双线性映射e:G1×G1àG2的标识密码(IBC)私钥的存储和使用,群G1的各种参数同实施例5。同样,用户的一个标识ID对应的私钥是sQID。对sQID的一种分割方案如下:在[1,p-1]中任取(随机取)一个整数d,采用门限秘密共享算法将d分割(在域Zp),得到m+n-1份秘密x2,x3,…,xm+n,秘密恢复的门限是n+t-1,t≥2;计算得到Q1=sQID-dQID;Q1,x2,…,xm+n(或Q1, Q2=x2QID,…, Qm+n=xm+nQID)是n+m份私钥秘密份额,m≥t;Q1,x2,…,xm(或Q1,Q2=x2QID,…,Qm=xmQID)经用户的其他密钥加密,xm+1,xm+2,…,xm+n(或Qm+1=xm+1QID, Qm+2=xm+2QID,…,Qm+n=xm+nQID)经密码服务平台的公钥加密。
当用户计算装置中的密码程序需要使用用户私钥时,密码程序使用用户的密钥解密被加密的Q1、以及x2,…,xm(或Q2=x2QID,…,Qm=xmQID)中的t-1个(一起共t份私钥秘密份额),同时将加密的xm+1,xm+2,…,xm+n(或Qm+1=xm+1QID,Qm+2=xm+2QID,…,Qm+n=xm+nQID)提交到密码服务平台,由平台使用私钥解密得到xm+1, xm+2,…,xm+n(或Qm+1=xm+1QID, Qm+2=xm+2QID,…,Qm+n=xm+nQID),并返回给密码程序;密码程序利用x2,…,xm(或Q2=x2QID,…,Qm=xmQID)中t-1份被解密的私钥秘密份额、以及解密后的xm+1,xm+2,…,xm+n(或Qm+1=xm+1QID, Qm+2=xm+2QID,…, Qm+n=xm+nQID)采用门限算法(或门限密码算法)恢复出d(或dQID),然后由sQID= Q1+dQID计算恢复出用户私钥sQID,然后使用sQID进行密码运算。
实施例5、6是私钥使用方法一的可能实施方式。
实施例7、
此实施例同实施例5一样针对的是椭圆曲线群G1的基于双线性映射e:G1×G1àG2的标识密码(IBC)私钥的存储和使用,私钥分割也与实施例5一样,实施例7与实施例5的差别如下。
当用户计算装置中的密码程序需要使用私钥时,密码程序使用用户的密钥,解密被加密的Q1,s2, s3,…,sm(或Q1,Q2=s2QID,Q3=s3QID,…,Qm=smQID),将加密的sm+1,sm+2,…,sm+n(或Qm+1=sm+1QID, Qm+2=sm+2QID,…,Qm+n=sm+nQID)提交到密码服务平台,由平台使用私钥解密得到sm+1,sm+2,…,sm+n(或Qm+1=sm+1QID, Qm+2=sm+2QID,…,Qm+n=sm+nQID);密码程序使用解密得到的Q1,s2,s3,…,sm(或Q1,Q2=s2QID,Q3=s3QID,…,Qm=smQID)进行密码运算,密码服务平台使用解密得到的sm+1,sm+2,…,sm+n(或Qm+1=sm+1QID,Qm+2= sm+2QID, …,Qm+n=sm+nQID)进行密码运算,最后由密码程序或密码服务平台,将密码程序和密码服务平台分别运算得到的结果合并,得到使用用户私钥sQID进行密码运算的结果。
实施例8、
此实施例同实施例6一样针对的是椭圆曲线群G1的基于双线性映射e:G1×G1àG2的标识密码(IBC)私钥的存储和使用,私钥分割也与实施例6一样,实施例8与实施例6的差别如下。
当密码程序要使用私钥进行密码运算时,密码程序利用解密得到的Q1、以及x2,…,xm(或Q2=x2QID,…, Qm=xmQID)中被解密的t-1份秘密份额(一起共t份)进行密码运算,而密码服务平台使用解密后的xm+1,xm+2,…,xm+n(或Qm+1=xm+1QID,Qm+2=xm+2QID,…,Qm+n=xm+nQID)进行密码运算;之后,由密码程序或密码服务平台,将密码程序和密码服务平台分别计算得到的结果合并(先采用门限密码运算,计算得到使用dQID进行密码运算的结果,然后根据sQ= Q1+dQID,将使用dQID的结果的与使用Q1进行密码运算的结果合并),计算得到使用私钥sQID进行密码运算的结果。
实施例7、8是私钥使用方法二的可能实施方式。
实施例9、
此实施例针对是椭圆曲线群G1的基于双线性映射e:G1×G1àG2的标识密码(IBC)中用户私钥的存储和使用。假设G1的阶是一个大素数p,公开参数中的基点(或generator)是Q,主密钥是s,Qpub=sQ,标识私钥生成采用分割生成方式,生成标识私钥的主密钥s的分割是s1,…,sm, sm+1,…,sm+n,对于用户的一个标识ID,每个主密钥分割生成对应的私钥分割s1QID,…,smQID,sm+1QID,…,sm+nQID,用户的标识私钥是sQID=s1QID+,…,+smQID+ sm+1QID+,…,+sm+nQID。s1QID,…,smQID,sm+1QID,…,sm+nQID即是用户私钥的秘密份额,s1QID,…,smQID经用户的其他密钥加密,sm+1QID ,…,sm+nQID经密码服务平台的公钥加密,加密后的私钥秘密份额保存在用户计算装置中。
当用户计算装置中的密码程序需要使用私钥时,密码程序使用用户的密钥解密被加密的s1QID,s2QID,s3QID,…,smQID;密码程序将加密的sm+1QID, sm+2QID,…,sm+nQID提交到密码服务平台;由密码服务平台使用私钥解密得到sm+1QID, sm+2QID,…,sm+nQID,并在验证密码程序的用户是私钥秘密份额的拥有者后,将解密后的sm+1QID,sm+2QID,…,sm+nQID返回给密码程序;密码程序通过计算s1QID+s2QID +…+sm+nQID得到(恢复)用户私钥sQID,并用sQID进行密码运算。
实施例10、
此实施例针对是椭圆曲线群G1的基于双线性映射e:G1×G1àG2的标识密码(IBC)中用户私钥的存储和使用。假设G1的阶是一个大素数p,公开参数中的基点(或generator)是Q,主密钥是s,Qpub=sQ,标识私钥生成采用门限分割生成方式,生成标识私钥的主密钥s的一个门限分割是x1,…,xm, xm+1,…,xm+n(在域Zp),门限值是n+t,t≥1,m≥t;对于用户的一个标识ID,每个主密钥的门限分割份额分别生成的私钥份额是x1QID,…,xmQID, xm+1QID,…,xm+nQID,用户的私钥sQID利用这些私钥秘密份额;利用x1QID,…,xmQID, xm+1QID,…,xm+nQID采用门限计算公式(与从x1,…,xm, xm+1,…,xm+n恢复出s的门限计算公式一致)可恢复出sQID(具体怎么做,公开资料中有)。x1QID,…,xmQID,xm+1QID,…,xm+nQID即是用户私钥的秘密份额,x1QID,…,xmQID经用户的其他密钥加密,xm+1QID ,…,xm+nQID经密码服务平台的公钥加密,加密后的私钥秘密份额保存在用户计算装置中。
当用户计算装置中的密码程序需要使用私钥时,密码程序使用用户的密钥解密被加密的x1QID,…,xmQID中的t份;密码程序将加密的xm+1QID, xm+2QID,…,xm+nQID提交到密码服务平台;由密码服务平台使用私钥解密得到xm+1QID,xm+2QID,…,xm+nQID,并在验证、确认密码程序的用户是私钥秘密份额的拥有者后,将解密后的xm+1QID, xm+2QID,…,xm+nQID返回给密码程序;密码程序利用x1QID,…,xmQID中被解密的t份,以及被解密的xm+1QID,xm+2QID,…, xm+ nQID,通过门限算法计算得到用户私钥sQID,并用sQID进行密码运算。
实施例9、10是私钥使用方法一的可能实施方式。
实施例11、
此实施例同实施例9一样针对的是椭圆曲线群G1的基于双线性映射e:G1×G1àG2的标识密码(IBC)中用户私钥的存储和使用,且采用一样的标识私钥的分割生成方法,具有一样分割生成的私钥秘密份额,实施例11与实施例9的差别如下。
当用户计算装置中的密码程序需要使用私钥时,密码程序一方面使用用户的密钥解密被加密的s1QID,s2QID,…,smQID,并使用解密获得的s1QID, s2QID,…,smQID(对数据)进行密码运算;另一方面将被加密的sm+1QID, sm+2QID,…,sm+nQID提交到密码服务平台;由密码服务平台使用私钥解密得到sm+1QID,sm+2QID,…, sm+nQID,并在验证密码程序的用户是私钥秘密份额的拥有者后,使用解密后的sm+1QID,sm+2QID,…,sm+nQID(对数据)进行返回给密码程序;最后由密码程序或密码服务平台,将密码程序使用s1QID,s2QID,s3QID,…, smQID进行密码运算的结果,同密码服务平台使用sm+1QID,sm+2QID,…,sm+nQID进行密码运算的结果合并,运算得到使用用户私钥sQID进行密码运算的结果。
实施例12、
此实施例同实施例10一样针对的是椭圆曲线群G1的基于双线性映射e:G1×G1àG2的标识密码(IBC)中用户私钥的存储和使用,且采用一样的标识私钥的分割生成方法,具有一样分割生成的私钥秘密份额,实施例12与实施例10的差别如下。
当用户计算装置中的密码程序需要使用私钥时,密码程序使用用户的密钥解密被加密的x1QID,…,xmQID中的t份,并使用解密后的t份私钥秘密份额(对数据)进行密码运算;于此同时,密码程序将加密的xm+1QID, xm+2QID,…,xm+nQID提交到密码服务平台;由密码服务平台使用私钥解密得到xm+1QID,xm+2QID,…,xm+nQID,并在验证、确认密码程序的用户是私钥秘密份额的拥有者后,使用解密后的xm+1QID,xm+2QID,…,xm+nQID(对数据)进行密码运算;最后由密码程序或密码服务平台,将密码程序和密码服务平台使用解密后的私钥秘密份额分解计算的结果合并,得到使用用户私钥sQID(对数据)进行密码运算的结果(采用门限密码运算)。
实施例11、12是私钥使用方法二的可能实施方式。
实施例13、
此实施例与实施例1一样针对的是椭圆曲线密码(Elliptic Curve Cryptography,ECC)私钥的存储和使用,用户私钥s的分割方案与实施例1也一样,实施例13与实施例1的差别如下。
密码服务平台的公钥是加法同态加密算法的公钥,相应地,对n份私钥秘密份额的加密采用的是同态加密。
当密码程序要使用私钥进行密码运算时,在将经密码服务平台的公钥加密的私钥秘密份额sm+1,sm+2,…,sm+n提交到密码服务平台前,先采用同态加密加法,将sm+1,sm+2,…,sm+n分别加上 [1,p-1]内的一个随机数cm+1, c m+2,…,cm+n,然后将经同态加密算法加密的扰动后的n份私钥秘密份额sm+1+cm+1,sm+2+cm+2,…,sm+n+cm+n提交到密码服务平台,由密码服务平台使用私钥解密得到sm+1+cm+1,sm+2+cm+2,…,sm+n+cm+n,并返回给密码程序;密码程序利用自己使用用户私钥解密得到的s1,s2,…,sm,以及密码服务平台返回的sm+1+cm+1,sm+2+cm+2,…,sm+n+cm+n,以及扰动参数cm+1,c2,…,cm+n,计算得到用户私钥s=s1+s2+,…,+sm+n,然后使用用户私钥s进行密码运算。
实施例14、
此实施例与实施例2一样针对的是椭圆曲线密码(Elliptic Curve Cryptography,ECC)私钥的存储和使用,椭圆曲线密码算法的应用私钥的密码运算支持门限密码运算,用户私钥s的分割方案与实施例2一样,与实施例2的差别如下。
密码服务平台的公钥是加法同态加密算法的公钥。
当密码程序要使用私钥进行密码运算时,在将经公钥加密的私钥秘密份额xm+1,xm+2,…,xm+n提交到密码服务平台前,先采用同态加密加法,将xm+1,xm+2,…,xm+n分别加上[1,p-1]内的一个随机数cm+1,c m+2,…,cm+n,然后将加密的扰动后的n份私钥秘密份额xm+1+cm+1,xm+2+cm+2,…,xm+n+cm+n提交到密码服务平台,密码服务平台用私钥解密得到xm+1+cm+1,xm+2+cm+2,…,xm+n+ cm+n,并在验证、确认密码程序的用户是私钥秘密份额的拥有者后,返回给密码程序;密码程序利用解密得到的x1,x2,…,xm中的t份私钥秘密份额、密码服务平台返回的xm+1+cm+1,xm+2+cm+2,…,xm+n+cm+n,以及扰动参数cm+1,c m+2,…,cm+n,结合门限算法恢复用户私钥s(比如,用xm+i+cm+i- cm+i得到xm+i,然后利用xm+i通过门限算法恢复出s),然后使用用户私钥s进行密码运算。
实施例13、14是私钥使用方法三的可能实施方式。
实施例15、
此实施例与时尚例5一样针对的是椭圆曲线群G1的基于双线性映射e:G1×G1àG2的标识密码(IBC)私钥的存储和使用,群G1的参数也一样,实施例15与实施例5的差别如下。
密码服务平台的公钥是加法同态加密算法的公钥。
对sQID的一种分解方案是:在[1,p-1]中任取m+n-1个整数s2, s3,…,sm+n,计算Q1=sQID-(s2+s3+…+sm+n)QID,则Q1,s2, s3,…,sm(或Q1,Q2=s2QID, Q3=s3QID,…, Qm=smQID),以及sm+1, sm+2,…,sm+n构成了私钥的m+n个秘密份额,其中Q1,s2,s3,…,sm(或Q1,Q2=s2QID,Q3=s3QID,…,Qm=smQID)经用户的密钥加密,sm+1,sm+2,…,sm+n经密码服务平台的公钥加密。
当用户计算装置中的密码程序需要使用私钥时,密码程序一方面使用用户的密钥解密被加密的Q1,s2,s3,…,sm(或Q1,Q2=s2QID,Q3=s3QID,…, Qm=smQID),并使用用解密后的Q1,s2,…,sm(或Q1,s2QID,…,smQID)以及扰动参数cm+1,c2,…,cm+n进行密码运算,另一方面在将加密的sm+1,sm+2,…,sm+n提交到密码服务平台前,将sm+1,sm+2,…,sm+n分别加上 [1,p-1]内的一个随机数cm+1,c m+2,…,cm+n,然后将加密的扰动后的n份私钥秘密份额sm+1+cm+1, sm+2+cm+2,…,sm+n+cm+n提交到密码服务平台,由密码服务平台使用私钥解密得到sm+1+sm+1,sm+2+cm+2,…,sm+n+cm+n,然后由密码服务平台使用sm+1+cm+1, sm+2+cm+2,…, sm+n+cm+n,分别进行密码运算;最后由密码程序或密码服务平台将使用sm+1+cm+1,sm+2+cm+2,…,sm+n+cm+n,Q1,s2,…,sm(或Q1,s2QID,…,smQID)以及扰动参数cm+1,c2,…,cm+n进行密码运算后的结果合并,计算得到使用用户私钥sQID进行密码运算的结果。
实施例16、
此实施例同实施例6一样针对是椭圆曲线群G1的基于双线性映射e:G1×G1àG2的标识密码(IBC)私钥的存储和使用,群G1的参数也一样,实施例16与实施例6的差别如下。
密码服务平台的公钥是加法同态加密算法的公钥。
对sQID的一种分割方案如下:在[1,p-1]中任取(随机取)一个整数d,采用门限秘密共享算法将d分割,分割得到的秘密是x2,x2,…,xm+n,秘密恢复的门限是n+t-1,t≥2,计算得到Q1=sQID-dQID;Q1,x2,…,xm+n(或Q1,Q2=x2QID,…,Qm=xmQID, xm+1,…,xm+n)是n+m份私钥秘密份额,其中m≥t;Q1,x2,…,xm(或Q1,x2QID,…,xmQID)经用户的其他密钥加密,xm+1,xm+2,…,xm+n经密码服务平台的公钥加密。
当用户计算装置中的密码程序需要使用私钥时,密码程序一方面使用用户的密钥解密被加密的Q1、以及x2,…,xm(或x2QID,…,xmQID)中的t-1份(一起共t份私钥秘密份额),并使用解密后的Q1、解密后的x2,…,xm(或Q1,x2QID,…,xmQID)中的t-1份私钥秘密份额,以及扰动参数cm+1, cm+2,…,cm+n(对数据)分别进行密码运算,另一方面在将经公钥加密的私钥秘密份额xm+1,xm+2,…,xm+n提交到密码服务平台前,先采用同态加密加法,将xm+1,xm+2,…,xm+n分别加上[1,p-1]内的一个随机数cm+1,c m+2,…,cm+n,然后将加密的扰动后的n份私钥秘密份额xm+1+cm+1,xm+2+cm+2,…,xm+n+cm+n提交到密码服务平台,密码服务平台使用私钥解密得到xm+1+cm+1,xm+2+cm+2,…, xm+n+cm+n,然后使用解密得到的xm+1+cm+1,xm+2+cm+2,…,xm+n+cm+n(对数据)分别进行密码运算;最后由密码程序或密码服务平台将使用解密后的xm+1+cm+1,xm+2+cm+2,…,xm+n+cm+n,解密后的Q1,解密后的x2,…,xm(或x2QID,…, xmQID)中的t-1份私钥秘密份额,以及扰动参数cm+1,c2,…,cm+n进行密码运算后的结果合并,计算得到使用用户私钥sQID进行密码运算的结果。
实施例15、16是私钥使用方法四的可能实施方式。
以上针对标识私钥sQID的分割或分割生成及其使用,同样适合于基于e:G1×G2àGT(G1、G2有相同的阶)的双线性映射(配对)的标识私钥分割或分割生成及其使用,此时,QID属于群G1, 系统参数(公开参数)Q、Qpub=sQ属于群G2
密码服务平台验证、确认密码程序的用户是私钥秘密份额的拥有者的方法有很多种,本发明不作特别限定,只要能安全证明密码程序的用户是私钥秘密份额的拥有者即可。在此,给几种方式,但不是全部可能的方式。
方式一,在使用密码服务平台的公钥对私钥秘密份额进行加密时,用户的一个电子通信标识,如邮件地址、手机号码,连同私钥秘密份额一起被加密;密码服务平台使用私钥解密被加密的私钥秘密份额,并检查多个私钥秘密份额中的用户电子通信标识是否一致,若不一致,则验证、确认不通过;若一致,则密码服务平台进一步通过电子通信标识,向用户发送随机生成的确认信息,若用户能够提交密码服务平台发送的确认信息,则验证、确认通过,否则不通过。
方式二,在使用密码服务平台的公钥对私钥秘密份额进行加密时,用户在密码服务平台的帐户名,连同私钥秘密份额一起被加密;密码程序在将私钥秘密份额提交到密码服务平台时,需要在密码服务平台完成身份鉴别(完成登录操作);身份鉴别通过后,密码服务平台解密被加密的私钥份额,查看里面的帐户名与用户通过密码程序在密码服务平台进行身份鉴别(登录)的帐户名是否一致,若一致,则验证、确认通过,否则不通过。
方式三,密码服务平台通过验证、确认密码程序的用户是否拥有与提交给密码服务平台的n份私钥秘密份额相匹配的私钥秘密份额(1份或多份),从而确认密码程序的用户是否是私钥秘密份额的拥有者。
还可将方式三同方式一、二结合起来使用,采用双因子身份鉴别。
其他未说明的具体技术实施,对于相关领域的技术人员而言是众所周知,不言自明的。

Claims (10)

1.一种私钥存储方法,其特征是:
用户的一个私钥被分割成m+n份,或者由采用私钥分割生成方式生成的m+n份组合形成,每份称为私钥秘密份额,其中m、n均大于等于1;
m+n份私钥秘密份额中的m份经用户的其他密钥加密,另外的n份中的每一份经密码服务平台的公钥加密;所述用户的其他密钥指被分割的或按分割方式生成的用户私钥所对应的公钥以外的其他密钥;
加密后的m+n份私钥秘密份额被保存在用户计算装置中。
2.根据权利要求1所述的私钥存储方法,其特征是:
若用户私钥是生成后分割的,则对用户私钥的分割采用门限分割或非门限分割;
若用户私钥是采用分割方式生成的,则用户私钥的生成采用门限分割方式生成或非用门限分割方式生成。
3.根据权利要求1所述的私钥存储方法,其特征是:
所述密码服务平台是一个通过网络提供密码服务的系统或云平台;所述密码服务平台中的密码服务器属于一个机构或多个机构;若属于多个机构,则不同的机构有不同的公钥,而对n份私钥秘密份额中的每份分别进行加密所使用的密码服务平台的公钥是同一个机构的,或者是不同机构的。
4.一种基于权利要求1所述私钥存储方法的私钥使用方法,其特征是:
当用户计算装置中的密码程序需要使用用户私钥时,密码程序和密码服务平台按如下方式进行操作:
密码程序使用用户密钥解密使用用户密钥加密的m份私钥秘密份额中的1份或多份;
密码程序将使用密码服务平台的公钥加密的n份私钥秘密份额,提交到密码服务平台;
密码服务平台使用私钥,即与加密私钥秘密份额所用的公钥相对应的私钥,解密被加密的n份私钥秘密份额;在验证、确认密码程序的用户是私钥秘密份额的拥有者后,密码服务平台将解密后的私钥秘密份额返回给密码程序;
密码程序利用自己解密后的私钥秘密份额和密码服务平台解密后的私钥秘密份额恢复出用户私钥;
最后密码程序使用恢复的用户私钥进行密码运算。
5.一种基于权利要求1所述私钥存储方法的私钥使用方法,其特征是:
当用户计算装置中的密码程序需要使用用户私钥时,密码程序和密码服务平台按如下方式进行操作:
密码程序使用用户密钥解密使用用户密钥加密的m份私钥秘密份额中的1份或多份,然后使用解密后的私钥秘密份额进行密码运算;
密码程序将使用密码服务平台的公钥加密的n份私钥秘密份额,提交到密码服务平台;
密码服务平台使用私钥,即与加密私钥秘密份额所用的公钥相对应的私钥,解密被加密的n份私钥秘密份额;在验证、确认密码程序的用户是私钥秘密份额的拥有者后,密码服务平台使用解密后的n份私钥秘密份额分别进行密码运算;
最后由密码程序或密码服务平台,将密码程序使用私钥秘密份额进行密码运算的结果和密码服务平台使用解密后的n份私钥秘密份额分别进行密码运算的结果合并,运算得到最终的密码运算的结果。
6.一种基于权利要求1所述私钥存储方法的私钥使用方法,其特征是:
若使用密码服务平台的公钥对用户私钥的n份私钥秘密份额进行加密所使用的密码算法是加法同态加密算法,使用的密码服务平台的公钥是加法同态加密算法的公钥,且用密码服务平台的公钥加密的n私钥秘密份额中的每份是整数类型的数据或者被当作整数类型的数据提交到被密码服务平台,则当用户计算装置中的密码程序需要使用用户私钥时,密码程序和密码服务平台按如下方式进行操作:
密码程序使用用户密钥解密经用户密钥加密的m份私钥秘密份额中的1份或多份;使用同态加密算法,将使用密码服务平台公钥加密的n份私钥秘密份额中的每份分别加上或减去一个随机整数,得到n份被随机整数修改的、且被加密的私钥秘密份额,每份被修改的私钥秘密份额称为被扰动的私钥秘密份额;通过同态加密算法对n份私钥秘密份额中的每份进行修改的随机整数称为扰动参数;
密码程序将n份加密的被扰动的私钥秘密份额提交到密码服务平台,由密码服务平台使用私钥,即与加密被扰动的私钥秘密份额所用的公钥相对应的私钥,解密被加密的n份被扰动的私钥秘密份额,在验证、确认密码程序的用户是私钥秘密份额的拥有者后,密码服务平台将解密后的被扰动的私钥秘密份额返回给密码程序;
密码程序利用扰动参数、经用户密钥解密后的私钥秘密份额、以及解密后的被扰动的私钥秘密份额恢复出用户私钥;
最后密码程序使用恢复的用户私钥进行密码运算。
7.一种基于权利要求1所述私钥存储方法的私钥使用方法,其特征是:
若使用密码服务平台的公钥对用户私钥的n份私钥秘密份额进行加密所使用的密码算法是加法同态加密算法,使用的密码服务平台的公钥是加法同态加密算法的公钥,且用密码服务平台的公钥加密的n私钥秘密份额中的每份是整数类型的数据,则当用户计算装置中的密码程序需要使用用户私钥时,密码程序和密码服务平台按如下方式进行操作:
密码程序使用用户密钥解密经用户密钥加密的m份私钥秘密份额中的1份或多份;使用同态加密算法,将使用密码服务平台公钥加密的n份私钥秘密份额中的每份分别加上或减去一个随机整数,得到n份被随机整数修改的、且被加密的私钥秘密份额,每份被修改的私钥秘密份额称为被扰动的私钥秘密份额;通过同态加密算法对n份私钥秘密份额中的每份进行修改的随机整数称为扰动参数;
密码程序使用扰动参数以及自己解密后的私钥秘密份额进行密码运算;
密码程序将n份加密的被扰动的私钥秘密份额提交到密码服务平台,由密码服务平台使用私钥,即与加密被扰动的私钥秘密份额所用的公钥相对应的私钥,解密被加密的n份被扰动的私钥秘密份额;在验证、确认密码程序的用户是私钥秘密份额的拥有者后,密码服务平台使用解密后的n份被扰动的私钥秘密份额分别进行密码运算;
最后由密码程序或密码服务平台,将密码程序使用扰动参数以及解密后的私钥秘密份额进行密码运算的结果,以及密码服务平台使用解密后的n份被扰动的私钥秘密份额分别进行密码运算的结果合并,运算得到最终的密码运算的结果。
8.一种基于权利要求7所述私钥存储方法的私钥使用方法,其特征是:
密码程序按如下方式使用扰动参数以及自己解密后的私钥秘密份额进行密码运算:
用扰动参数对使用用户密钥解密后的私钥秘密份额进行修改,形成修改后的私钥秘密份额,然后用修改后的私钥秘密份额进行密码算法;
或者,使用扰动参数对使用解密后的私钥秘密份额进行密码运算的结果进行修改;
或者,将扰动参数作为私钥秘密份额,然后使用扰动参数、以及使用用户密钥解密后的私钥秘密份额分别进行密码运算。
9.根据权利要求4-7中任一项所述的私钥使用方法,其特征是:
若n份私钥秘密份额是使用密码服务平台中属于不同机构的公钥加密的,则用户计算装置中的密码程序在需要使用用户私钥进行密码运算时,将使用一个机构的公钥加密的私钥秘密份额提交到对应机构的密码服务器。
10.一种针对权利要求1-3中任一项所述的私钥存储方法的标识私钥分割方法,其特征是:
对于基于双线性映射的标识密码的标识私钥sQID,任选[1,p-1]中的一个整数d,其中p是QID所在群的阶,将d按门限秘密共享算法或非门限秘密共享算法分割成d2,d3,...,dn,则Q1=sQID-dQID,d2,d3,...,dn或Q1=sQID-dQID,Q2=d2QID, Q3=d3QID,...,Qn=dnQID是sQID的一个分割。
CN201610994919.6A 2016-11-11 2016-11-11 一种私钥存储及使用方法 Active CN106357401B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610994919.6A CN106357401B (zh) 2016-11-11 2016-11-11 一种私钥存储及使用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610994919.6A CN106357401B (zh) 2016-11-11 2016-11-11 一种私钥存储及使用方法

Publications (2)

Publication Number Publication Date
CN106357401A true CN106357401A (zh) 2017-01-25
CN106357401B CN106357401B (zh) 2019-09-10

Family

ID=57861615

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610994919.6A Active CN106357401B (zh) 2016-11-11 2016-11-11 一种私钥存储及使用方法

Country Status (1)

Country Link
CN (1) CN106357401B (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107086902A (zh) * 2017-03-22 2017-08-22 北京理工大学 一种基于动态门限密码支持三方审核与文件去重的云存储系统
CN107294707A (zh) * 2017-06-22 2017-10-24 四川思安特科技有限公司 一种手机盾签名密钥保护方法
CN107453862A (zh) * 2017-05-15 2017-12-08 杭州复杂美科技有限公司 私钥生成存储及使用的方案
CN108449317A (zh) * 2018-02-08 2018-08-24 湘潭大学 一种基于sgx与同态加密进行安全验证的门禁系统及其实现方法
CN108833093A (zh) * 2018-06-14 2018-11-16 百度在线网络技术(北京)有限公司 账户密钥的确定方法、装置、设备及存储介质
CN109510709A (zh) * 2018-09-18 2019-03-22 中国农业大学 基于RSA的(k,n)门限签名方法、装置与电子设备
CN109639415A (zh) * 2018-12-19 2019-04-16 南京壹证通信息科技有限公司 一种基于密钥分割的协同密钥存储恢复方法
CN110166239A (zh) * 2019-06-04 2019-08-23 成都卫士通信息产业股份有限公司 用户私钥生成方法、系统、可读存储介质及电子设备
CN110704856A (zh) * 2019-10-09 2020-01-17 成都安恒信息技术有限公司 一种基于运维审计系统的秘密共享方法
CN110889695A (zh) * 2019-11-25 2020-03-17 支付宝(杭州)信息技术有限公司 基于安全多方计算保存和恢复隐私数据的方法和装置
CN111199045A (zh) * 2018-11-16 2020-05-26 安全技术私人有限责任公司 信息的安全多方存储和传递的加密私钥管理的方法和系统
CN111404994A (zh) * 2020-02-26 2020-07-10 北斗(天津)科学技术应用研究院(有限合伙) 一种智能工业去中心化信息存储节点通信网络系统和方法
CN111480315A (zh) * 2017-12-15 2020-07-31 区块链控股有限公司 使用低熵密码授权区块链交易的计算机实现的系统和方法
CN111526005A (zh) * 2019-02-01 2020-08-11 倍加科技股份有限公司 数据备份方法、计算机装置及计算机程序产品
CN111953480A (zh) * 2019-05-14 2020-11-17 三星Sds株式会社 密钥生成装置以及方法、运算密钥生成装置以及方法
CN112771832A (zh) * 2018-09-21 2021-05-07 区块链控股有限公司 用于共享公共秘密的计算机实现的系统和方法
CN113708925A (zh) * 2021-08-09 2021-11-26 武汉理工大学 一种普通密码算法密钥的群组使用方法及系统
CN114070564A (zh) * 2020-07-31 2022-02-18 华为技术有限公司 数字签名的方法和装置
US11930104B2 (en) 2019-05-14 2024-03-12 Samsung Sds Co., Ltd. Apparatus and method for generating secret key, apparatus and method for generating evaluation key

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1365214A (zh) * 2001-01-09 2002-08-21 深圳市中兴集成电路设计有限责任公司 一种基于公开密钥体制的密钥管理方法
US8561211B1 (en) * 2001-07-31 2013-10-15 Marvell International Ltd. System and method for enhanced piracy protection in a wireless personal communication device
CN105227566A (zh) * 2015-10-16 2016-01-06 中国联合网络通信集团有限公司 密钥处理方法、密钥处理装置及密钥处理系统
CN106027234A (zh) * 2016-05-12 2016-10-12 山东渔翁信息技术股份有限公司 一种密钥保护方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1365214A (zh) * 2001-01-09 2002-08-21 深圳市中兴集成电路设计有限责任公司 一种基于公开密钥体制的密钥管理方法
US8561211B1 (en) * 2001-07-31 2013-10-15 Marvell International Ltd. System and method for enhanced piracy protection in a wireless personal communication device
CN105227566A (zh) * 2015-10-16 2016-01-06 中国联合网络通信集团有限公司 密钥处理方法、密钥处理装置及密钥处理系统
CN106027234A (zh) * 2016-05-12 2016-10-12 山东渔翁信息技术股份有限公司 一种密钥保护方法

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107086902A (zh) * 2017-03-22 2017-08-22 北京理工大学 一种基于动态门限密码支持三方审核与文件去重的云存储系统
CN107453862A (zh) * 2017-05-15 2017-12-08 杭州复杂美科技有限公司 私钥生成存储及使用的方案
CN107453862B (zh) * 2017-05-15 2023-05-30 杭州复杂美科技有限公司 私钥生成存储及使用的方案
CN107294707A (zh) * 2017-06-22 2017-10-24 四川思安特科技有限公司 一种手机盾签名密钥保护方法
CN107294707B (zh) * 2017-06-22 2020-08-28 四川思安特科技有限公司 一种手机盾签名密钥保护方法
CN111480315A (zh) * 2017-12-15 2020-07-31 区块链控股有限公司 使用低熵密码授权区块链交易的计算机实现的系统和方法
CN108449317B (zh) * 2018-02-08 2020-07-07 湘潭大学 一种基于sgx与同态加密进行安全验证的门禁系统及其实现方法
CN108449317A (zh) * 2018-02-08 2018-08-24 湘潭大学 一种基于sgx与同态加密进行安全验证的门禁系统及其实现方法
CN108833093A (zh) * 2018-06-14 2018-11-16 百度在线网络技术(北京)有限公司 账户密钥的确定方法、装置、设备及存储介质
CN109510709A (zh) * 2018-09-18 2019-03-22 中国农业大学 基于RSA的(k,n)门限签名方法、装置与电子设备
CN112771832A (zh) * 2018-09-21 2021-05-07 区块链控股有限公司 用于共享公共秘密的计算机实现的系统和方法
CN111199045A (zh) * 2018-11-16 2020-05-26 安全技术私人有限责任公司 信息的安全多方存储和传递的加密私钥管理的方法和系统
CN109639415A (zh) * 2018-12-19 2019-04-16 南京壹证通信息科技有限公司 一种基于密钥分割的协同密钥存储恢复方法
CN111526005A (zh) * 2019-02-01 2020-08-11 倍加科技股份有限公司 数据备份方法、计算机装置及计算机程序产品
US11930104B2 (en) 2019-05-14 2024-03-12 Samsung Sds Co., Ltd. Apparatus and method for generating secret key, apparatus and method for generating evaluation key
CN111953480B (zh) * 2019-05-14 2024-04-02 三星Sds株式会社 密钥生成装置以及方法、运算密钥生成装置以及方法
CN111953480A (zh) * 2019-05-14 2020-11-17 三星Sds株式会社 密钥生成装置以及方法、运算密钥生成装置以及方法
CN110166239A (zh) * 2019-06-04 2019-08-23 成都卫士通信息产业股份有限公司 用户私钥生成方法、系统、可读存储介质及电子设备
CN110704856B (zh) * 2019-10-09 2021-08-20 成都安恒信息技术有限公司 一种基于运维审计系统的秘密共享方法
CN110704856A (zh) * 2019-10-09 2020-01-17 成都安恒信息技术有限公司 一种基于运维审计系统的秘密共享方法
CN110889695A (zh) * 2019-11-25 2020-03-17 支付宝(杭州)信息技术有限公司 基于安全多方计算保存和恢复隐私数据的方法和装置
CN111404994A (zh) * 2020-02-26 2020-07-10 北斗(天津)科学技术应用研究院(有限合伙) 一种智能工业去中心化信息存储节点通信网络系统和方法
CN114070564A (zh) * 2020-07-31 2022-02-18 华为技术有限公司 数字签名的方法和装置
CN113708925A (zh) * 2021-08-09 2021-11-26 武汉理工大学 一种普通密码算法密钥的群组使用方法及系统
CN113708925B (zh) * 2021-08-09 2023-12-12 武汉理工大学 一种普通密码算法密钥的群组使用方法及系统

Also Published As

Publication number Publication date
CN106357401B (zh) 2019-09-10

Similar Documents

Publication Publication Date Title
CN106357401B (zh) 一种私钥存储及使用方法
CN106548345B (zh) 基于密钥分割实现区块链私钥保护的方法及系统
CN104184743B (zh) 面向云计算平台的三层认证系统及认证方法
US11063941B2 (en) Authentication system, authentication method, and program
Rezaeighaleh et al. New secure approach to backup cryptocurrency wallets
CN101945114B (zh) 基于fuzzy vault和数字证书的身份认证方法
CN110710155A (zh) 渐进式密钥加密算法
CN103414690A (zh) 一种可公开验证云端数据持有性校验方法
CN109918888B (zh) 基于公钥池的抗量子证书颁发方法及颁发系统
CN109936456B (zh) 基于私钥池的抗量子计算数字签名方法和系统
CN110519046A (zh) 基于一次性非对称密钥对和qkd的量子通信服务站密钥协商方法和系统
CN109787758B (zh) 基于私钥池和Elgamal的抗量子计算MQV密钥协商方法和系统
CN109921905B (zh) 基于私钥池的抗量子计算密钥协商方法和系统
CN107171796A (zh) 一种多kmc密钥恢复方法
EP4046325A1 (en) Digital signature generation using a cold wallet
CN111327419B (zh) 基于秘密共享的抗量子计算区块链的方法及系统
CN110380859B (zh) 基于非对称密钥池对和dh协议的量子通信服务站身份认证方法和系统
CN113158143B (zh) 一种基于区块链数字版权保护系统的密钥管理方法及装置
CN103493428B (zh) 数据加密
JP2008519303A (ja) 双線形アプリケーションの計算の安全化された委託方法
CN110138548A (zh) 基于非对称密钥池对和dh协议的量子通信服务站密钥协商方法和系统
CN110505055A (zh) 基于非对称密钥池对和密钥卡的外网接入身份认证方法和系统
CN110176989B (zh) 基于非对称密钥池的量子通信服务站身份认证方法和系统
Sathya et al. A comprehensive study of blockchain services: future of cryptography
CN115473703A (zh) 认证的基于身份的密文等值测试方法、装置、系统及介质

Legal Events

Date Code Title Description
C06 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