H04L9/32 H04L9/30
1.一种安全地生成密钥对和传送公钥信息的方法,包括下列步骤:
(1)信息安全设备中保存有一个密钥A,所述密钥A不能被导出;
(2)使用所述信息安全设备生成密钥对:私钥C和公钥D,所述 私钥C保存在所述信息安全设备中,不能被导出;
(3)使用所述密钥A为所述信息安全设备生成的所述公钥D生成 鉴别信息M;
(4)从所述信息安全设备中导出所述公钥D和所述鉴别信息M;
(5)将所述鉴别信息M和所述公钥D一起发给接收者;
(6)接收者对所述公钥D和鉴别信息M进行验证。
2.如权利要求1所述的安全地生成密钥对和传送公钥信息的方 法,其特征在于:
一次性执行完成步骤(2)和步骤(3),使公钥D的鉴别信息M是 在生成公钥D和私钥C时生成的。
4.如权利要求1-3中任意一项所述的安全地生成密钥对和传送 公钥信息的方法,其特征在于:
所述信息安全设备保存的密钥为一个密钥对中的私钥A,接收者 保存有所述密钥对中的公钥B;
所述步骤(3)的使用所述密钥为所述信息安全设备生成的所述公 钥D生成鉴别信息M的方法为:使用所述私钥A对所述公钥D签名而 生成签名信息M;
所述步骤(6)中,接收者利用所述公钥B对所述公钥D及其签名 信息M进行验证。
6.如权利要求1-3中任意一项所述的安全地生成密钥对和传送 公钥信息的方法,其特征在于:
所述信息安全设备和接收者共享一个密钥A;
所述步骤(3)的使用所述密钥为所述信息安全设备生成的所述公 钥D生成鉴别信息M的方法为:使用所述共享密钥A计算所述公钥D 的消息鉴别码M;
所述步骤(6)中,接收者利用所述共享密钥A对所述公钥D计算 消息鉴别码M,并且通过比较计算的结果和所述消息鉴别码M进行验证。
7.如权利要求6所述的安全地生成密钥对和传送公钥信息的方 法,其特征在于:
所述消息鉴别码M由对称算法或HMAC计算得到。
3.如权利要求1所述的安全地生成密钥对和传送公钥信息的方 法,其特征在于:
所述信息安全设备不接受从外部导入的公钥。
5.如权利要求4所述的安全地生成密钥对和传送公钥信息的方 法,其特征在于:
所述签名信息M是由非对称算法生成的数字签名。
8.一种当用于证书申请时,安全地生成密钥对和传送证书申请文 件的方法,包括下列步骤:
(1)信息安全设备保存有一个密钥A,所述密钥A不能被导出;
(2)使用所述信息安全设备生成密钥对:私钥C和公钥D,所述 私钥C保存在所述信息安全设备中,不能被导出;
(3)使用所述密钥A为所述信息安全设备生成的所述公钥D生成 鉴别信息M;
(4)从所述信息安全设备中导出所述公钥D和所述鉴别信息M;
(5)所述导出的公钥D与用户信息合并生成证书申请文件;
(6)所述信息安全设备使用所述私钥C对所述证书申请文件签 名;
(7)将所述鉴别信息M附加到经私钥C签名后的证书申请文件中, 并随同该证书申请文件一起发送给CA;
(8)CA对所述证书申请文件及所述鉴别信息M进行验证。
9.如权利要求8所述的安全地生成密钥对和传送证书申请文件的 方法,其特征在于:
一次性执行完成步骤(2)和步骤(3),使公钥D的鉴别信息M是 在生成公钥D和私钥C时生成的。
10.如权利要求8所述的安全地生成密钥对和传送证书申请文件 的方法,其特征在于:
所述信息安全设备不接受从外部导入的公钥。
11.如权利要求8-10中任意一项所述的安全地生成密钥对和传送 证书申请文件的方法,其特征在于:
所述信息安全设备保存的密钥为一个密钥对中的私钥A,CA保存 有所述密钥对中的公钥B;
所述步骤(3)的使用所述密钥为所述信息安全设备生成的所述公 钥D生成鉴别信息的方法为:使用所述私钥A对所述公钥D签名而生 成签名信息M;
所述步骤(8)中,CA利用所述公钥B对所述证书申请文件中的 公钥D及其签名信息M进行验证。
12.如权利要求11所述的安全地生成密钥对和传送证书申请文件 的方法,其特征在于:
所述签名信息M是由非对称算法生成的数字签名。
13.如权利要求8-10中任意一项所述的安全地生成密钥对和传 送证书申请文件的方法,其特征在于:
所述信息安全设备和CA共享一个密钥A;
所述步骤(3)的使用所述密钥为所述信息安全设备生成的所述公 钥D生成鉴别信息M的方法为:使用所述共享密钥A计算所述公钥D 的消息鉴别码M;
所述步骤(8)中,CA利用所述共享密钥A对所述公钥D计算消 息鉴别码M,并且通过比较计算的结果和所述消息鉴别码M进行验证。
14.如权利要求13所述的安全地生成密钥对和传送证书申请文件 的方法,其特征在于:
所述消息鉴别码M由对称算法或HMAC计算得到。
技术领域
本发明涉及信息安全领域,尤其涉及安全地生成密钥对和传送公 钥或者证书申请文件的方法。
背景技术
私钥是指PKI(公开密钥基础设施)体系中用户的私人密钥。
公钥是指PKI体系中的用户的公开密钥。
CA是指PKI体系中的证书颁发机构。
证书申请文件指用户在申请证书过程中向CA提交的信息的集合。
自签名是指用户向CA提交的证书申请文件中的使用用户私钥对证 书申请文件的签名。
随着信息化和数字化的普及,密钥安全性问题也越来越受到人们 的关注。网上银行、网络游戏、支付平台、网上证券交易等无一不是 以私钥的安全为基础的,也就是说,用户在网上所有交易的安全性都 依赖于用户的私钥,所以保护私钥的安全是网络安全交易的至关重要 的部分,而保护私钥的安全需要从密钥对的生成和公钥信息或证书申 请文件在网络地传送过程的安全性入手。
现有技术中,密钥对(包含用户的公钥和私钥)是在用户申请证 书的时候生成的。证书申请的流程如下:由客户端生成公钥和私钥对, 然后根据生成的公钥和用户的信息生成一个证书申请文件,再使用上 述客户端生成的私钥对所述生成的证书申请文件进行签名,最后将签 过名的证书申请文件通过网络发送到CA,经CA认证而成为证书。然而, 由于客户端并不是一个安全的环境,黑客有可能通过木马程序窃取用 户的私钥,或通过截获用户发出的证书申请文件,替换用户的公钥和 证书申请文件的自签名,并在用户发现之前使用私钥而谋取利益。
综上所述,现有技术的证书申请过程中存在安全漏洞,其主要问 题在于不能保证密钥对的生成环境和公钥信息或证书申请文件在网络 传送过程中的安全。
发明内容
本发明的目的是提供一种安全地生成密钥对和传送公钥信息或证 书申请文件的方法,以克服上述现有技术在密钥对的生成过程中和公 钥信息或证书申请文件在网络传送过程中存在的不安全的问题。
为了达到上述目的,本发明提供一种安全地生成密钥对和传送公 钥信息的方法,包括下列步骤:
(1)信息安全设备中保存有一个密钥A,所述密钥A不能被导出;
(2)使用所述信息安全设备生成密钥对:私钥C和公钥D,所述 私钥C保存在所述信息安全设备中,不能被导出;
(3)使用所述密钥A为所述信息安全设备生成的所述公钥D生成 鉴别信息M;
(4)从所述信息安全设备中导出所述公钥D和所述鉴别信息M;
(5)将所述鉴别信息M和所述公钥D一起发给接收者;
(6)接收者对所述公钥D和鉴别信息M进行验证。
为了达到上述目的,本发明还提供一种安全地生成密钥对和传送 证书申请文件的方法,包括下列步骤:
(1)信息安全设备保存有一个密钥;
(2)使用所述信息安全设备生成密钥对:私钥C和公钥D,所述 私钥C保存在所述信息安全设备中,不能导出;
(3)使用所述密钥为所述信息安全设备生成的所述公钥D生成鉴 别信息M;
(4)从所述信息安全设备中导出执行所述步骤(3)后的所述公 钥D;
(5)所述导出的公钥D与用户信息合并生成证书申请文件;
(6)所述信息安全设备使用所述私钥C对所述证书申请文件签 名;
(7)将所述鉴别信息M附加到执行所述步骤(6)后的证书申请 文件中,并随同执行所述步骤(6)后的证书申请文件一起发送给CA;
(8)CA对所述证书申请文件及所述鉴别信息进行验证。
通过本发明提供的方法,可以有效地保证生成密钥对和传送公钥 信息或证书申请文件的安全,从而保证网上交易的安全。
附图说明
图1为根据本发明的第一实施方式的安全地生成密钥对和传送证 书申请文件的方法的流程图;
图2为根据本发明的第二实施方式的安全地生成密钥对和传送证 书申请文件的方法的流程图;
图3为根据本发明的第三实施方式的安全地生成密钥对和传送公 钥信息的方法的流程图;
图4为根据本发明的第四实施方式的安全地生成密钥对和传送公 钥信息的方法的流程图。
具体实施方式
本发明的核心思想和设计原理在于:
为了保证私钥的安全,公私钥对在信息安全设备内部生成,私钥 保存在信息安全设备内部,不可导出,这样木马程序就无法窃取到用 户的私钥。然后客户端根据从所述信息安全设备中导出的公钥和用户 信息生成证书申请文件,再让所述信息安全设备使用其生成的私钥对 生成的证书申请文件签名并发送给CA;
为了保证证书申请文件在传送过程中的安全,具体地,保证公钥 和证书申请文件的自签名不被替换,信息安全设备需要为自己生成的 公钥生成鉴别信息。客户端将该鉴别信息附加到证书申请文件中,随 同证书申请文件一起发送给CA。CA通过验证该鉴别信息来判定该公钥 是否是在信息安全设备中生成的,即证书申请文件中的公钥和自签名 没有被替换过。
上述的鉴别信息可以由对称算法、非对称算法、HMAC或者CA规定 的不公开的算法生成。
如果使用非对称算法生成鉴别信息,则需要在信息安全设备内部 预先保存一个私钥。信息安全设备使用所述预先保存的私钥对自己生 成的公钥进行数字签名而作为鉴别信息。当然所述预先保存的私钥不 能导出,也不能有其它用途,而只能用于为该信息安全设备生成的公 钥生成鉴别信息。
如果使用对称算法或者HMAC生成鉴别信息,则需要在CA和信息 安全设备中共享一个密钥。信息安全设备使用该共享密钥为自己生成 的公钥计算消息认证码作为鉴别信息。当然该共享密钥也不能有别的 用途。
由于攻击者无法伪造信息安全设备生成的鉴别信息,所以其无法 替换证书申请文件中的公钥和自签名,因此无法欺骗CA而不被CA发 现。
为了防止木马程序在外部生成公私钥对后,把生成的公钥导入到 信息安全设备,然后再导出其生成的公钥,来使信息安全设备用木马 程序生成的公钥,即非法公钥生成鉴别信息,以下两种方法可用来防 止上述问题:第一种方法是不允许向信息安全设备导入公钥;第二种 方法是公钥的鉴别信息与生成公私钥对同时生成,并保存在信息安全 设备中,需要时可以被导出。当然该信息是不能被修改的。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及 具体实施方式对本发明进行详细描述。
具体实施方式1:
参考图1,图1为根据本发明的第一实施方式的安全地生成密钥对 和传送证书申请文件的方法的流程图,包括以下步骤:
步骤101:信息安全设备保存有一个密钥对中的私钥A,CA保存有 所述密钥对中的公钥B。
这里私钥A不能被导出,也不能用于本发明描述的用途以外的其 它用途。
步骤102:信息安全设备生成密钥对:私钥C和公钥D,私钥C始 终保存在信息安全设备中,不可导出。
步骤103:使用私钥A对公钥D签名,生成签名信息M。
为了防止信息安全设备用木马程序生成的公钥,即非法公钥生成 鉴别信息,这里应一次性执行完成步骤(102)和步骤(103),使公钥 D的签名信息M是在生成公钥D和私钥C时生成的,或者保证信息安全 设备不能从外部导入任何公钥。
步骤104:从信息安全设备中导出公钥D及其签名信息M。
步骤105:公钥D与用户信息合并生成证书申请文件。
步骤106:信息安全设备使用私钥C对证书申请文件签名。
步骤107:将对公钥D的签名信息M附加到执行步骤106后的证 书申请文件中,并随同执行步骤106后的证书申请文件一起发送给CA。
上述步骤是为了保证证书申请文件在传送过程中的安全,具体地, 保证公钥和证书申请文件的自签名不被替换。
步骤108:CA利用公钥B对证书申请文件中的公钥D及其签名信 息M进行验鉴。
如果鉴别成功,则说明公钥D是在信息安全设备中生成的,并且 证书申请文件中的公钥D和自签名信息没有被替换,CA可以对证书申 请文件进行签名使它成为证书;如果对证书申请文件中的公钥D及其 签名验鉴失败,则说明证书申请文件中的公钥D不是在信息安全设备 中生成的,或者在传送的过程中已经被替换,所以CA不能给证书申请 文件进行签名使它成为证书。
具体实施方式2:
参考图2,图2为根据本发明的第二实施方式的安全地生成密钥对 和传送证书申请文件的方法的流程图,包括以下步骤:
步骤201:信息安全设备和CA共享一个密钥A。
这里密钥A不能被导出,也不能用于本发明描述的用途以外的其 它用途。
步骤202:信息安全设备生成密钥对:私钥C和公钥D,私钥C始 终保存在信息安全设备中,不可导出。
步骤203:使用共享密钥A计算公钥D的消息鉴别码M。
为了防止信息安全设备用木马程序生成的公钥,即非法公钥生成 鉴别信息,这里应一次性执行完成步骤(202)和步骤(203),使公钥 D的消息鉴别码M是在生成公钥D和私钥C时生成的,或者保证信息安 全设备不能从外部导入任何公钥。所述消息鉴别码M,即MAC(Message Authentication Code)。
步骤204:从信息安全设备中导出公钥D和消息鉴别码M。
步骤205:公钥D与用户信息合并生成证书申请文件。
步骤206:信息安全设备使用私钥C对证书申请文件签名。
步骤207:将消息鉴别码M附加到执行步骤206后的证书申请文 件中,并随同执行步骤206后的证书申请文件一起发送给CA。
上述步骤是为了保证证书申请文件在传送过程中的安全,具体地, 保证公钥和证书申请文件的自签名不被替换。
步骤208:CA利用共享密钥A对公钥D计算消息鉴别码,并且将 计算的结果和所述消息鉴别码M进行比较。
如果两个消息鉴别码相等,则说明公钥D是在信息安全设备中生 成的,并且证书申请文件中的公钥D和自签名信息没有被替换,CA可 以对证书申请文件进行签名使它成为证书;如果两个消息鉴别码不相 等,则说明证书申请文件中的公钥D不是在信息安全设备中生成的, 或者在传送的过程中已经被替换,所以CA不能对证书申请文件进行签 名使它成为证书。
具体实施方式3
参考图3,图3为根据本发明的第三实施方式的安全地生成密钥对 和传送公钥信息的方法的流程图,包括以下步骤:
步骤301:信息安全设备保存有一个密钥对中的私钥A,接收者保 存有所述密钥对中的公钥B。
这里私钥A不能被导出,也不能用于本发明描述的用途以外的其 它用途。接收者可以是任何进行公钥和鉴别信息验证的实体。
步骤302:信息安全设备生成密钥对:私钥C和公钥D,私钥C始 终保存在信息安全设备中,不可导出。
步骤303:使用私钥A对公钥D签名,生成签名信息M。
为了防止信息安全设备用木马程序生成的公钥,即非法公钥生成 鉴别信息,这里应一次性执行完成步骤(302)和步骤(303),使公钥 D的签名信息M是在生成公钥D和私钥C时生成的,或者保证信息安全 设备不能从外部导入任何公钥。
步骤304:从信息安全设备中导出公钥D及其签名信息M。
步骤305:将签名信息M和公钥D一起发给接收者。
上述步骤是为了保证公钥信息在传送过程中的安全,具体地,保 证公钥信息不被替换。
步骤306:接收者利用公钥B对公钥D及其签名信息M进行验鉴。
如果鉴别成功,则说明公钥D是在信息安全设备中生成的,并且 在被传送过程中没有被替换;如果对公钥D及其签名验鉴失败,则说 明公钥D不是在信息安全设备中生成的,或者在被传送的过程中已经 被替换。
具体实施方式4:
参考图4,图4为根据本发明的第四实施方式的安全地生成密钥对 和传送公钥信息的方法的流程图,包括以下步骤:
步骤401:信息安全设备和接收者共享一个密钥A。
这里密钥A不能被导出,也不能用于本发明描述的用途以外的其 它用途。接收者可以是任何进行公钥和鉴别信息验证的实体。
步骤402:信息安全设备生成密钥对:私钥C和公钥D,私钥C始 终保存在信息安全设备中,不可导出。
步骤403:使用共享密钥A计算公钥D的消息鉴别码M。
为了防止信息安全设备用木马程序生成的公钥,即非法公钥生成 鉴别信息,这里应一次性执行完成步骤(402)和步骤(403),使公钥 D的消息鉴别码M是在生成公钥D和私钥C时生成的,或者保证信息安 全设备不能从外部导入任何公钥。所述消息鉴别码M,即MAC。
步骤404:从信息安全设备中导出公钥D和消息鉴别码M。
步骤405:将消息鉴别码M和公钥D一起发给接收者。
上述步骤是为了保证公钥信息在传送过程中的安全,具体地,保 证公钥信息不被替换。
步骤406:接收者利用共享密钥A对公钥D计算消息鉴别码,并 且将计算的结果和所述消息鉴别码M进行比较。
如果两个消息鉴别码相等,则说明公钥D是在信息安全设备中生 成的,并且在被传送过程中没有被替换;如果两个消息鉴别码不相等, 则说明公钥D不是在信息安全设备中生成的,或者在被传送的过程中 已经被替换。
显然,本领域地技术人员可以对本发明地方法进行各种改变而不 脱离本发明的精神范围。因此如果这些改变属于本发明权利要求书极 其等同技术范围内,则本发明也意图涵盖这些改变。
本文发布于:2023-04-13 22:13:25,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/3/86257.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |