[发明专利]一种密钥流序列扰动方法及加密方法无效
申请号: | 201010164463.3 | 申请日: | 2010-04-30 |
公开(公告)号: | CN101848078A | 公开(公告)日: | 2010-09-29 |
发明(设计)人: | 冯秀涛;周春芳;冯登国 | 申请(专利权)人: | 中国科学院软件研究所 |
主分类号: | H04L9/00 | 分类号: | H04L9/00;H04L9/28 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙) 11200 | 代理人: | 余功勋 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 密钥 序列 扰动 方法 加密 | ||
1.一种密钥流序列扰动方法,其步骤为:
1)预置2m个记忆单元对每个记忆单元的内容赋初值,存储一n比特字;m、n为自然数;
2)对于输入的密钥流序列中的每个字xi依次进行如下步骤:
a)取当前字xi的高m比特的值h;其中每个字均为n比特字;
b)利用第h个记忆单元的内容yh与输入字xi进行异或操作,输出经扰乱后的字zi;
c)取当前字xi的低m比特的值t;
d)将当前字xi经S盒变换的值与第t个记忆单元的内容yt进行异或输出yt′;将该yt经S盒变换的值与所述yh异或输出yh′;
e)依次将第t个记忆单元中的值更新为yt′、第h个记忆单元中的值更新为yh′;
3)将依次输出的字zi作为扰乱后的密钥流序列。
2.如权利要求1所述的方法,其特征在于根据加密算法的初始密钥或初始向量对每个记忆单元的内容赋初值。
3.如权利要求1所述的方法,其特征在于利用随机数对每个记忆单元的内容赋初值。
4.如权利要求1所述的方法,其特征在于所述m的值为:1到n-1之间的整数。
5.如权利要求4所述的方法,其特征在于所述步骤a)中,取当前字xi的高m比特的值h的方法为:对xi做右移n-m位的操作。
6.如权利要求4所述的方法,其特征在于所述步骤c)中,取当前字xi的低m比特的值t的方法为:对xi做模2m运算。
7.如权利要求1所述的方法,其特征在于所述S盒为正形置换。
8.一种加密方法,其步骤为:
1)消息发送方根据初始密钥和初始向量,生成密钥流;
2)消息发送方将得到的密钥流与原始消息按位异或,实现对原始消息加密,并将加密消息发送到消息接收方;
3)消息接收方利用初始密钥和初始向量,生成密钥流;
4)消息接收方将生成的密钥流与接收到的加密消息按位异或,实现对加密消息的解密,得到原始消息;
其中,所述生成密钥流的方法为:预置2m个记忆单元对每个记忆单元的内容赋初值,存储一n比特字,m、n为自然数;利用线性反馈移位寄存器生成源序列,并从每次生成的源序列中选取若干字输入一个非线性变换单元,输出一个字xi;然后对每次输出的字xi依次进行如下步骤:a)取当前字xi的高m比特的值h;b)利用第h个记忆单元的内容yh与输入xi进行异或操作,输出经扰乱后的字zi;c)取当前字xi的低m比特的值t;d)将当前字xi经S盒变换的值与第t个记忆单元的内容yt进行异或输出yt′;将该yt经S盒变换的值与所述yh异或输出yh′;e)依次将第t个记忆单元中的值更新为yt′、第h个记忆单元中的值更新为yh′;f)将输出的zi与移位寄存器的一个字异或生成密钥流字;最后,根据依次输出的密钥流字得到密钥流序列。
9.如权利要求8所述的方法,其特征在于所述非线性变换单元为有限状态机或不带记忆的非线性函数。
10.如权利要求8所述的方法,其特征在于所述S盒为正形置换;所述m的值为:1到n-1之间的整数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010164463.3/1.html,转载请声明来源钻瓜专利网。