CN101567780B - 一种针对加密数字证书的密钥管理与恢复方法 - Google Patents
一种针对加密数字证书的密钥管理与恢复方法 Download PDFInfo
- Publication number
- CN101567780B CN101567780B CN2009100612204A CN200910061220A CN101567780B CN 101567780 B CN101567780 B CN 101567780B CN 2009100612204 A CN2009100612204 A CN 2009100612204A CN 200910061220 A CN200910061220 A CN 200910061220A CN 101567780 B CN101567780 B CN 101567780B
- Authority
- CN
- China
- Prior art keywords
- certificate
- private key
- key
- user
- recovery
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明涉及一种针对加密数字证书的密钥管理与恢复方法,基于该方法的证书签发系统在签发用户加密证书时,用一个特定的密钥恢复证书公钥对用户私钥加密,然后将加密后的私钥放入证书中一个新定义的私钥恢复扩展项内;当用户加密私钥损坏或丢失会后,密钥恢复系统或工具,在完成必要的用户身份确认后,根据必要私钥恢复策略,用对应密钥恢复证书私钥恢复用户的加密证书私钥,并安全的传送给用户。基于本发明,既可以在线,也可以离线,恢复用户私钥。相对于目前通常采用的加密证书密钥对管理和恢复方法,本发明无须专门的系统集中保存用户加密证书的私钥,这大大降低了密钥管理和恢复系统的复杂性,使得私钥恢复变得简单、易用、灵活。
Description
技术领域
本发明属于信息安全的公开密钥基础设施(Public KeyInfrastructure,PKI)技术领域,特别是一种针对加密数字证书的密钥管理与恢复方法。
背景技术
加密技术是信息安全的核心技术,在加密技术中常用的加密算法有对称密钥加密算法(对称密钥加密技术)和非对称密钥加密算法(非对称密钥加密技术)。非对称密钥加密算法使用一对密钥进行信息加密、解密,其中一个公开发布,称为公钥,用于信息加密(或数字签名验证),另一个不公开发布,由密钥对的拥有者(或实体)安全保存,可用于信息解密(或数字签名)。这一对密钥对称为公开密钥对,因此,非对称密钥加密算法(技术)又称为公开密钥加密算法(技术)。目前最常用的非对称密钥加密算法有RSA算法、DSA等,而椭圆算法(elliptic curvecryptography,ECC)是最近出现的、目前获得广泛重视的一种非对称密钥加密算法。
基于公开密钥技术建立的安全体制称为公开密钥基础设施(PublicKey Infrastructure,PKI)。在PKI中,为了实现公钥的可靠发布、防止假冒,由一个称为证书认证机构(Certification Authority,CA)的实体通过一个证书认证系统(称为CA系统)为公开密钥对的拥有者签发数字证书(简称证书)。数字证书是一组电子信息,它上面有公钥、公钥拥有者、证书签发者(Issuer,即证书认证机构)、证书序列号、证书用途等信息,并由证书认证机构的私钥数字签名,该签名的有效性可经证书认证机构的公钥验证(证书认证机构的公钥可通过一定的安全途径获得)。数字证书中公钥拥有者信息称为主题名(Subject Name)。通过数字证书可实现公钥(或公开密钥对)与密钥对拥有者的有效绑定。
数字证书根据其用途和作用,通常又分为身份证书、加密证书及其他类型的证书。身份证书通常用于身份鉴别和数字签名,而加密证书则用于信息的加密。根据国家密码管理部门的有关规定和要求,加密证书的密钥对须由一个专门的密钥管理系统集中产生和保存(对于保存而言,关键是私钥的保存,因为公钥是可公开发布的)。该密钥管理系统由专门的、经授权的机构负责运行、维护,称为密钥管理中心(Key ManagementCenter,KMC),该密钥管理系统通常也称为KMC系统。在需要的时候,如用户私钥丢失、损坏或司法实践需要时,可由该密钥管理系统恢复加密数字证书的私钥。
由一个密钥管理系统长时间(如几十年)地集中保存大量的(如几百万、几千万张)加密数字证书的密钥对,无论从管理上还是技术上,都是一个巨大的挑战,比如,若保存私钥的密钥数据库损坏,那么,有可能造成几百万、几千万数字证书的私钥无法恢复,另外,在恢复证书私钥时,从几百万、几千万个密钥对中找出对应私钥可能需要花费很长的时间,不利于在线实时恢复证书,而且私钥恢复只能由一个集中式系统恢复,会造成私钥恢复使用上的不便和缺乏灵活性等。
发明内容
本发明的目的是提供一种无需集中保存用户加密证书的私钥,就可在需要的时候安全恢复用户加密证书私钥的密钥管理与恢复方法。
本发明包括:证书签发系统(CA系统)、密钥对产生系统、密钥恢复系统(或密钥恢复工具)、密钥恢复证书及私钥、用户加密证书及私钥、加密应用软件和证书用户,其中:
密钥对产生系统、密钥恢复系统实现原密钥管理系统中与证书密钥对产生和证书私钥恢复相对应的功能,与原密钥管理系统不同的是,本发明不需要进行密钥对的集中保存,且密钥对产生系统、密钥恢复系统可分开实现、分开运行(在不同地方)。密钥恢复系统与密钥恢复工具的差别是,密钥恢复系统是一个在线运行系统,向证书用户提供通过网络在线恢复加密证书私钥的功能,而密钥恢复工具是一个桌面软件,可运行在任一桌面计算机上恢复加密证书私钥。密钥恢复证书是一个(或多个)共用加密证书,该证书的公钥用于对用户加密证书的私钥加密,密钥恢复系统(或工具)使用该证书的私钥恢复用户加密证书的私钥。密钥恢复证书及私钥可由专门的密钥管理机构或某个特定的组织机构拥有。加密应用软件是任何可进行信息加密、解密的软件,如文件加密软件、具有加密功能的邮件客户端(如Outlook,Outlook Express)等。证书用户是加密证书的拥有者和私钥的使用者。
本发明的方法主要涉及四部分过程,定义新证书扩展项(extensions),签发加密证书,使用加密证书,及恢复加密证书私钥。
定义新证书扩展项:即在加密证书中新定义一个私钥恢复扩展项(Private Key Recovery Extension),该扩展项包含如下信息(字段),密钥恢复证书主题名,密钥恢复证书标识ID,经加密的用户加密证书私钥,经加密的用户私钥恢复PI N码(Personal Identification Number)散列值(HASH),密钥恢复信息加密格式,散列算法,以及证书恢复策略OID(Object Identifier)。证书恢复策略OID标识加密证书私钥的恢复策略,可能的恢复策略有“可在线恢复”、“必须离线恢复”等。
签发加密证书:与通常的加密证书的签发流程类似,证书签发系统接收用户的证书请求,调用密钥对生成系统产生加密证书密钥对,利用公钥及证书请求信息形成数字证书,然后对数字证书进行签名,然后将签发的证书及私钥通过一定的安全途径返回给用户。另外,在申请加密证书时,用户可选择输入私钥恢复PI N码用于日后的私钥恢复。但是在本发明提出的方法中,证书签发系统在形成数字证书时,进行数字签名前,需要额外进行如下操作:
A1.使用系统设定的密钥恢复证书的公钥,对用户加密证书私钥以及私钥恢复PIN码散列值进行加密;
A2.将密钥恢复证书的主题名、密钥恢复证书标识ID,加密后的用户证书私钥、加密后的私钥恢复PIN码散列值,以及信息加密格式和散列算法标识,放入私钥恢复扩展项中的相应字段;
A4.根据系统配置,将私钥恢复策略OID放入私钥恢复扩展项的相应字段。
在以上流程中,若用户申请时未输入私钥恢复PIN码,则无需放入该信息散列值;若系统配置没有设定对应的私钥恢复策略OID,则无需放入该信息。
另外,与通常的加密证书签发流程不同的是,密钥管理系统产生用户加密证书密钥对并传送给证书签发系统后,不再在系统中保存用户密钥对。
加密证书使用与通常的加密证书使用一样,但是,为了便于进行私钥恢复,在加密信息中须存放加密证书(目前的大多数加密应用软件确实是这么做的)。
当用户加密证书的私钥损坏或丢失后,按如下流程进行私钥恢复:
B1.用户或私钥恢复者从加密信息或证书发布目录(LDAP)中获取需要恢复私钥的加密证书;
B2.将加密证书通过一定的方式(在线或离线)提交给密钥恢复系统(或工具);
B3.如果是在线恢复,则密钥恢复系统通过一定的方法验证、确认恢复请求的提交者就是加密证书的拥有者,若验证、确认成功,则继续;否则,私钥恢复过程中止(恢复失败);
B4.密钥恢复系统(或工具)解析加密证书,从私钥恢复扩展项中获取密钥恢复证书主题名、密钥恢复证书标识ID、加密后的用户证书私钥、加密格式、散列算法、私钥恢复策略OID(若有)信息;
B5.密钥恢复系统(或工具),根据私钥恢复扩展项中包含的密钥恢复证书主题名、密钥恢复证书标识ID、私钥恢复策略OID判断是否可以为该加密证书恢复私钥,若可以,则继续;否则,私钥恢复过程中止(恢复失败);
B6.密钥恢复系统(或工具)根据私钥恢复扩展项中包含的密钥恢复证书主题名、密钥恢复证书标识ID在密码系统中选择密钥恢复证书对应私钥;
B7.密钥恢复系统(或工具)根据私钥恢复扩展项中包含的加密格式信息,确定该扩展项中包含的私钥的加密格式;
B8.密钥恢复系统(或工具)使用密钥恢复证书私钥,并根据加密格式解密加密后的用户加密证书私钥,恢复出该私钥;
B9.密钥恢复系统(或工具),通过一定的安全方式,将解密后的用户证书私钥返回给用户(私钥恢复申请者)。
在以上步骤B3中密钥恢复系统对私钥恢复请求提交者的身份验证、确认按如下流程进行:
B31.若申请提交者有与加密证书对应的、有效的身份证书,则通过用户身份证书验证、确认用户身份;
B32.若申请提交者无加密证书对应的有效的、身份证书,或者基于证书的验证失败,则进一步检查私钥恢复扩展项是否包含经加密的私钥恢复PIN码散列值,若包含,则通过PIN码验证、确认用户身份;
B33.若无加密的私钥恢复PIN码散列值,或者PIN码验证失败,则进一步检查加密证书是否包含有用户的电子邮箱地址,若包含,则使用该电子邮箱确认用户的身份;
B34.若以上验证、确认过程都失败,则无法在线确认申请者身份(即确认失败)。
对于所述步骤B32,按如下步骤确认申请提交者的身份:
B321.密钥恢复系统根据私钥恢复扩展项中包含的密钥恢复证书的主题名、证书标识ID在密码系统中选择密钥恢复证书私钥;
B322.密钥恢复系统根据私钥恢复扩展项中包含的加密格式信息,确定对私钥恢复PIN码散列值的加密格式,以及私钥恢复扩展项中包含的散列算法信息确定PIN码散列值的算法;
B323.密钥恢复系统采用密钥恢复证书私钥,解密加密后的私钥恢复PIN码散列值;
B324.密钥恢复系统提示用户输入私钥恢复PIN码;
B325.私钥恢复申请者输入私钥恢复PIN码并提交;
B326.密钥恢复系统计算申请者提交的PIN码散列值,并将该散列值与解密后的PIN码散列值比较,若相同,则验证、确认通过,否则,验证、确认失败。
对于所述步骤B33,按如下步骤确认申请提交者的身份:
B331.密钥恢复系统向用户电子邮箱发送一条仅一次有效的身份验证信息,即一串特别的身份验证PIN码,并告知申请者到对应的电子邮箱获取该信息并提交给密钥恢复系统,以完成身份验证和确认;
B332.申请者登录电子邮箱,获取身份验证PIN码信息,然后再次登录密钥恢复系统,提交身份验证PIN码信息;
B333.密钥恢复系统验证申请者提交的身份验证PIN码信息,若提交的信息有效而正确,则确认用户身份,否则,验证、确认失败;若无法在线确认申请者身份,则只能离线恢复加密证书私钥(现场恢复)。
在以上描述中,只使用一个密钥恢复证书对加密证书私钥以及私钥恢复PIN码散列值进行加密和解密,实际上可用多个密钥恢复证书对它们进行加密和解密,从而形成各种衍生方法,比如,多个密钥恢复证书分别独立进行加密和解密(任何一个可密钥恢复证书私钥即可解密),或者,多个密钥恢复证书组合进行加密和解密(同时有多个密钥恢复证书私钥才能解密)等,无论是采用单个还是多个密钥恢复证书,其实现过程与上面描述类似。
本发明的方法相对于目前通常使用的私钥恢复技术方案具有如下突出优点:
1)无需集中保存用户加密证书密钥对,这一方面使得密钥管理系统变得简单,另一方面避免了私钥存放所涉及的诸多问题,如存储安全问题、系统性能问题等,特别是在证书量很大时其优越性更加突出。
2)可提供多种灵活的私钥恢复方式,既可集中恢复,也可分散恢复,还可集中与分散相结合,比如,在具体应用中,除了专门的密钥管理机构外,国家有关执法机关可持有密钥恢复证书及私钥并通过密钥恢复工具随时随地恢复有关证书的私钥;在某些情形下,某些组织机构可有专门的密钥恢复证书对该组织机构内用户的加密证书私钥进行加密和解密。
3)简化了CA系统和密钥管理系统的实现,主要表现在,一方面密钥管理系统不再需要保存用户加密证书的密钥对,另一方面证书签发完成后,证书签发系统无需将签发的证书返回给密钥管理系统(用于与私钥对应)。
附图说明
图1为本发明的结构框图。
图2为本发明的验证、确认私钥恢复者身份的起始流程图。
图3为本发明的基于私钥恢复PIN码的用户身份验证、确认流程图。
图4为本发明的基于电子邮箱的用户身份验证、确认流程图。
图5为本发明的基于私钥恢复策略OID判断是否可以继续私钥恢复过程的流程图。
具体实施方式
下面结合附图对本发明作进一步的详细描述。
本发明包括(图1):
证书用户S1:加密证书的拥有者和私钥使用者;
证书签发系统(CA系统)S2:用于签发用户加密证书;
密钥对产生系统S3:用于产生用户加密证书密钥对;
密钥恢复证书S4(不包含私钥):用于对用户加密证书私钥进行加密;
用户加密证书及私钥S5:用户使用它进行信息加密、解密;
密钥恢复系统(或工具)S6:用于恢复用户加密证书私钥;
密钥恢复证书及私钥S7:用于对加密的用户证书私钥和私钥恢复PIN码进行解密;
加密应用软件S8:使用用户加密证书及私钥进行信息加密、解密。
下面从定义新证书扩展项(extensions),签发加密证书,使用加密证书,及恢复加密证书私钥四个方面说明本方法的具体技术实施。
定义新的证书扩展项,即私钥恢复扩展项。X509证书扩展项的基本格式如下(见Internet Engineering Task Force的RFC3280规范,Internet X.509 Public Key Infrastructure Certificate andCertificate Revocation List(CRL)Profile):
Extension::=SEQUENCE {
extnID OBJECT IDENTIFIER,
critical BOOLEAN DEFAULT FALSE,
extnValue OCTET STRING}
在本发明中,需定义一个新的的证书扩展项OID作为extnID的值,
id-private-key-recovery-info OBJECT IDENTIFIER::=...
这里的...表示一个未被标准扩展项使用的OBJECT IDENTIFIER,可由系统实现者自己定义(合法有效、不与已用OID冲突即可)。
critical的值设为FALSE。extnValue的值由如下结构定义:
PrivateKeyRecoveryInfo::=SEQUENCE{
recoveryCertName [0]Name,
recoveryCertID [1]RecoveryCertID
encryptedPrivKey [2]BIT STRING,
recoveryPinHash [3]BIT STRING OPTIONAL,
encryptionFormat [4]OBJECT IDENTIFIER OPTIONAL,
hashAlgorithm [5]OBJECT IDENTIFIER OPTIONAL,
recoveryPolicyID [6]OBJECT IDENTIFIER
OPTIONAL}
RecoveryCertID::=CHOICE{
serialNumber CertificateSerialNumber,
keyIdentifier KeyIdentifier}
recoveryCertName存放密钥恢复证书的主题甄别名(SubjectDistinguished Name);recoveryCertID存放密钥恢复证书的唯一标识ID,可以是密钥恢复证书的序列号或是密钥恢复证书的密钥标识(见RFC3280);recoveryPinHash存放加密后的用户私钥恢复PIN码散列值;encryptionFormat存放私钥和PIN码散列值的加密格式,该信息是一个OID,可由系统实现者自己定义(合法有效、不与已用OID冲突即可);hashAlgorithm,PIN码散列值的散列算法,该信息也是一个OID,其定义与encryptionFormat类似。PIN码散列值的算法可以是任何安全的HASH算法,如MD5、SHA-1等。
Name、CertificateSerialNumber、KeyIdentifier的定义(参见RFC3280)。
加密证书签发过程的具体实施。加密证书签发是由证书签发系统和密钥对产生系统共同实现。在本发明中,证书签发系统和密钥对产生系统的实现与通常的加密证书签发的实现基本一样,但为了实现本发明所述的方法,签发系统需额外进行如下配置和实现如下功能:
1)配置设定密钥恢复证书及其他信息
配置并指定哪些加密证书(如哪个CA签发的证书)使用哪个(或哪几个)密钥恢复证书加密;私钥恢复信息的加密格式;私钥恢复PIN码散列值的散列算法;根据需要(可选),指定相应的私钥恢复策略OID。
2)配置有私钥恢复扩展项的加密证书模板
通常,一个证书签发系统的证书格式是由一系列证书模板设定的。
3)签发有具有新扩展项的加密证书
除了通常的加密证书签发步骤和流程外,证书签发系统在从密钥对生成系统获得用户加密证书密钥对后,形成数字证书时,对证书进行签名前,需额外进行如下操作:
C1.通过系统配置找到对应的密钥恢复证书及其他相关信息,如私钥恢复策略OID;
C2.用密钥恢复证书公钥对用户私钥以及用户输入的私钥恢复PIN码散列值进行加密;
C3.将密钥恢复证书的主题甄别名、密钥恢复证书标识ID,加密后的用户证书私钥和私钥恢复PIN码散列值,以及信息加密格式,散列算法标识,放入用户加密证书的私钥恢复扩展项的对应字段;
C4.进一步地,根据配置设定,将私钥恢复策略OID放入到私钥恢复扩展项的对应字段。
之后,余下的证书签发过程与通常的过程基本一样,但有点例外,即证书签发完成后证书签发系统无需将签发的证书返回给密钥管理系统保存,。
密钥对产生系统的实现,与通常的密钥管理系统中这部分功能的实现是一样的,与通常的密钥管理系统不同的是,这里不需要再保存用户的密钥对及对应的加密证书信息。
加密证书的使用过程的具体实施。对带有私钥恢复扩展项加密证书及其私钥的使用与通常的加密证书的使用是一样的,由于私钥恢复扩展项的critical值设位FASLE,因此,不识别该扩展项的应用程序和系统,可以忽略该扩展项(不会影响证书的使用)。为了便于用户私钥的恢复,加密应用程序在信息加密时,须将加密证书本身与加密后的信息放在一起,目前的多数加密应用程序(如邮件加密客户端、文件加密工具)确实也是这么做的。
对于本发明内容中所述私钥恢复步骤B1,即用户或私钥恢复者从加密信息中或从证书发布目录(LDAP)获取要恢复私钥的加密证书,其具体实现方式有多种可能,依情况而定。对于当前有效且发布的加密证书,用户可使用专门的客户端工具,如浏览器、LDAP客户端,访问证书发布LDAP,查询获取要恢复私钥的加密证书。或者,用户可以通过专门应用程序(如邮件客户端)、或专门工具,从加密信息中分离出加密证书,而要实现这一点是不困难的(但跟具体加密应用程序有关)。
在私钥恢复过程中,其他私钥恢复功能主要由密钥恢复系统(或工具)实现。密钥恢复工具通常用于离线恢复,可实现为一桌面系统,有很多开发技术可供选择,如C/C++、Java等;而密钥恢复系统通常用于在线私钥恢复,可实现为一Web服务系统,也有很多的开发技术供选择,如J2EE、C#.NET等。一些具体的实施方式描述如下。
为了使密钥恢复系统或工具能够找到对应的密钥恢复证书私钥和确定相应的私钥恢复策略,密钥恢复系统或工具要有专门配置信息(文件),设定哪些密钥恢复证书在哪个密码设备(系统)中,及密钥恢复证书对应的私钥恢复策略OID集(一个私钥恢复证书可对应多个策略OID)。密钥恢复系统或工具在恢复私钥时,只需读取有关配置信息,就可根据对应的恢复策略OID,决定是否应该为用户恢复私钥,若可恢复,则可在加密设备中使用对应的密钥恢复证书私钥解密加密后的用户私钥。
对于发明内容中所述私钥恢复步骤B2,提交要恢复私钥的用户加密证书,其实施依具体情况而定。若采用离线恢复,则只需手工将加密证书提交给密钥恢复工具或拷贝到指定的目录;若采用在线恢复,则其实施描述如下:
在线密钥恢复系统需定制专门的web页面(采用JSP或ASP.NET)供用户上载要恢复私钥的加密证书。当用户用浏览器访问在线密钥恢复系统时,系统将用户引导到证书上载页面,用户通过上载页面上传要恢复私钥的加密证书。
对于在线私钥恢复,与步骤B3、B31-B34、B321-B326、B331-B333有关的用户(私钥恢复申请提交者)身份验证、确认的具体实施,可采用Web信息系统技术(如J2EE、.NET),具体地,当用户登录密钥恢复系统、提交加密证书后,密钥恢复系统按如下流程开始用户身份的验证、确认过程(图2):
D1.密钥恢复系统返回用户浏览器一个web页面(D11),询问用户是否愿意采用身份证书验证、确认身份(D12);
D2.若用户选择是,则系统通过SSL页面或定制的签名页面鉴别确认用户的身份;
D3.如用户选择否,或用户无身份证书,或者基于身份证书的验证失败,则转到基于私钥恢复PIN码的身份确认。
接下来,对于基于PIN码的身份验证、确认,其具体工作流程如下(图3):
E1.密钥恢复系统解析查看证书私钥恢复扩展项是否包含加密的私钥恢复PIN码散列值,若有,继续,否则,转入基于邮件的身份确认;
E2.密钥恢复系统根据私钥恢复扩展项中包含的密钥恢复证书的主题名、证书标识ID在密码系统中选择密钥恢复证书私钥;
E3.密钥恢复系统根据私钥恢复扩展项中包含的加密格式、散列算法信息,确定对私钥恢复PIN码散列值的加密格式,以及对应的散列算法;
E4.密钥恢复系统通过密码系统,使用密钥恢复证书私钥,解密加密后的用户私钥恢复PIN码散列值;
E5.密钥恢复系统返回用户一个web页面,请用户输入私钥恢复PIN码;
E6.私钥恢复申请者(用户)或者输入私钥恢复PIN码并提交,或者点击取消按钮;
E7.若用户提交私钥恢复PIN码,密钥恢复系统计算用户输入的PIN码的散列值(E71),将该散列值与解密的PIN码散列值比较(E72),若相同,则验证、确认成功,否则,验证、确认失败;
E8.若用户点击取消按钮,或者PIN码验证失败,则转入基于邮件的身份确认。
接下来,对于基于邮件的身份验证、确认,其实施过程如下(图4):
F1.密钥恢复系统解析查看要恢复私钥的证书中是否有用户的电子邮箱,
F2.若无,则返回页面提示无法在线恢复用户私钥,给出原因(无法确认用户身份);
F3.若有,则密钥恢复系统产生一随机ASCII字符串作为身份确认信息PIN码(F31),并该串发送到用户的电子邮箱(F32),然后返回一个web页面提示用户到指示的电子邮箱获取该信息,并将该身份确认PIN码信息拷贝输入到web页面的表单中(F33);
F4.用户登录进入其电子邮箱,取出身份确认信息PIN码,输入到web页面的表单中,然后提交;
F5.密钥恢复系统将用户提交的PIN码信息与系统保存的对应的PIN码信息进行比较,如相同,则验证、确认成功,否则,失败。
在步骤F3-F4的过程中,用户可能关闭私钥恢复web页面,为此,密钥恢复系统在将身份确认PIN码信息返回到用户邮箱前,要将该信息存放在数据库中且将该信息与要恢复私钥的证书相关联。该保存的身份确认PIN码信息只能进行一次有效身份验证,且有有效期限,当完成一次正确的身份验证或有效期到后,该信息将从数据库中删除。在步骤F5,如果用户输入的信息不正确,密钥恢复系统可提示用户再次输入,超过一定次数后系统将锁住(一段时间)。
在步骤B3、B4,密钥恢复系统或工具解析要恢复私钥的用户加密证书,从中获取私钥恢复密钥有关信息(如密钥恢复证书主题名、标识ID,加密的私钥、私钥恢复PIN码散列值,加密格式、散列算法等),只需采用常用的证书技术即可实现。
为了实现步骤B5,即密钥恢复系统(或工具),利用解析获得私钥恢复扩展项中包含的密钥恢复证书的主题名、证书标识ID以及私钥恢复策略OID判断是否可以为该加密证书恢复私钥,其具体实现的工作流程如下(如图5):
G1.判断私钥恢复扩展项中包含的密钥恢复证书的主题名、证书标识ID是否对应系统配置文件中设定的某个密钥恢复证书,若是,则继续;否则,私钥恢复过程中止(恢复失败);
G2.判断私钥恢复扩展项中是否有私钥恢复策略OID,以及对应的密钥恢复证书在系统配置文件中是否设置有私钥恢复策略OID集,
G3.若一个有,另一个没有,则判断结果为“不可以”,私钥恢复中止;
G4.若两者皆没有,则判断结果为“可以”,可继续恢复私钥;
G5.若两者皆有,则进一步判断私钥恢复扩展项中的私钥恢复策略OID是否为系统配置文件中私钥恢复证书对应的私钥恢复策略OID集中的一个,
G6.若是,则判断结果为“可以”,可继续恢复私钥;
G7.否则,判断结果为“不可以”,私钥恢复中止,。
对于B6-B8,使用密钥恢复证书的私钥解密加密后的用户私钥,这些功能的实现不复杂,只需通常的证书和加密技术即可。
对私钥恢复流程步骤B9的实现取决于私钥恢复的方式。若采用离线私钥恢复,则用户可将一个USB密码Key或软盘、U盘插入恢复工具所在的主机,恢复的私钥连同证书以p12格式导入USB密码Key中或存入软盘、U盘中;若采用在线恢复,则恢复的私钥连通连同证书以p12格式可通过SSL加密通道返回到客户端,或者存放在在本地主机,或者导入到用户提供的USB密码Key中或者存放在软盘、U盘中。
对于其它本说明中未描述、覆盖的具体实施内容,对于相关领域的技术人员而言,是直接而明了的。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (7)
1.一种针对加密数字证书的密钥管理与恢复方法,该方法涉及如下实体:证书签发系统、密钥对产生系统、密钥恢复系统、密钥恢复证书及私钥、用户加密证书及私钥、加密应用软件和证书用户,其中:
证书签发系统:用于签发用户加密数字证书;
密钥对产生系统:用于产生用户加密证书密钥对;
密钥恢复系统:用于恢复用户加密证书私钥;
密钥恢复证书及私钥:用于对用户加密证书私钥的加密、解密;
用户加密证书及私钥:用户使用它进行信息加密、解密;
加密应用软件:使用用户加密证书及私钥进行信息加密、解密;
证书用户:加密证书及私钥的拥有者和使用者;
证书签发系统在从密钥生成系统获得用户加密证书密钥对后,在对证书进行签名前,需进行如下操作步骤:
步骤1.通过系统配置找到对应的密钥恢复证书、私钥恢复策略OID及其他相关信息;
步骤2.用密钥恢复证书公钥对用户私钥以及用户输入的私钥恢复PIN码散列值进行加密;
步骤3.将密钥恢复证书的主题甄别名、密钥恢复证书标识ID,加密后的用户证书私钥和私钥恢复PIN码散列值,以及信息加密格式,散列算法标识,放入用户加密证书的私钥恢复扩展项的对应字段;
步骤4.进一步地,根据配置设定,将私钥恢复策略OID放入到私钥恢复扩展项的对应字段;
当用户加密证书的私钥损坏或丢失后,按如下流程步骤进行私钥恢复:
第一步.用户或私钥恢复者从加密信息或证书发布目录中获取需要恢复私钥的加密证书;
第二步.将加密证书通过一定在线或离线的方式提交给密钥恢复系统;
第三步.如果是在线恢复,则密钥恢复系统通过一定的方法验证、确认恢复请求的提交者就是加密证书的拥有者,若验证、确认成功,则继续;否则,私钥恢复过程中止;
第四步.密钥恢复系统解析加密证书,从私钥恢复扩展项中获取密钥恢复证书主题名、密钥恢复证书标识ID、加密后的用户证书私钥、加密格式、散列算法、私钥恢复策略OID信息;
第五步.密钥恢复系统,根据私钥恢复扩展项中包含的密钥恢复证书主题名、密钥恢复证书标识ID、私钥恢复策略OID判断是否可以为该加密证书恢复私钥,若可以,则继续;否则,私钥恢复过程中止;
第六步.密钥恢复系统根据私钥恢复扩展项中包含的密钥恢复证书主题名、密钥恢复证书标识ID在密码系统中选择密钥恢复证书对应私钥;
第七步.密钥恢复系统根据私钥恢复扩展项中包含的加密格式信息,确定该扩展项中包含的私钥的加密格式;
第八步.密钥恢复系统使用密钥恢复证书私钥,并根据加密格式解密加密后的用户加密证书私钥,恢复出该私钥;
第九步.密钥恢复系统,通过一定的安全方式,将解密后的用户证书私钥返回给用户;
其方法涉及四个过程,定义证书扩展项过程,签发加密证书过程,使用加密证书过程和恢复加密证书私钥过程,
在定义证书扩展项过程中定义一个新的、私钥恢复扩展项,该扩展项包含如下内容:
1)密钥恢复证书主题名;
2)密钥恢复证书标识ID;
3)经加密的用户加密证书私钥;
4)经加密的用户私钥恢复PIN码散列值;
5)密钥恢复信息加密格式;
6)散列算法;
7)证书恢复策略OID。
2.根据权利要求1所述的针对加密数字证书的密钥管理与恢复方法,其特征在于:第三步确定私钥恢复申请者身份时,按如下流程开始身份验证、确认:
(1).密钥恢复系统返回用户一个用户界面,询问用户是否愿意采用身份证书验证、确认身份;
(2).若用户选择是,则系统使用数字证书鉴别、确认用户的身份;
(3).如用户选择否,或用户无身份证书,或者基于身份证书的验证失败,则转到基于私钥恢复PIN码的身份确认。
3.根据权利要求2所述的针对加密数字证书的密钥管理与恢复方法,其特征在于:第(3)步用私钥恢复PIN码确定私钥恢复申请者身份时,按如下流程进行:
①.密钥恢复系统解析查看证书私钥恢复扩展项是否包含加密的私钥恢复PIN码散列值,若有,继续,否则,转入基于邮件的身份确认;
②.密钥恢复系统根据私钥恢复扩展项中包含的密钥恢复证书的主题名、证书标识ID在密码系统中选择密钥恢复证书私钥;
③.密钥恢复系统根据私钥恢复扩展项中包含的加密格式、散列算法信息,确定对私钥恢复PIN码散列值的加密格式,以及对应的散列算法;
④.密钥恢复系统通过密码系统,使用密钥恢复证书私钥,解密加密后的用户私钥恢复PIN码散列值;
⑤.密钥恢复系统返回用户一个用户界面,请用户输入私钥恢复PIN码;
⑥.私钥恢复申请者或者输入私钥恢复PIN码并提交,或者点击取消按钮;
⑦.若用户提交私钥恢复PIN码,密钥恢复系统计算用户输入的PIN码的散列值,将该散列值与解密的PIN码散列值比较,若相同,则验证、确认成功,否则,验证、确认失败;
⑧.若用户点击取消按钮,或者PIN码验证失败,则转入基于邮件的身份确认。
4.根据权利要求3所述的针对加密数字证书的密钥管理与恢复方法,其特征在于:第①步或第⑧步转入用电子邮箱确定私钥恢复申请者身份时,按如下流程进行:
A.密钥恢复系统解析查看要恢复私钥的证书中是否有用户的电子邮箱,
B.若无,则返回用户一提示信息,提示无法在线恢复用户私钥,给出原因;
C.若有,则密钥恢复系统产生一随机ASCII字符串作为身份确认信息PIN码,并该串发送到用户的电子邮箱,然后返回一个用户界面提示用户到指示的电子邮箱获取该信息,并将该身份确认信息PIN码拷贝到用户界面的相应输入框中;
D.用户登录进入其电子邮箱,取出身份确认信息PIN码,输入到web页面的表单中,然后提交;
E.密钥恢复系统将用户提交的PIN码信息与系统保存的对应的PIN码信息进行比较,如相同,则验证、确认成功,否则,失败。
5.根据权利要求4所述的针对加密数字证书的密钥管理与恢复方法,其特征在于:所述用电子邮箱确定私钥恢复申请者身份时,要进行如下操作:
密钥恢复系统在将身份鉴别信息返回到用户邮箱前,将该信息存放在数据库中且该信息与要恢复的证书关联,该保存的身份鉴别信息只能有效验证一次,且有有效时间限制;当完成一次正确的身份验证或时间有效期到后,该信息将从数据库中删除。
6.根据权利要求1所述的针对加密数字证书的密钥管理与恢复方法,其特征在于:第五步确定是否可以为加密证书恢复私钥时,按如下步骤进行:
a.判断私钥恢复扩展项中包含的密钥恢复证书的主题名、证书标识ID是否对应于密钥恢复系统配置文件中设定的某个密钥恢复证书,若是,则继续;否则,私钥恢复过程中止;
b.判断私钥恢复扩展项中是否有私钥恢复策略OID,以及对应的密钥恢复证书在密钥恢复系统的配置文件中是否设置有私钥恢复策略OID集,
c.若一个有,另一个没有,则判断结果为“不可以”,私钥恢复中止;
d.若两者皆没有,则判断结果为“可以”,可继续恢复私钥;
e.若两者皆有,则进一步判断私钥恢复扩展项中的私钥恢复策略OID是否为密钥恢复系统的配置文件中私钥恢复证书对应的私钥恢复策略OID集中的一个,
f.若是,则判断结果为“可以”,可继续恢复私钥;
g.否则,判断结果为“不可以”,私钥恢复中止。
7.根据权利要求1-6任一项所述的针对加密数字证书的密钥管理与恢复方法,其特征在于:既可以使用一个密钥恢复证书对加密证书私钥和私钥恢复PIN码散列值进行加密和解密,也可以用多个密钥恢复证书对它们进行加密和解密,从而形成各种衍生方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100612204A CN101567780B (zh) | 2009-03-20 | 2009-03-20 | 一种针对加密数字证书的密钥管理与恢复方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100612204A CN101567780B (zh) | 2009-03-20 | 2009-03-20 | 一种针对加密数字证书的密钥管理与恢复方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101567780A CN101567780A (zh) | 2009-10-28 |
CN101567780B true CN101567780B (zh) | 2011-05-18 |
Family
ID=41283750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100612204A Expired - Fee Related CN101567780B (zh) | 2009-03-20 | 2009-03-20 | 一种针对加密数字证书的密钥管理与恢复方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101567780B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11847643B2 (en) | 2013-08-15 | 2023-12-19 | Visa International Service Association | Secure remote payment transaction processing using a secure element |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102064940B (zh) * | 2009-11-13 | 2013-06-19 | 赵运磊 | 一种在线/离线高效的数字签名方法 |
CN102404699B (zh) * | 2010-09-15 | 2014-09-24 | 中国联合网络通信集团有限公司 | 基于手机邮箱的电子邮件安全通信方法、装置和系统 |
CN102307096B (zh) * | 2011-08-26 | 2013-10-16 | 武汉理工大学 | 一种基于伪rsa密钥的新近公开密钥加密算法的数据加密系统 |
CN103916237B (zh) * | 2012-12-30 | 2017-02-15 | 航天信息股份有限公司 | 对用户加密密钥恢复进行管理的方法和系统 |
CN103248476B (zh) * | 2013-05-02 | 2016-10-26 | 华为数字技术(苏州)有限公司 | 数据加密密钥的管理方法、系统及终端 |
CN103248491B (zh) | 2013-05-23 | 2016-04-13 | 天地融科技股份有限公司 | 一种电子签名令牌私钥的备份方法和系统 |
CN103269271B (zh) * | 2013-05-23 | 2016-12-07 | 天地融科技股份有限公司 | 一种备份电子签名令牌中私钥的方法和系统 |
CA2918066A1 (en) * | 2013-07-15 | 2015-01-22 | Visa International Service Association | Secure remote payment transaction processing |
RU2663476C2 (ru) | 2013-09-20 | 2018-08-06 | Виза Интернэшнл Сервис Ассосиэйшн | Защищенная обработка удаленных платежных транзакций, включающая в себя аутентификацию потребителей |
CN105323070B (zh) * | 2015-02-09 | 2018-12-21 | 北京中油瑞飞信息技术有限责任公司 | 一种基于数字信封的安全电子邮件实现方法 |
WO2017103981A1 (ja) * | 2015-12-14 | 2017-06-22 | 株式会社プライム・ブレインズ | 情報通信システム、情報通信プログラム及び情報通信方法 |
FR3049090B1 (fr) * | 2016-03-21 | 2021-06-25 | Sebastien Jean Serge Dupont | Dispositif d'authentification biometrique adaptatif par echographie, photographies en lumiere visible de contraste et infrarouge, sans divulgation, a travers un reseau informatique decentralise |
CN106059760B (zh) * | 2016-07-12 | 2019-03-19 | 武汉理工大学 | 一种从用户端密码模块调用系统私钥的密码系统 |
DE102016223481A1 (de) | 2016-11-25 | 2018-05-30 | Siemens Aktiengesellschaft | Verfahren zum Betreiben eines Eisenbahnsystems sowie Fahrzeug eines Eisenbahnsystems |
CN107066893B (zh) * | 2017-02-28 | 2018-11-09 | 腾讯科技(深圳)有限公司 | 区块链中账户信息的处理方法和装置 |
CN107391967B (zh) * | 2017-07-28 | 2019-01-18 | 北京深思数盾科技股份有限公司 | 软件许可的管理方法和装置 |
CN108418680B (zh) * | 2017-09-05 | 2021-12-07 | 矩阵元技术(深圳)有限公司 | 一种基于安全多方计算技术的区块链密钥恢复方法、介质 |
CN107682160B (zh) * | 2017-10-31 | 2020-08-28 | 美的智慧家居科技有限公司 | 一种生产设备的认证方法及装置、电子设备 |
CN109347839B (zh) * | 2018-10-25 | 2023-03-28 | 深圳壹账通智能科技有限公司 | 集中式密码管理方法、装置、电子设备及计算机存储介质 |
CN111061596B (zh) * | 2019-12-26 | 2021-11-16 | 航天壹进制(南京)数据科技有限公司 | 一种基于数字证书的数据备份与恢复方法及其系统 |
US11228571B2 (en) | 2020-02-05 | 2022-01-18 | International Business Machines Corporation | Policy-based topic-level encryption for message queues |
CN111628873A (zh) * | 2020-07-28 | 2020-09-04 | 四川省数字证书认证管理中心有限公司 | 一种使用数字证书固化数据电文的存证方法 |
JP7445135B2 (ja) * | 2020-08-27 | 2024-03-07 | 富士通株式会社 | 通信プログラム、通信装置、通信方法、及び通信システム |
CN112633884B (zh) * | 2020-12-30 | 2022-11-18 | 标信智链(杭州)科技发展有限公司 | 交易主体身份证书的本地私钥恢复方法及装置 |
CN112800442A (zh) * | 2021-01-05 | 2021-05-14 | 北京小米松果电子有限公司 | 加密文件检测方法、装置及介质 |
CN113541935B (zh) * | 2021-06-08 | 2022-06-03 | 西安电子科技大学 | 一种支持密钥托管的加密云存储方法、系统、设备、终端 |
CN115481385B (zh) * | 2022-10-31 | 2023-03-31 | 麒麟软件有限公司 | 证书管理方法 |
CN116527261A (zh) * | 2023-07-03 | 2023-08-01 | 浙江大华技术股份有限公司 | 密钥恢复方法、电子设备、存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1419357A (zh) * | 2002-08-12 | 2003-05-21 | 郑建德 | 一类基于矩阵经典分解问题的公钥密码体制 |
CN1784850A (zh) * | 2002-09-03 | 2006-06-07 | 弗里塞恩公司 | 用于在公钥架构中安全托管私钥的方法和系统 |
-
2009
- 2009-03-20 CN CN2009100612204A patent/CN101567780B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1419357A (zh) * | 2002-08-12 | 2003-05-21 | 郑建德 | 一类基于矩阵经典分解问题的公钥密码体制 |
CN1784850A (zh) * | 2002-09-03 | 2006-06-07 | 弗里塞恩公司 | 用于在公钥架构中安全托管私钥的方法和系统 |
Non-Patent Citations (1)
Title |
---|
R.Housle等.《internet X.509 public key infrastructure certificate and certificate revocation list(CRL) profile》.《RFC3280》.2002,全文. * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11847643B2 (en) | 2013-08-15 | 2023-12-19 | Visa International Service Association | Secure remote payment transaction processing using a secure element |
Also Published As
Publication number | Publication date |
---|---|
CN101567780A (zh) | 2009-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101567780B (zh) | 一种针对加密数字证书的密钥管理与恢复方法 | |
CN109067801B (zh) | 一种身份认证方法、身份认证装置及计算机可读介质 | |
US10728039B2 (en) | Method and system for signing and authenticating electronic documents via a signature authority which may act in concert with software controlled by the signer | |
CN101981889B (zh) | 计算机集群系统中的安全通信 | |
US7958362B2 (en) | User authentication based on asymmetric cryptography utilizing RSA with personalized secret | |
CN107273760A (zh) | 一种基于区块链多ca应用认证方法 | |
JPH10327147A (ja) | 電子認証公証方法およびシステム | |
CN110929290B (zh) | 基于联盟链的私钥门限备份、挂失及恢复系统及其方法 | |
US8806206B2 (en) | Cooperation method and system of hardware secure units, and application device | |
CN1989731A (zh) | 使用一次性私钥执行数字签名的系统和方法 | |
JPH113033A (ja) | クライアント−サーバ電子取引においてクライアントの本人確認を確立する方法、それに関連するスマートカードとサーバ、および、ユーザが検証者と共に操作を行うことが認可されるかどうかを決定する方法とシステム | |
JP2001326632A (ja) | 分散グループ管理システムおよび方法 | |
JP2000124887A (ja) | グループ単位の暗号化・復号方法および署名方法ならびに装置 | |
GB2385955A (en) | Key certification using certificate chains | |
CN110336673B (zh) | 一种基于隐私保护的区块链设计方法 | |
WO2008031301A1 (fr) | Procédé d'authentification d'identité en ligne point à point | |
JP6751545B1 (ja) | 電子署名システム及び耐タンパ装置 | |
CN109936552A (zh) | 一种密钥认证方法、服务器及系统 | |
EP4072064A1 (en) | Electronic signature system and tamper-resistant device | |
JPH10224345A (ja) | チップカード用暗号鍵認証方法および証明書 | |
CN108712259A (zh) | 基于身份的可代理上传数据的云存储高效审计方法 | |
JP2010231404A (ja) | 秘密情報管理システム、秘密情報管理方法、および秘密情報管理プログラム | |
WO2023009230A1 (en) | Security device and methods for end-to-end verifiable elections | |
WO2021071421A1 (en) | Methods, systems, and devices for managing digital assets | |
CN116112242B (zh) | 面向电力调控系统的统一安全认证方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110518 Termination date: 20150320 |
|
EXPY | Termination of patent right or utility model |