发明名称 一种基于寄存器掩码的面向AES算法的抗功耗攻击方法
摘要 本发明公开了一种基于寄存器掩码的面向AES算法的抗功耗攻击方法,在AES算法中添加随机数发生器和寄存器保护模块,寄存器保护模块包括第一异或单元、第二异或单元和寄存器。更新寄存器中的中间结果时,将需要保存的中间结果与随机数异或之后保存到寄存器中,同时保存该随机数;读取寄存器中的中间结果时,在将寄存器中的值读取并与保存的随机数进行异或。该方法保证寄存器中的存储值具有随机性,有效的隐藏了AES密码算法中的汉明距离泄露,可以有效的抵抗基于汉明距离模型的功耗攻击。
申请公布号 CN106452725A 申请公布日期 2017.02.22
申请号 CN201610431897.2 申请日期 2016.06.14
申请人 东南大学 发明人 曹鹏;陈圣华;申艾麟;陆启乐;刘波;杨锦江
分类号 H04L9/06(2006.01)I;H04L9/00(2006.01)I 主分类号 H04L9/06(2006.01)I
代理机构 南京苏高专利商标事务所(普通合伙) 32204 代理人 柏尚春
主权项 一种基于寄存器掩码的面向AES算法的抗功耗攻击方法,其特征在于:在AES算法中添加随机数发生器(1)和寄存器保护模块(2),寄存器保护模块(2)包括第一异或单元(21)、第二异或单元(23)和寄存器(22);AES算法初始阶段的密钥加操作中,明文和初始密钥进行密钥加操作,随机数发生器(1)产生初始阶段随机数,初始阶段随机数和密钥加操作结果通过第一异或单元(21)进行异或操作,得到第一阶段异或结果并存入寄存器(22),在第1轮轮操作开始时,再将初始阶段随机数和初始阶段异或结果通过第二异或单元(23)进行异或操作,得到被还原的密钥加操作结果,作为第1轮轮操作的输入数据;AES算法的第i轮中,轮操作模块计算得到第i轮中间值,随机数发生器(1)产生第i轮随机数,第i轮中间值和第i轮随机数通过第一异或单元(21)进行异或操作,得到第i轮异或结果并存入寄存器(22);如果i≠N,则在第i+1轮开始时,第i轮异或结果和第i轮随机数通过第二异或单元(23)进行异或操作,得到被还原的第i轮中间值,作为第i+1轮的输入数据;如果i=N,则第i轮异或结果和第i轮随机数通过第二异或单元(23)进行异或操作,得到密文;其中,N为AES算法的轮操作的总次数。
地址 210096 江苏省南京市四牌楼2号