当前位置: 首页 > 专利查询>埃沙尔公司专利>正文

用于保护使用替换表的替换运算免受侧信道分析的方法技术

技术编号:16974095 阅读:46 留言:0更新日期:2018-01-07 09:15
本发明专利技术涉及一种用于保护使用替换表的替换运算免受侧信道分析的方法。一种由电路执行用以使用输入数据作为索引在原始替换表中选择输出数据的替换运算的方法,替换运算被使用新的经掩蔽替换表来执行,输入数据通过异或XOR运算被与第一掩码参数的新值相组合,并且输出数据通过XOR运算被与第二掩码参数的新值相组合,新的经掩蔽替换表通过以下方式被生成:通过将XOR运算应用于所述第一掩码参数的前一个值和第一输入掩码来计算所述第一掩码参数的新值;通过将XOR运算应用于所述第二掩码参数的前一个值和第二输入掩码来计算所述第二掩码参数的所述新值;以及使用前一个经掩蔽替换表以及所述第一和第二输入掩码来生成所述新的经掩蔽替换表。

【技术实现步骤摘要】
用于保护使用替换表的替换运算免受侧信道分析的方法
本专利技术涉及一种用于使电路或程序免受旨在发现由所述电路或程序处理的机密数据的值(特别是由加密或解密算法用于变换消息的私钥)的侧信道分析的方法和设备。本专利技术特别涉及实现诸如AES(高级加密标准)之类的密码算法的智能卡集成电路或集成到计算机和其它电子和IT设备(USB驱动器、电视解码器、游戏控制台等)的母板上的硬件加密组件。本专利技术还涉及实现这种算法的程序,该程序用于在安全或不安全的环境中执行。更一般地说,本专利技术涉及实现使用输入数据作为索引以在替换表中选择输出数据的替换运算的电路和软件,所述输入和输出数据以及替换表需要保持隐藏。此类替换运算在诸如AES(高级加密标准)、DES(数据加密标准)、三重DES、TwoFish、PRIDE、ARIA和SEED之类的多种密码算法中实现。
技术介绍
实现密码算法的电路可以包括中央处理单元(CPU),并且可能包括专用于密码计算的电路,例如密码协处理器。这些电路可以包括根据所执行的运算以不同的方式切换的数千个逻辑门。这些切换操作在电流消耗上产生短暂变化(例如几纳秒),并且这些变化可以被测量。具本文档来自技高网...
用于保护使用替换表的替换运算免受侧信道分析的方法

【技术保护点】
一种由电路执行用以使用输入数据作为索引在原始替换表中选择输出数据的替换运算的方法,其中所述替换运算被使用从所述原始替换表获得的新的经掩蔽替换表来执行,所述输入数据通过异或XOR运算被与第一掩码参数的新值相组合,并且所述输出数据通过XOR运算被与第二掩码参数的新值相组合,所述新的经掩蔽替换表从前一个经掩蔽替换表而获得,方式为:选择第一和第二输入掩码;通过将XOR运算应用于所述第一掩码参数的前一个值和应用于所述第一输入掩码来计算所述第一掩码参数的所述新值;通过将XOR运算应用于所述第二掩码参数的前一个值和应用于所述第二输入掩码来计算所述第二掩码参数的所述新值;选择从所述原始替换表获得的所述前一个经...

