发明名称 DES轮运算方法和电路
摘要 本发明涉及一种DES轮运算方法,包括:在DES流程中,对只涉及位置交换或简单布尔运算的线性运算,采用异或操作来进行掩蔽和恢复数据;对非线性运算的S盒,设计出不同电路结构、运算时功耗曲线各不相同的S盒,通过随机选择数据通路上S盒的排列,从而使得DES中S盒运算的功耗随机化。本发明使攻击者在数据通路上无法观测到加解密过程的真实数据,同时由于功耗随机化,统计分析密钥也变得非常困难,能够不改变DES的电路结构、以小的代价提高DES电路抵御功耗分析攻击的能力。
申请公布号 CN104301095A 申请公布日期 2015.01.21
申请号 CN201410537830.8 申请日期 2014.10.13
申请人 深圳中科讯联科技有限公司 发明人 陈毅成;张明宇;龚明杨
分类号 H04L9/06(2006.01)I 主分类号 H04L9/06(2006.01)I
代理机构 深圳市科进知识产权代理事务所(普通合伙) 44316 代理人 宋鹰武;沈祖锋
主权项 一种DES轮运算方法,其特征在于,该方法包括如下步骤:a.采用随机数X,对任一32位的半块数据第Ri‑1回次处理得到的数据进行掩蔽,i为小于17的自然数;b.对掩蔽后的数据进行扩展运算E,同时对所述随机数X也进行扩展运算E,得到E(X);c.将所述对掩蔽后的数据进行扩展运算E得到的数据、E(X)和轮密钥同时进行异或,得到进入S盒阵列的值;d.对所述进入S盒阵列的值,进行S盒运算,所述S盒阵列,由8个分别从N种不同电路结构的S盒中随机选择的S盒构成,N为不小于3的自然数;e.将经过所述S盒运算后输出的数据,与所述随机数X进行异或;f.对所述S盒运算后输出的数据与所述随机数X进行异或后得到的数据,进行置换运算P,同时对所述随机数X也进行置换运算P,得到P(X);g.将对所述S盒运算后输出的数据与所述随机数X进行异或后得到的数据进行置换运算P后获得的数据、P(X)和另一32位的半块数据第Li‑1回次处理得到的数据,同时进行异或,得到进入第Ri回次处理的值。
地址 518067 广东省深圳市南山区工业六路创业壹号大楼B栋301室