一种基于安全环境的密钥移植方法

文档序号:7614653阅读:152来源:国知局
专利名称:一种基于安全环境的密钥移植方法
技术领域
本发明属于计算机安全领域,具体地涉及一种基于安全环境的安全可靠的密钥移植方法。
背景技术
现有技术中,所述安全环境是所有在这个环境里的密钥操作包括加密和解密是安全的,具体来讲至少有两个方面是安全的在执行密钥加密和解密操作的时候,可以保证密钥的私钥部分不会被泄漏;可以保证加密和解密操作的对象中所包含的隐私数据不会被泄漏。
在计算机安全领域里面,为了保证密钥的安全的传输和存储,采用了许多方法保护密钥的安全,例如对密钥的私钥部分进行加密,就是其中一种非常重要的方法。但是,计算机应用中有时候需要将密钥转移到异地安全环境下使用。
一般来说,一个密钥的公钥部分是公开的,而私钥部分是需要保密的,那么,通常将密钥的私钥部分进行转移是需要绝对安全的。
现有技术中通常会采用一种方法使用异地安全环境用户的公钥将需要转移的密钥的私钥部分进行加密,然后将这个被加密后的私钥发送到异地,由异地安全环境的用户使用私钥解密这个被加密的私钥。这种方法虽然比较简单,但在安全可靠性方面比较低,对于安全可靠性要求比较高的应用,这种方法并不适合;尤其是当异地安全环境的用户的私钥不慎泄漏了时,那么需要转移的私钥就有可能被中间人劫走,被解开,如此需要转移的私钥就被泄漏了,其后果不堪设想。因此,需要设计一种安全可靠性更高的方法。

发明内容
本发明的目的是提供一种基于安全环境的密钥移植方法,针对传统基于安全环境的密钥移植方法的缺陷,提出一种更可靠安全的密钥移植方法。
为了达到以上目的,本发明所采用的技术方案是一种基于安全环境的密钥移植方法,其包括以下步骤a)、将需要移植的密钥的私钥部分分成两个以上的部分,采用不同的加密方式进行加密;b)、在接受移植端针对该不同加密方式的私钥部分进行解密后合并还原为密钥的私钥部分。
所述的密钥移植方法,其中,所述步骤a)还包括a1)、将各部分私钥部分分别经过至少一次OAEP编码后发送给所述接受移植端。
所述的密钥移植方法,其中,所述步骤a)还包括a2)、将各私钥部分经OAEP编码后的结果与一随机数进行异或操作,之后发送给接受移植端。
所述的密钥移植方法,其中,所述方法的具体步骤还包括a11)、将需要转移的密钥的私钥部分分成两部分记为K1和K2,K1为私钥的长度和私钥的前十六个字节,K2设为私钥的剩余部分;b11)、创建一个密钥转换数据包,记为M1,其包含K2的长度、K2私钥部分和其他相关密钥信息;c11)、对所述密钥转换数据包进行OAEP编码后的结果设为O1,所述OAEP编码的输入参数为明文为M1,pHash为这个密钥所有者的口令的哈希值,seed为K1;d11)、创建一个随机数,设为R1,并与O1进行异或运算得到结果X1;
e11)、使用异地安全环境用户的公钥加密X1,得到最后可移植结果E1;f11)、将所述可移植结果E1和所述随机数R1传给所述异地用户。
所述的密钥移植方法,其中,所述异地用户还采取以下步骤a12)所述异地用户使用自己的私钥解密所述可移植结果E1,然后与所述随机数R1异或,还原得到O1;b12)对O1经过OAEP解码得到明文M1,seed(K1),pHash;c12)将K1的私钥的前十六个字节和所述M1中K2组合在一起就是需要转移的密钥的私钥部分。
所述的密钥移植方法,其中,所述密钥的长度是1024位,2048位,或是更高的位数。
所述的密钥移植方法,其中,所述数据在传输中还加上对传输数据的校验过程。
本发明所提供的一种基于安全环境的密钥移植方法,由于其将需要转移的密钥分割成两个部分,并且以不同的方式被隐藏,增加了破解难度,很难能够得到一个完整的私钥;其次,各部分私钥经过一次OAEP编码,要想得到密钥的私钥部分必须破解OAEP编码,再增加了破解难度;第三方面,所述OAEP编码的结果和一随机数进行异或,再次增加了破解难度,通过采用上述一系列的处理使得密钥的移植变得更加可靠和安全了。


