著录项信息
专利名称 | 生成数字证书及应用该所生成的数字证书的方法 |
申请号 | CN200410082396.5 | 申请日期 | 2004-12-31 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2006-07-12 | 公开/公告号 | CN1801029 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F1/00 | IPC分类号 | G;0;6;F;1;/;0;0;;;H;0;4;L;9;/;3;2查看分类表>
|
申请人 | 联想(北京)有限公司 | 申请人地址 | 北京市海淀区上地信息产业基地创业路6号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 联想(北京)有限公司 | 当前权利人 | 联想(北京)有限公司 |
发明人 | 尹萍;韦卫;林洋;宁晓魁;冯荣峰 |
代理机构 | 北京德琦知识产权代理有限公司 | 代理人 | 王琦;程殿军 |
摘要
本发明公开了一种生成数字证书的方法,应用该方法使生成的数字证书中包含有主机内的具有存储及加解密功能的芯片的信息,且必须在该主机的该芯片内才能获取数字证书的私钥,确保了该所生成的数字证书的安全。本发明还公开了两种应用所生成的数字证书的方法时,使接收方能够根据数字证书确认信息发送方持有私钥,同时可以确任该信息来自于可信主机,从而有效地避免了私钥被滥用所引起的身份误认。再有,在应用数字证书的私钥进行加解密操作时,在具有存储及加解密功能的芯片内完成,这样避免了私钥在使用的过程中被攻击者窃听的可能。由此可见,应用本发明所述的方法,避免了生成数字证书和应用数字证书过程中存在的安全隐患。
1、一种生成数字证书的方法,在主机中包含具有存储及加解密功能的芯片, 其特征在于,预先在具有存储及加解密功能的芯片中存储用于标识主机的主机 密钥及由制造商签发的主机证书,并为即将生成的数字证书设置证书标识,该 方法还包括以下步骤:
a、待申请数字证书的主机对表明主机身份的身份数据进行签名,生成身份 密钥签名,然后应用证书授权认证中心CA的公钥对至少包含证书标识、签名 所用密钥的公钥、身份密钥签名以及主机证书的数字证书请求信息通过数字信 封技术加密后发送给CA;
b、CA接收到步骤a所述信息后,利用自身的私钥进行解密,获取数字证 书请求信息,对该消息中的身份密钥签名以及主机证书分别进行验证,验证通 过后生成主机所需的数字证书,并应用主机密钥的公钥对该生成的数字证书通 过数字信封技术加密后发送给主机;
c、主机接收到步骤b所述信息后,将接收到的信息传入具有存储及加解密 功能的芯片中,由主机密钥的私钥对接收到的信息进行解密,获取CA颁发的 数字证书。
2、根据权利要求1所述的方法,其特征在于,步骤a所述对表明主机身份 的身份数据进行签名的方法为:预先在具有存储及加解密功能的芯片内设置存 储密钥,在所述芯片内,利用该存储密钥的私钥对表明主机身份的身份数据进 行签名,生成身份密钥签名,然后将身份密钥签名导出所述芯片;所述签名所 用密钥的公钥为所述存储密钥的公钥。
3、根据权利要求1所述的方法,其特征在于,步骤a所述对表明主机身份 的身份数据进行签名的方法为:预先在具有存储及加解密功能的芯片内设置存 储密钥,并由该存储密钥衍生出用于加密主机身份数据的身份密钥,在所述芯 片内,利用该身份密钥的私钥对表明主机身份的身份数据进行签名,然后由存 储密钥的公钥对身份密钥私钥加密,将加密后的身份密钥、身份密钥签名一起 传出芯片;所述签名所用密钥的公钥为所述身份密钥的公钥。
4、根据权利要求1所述的方法,其特征在于,步骤a所述应用证书授权认 证中心CA的公钥对数字证书请求消息进行加密后发送给CA的过程包括以下 步骤:
生成第一随机数,并应用该第一随机数对至少证书标识、签名所用密钥的 公钥、身份密钥签名以及主机证书进行加密,并将加密后的信息作为数字证书 请求消息中的对称部分;应用CA的公钥对所生成的第一随机数进行加密,并 将加密后的信息作为数字证书请求消息中的非对称部分;将包含对称部分和非 对称部分的数字证书请求消息发送给CA。
5、根据权利要求4所述的方法,其特征在于,步骤b所述CA接收到步骤 a所述信息,利用自身的私钥进行解密,获取数字证书请求信息的过程为:
CA利用自身的私钥对数字证书请求消息中的非对称部分进行解密,获取 第一随机数,然后应用第一随机数对数字证书请求消息中的对称部分进行解密, 获取数字证书请求信息。
6、根据权利要求1所述的方法,其特征在于,步骤b所述对签名后的身份 数据进行验证的方法为:从数字证书请求信息中提取签名所用的公钥,应用该 公钥验证身份密钥签名是否合法;所述对主机证书进行验证的方法为:CA获 取签发主机证书的机构的证书,通过验证该颁发机构具有合法资质,且主机证 书中的签名来自该颁发机构来对主机证书进行验证。
7、根据权利要求1所述的方法,其特征在于,所述主机证书中至少包括主 机密钥的公钥信息、具有存储及加解密功能的芯片的版本信息、具有存储及加 解密功能的芯片的制造商的信息及制造商的签名信息;所述身份数据中至少包 括对身份数据进行签名时所用密钥的公钥信息、具有存储及加解密功能的芯片 的版本信息、已设置的证书标记与CA的公钥的哈希值。
8、根据权利要求7所述的方法,其特征在于,步骤b所述CA生成主机所 需的数字证书,应用主机密钥的公钥对该生成的数字证书加密后发送给主机的 过程为:
CA从主机证书和身份数据中提取对身份数据进行签名时所用密钥的公钥 信息、具有存储及加解密功能的芯片的版本信息、具有存储及加解密功能的芯 片的制造商的信息,并应用自身的私钥对该提取出的数据进行签名,生成主机 所需的数字证书;之后,CA生成第二随机数,并应用该第二随机数对生成的 数字证书进行加密,并将加密后的信息作为数字证书返回消息中的对称部分, 应用主机密钥的公钥对所生成的第二随机数进行加密,并将加密后的信息作为 数字证书返回消息中的非对称部分;将包含对称部分和非对称部分的数字证书 返回消息发送给主机。
9、根据权利要求8所述的方法,其特征在于,步骤c所述由主机密钥的私 钥对接收到的信息进行解密,获取CA颁发的数字证书的过程为:主机密钥的 私钥对数字证书返回信息中的非对称部分进行解密,获取第二随机数,然后应 用第二随机数对数字证书返回信息中的对称部分进行解密,获取数字证书。
10、根据权利要求1、7、8任一所述的方法,其特征在于,所述具有存储 及加解密功能的芯片为安全芯片。
11、一种应用数字证书的方法,其特征在于,该方法包括以下步骤:
发送方应用如权利要求1所述的方法获取数字证书,并利用该数字证书的 私钥对待发送数据进行签名,将该签名后的数据发送给接收方;
接收方获取上述签名后的数据及发送方的数字证书后,应用该发送方的数 字证书中提取的的公钥对数字签名进行验证,如果通过验证,则接收到的信息 来源于可信主机,否则接收到的信息并非来源于可信主机。
12、根据权利要求11所述的方法,其特征在于,如果应用预先在具有存储 及加解密功能的芯片内设置的存储密钥对数据进行签名,则所述发送方利用数 字证书的私钥对待发送数据进行签名,将该签名后的数据发送给接收方的方法 包括如下步骤:
将待发送数据导入具有存储及加解密功能的芯片内,计算其哈希值;然后, 利用存储密钥的私钥对计算出的哈希值进行签名,将签名后的数据导出所述芯 片,之后,发送方将待发送数据及签名后的数据一起发送给接收方。
13、根据权利要求11所述的方法,其特征在于,如果应用预先在具有存储 及加解密功能的芯片内设置的存储密钥衍生出的身份密钥对身份数据进行签 名,且该身份密钥的私钥已由存储密钥的公钥加密后导出了所述芯片,则所述 发送方利用数字证书的私钥对待发送数据进行签名,将该签名后的数据发送给 接收方的方法包括如下步骤:
将已被存储密钥公钥加密后的身份密钥私钥传入芯片,由存储密钥私钥解 密获得身份密钥私钥明文,同时将待发送数据导入具有存储及加解密功能的芯 片内,计算其哈希值;然后利用身份密钥的私钥对计算出的哈希值进行签名, 将签名后的数据导出所述芯片,之后,发送方将待发送数据及签名后的数据一 起发送给接收方。
14、根据权利要求11所述的方法,其特征在于,所述接收方通过CA获取 发送方的数字证书,或者,接收方从发送方处直接获取该发送方的数字证书。
15、根据权利要求11所述的方法,其特征在于,所述根据数字证书中的信 息确认该数字证书是否来源于可信的主机的方法为:检查该发送方的数字证书 中是否有能够标识主机身份的芯片的信息,且对数字签名进行验证,如果数字 证书中含有能够标识主机身份的芯片的信息且数字签名验证通过,则确认该 数字证书来源于可信的主机,否则该数字证书并非来源于可信的主机。
16、根据权利要求15所述的方法,其特征在于,所述能够标识主机身份的 芯片的信息为具有存储及加解密功能的芯片的版本信息,及该芯片的制造商的 信息。
17、根据权利要求11所述的方法,其特征在于,该方法进一步包括:
接收方应用如权利要求1所述的方法获取数字证书;
当接收方接收到发送方利用本接收方的公钥加密后的信息后,将接收到的 信息导入本地的具有存储及加解密功能的芯片中,在该芯片内由接收方应用已 获取的数字证书的私钥对接收到的信息进行解密。
18、一种应用数字证书的方法,其特征在于,该方法包括以下步骤:
接收方应用如权利要求1所述的方法获取数字证书;
当接收方接收到发送方利用本接收方的公钥加密后的信息后,将接收到的 信息导入本地的具有存储及加解密功能的芯片中,在该芯片内由接收方应用已 获取的数字证书的私钥对接收到的信息进行解密。
技术领域\n本发明涉及数字证书技术领域,特别是指生成数字证书及应用该所生成 的数字证书的方法。\n背景技术\n数字证书是由证书授权认证中心(CA,Certificate Authority)发放并经认 证中心数字签名的,包含公开密钥拥有者以及公开密钥相关信息的一种电子文 件。数字证书与公钥密码体制紧密相关。在公钥密码体制中,每个实体都有一 对互相匹配的密钥:公开密钥(Pubic Key公钥)和私有密钥(Private Key私钥)。 公开密钥为一组用户所共享,用于加密或验证签名,私有密钥仅为证书拥有者 本人所知,用于解密或签名。\n现有的数字证书的生成过程如下:\n用户向CA发出申请数字证书的请求,该请求中包括表明用户身份的数据 和对该数据的签名信息;CA检查用户的签名通过后,为用户签发一个数字证 书,将生成的数字证书明文返回给用户,并且,要求用户使用口令保护该数字 证书的私钥。\n为达到切实的保护效果,口令应具有足够的长度且没有规律,并且要很好 地记住和经常修改,这对用户来说并非易事,而实际情况是相当多的用户为方 便起见完全没有采用私钥的口令保护机制,或者,所采用的口令很容易被破译。 因而在实际应用中,私钥并没有得到很好的保护。\n数字证书可以有以下的应用方式:\n一种应用方式是:用户应用已申请的数字证书的私钥对信息进行签名,由 于私钥仅为本人所有,所以能生成别人无法仿造的文件,也就形成了数字签名。 接收方则使用该用户的数字证书中的公钥对该数字签名进行验证,由于数字签 名与信息的内容相关,因此,一份经过签名的文件如有改动,会导致数字签名 的验证过程失败,这样就保证了数据来源的可靠性。\n在上述应用过程中,虽然能够保证数据在传输过程的安全,但不一定能保 证数据的可靠,因为接收方并不知道发送方的私钥的保护状态,如果发送方的 私钥已被攻击者窃取,而攻击者应用该私钥发送数据,则该数据的来源并不可 靠,这样,很容易产生因身份误认而引起的责任纠纷。\n另一种应用方式是:当发送一份秘密文件时,发送方使用接收方的公钥对 该文件加密,而接收方则使用自己的私钥解密。因为接收方的私钥仅为本人所 有,其他人无法解密该文件,所以能保证文件安全到达目的地。\n在上述应用过程中,接收方是将私钥调入内存中完成解密操作的,因而该 私钥存在被攻击窃听的隐患。\n从上述可以看出,在现有的生成数字证书及应用数字证书的过程中,均 存在安全隐患。\n发明内容\n有鉴于此,本发明的一个目的是提供一种生成数字证书的方法,以保证 数字证书的安全。本发明的另一目的是提供一种应用所生成的数字证书的方 法,能够有效避免因私钥滥用而引起的身份误认。本发明的再一目的是提供 一种应用所生成的数字证书的方法,避免私钥在使用的过程中被攻击者窃 听。\n为达到上述目的,本发明的技术方案如下:\n一种生成数字证书的方法,在主机中包含具有存储及加解密功能的芯片, 预先在具有存储及加解密功能的芯片中存储用于标识主机的主机密钥及由制造 商签发的主机证书,并为即将生成的数字证书设置证书标识,该方法还包括以 下步骤:\na、待申请数字证书的主机对表明主机身份的身份数据进行签名,生成身份 密钥签名,然后应用证书授权认证中心CA的公钥对至少包含证书标识、签名 所用密钥的公钥、身份密钥签名以及主机证书的数字证书请求信息通过数字信 封技术加密后发送给CA;\nb、CA接收到步骤a所述信息后,利用自身的私钥进行解密,获取数字证 书请求信息,对该消息中的身份密钥签名以及主机证书分别进行验证,验证通 过后生成主机所需的数字证书,并应用主机密钥的公钥对该生成的数字证书通 过数字信封技术加密后发送给主机;\nc、主机接收到步骤b所述信息后,将接收到的信息传入具有存储及加解密 功能的芯片中,由主机密钥的私钥对接收到的信息进行解密,获取CA颁发的 数字证书。\n较佳地,步骤a所述对表明主机身份的身份数据进行签名的方法为:预先 在具有存储及加解密功能的芯片内设置存储密钥,在所述芯片内,利用该存储 密钥的私钥对表明主机身份的身份数据进行签名,生成身份密钥签名,然后将 身份密钥签名导出所述芯片;所述签名所用密钥的公钥为所述存储密钥的公钥。\n较佳地,步骤a所述对表明主机身份的身份数据进行签名的方法为:预先 在具有存储及加解密功能的芯片内设置存储密钥,并由该存储密钥衍生出用于 加密主机身份数据的身份密钥,在所述芯片内,利用该身份密钥的私钥对表明 主机身份的身份数据进行签名,然后由存储密钥的公钥对身份密钥私钥加密, 将加密后的身份密钥、身份密钥签名一起传出芯片;所述签名所用密钥的公钥 为所述身份密钥的公钥。\n较佳地,步骤a所述应用证书授权认证中心CA的公钥对数字证书请求消 息进行加密后发送给CA的过程包括以下步骤:\n生成第一随机数,并应用该第一随机数对至少证书标识、签名所用密钥的 公钥、身份密钥签名以及主机证书进行加密,并将加密后的信息作为数字证书 请求消息中的对称部分;应用CA的公钥对所生成的第一随机数进行加密,并 将加密后的信息作为数字证书请求消息中的非对称部分;将包含对称部分和非 对称部分的数字证书请求消息发送给CA。\n较佳地,步骤b所述CA接收到步骤a所述信息,利用自身的私钥进行解 密,获取数字证书请求信息的过程为:\nCA利用自身的私钥对数字证书请求消息中的非对称部分进行解密,获取 第一随机数,然后应用第一随机数对数字证书请求消息中的对称部分进行解密, 获取数字证书请求信息。\n较佳地,步骤b所述对签名后的身份数据进行验证的方法为:从数字证书 请求信息中提取签名所用的公钥,应用该公钥验证身份密钥签名是否合法;所 述对主机证书进行验证的方法为:CA获取签发主机证书的机构的证书,通过 验证该颁发机构具有合法资质,且主机证书中的签名来自该颁发机构来对主机 证书进行验证。\n较佳地,所述主机证书中至少包括主机密钥的公钥信息、具有存储及加解 密功能的芯片的版本信息、具有存储及加解密功能的芯片的制造商的信息及制 造商的签名信息;所述身份数据中至少包括对身份数据进行签名时所用密钥的 公钥信息、具有存储及加解密功能的芯片的版本信息、已设置的证书标记与CA 的公钥的哈希值。\n较佳地,步骤b所述CA生成主机所需的数字证书,应用主机密钥的公钥 对该生成的数字证书加密后发送给主机的过程为:\nCA从主机证书和身份数据中提取对身份数据进行签名时所用密钥的公钥 信息、具有存储及加解密功能的芯片的版本信息、具有存储及加解密功能的芯 片的制造商的信息,并应用自身的私钥对该提取出的数据进行签名,生成主机 所需的数字证书;之后,CA生成第二随机数,并应用该第二随机数对生成的 数字证书进行加密,并将加密后的信息作为数字证书返回消息中的对称部分, 应用主机密钥的公钥对所生成的第二随机数进行加密,并将加密后的信息作为 数字证书返回消息中的非对称部分;将包含对称部分和非对称部分的数字证书 返回消息发送给主机。\n较佳地,步骤c所述由主机密钥的私钥对接收到的信息进行解密,获取CA 颁发的数字证书的过程为:主机密钥的私钥对数字证书返回信息中的非对称部 分进行解密,获取第二随机数,然后应用第二随机数对数字证书返回信息中的 对称部分进行解密,获取数字证书。\n较佳地,其特征在于,所述具有存储及加解密功能的芯片为安全芯片。\n一种应用数字证书的方法,该方法包括以下步骤:\n发送方应用如权利要求1所述的方法获取数字证书,并利用该数字证书的 私钥对待发送数据进行签名,将该签名后的数据发送给接收方;\n接收方获取上述签名后的数据及发送方的数字证书后,应用该发送方的数 字证书中提取的的公钥对数字签名进行验证,如果通过验证,则接收到的信息 来源于可信主机,否则接收到的信息并非来源于可信主机。\n较佳地,如果应用预先在具有存储及加解密功能的芯片内设置的存储密钥 对数据进行签名,则所述发送方利用数字证书的私钥对待发送数据进行签名, 将该签名后的数据发送给接收方的方法包括如下步骤:\n将待发送数据导入具有存储及加解密功能的芯片内,计算其哈希值;然后, 利用存储密钥的私钥对计算出的哈希值进行签名,将签名后的数据导出所述芯 片,之后,发送方将待发送数据及签名后的数据一起发送给接收方。\n较佳地,如果应用预先在具有存储及加解密功能的芯片内设置的存储密钥 衍生出的身份密钥对身份数据进行签名,且该身份密钥的私钥已由存储密钥的 公钥加密后导出了所述芯片,则所述发送方利用数字证书的私钥对待发送数据 进行签名,将该签名后的数据发送给接收方的方法包括如下步骤:\n将已被存储密钥公钥加密后的身份密钥私钥传入芯片,由存储密钥私钥解 密获得身份密钥私钥明文,同时将待发送数据导入具有存储及加解密功能的芯 片内,计算其哈希值;然后利用身份密钥的私钥对计算出的哈希值进行签名, 将签名后的数据导出所述芯片,之后,发送方将待发送数据及签名后的数据一 起发送给接收方。\n较佳地,所述接收方通过CA获取发送方的数字证书,或者,接收方从发 送方处直接获取该发送方的数字证书。\n较佳地,所述根据数字证书中的信息确认该数字证书是否来源于可信的主 机的方法为:检查该发送方的数字证书中是否有能够标识主机身份的芯片的信 息,且对数字签名进行验证,如果数字证书中含有有能够标识主机身份的芯片 的信息且数字签名验证通过,则确认该数字证书来源于可信的主机,否则该数 字证书并非来源于可信的主机。\n较佳地,所述能够标识主机身份的芯片的信息为具有存储及加解密功能的 芯片的版本信息,及该芯片的制造商的信息。\n较佳地,该方法进一步包括:\n接收方应用如权利要求1所述的方法获取数字证书;\n当接收方接收到发送方利用本接收方的公钥加密后的信息后,将接收到的 信息导入本地的具有存储及加解密功能的芯片中,在该芯片内由接收方应用已 获取的数字证书的私钥对接收到的信息进行解密。\n一种应用数字证书的方法,该方法包括以下步骤:\n接收方应用如权利要求1所述的方法获取数字证书;\n当接收方接收到发送方利用本接收方的公钥加密后的信息后,将接收到 的信息导入本地的具有存储及加解密功能的芯片中,在该芯片内由接收方应 用已获取的数字证书的私钥对接收到的信息进行解密。\n由上述方案可见,应用本发明的方法生成的数字证书中包含有主机内的 具有存储及加解密功能的芯片的信息,且必须在该主机的该芯片内才能获取 数字证书的私钥,因而该数字证书是和该主机关联的,或是说该数字证书是 和该主机绑定的。这样也就确保了该所生成的数字证书的安全,在应用数字 证书时,接收方能够根据数字证书确认信息发送方持有私钥,同时可以确定 该信息来自于可信主机,从而有效地避免了私钥被滥用所引起的身份误认。 再有,在应用数字证书的私钥进行加解密操作时,全部在具有存储及加解密 功能的芯片内完成,这样避免了私钥在使用的过程中被攻击者窃听的可能。 由此可见,应用本发明所述的方法,避免了生成数字证书和应用数字证书过 程中存在的安全隐患。\n附图说明\n图1所示为应用本发明的生成数字证书的一实施例的流程示意图。\n具体实施方式\n下面结合附图对本发明的技术方案再做进一步地说明。\n本发明的思路是:在具有存储及加解密功能的芯片内获得的与申请数字 证书的主机相关联的数字证书,确保了数字证书的安全,同时使生成的数字 证书与申请的主机绑定,这样,在应用该数字证书时,通过数字证书内的信 息确认该数字证书是否来自于可信主机,从而有效避免私钥被滥用所引起的 身份误认。另外,在应用数字证书的私钥进行加解密操作时,全部在具有存 储及加解密功能的芯片内完成,这样避免了私钥在使用时被攻击者窃听的可 能。\n下面首先详细说明生成数字证书的过程。\n待申请数字证书的主机在制造时已预设了一主机密钥,和一个由制造商 签发的主机证书,该主机密钥和主机证书存储在该主机中的具有存储及加解 密功能的芯片内,所述的芯片可以由安全芯片(TPM,Trusted Platform Module)实现,也可以由其他类似的芯片实现。其中,所述主机密钥由一对 公私钥对构成,其作为主机的永久标识,用户不可更换或删除;由制造商签 发的主机证书中至少包括主机密钥的公钥信息、具有存储及加解密功能的芯 片版本信息、该芯片的制造商信息及制造商签名信息。\n参见图1,图1所示为应用本发明的生成数字证书的一实施例的流程示 意图。在本实施例中,具有存储及加解密功能的芯片由安全芯片来实现。\n步骤1,在安全芯片内设置一用于保证数字证书的私钥安全的存储密钥, 用户可以更换或删除该存储密钥,同时,该存储密钥可以依赖于主机密钥, 也可以独立存在而与主机密钥毫无关联;之后,以该存储密钥为父密钥再设 置一身份密钥,该身份密钥位于安全芯片之外,且该身份密钥的私钥是经存 储密钥的公钥加密的。并且,为即将生成的数字证书设置证书标识。\n步骤2,构造用于表明主机身份的身份数据,该身份数据中至少包括身 份密钥的公钥、安全芯片的版本信息、已设置的证书标识与CA公钥的哈希 值。该身份数据中还可以包括抗重播随机数等。\n步骤3,应用身份密钥的私钥对身份数据进行签名,并将得到的信息称 为身份密钥签名。\n以上三步在实际操作中几乎是同时完成的,即身份密钥在安全芯片内生 成后,利用其私钥对身份数据进行签名,之后,将身份密钥的公钥以及经存 储密钥的公钥加密后的身份密钥的私钥存储在安全芯片之外,同时将身份密 钥签名也存储在安全芯片之外。\n步骤4,构造数字证书请求信息,该请求信息中至少包含已设置的证书 标识、身份密钥的公钥、身份密钥签名以及主机证书。当然该数字证书请求 信息中还可以包括身份数据信息。\n步骤5,主机生成第一随机数A,并应用该第一随机数A对数字证书请 求信息,即证书标识、身份密钥的公钥、身份密钥签名以及主机证书,进行 加密,并将加密后的信息作为数字证书请求消息中的对称部分。\n步骤6,主机应用CA的公钥对所生成的第一随机数A进行加密,并将 加密后的信息作为数字证书请求消息中的非对称部分。\n步骤7,将包含对称部分和非对称部分的数字证书请求消息发送给CA。 即采用了数字信封技术对数字证书请求消息进行保护。\n步骤8,CA接收到上述消息后,利用自身的私钥对数字证书请求消息 中的非对称部分进行解密,获取第一随机数A。\n步骤9,CA应用第一随机数A对数字证书请求消息中的对称部分进行 解密,获取数字证书请求信息。\n步骤10,从数字证书请求信息中获取身份密钥的公钥,并应用该公钥 验证身份密钥签名是否正确,验证通过后执行步骤11。\n步骤11,CA获取签发主机证书的机构的证书,通过验证该颁发机构是 否具有合法资质,且主机证书中的签名是否来自该颁发机构,实现对主机证 书的验证,验证通过后执行步骤12。\n当然,在实际操作中也可以先执行步骤11再执行步骤10,总之,对验 证的顺序并不限制。\n步骤12,构造数字证书所需的数据,具体为:CA从主机证书和身份数 据中提取身份密钥的公钥信息、安全芯片的版本信息、该安全芯片的制造商 的信息。\n步骤13,CA应用自身的私钥对该提取出的数据进行签名,生成主机所 需的数字证书。\n步骤14,CA生成第二随机数B,并应用该第二随机数B对生成的数字 证书进行加密,并将加密后的信息作为数字证书返回消息中的对称部分。\n步骤15,CA应用主机密钥的公钥对所生成的第二随机数B进行加密, 并将加密后的信息作为数字证书返回消息中的非对称部分。\n步骤16,将包含对称部分和非对称部分的数字证书返回消息发送给主 机。即采用了数字信封技术对数字证书返回消息进行保护。\n步骤17,主机接收到上述消息后,将接收到的信息传入安全芯片中, 在安全芯片内,由主机密钥的私钥对数字证书返回消息中的非对称部分进行 解密,获取第二随机数B。\n步骤18,主机应用第二随机数B对数字证书返回消息中的对称部分进 行解密,获取生成的数字证书。\n至此,主机拥有了数字证书,由于该数字证书中包含有主机内的安全芯 片的信息,且该数字证书对应的私钥必须在该主机的安全芯片内才能被解密 获取,因而确保了数字证书的安全,且该数字证书是和该主机关联的,或是 说该数字证书是和该主机绑定的。\n在上述实施方式中,也可以不产生身份密钥,而直接在安全芯片内生成 存储密钥后,应用该存储密钥的私钥对身份数据进行加密,这样,上述流程 中所有涉及到的身份密钥的公钥均替换为该存储密钥的公钥。但这种方法并 不推荐使用。\n下面说明应用上述数字证书的方法。\n如果某用户作为发送方已应用上述方法获得了一数字证书,并应用该数 字证书对应的私钥对待发送数据进行数字签名,之后,将签名后的数据发送 给接收方。\n如果应用预先在具有存储及加解密功能的芯片内设置的存储密钥对身份数 据进行加密,则所述发送方利用数字证书的私钥对待发送数据进行签名,将该 签名后的数据发送给接收方的方法包括如下步骤:\n将待发送数据导入具有存储及加解密功能的芯片内,计算其哈希值;然后, 利用存储密钥的私钥对计算出的哈希值进行签名,将签名后的数据导出所述芯 片,之后,发送方将待发送数据及签名后的数据一起发送给接收方。\n如果应用预先在具有存储及加解密功能的芯片内设置的存储密钥衍生出的 身份密钥对身份数据进行签名,且该身份密钥的私钥已由存储密钥的公钥加密 后导出了所述芯片,则所述发送方利用数字证书的私钥对待发送数据进行签名, 将该签名后的数据发送给接收方的方法包括如下步骤:\n将已被存储密钥公钥加密后的身份密钥私钥传入芯片,由存储密钥私钥解 密获得身份密钥私钥明文,同时将待发送数据导入具有存储及加解密功能的芯 片内,计算其哈希值;然后利用身份密钥的私钥对计算出的哈希值进行签名, 将签名后的数据导出所述芯片,之后,发送方将待发送数据及签名后的数据一 起发送给接收方。\n接收方获取上述签名后的数据及发送方的数字证书后,应用该发送方的 数字证书的公钥对数字签名进行验证,如果通过验证,则接收到的信息来源 可靠,否则接收到的信息来源不可靠。\n具体验证方法为:检查该发送方的数字证书中是否有能够标识主机身份 的芯片的信息,且对数字签名进行验证,如果数字证书有能够标识主机身份 的芯片的信息且数字签名验证通过,则确认该数字证书来源于可信的主机, 否则该数字证书并非来源于可信的主机。\n上述接收方通过CA获取发送方的数字证书,或者,接收方从发送方处 直接获取该发送方的数字证书。\n应用上述方法,接收方不仅能够确定信息发送方持有私钥,同时可以确 定消息来自于证书关联的特定主机,从而有效避免私钥被滥用所引起的身份 误认。\n另外,如果接收方应用上述方法获得了数字证书,当接收方接收到发送 方利用本接收方的公钥加密后的信息后,将接收到的信息导入本地的具有存 储及加解密功能的芯片中,在该芯片内,由接收方应用已获取的数字证书的 私钥对接收到的信息进行解密。\n应用上述方法,在应用数字证书的私钥进行加解密操作时,全部在具有 存储及加解密功能的芯片内完成,这样避免了私钥在内存中使用时被攻击者 窃听的可能。\n当然,上述两种应用方法也可以结合起来一起应用。\n以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在 本发明的保护范围之内。
法律信息
- 2021-12-10
未缴年费专利权终止
IPC(主分类): G06F 1/00
专利号: ZL 200410082396.5
申请日: 2004.12.31
授权公告日: 2007.10.31
- 2007-10-31
- 2006-09-06
- 2006-07-12
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2004-12-08
|
2003-05-28
| | |
2
| |
2004-05-12
|
2003-08-08
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |