主权项 |
一种随机密钥的生成方法,其特征在于包括如下步骤:(1)提取两个人体生物特征信息,分别将其转化为两个一维比特流,根据产生密钥种子的密码算法确定密钥种子的长度L,将该两个一维比特流转换成长度为L比特的数据作为随机密钥种子M<sub>o</sub>、N<sub>o</sub>分别存放在寄存器M、N中;(2)选取内容可由加密者自定义的三个密钥种子源,分别通过密钥置换表进行密钥扩充处理,得到3个长度为L比特的加密密钥K1、K2、K3; (3)利用长度为L比特的加密密钥K1,采用密码算法对随机密钥种子M<sub>i</sub>进行加密,把得到的密文与M<sub>i</sub>异或,输出X<sub>i</sub>,其中i=(0...n),n为迭代次数;(4)将X<sub>i</sub>作为M<sub>i+1</sub>反馈回寄存器M中对随机密钥种子M<sub>i</sub>进行更新,同时将X<sub>i</sub>与寄存器N中的随机密钥种子N<sub>i</sub>异或,输出Y<sub>i</sub>;(5)利用长度为L比特的密钥K3,采用密码算法对Y<sub>i</sub>进行加密,将得到的密文与Y<sub>i</sub>异或,得到伪随机数Seq,为本次迭代生成的最终加密密钥;(6)将输出的加密密钥Seq与寄存器N中的随机密钥种子N<sub>i</sub>异或,输出结果Z<sub>i</sub>;(7)利用长度为L比特的密钥K2,采用密码算法对上述Z<sub>i</sub>进行加密,将得到的密文与Z<sub>i</sub>异或,输出N<sub>i+1</sub>;同时将N<sub>i+1</sub>反馈给寄存器N中对密钥种子N<sub>i</sub>进行更新,至此,本轮迭代完成,迭代次数i加1,返回步骤(3)进入下一轮迭代。 |