一种基于TPM的数字证书申请方法与流程

文档序号:12133576阅读:1962来源:国知局

本发明涉及信息安全与可信计算技术领域,特别涉及一种基于TPM的数字证书申请方法。



背景技术:

数字证书就是互联网通讯中标志通讯各方身份信息的一串数字,提供了一种在Internet上验证通信实体身份的方式,数字证书不是数字身份证,而是身份认证机构盖在数字身份证上的一个章或印(或者说加在数字身份证上的一个签名)。它是由权威CA认证中心颁发的用于标识通讯各方身份的数据,相当于现实中的身份证。

目前数字证书已广泛应用于电子商务、电子支付、网上银行等领域。使用数字证书安全通信依赖于一对非对称密钥:私钥和公钥。其中,私钥用来签名和解密,公钥用来制作数字证书标识身份。

数字证书申请时该密钥对有两种生成方法:一是由申请方生成密钥对,将公钥及身份相关信息发送给CA中心,CA据此颁发证书;二是由CA中心产生密钥对,使用公钥制作证书,然后将私钥和证书一并发给证书申请方。方法一中,密钥对由申请方生成,其安全性较低,容易受到黑客攻击泄露密钥;方法二虽然能保证密钥生成的安全,但在通过网络将私钥和证书发送的过程中容易受到网络攻击。

基于上述问题,本发明提出了一种基于TPM的数字证书申请方法。可信计算技术的核心主要依赖作为整个平台可信根的TPM/TCM芯片。作为片上系统,芯片内部存在密钥生成部件,同时其密钥存储体系保证了密钥的安全存储。



技术实现要素:

本发明为了弥补现有技术的缺陷,提供了一种简单高效的基于TPM的数字证书申请方法。

本发明是通过如下技术方案实现的:

一种基于TPM的数字证书申请方法,其特征在于:一方面申请方使用TPM硬件芯片生成一对非对称密钥,其中芯片公钥PKey_R导出申请证书,芯片私钥SKey_R存在芯片内部进行保护,以防止芯片私钥SKey_R泄露;另一方面申请方与CA中心的通信过程全部采用非对称加密,保证数据传输过程中的机密性;同时增加随机数验证,确保申请方能够得到权威机构颁发的证书。

本发明基于TPM的数字证书申请方法,包括以下步骤:

(1)申请方获取安装CA中心的CA根证书,根证书中包含CA中心公钥PKey_C;

(2)申请方使用TPM芯片生成一个随机数N和一对非对称密钥,包括芯片私钥SKey_R和芯片公钥PKey_R,其中芯片私钥SKey_R存在TPM芯片内部,不允许导出,芯片公钥PKey_R可导出;

(3)申请方使用CA中心公钥PKey_C加密身份信息,芯片公钥PKey_R及随机数N,向CA中心提交证书申请请求;

(4)CA中心使用CA中心私钥SKey_C解密请求信息,得到芯片公钥PKey_R及身份信息,审核身份信息,通过审核后使用芯片公钥PKey_R及部分身份信息制作证书;

(5)CA中心用芯片公钥PKey_R加密证书,并使用CA中心私钥SKey_C签名随机数N,一并发送给申请方;

(6)申请方首先使用本地根证书中的CA中心公钥PKey_C验证签名,将得到的随机数M与原随机数N比较,若M与N相匹配,则使用芯片私钥SKey_R解密得到证书。

所述步骤(6)中,若得到的随机数M与原随机数N不匹配,则返回步骤(3),重新向CA中心提交证书申请请求。

本发明的有益效果是:该基于TPM的数字证书申请方法,CA中心密匙对与通过TPM硬件芯片使用内部算法及密钥种子产生的密钥对结合使用,极大地提高了安全性,能够避免黑客攻击泄露密钥;同时通信过程采用非对称加密,保证了数据传输过程的机密性,能够确保申请方得到的数字证书的安全性。

附图说明

附图1为本发明基于TPM的数字证书申请方法示意图。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图和实施例,对本发明进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

该基于TPM的数字证书申请方法,一方面申请方使用TPM硬件芯片生成一对非对称密钥,其中芯片公钥PKey_R导出申请证书,芯片私钥SKey_R存在芯片内部进行保护,以防止芯片私钥SKey_R泄露;另一方面申请方与CA中心的通信过程全部采用非对称加密,保证数据传输过程中的机密性;同时增加随机数验证,确保申请方能够得到权威机构颁发的证书。

该基于TPM的数字证书申请方法,包括以下步骤:

(1)申请方获取安装CA中心的CA根证书,根证书中包含CA中心公钥PKey_C;

(2)申请方使用TPM芯片生成一个随机数N和一对非对称密钥,包括芯片私钥SKey_R和芯片公钥PKey_R,其中芯片私钥SKey_R存在TPM芯片内部,不允许导出,芯片公钥PKey_R可导出;

(3)申请方使用CA中心公钥PKey_C加密身份信息,芯片公钥PKey_R及随机数N,向CA中心提交证书申请请求;

(4)CA中心使用CA中心私钥SKey_C解密请求信息,得到芯片公钥PKey_R及身份信息,审核身份信息,通过审核后使用芯片公钥PKey_R及部分身份信息制作证书;

(5)CA中心用芯片公钥PKey_R加密证书,并使用CA中心私钥SKey_C签名随机数N,一并发送给申请方;

(6)申请方首先使用本地根证书中的CA中心公钥PKey_C验证签名,将得到的随机数M与原随机数N比较,若M与N相匹配,则使用芯片私钥SKey_R解密得到证书。

若得到的随机数M与原随机数N不匹配,则返回步骤(3),重新向CA中心提交证书申请请求。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1