【技术特征摘要】
2016.06.28 EP 16176716.5;2016.06.28 EP 16176717.3;1.一种由电路执行用以使用输入数据作为索引在原始替换表中选择输出数据的替换运算的方法,其中所述替换运算被使用从所述原始替换表获得的新的经掩蔽替换表来执行,所述输入数据通过异或XOR运算被与第一掩码参数的新值相组合,并且所述输出数据通过XOR运算被与第二掩码参数的新值相组合,所述新的经掩蔽替换表从前一个经掩蔽替换表而获得,方式为:选择第一和第二输入掩码;通过将XOR运算应用于所述第一掩码参数的前一个值和应用于所述第一输入掩码来计算所述第一掩码参数的所述新值;通过将XOR运算应用于所述第二掩码参数的前一个值和应用于所述第二输入掩码来计算所述第二掩码参数的所述新值;选择从所述原始替换表获得的所述前一个经掩蔽替换表中的每个值;以及针对每个选定值:通过将XOR运算应用于所述选定值和应用于所述第二输入掩码来计算经掩蔽值,通过将XOR运算应用于所述第一掩码和应用于原始索引来计算经掩蔽索引,以及将所述经掩蔽值存储在所述新的经掩蔽替换表中,所述选定值在所述原始索引处被选择并且所述经掩蔽值被存储在所述经掩蔽索引处,或者所述选定值在所述经掩蔽索引处被选择并且所述经掩蔽值被存储在所述原始索引处。2.根据权利要求1所述的方法,其中生成所述新的经掩蔽替换表,方式为:针对从1到n的每个秩选择输入掩码,n是大于0的整数,针对从1到n-1的每个秩j,通过将XOR运算应用于秩j的掩码参数的前一个值以及应用于秩j和j+1的所述输入掩码来计算秩j的所述掩码参数的新值,以及通过将XOR运算应用于秩n的掩码参数的前一个值和应用于秩n的所述输入掩码来计算秩n的所述掩码参数的新值,所述第一掩码参数的所述新值通过将XOR运算应用于所述第一掩码参数的所述前一个值、应用于秩1的所述输入掩码以及应用于第一输入掩码来计算,所述第二掩码参数的所述新值通过将XOR运算应用于所述第二掩码参数的所述前一个值、应用于秩1的所述输入掩码以及应用于所述第二输入掩码来计算,所述替换运算包括将XOR运算应用于经掩蔽输入数据和应用于秩1到n的每个所述掩码参数,与所述替换运算的所述输出数据相对应的经掩蔽输出数据通过XOR运算被与所述第二掩码参数相组合并且被与秩1到n的每个所述掩码参数相组合。3.根据权利要求1所述的方法,其中生成所述新的经掩蔽替换表,方式为:选择秩1到n的第一和第二输入掩码,n是大于0的整数;针对从1到n-1的每个秩j,通过将XOR运算应用于秩j的第一掩码参数的前一个值以及应用于秩j和j+1的所述第一输入掩码来计算秩j的所述第一掩码参数的新值,以及通过将XOR运算应用于秩j的第二掩码参数的前一个值以及应用于秩j和j+1的所述第二输入掩码来计算秩j的所述第二掩码参数的新值;通过将XOR运算应用于秩n的第一掩码参数的前一个值和应用于秩n的所述第一输入掩码来计算秩n的所述第一掩码参数的新值;通过将XOR运算应用于秩n的第二掩码参数的前一个值和应用于秩n的所述第二输入掩码来计算秩n的所述第二掩码参数的新值;以及所述第一掩码参数的所述新值通过将XOR运算应用于所述第一掩码参数的所述前一个值、应用于秩1的所述第一输入掩码以及应用于第一输入掩码来获得,所述第二掩码参数的所述新值通过将XOR运算应用于所述第二掩码参数的所述前一个值、应用于秩1的所述第二输入掩码以及应用于所述第二输入掩码来获得,所述替换运算包括将XOR运算应用于所述经掩蔽输入数据和应用于秩1到n的每个所述第一掩码参数,与所述替换运算的所述输出数据相对应的所述经掩蔽输出数据通过XOR运算被与所述第二掩码参数相组合并且被与秩1到n的每个所述第二掩码参数相组合。4.根据权利要求1至3中的一项所述的方法,其中随机地选择所述输入掩码。5.根据权利要求1至4中的一项所述的方法,其中以随机顺序计算所述经掩蔽替换表中的数据。6.一种用于根据包括替换运算的密码算法对输入数据进行加密或解密的方法,其中所述替换运算根据权利要求1至5中的一项所述的方法被...

【专利技术属性】
技术研发人员:A·武尔科尔C·克拉维耶
申请(专利权)人:埃沙尔公司
类型:发明
国别省市:法国,FR

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1