【技术实现步骤摘要】
测试电路对侧信道分析的抵抗力的方法
本专利技术涉及一种用于测试电路的方法,具体涉及被设计为处理机密数据的电路,特别涉及用于通过使用密钥的加密算法来变换消息的电路。本专利技术特别涉及实现密码算法的设备,诸如安全设备(智能卡集成电路、安全元件、安全存储卡)、移动设备(移动电话、智能手机、物联网)、家用和汽车设备、以及集成到计算机和其他电子和IT设备(USB驱动器、电视解码器、游戏控制台等)的母板上的硬件加密组件等。本专利技术还涉及包括加密运算的软件,该软件用于在安全或不安全的环境中执行。本专利技术具体涉及实现诸如DES(数据加密标准)或三重DES、AES(高级加密标准)、RSA(Rivest、Shamir和Adleman)、DSA(数字签名算法)或ECDSA(椭圆曲线数字签名算法)等加密算法之类的密码算法的电路。本专利技术还涉及实现诸如HMAC(密钥散列消息认证码)之类的散列函数的电路。
技术介绍
实现密码算法的微电路配备有中央处理单元(CPU)。一些微电路配备有专用于密码计算的电路,例如加密协处理器。这些微电路包括根据所执行的运算以不同的方式切换的数千个逻辑门。这些开关在电流消耗上产生短暂变化,例如可以被测量的几纳秒。具体而言,CMOS型集成电路包括在切换时(即,当逻辑节点变为1或0时)才消耗电流的逻辑门。因此,电流消耗取决于中央单元处理的数据及其各种外围设备(存储器)上的数据、在数据或地址总线上流动的数据、密码协处理器等。此外,具体使用加密或模糊技术(诸如“白盒密码术”技术)产生的某些软件程序可以以使得难以通过逆向工程确定的方式来集成机密数据。某些软件程序 ...
【技术保护点】
一种测试方法,包括:获取多个值集,每个值集包括物理量或逻辑信号的值,当受测试电路执行被应用于待发现的相同数据的不同密码运算的运算集中的运算时,所述值集与所述电路的活动关联,对于每个值集,通过处理单元对由被应用于该值集中的值的第一满射函数变换的值的出现次数计数,以形成该值集的出现次数集,对于所述运算集中的每个运算以及待发现的数据的一部分的每个可能值,通过所述处理单元计算部分运算结果,通过所述处理单元计算累积出现次数集,每个累积出现次数集是通过将对应于所述运算集中的运算的出现次数集相加而获得的,当被应用于所述待发现的数据的所述部分的可能值的相同值或等价值时,所述运算提供具有应用第二满射函数所获得的相同变换值的部分运算结果,以及通过所述处理单元分析所述累积出现次数集以确定所述待发现的数据的所述部分,从而知道如果所述待发现的数据已经泄漏到所述值集中,则在与所述待发现的数据的所述部分的值对应的所述累积出现次数集中找到所述待发现的数据。
【技术特征摘要】
2016.02.22 FR 1651443;2016.02.22 FR 1651444;2016.01.一种测试方法,包括:获取多个值集,每个值集包括物理量或逻辑信号的值,当受测试电路执行被应用于待发现的相同数据的不同密码运算的运算集中的运算时,所述值集与所述电路的活动关联,对于每个值集,通过处理单元对由被应用于该值集中的值的第一满射函数变换的值的出现次数计数,以形成该值集的出现次数集,对于所述运算集中的每个运算以及待发现的数据的一部分的每个可能值,通过所述处理单元计算部分运算结果,通过所述处理单元计算累积出现次数集,每个累积出现次数集是通过将对应于所述运算集中的运算的出现次数集相加而获得的,当被应用于所述待发现的数据的所述部分的可能值的相同值或等价值时,所述运算提供具有应用第二满射函数所获得的相同变换值的部分运算结果,以及通过所述处理单元分析所述累积出现次数集以确定所述待发现的数据的所述部分,从而知道如果所述待发现的数据已经泄漏到所述值集中,则在与所述待发现的数据的所述部分的值对应的所述累积出现次数集中找到所述待发现的数据。2.根据权利要求1所述的方法,包括选择每个值集中的值,出现次数的计数是针对选定值而执行的。3.根据权利要求1或2所述的方法,包括:向所述电路发送多个不同的命令,每个命令触发由所述电路执行被应用于所述待发现的数据的所述运算集中的运算之一,以及在由所述电路执行所述运算集中的一个运算期间,由测量设备收集所述值集中的一个值集的值。4.根据权利要求1至3中任一项所述的方法,其中所述值集包括:所述电路的电流消耗的测量,和/或由所述电路发射的电磁辐射的测量,和/或所述电路周围存在的磁场的吸收的测量,和/或在所述电路中收集的逻辑信号或数字值。5.根据权利要求1至4中任一项所述的方法,其中所述第一和第二满射函数中的每一者是以下函数之一:恒等函数,这样的函数:其提供结果值,该结果值然后被简化为对应于汉明权重的值,这样的函数:其提供该函数被应用到的值的汉明权重,或这样的函数:其提供值与该函数被应用到的先前值之间的汉明距离。6.根据权利要求1至5中任一项所述的方法,包括如果分析步骤确定所述待发现的数据的所述部分,则拒绝所述电路或由所述电路执行的程序。7.根据权利要求1至6中任一项所述的方法,其中针对所述待发现的数据的先前确定的部分和所述待发现的数据的另一部分,执行计算所述待发现的数据的一部分的每个可能值的运算结果的步骤、计算所述累积出现次数集的步骤、以及分析所述累积出现次数集的步骤。8.根据权利要求1至7中任一项所述的方法,其中每个值集中的所述选定值包括:该值集的连续值,和/或该值集的非连续值,和/或该值集的局部极值,和/或该值集的全部值。9.根据权利要求1至8中任一项所述的方法,其中所述运算集中的所述运算包括将单个运算应用于所述待...
【专利技术属性】
技术研发人员:H·西博尔德德拉克鲁伊,
申请(专利权)人:埃沙尔公司,
类型:发明
国别省市:法国,FR
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。