[发明专利]一种数据处理方法和装置有效
申请号: | 201310391255.0 | 申请日: | 2013-08-30 |
公开(公告)号: | CN104426653B | 公开(公告)日: | 2017-12-15 |
发明(设计)人: | 陆继承;魏长征;张志敏;单伟君;郭丽敏;李清;张纲 | 申请(专利权)人: | 上海复旦微电子集团股份有限公司 |
主分类号: | H04L9/06 | 分类号: | H04L9/06 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 骆苏华 |
地址: | 200433 上海市杨浦区*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据处理 方法 装置 | ||
技术领域
本发明涉及数据加密技术领域,特别是涉及一种数据处理方法和装置。
背景技术
分组密码算法是信息安全的核心技术。通常分组密码算法中,一个长的密钥在实际加密和解密过程中,会拆分成多个子密钥。例如DES(数据加密算法,Data Encryption Algorithm)中的实际参与运算的48位密钥会被拆分成8组,每一组6个比特,和信息异或后进入8个不同的S盒(substitution box)。在现有技术中,所述S盒的输入输出值很容易被攻击,攻击者通过功耗分析或电磁分析,先获取部分密钥信息,逐一遍历分析其余的密钥分组,就可以获得全部密钥信息。
因此,需要提出一种新的数据处理方法和装置,以提高S盒的安全性。
发明内容
本发明解决的技术问题是提供一种新的数据处理方法和装置,以提高S盒的安全性。
本发明的实施例提供了一种数据处理方法,所述方法包括:当接收到S盒的输入值Din时,初始化寄存器组,所述寄存器组包括:第一寄存器和第二寄存器,并采用数据发生器输出0至2n-1,其中,所述S盒的原始输入值Sin包含0至2n-1,所述S盒的输出值Sout包含与0至2n-1一一对应的S(0)至S(2n-1),所述S盒的输入值位宽为n,输出值位宽为m,m和n都为正整数;当所述数据发生器的输出值K和所述第一寄存器的值进行第一运算后的值不等于所述输入值Din时,由所述S盒输出S(K),并将所述第二寄存器的值和S(K)进行第二运算后的值替换为所述第二寄存器的值;当所述数据发生器的输出值K和所述第一寄存器的值进行第一运算后的值等于所述输入值Din时,根据所述第一寄存器的值和所述第一运算对所述第二寄存器的值进行操作;当所述数据发生器全部输出0至2n-1后输出所述第二寄存器的值。
可选地,所述第二运算为所述第一运算的逆运算,初始化所述第二寄存器包括:将所述第二寄存器的值初始化为将S(0)至S(2n-1)进行第一运算后的值。
可选地,所述第一运算为异或运算,所述第二运算为异或运算,初始化所述第二寄存器包括:将所述第二寄存器的值初始化为将S(0)至S(2n-1)求异或的值。
可选地,所述第一运算为加法运算,所述第二运算为减法运算,初始化所述第二寄存器包括:将所述第二寄存器的值初始化为将S(0)至S(2n-1)求和的值。
可选地,所述第一运算为模加运算,所述第二运算为模减运算,初始化所述第二寄存器包括:将所述第二寄存器的值初始化为将S(0)至S(2n-1)进行模加运算后的值。
可选地,当所述S盒的输入值Din为所述S盒的原始输入值Sin时,初始化所述第一寄存器包括:将所述第一寄存器的值初始化为n位的0。
可选地,根据所述第一寄存器的值和所述第一运算对所述第二寄存器的值进行操作包括:保持所述第二寄存器的值不变。
可选地,当所述S盒的输入值Din为所述S盒的原始输入值Sin和n位的输入掩码Xin进行第一运算后的值时,初始化所述第一寄存器包括:将所述第一寄存器的值初始化为n位的输入掩码Xin。
可选地,根据所述第一寄存器的值和所述第一运算对所述第二寄存器的值进行操作包括:将所述第二寄存器的值和m位的输出掩码Xout进行第一运算后的值替换为所述第二寄存器的值。
可选地,所述第一运算为乘法运算,所述第二运算为除法运算,初始化所述第二寄存器包括:将所述第二寄存器的值初始化为将S(0)至S(2n-1)相乘的值。
可选地,当所述S盒的输入值Din为所述S盒的原始输入值Sin时,初始化所述第一寄存器包括:将所述第一寄存器的值初始化为n位的1。
可选地,根据所述第一寄存器的值和所述第一运算对所述第二寄存器的值进行操作包括:保持所述第二寄存器的值不变。
可选地,当所述S盒的输入值Din为所述S盒的原始输入值Sin和n位的输入掩码Xin进行第一运算后的值时,初始化所述第一寄存器包括:将所述第一寄存器的值初始化为n位的输入掩码Xin。
可选地,根据所述第一寄存器的值和所述第一运算对所述第二寄存器的值进行操作包括:将所述第二寄存器的值和m位的输出掩码Xout进行第一运算后的值替换为所述第二寄存器的值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海复旦微电子集团股份有限公司,未经上海复旦微电子集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310391255.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种服务器升级方法及系统
- 下一篇:对数据进行处理的方法及装置