图1为本发明方法在本地安全环境下加密流程;图2为本发明方法在加密密钥传输到异地安全环境后的解密流程。
具体实施例方式
以下,将详细描述本发明的各较佳实施例。
本发明的一种基于安全环境的密钥移植方法,主要应用在计算机安全领域,在本实施例中在需要密钥移植时包括以下几个步骤(1)首先,将需要转移的密钥的私钥部分分成两块记为K1和K2,K1包括私钥的长度(四个字节的)和私钥的前十六个字节,K2为私钥的剩余部分(除了前十六个字节之外);(2)然后创建一个密钥转换数据包M1,M1中包含了K2的长度,K2密钥部分和其他相关的密钥信息;在这里M1数据包的格式可由使用者自行定制,其他相关的密钥信息也是由使用者根据实际需求进行自行定制的;(3)创建一个由对所述密钥转换数据包M1进行OAEP编码后的结果O1,O1是一个198字节长度的值;OAEP编码的输入参数可参考如下明文=M1,pHash=这个密钥所有者的口令的哈希值,seed=K1;根据OAEP编码算法,参考《PCKS#1v2.0RSACryptography Standard》9.1.1节,在使用OAEP编码的时候对一些步骤需做以下调整“Let pHash=Hash(P),an octet string of lengthhLen.”,其中pHash以输入参数的方式设定成转移密钥所有者口令的哈希值;在“Generate a random octet string seed of length hLen.”中,Seed以输入参数的方式设定成K1;这样原有OAEP输入参数的格式(M,P,emLen)转变成(M,pHash,Seed,emLen)。其中emLen是编码后期望输出的长度,在专利遗漏这个输入参数,这个参数应该指定为198。
(4)创建一个随机数R1,该随机数R1可以为一个长度为198字节的随机数;(5)创建一个异或结果X1,X1=R1异或O1;(6)使用异地安全环境用户的公钥加密该异或结果X1,得到可移植结果E1;(7)将所述可移植结果E1和所述随机数R1传给所述异地用户;(8)所述异地用户使用自己的对应私钥可对所述可移植结果E1进行解密,得到解密结果D1,由于RSA加密算法的特点,加密和解密的对应公钥和私钥是不同的,因此为一种不对称加密算法;(9)将解密结果D1和所述随机数R1异或,可还原得到OAEP编码后的结果O1;(10)该OAEP编码后的结果O1再经过OAEP解码得到M1,seed(K1),pHash;(11)将K1的私钥的前十六个字节和M1中K2部分组合在一起就是需要转移的密钥的私钥部分。
更进一步的,本发明方法中为了使本发明具有更好的效果,RSA算法的密钥的长度最好是1024位,2048位,或是更高的位数。为保证数据在传输中没有丢失,最好是加上对传输数据的校验,数据校验的方法在现有技术中有很多种,在此不再赘述。
本发明的效果就在于,第一,将需要转移的密钥分割成两个部分K1和K2,并且K1,K2以不同方式被隐藏,增加了破解难度,很难能够得到一个完整的私钥;第二,M1和K1经过一次OAEP编码,要想得到密钥的私钥部分必须破解OAEP编码,增加了破解难度;第三,OAEP编码的结果和随机数R1异或,再次增加了破解难度。通过这一系列的处理使得密钥移植变得更加可靠和安全了。
但应当理解的是,本发明的上述针对具体实施例的描述较为具体,并不能因此而认为是本发明专利保护范围的限制,本发明的专利保护范围应以所附权利要求为准。
权利要求
1.一种基于安全环境的密钥移植方法,其包括以下步骤a)、将需要移植的密钥的私钥部分分成两个以上的部分,采用不同的加密方式进行加密;b)、在接受移植端针对该不同加密方式的私钥部分进行解密后合并还原为密钥的私钥部分。
2.根据权利要求1所述的密钥移植方法,其特征在于,所述步骤a)还包括a1)、将各部分私钥部分分别经过至少一次OAEP编码后发送给所述接受移植端。
3.根据权利要求2所述的密钥移植方法,其特征在于,所述步骤a)还包括a2)、将各私钥部分经OAEP编码后的结果与一随机数进行异或操作,之后发送给接受移植端。
4.根据权利要求3所述的密钥移植方法,其特征在于,所述方法的具体步骤还包括a11)、将需要转移的密钥的私钥部分分成两部分记为K1和K2,K1为私钥的长度和私钥的前十六个字节,K2设为私钥的剩余部分;b11)、创建一个密钥转换数据包,记为M1,其包含K2的长度、K2私钥部分;c11)、对所述密钥转换数据包进行OAEP编码后的结果设为01,所述OAEP编码的输入参数为明文为M1,pHash为这个密钥所有者的口令的哈希值,seed为K1;d11)、创建一个随机数,设为R1,并与01进行异或运算得到结果X1;e11)、使用异地安全环境用户的公钥加密X1,得到最后可移植结果E1;f11)、将所述可移植结果E1和所述随机数R1传给所述异地用户。
5.根据权利要求4所述的密钥移植方法,其特征在于,所述异地用户还采取以下步骤a12)所述异地用户使用自己的私钥解密所述可移植结果E1,然后与所述随机数R1异或,还原得到01;b12)对01经过OAEP解码得到明文M1,seed(K1),pHash;c12)将K1的私钥的前十六个字节和所述M1中K2组合在一起就是需要转移的密钥的私钥部分。
6.根据权利要求1~5任意权项所述的密钥移植方法,其特征在于,所述密钥的长度是1024位,2048位,或是更高的位数。
7.根据权利要求6所述的密钥移植方法,其特征在于,所述数据在传输中还加上对传输数据的校验过程。
全文摘要
本发明的一种基于安全环境的密钥移植方法,其包括以下步骤a)将需要移植的密钥的私钥部分分成两个以上的部分,采用不同的加密方式进行加密;b)在接受移植端针对该不同加密方式的私钥部分进行解密后合并还原为密钥的私钥部分。本发明方法由于其将需要转移的密钥分割成两个部分,并且以不同的方式被隐藏,增加了破解难度,很难能够得到一个完整的私钥;其次,各部分私钥经过一次OAEP编码,要想得到密钥的私钥部分必须破解OAEP编码,再增加了破解难度;第三方面,所述OAEP编码的结果和一随机数进行异或,再次增加了破解难度,通过采用上述一系列的处理使得密钥的移植变得更加可靠和安全了。
文档编号H04L9/00GK1741443SQ200510036220
公开日2006年3月1日 申请日期2005年7月28日 优先权日2005年7月28日
发明者陈强, 张璐, 朱广志, 张玮, 刘鑫 申请人:北京兆日科技有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1