发明名称 |
一种面向字的密钥流生成方法及加密方法 |
摘要 |
本发明公开了一种面向字的密钥流生成方法及加密方法,密钥流生成方法包括:生成步骤,用于产生源序列,输入到选择步骤;选择步骤选择源序列中的一些位组成四个输出。其中三个输入到混淆步骤,另外一个输入到输出步骤;混淆步骤将三个输入进行非线性压缩变换,产生一个输出;输出步骤接收选择步骤的一个输出和混淆步骤的输出,组合压缩得到密钥流输出。本发明生成的密钥流序列,具有良好的随机性和非线性性,并且适合软硬件快速实现;利用本发明生成的密钥流进行加密的方法具有更好的安全性。 |
申请公布号 |
CN101841415A |
申请公布日期 |
2010.09.22 |
申请号 |
CN200910243258.3 |
申请日期 |
2009.12.29 |
申请人 |
中国科学院软件研究所 |
发明人 |
冯登国;戚文峰;胡予濮 |
分类号 |
H04L9/18(2006.01)I;H04L9/06(2006.01)I |
主分类号 |
H04L9/18(2006.01)I |
代理机构 |
北京君尚知识产权代理事务所(普通合伙) 11200 |
代理人 |
余长江 |
主权项 |
1.一种面向字的密钥流生成方法,包括以下步骤,1)生成步骤,利用线性反馈移位寄存器生成一个源序列;2)选择步骤,从源序列读取若干位,重新排列组合后,为混淆步骤和输出步骤提供输入;3)混淆步骤,采用两个寄存器单元实现,具体包括:A、将两个寄存器单元的值和选择步骤提供的输入,进行非线性压缩运算,生成混淆步骤的输出;B、对两个寄存器的值,分别用选择步骤提供的输入进行运算生成两个中间结果;C、将两个中间结果进行线性混合,得到两个新的中间结果;D、两个新的中间结果分别输入两个非线性变换单元,两个非线性变换单元的输出分别更新两个寄存器单元的值;4)输出步骤,将混淆步骤的输出和选择步骤提供的输入按位异或得到密钥流。 |
地址 |
100190 北京市海淀区中关村南四街4号 |