本发明专利技术的各种实施例实施了设计为抵抗潜在入侵者的攻击的对抗手段,潜在的入侵者通过使用已知的探测系统漏洞的方法(包括,椭圆操作差分、伪操作检测、格攻击以及第一个真正操作检测)来试图部分或全部恢复椭圆曲线秘密。本发明专利技术的各种实施例提供了对由正规操作流期间泄漏的信息中的标量值的可检测性所导致的诸如简单功率分析的侧信道攻击的抵抗,否则,这种可检测性将损害系统安全性。在某些实施例中,通过执行在安全椭圆曲线秘密系统中使用秘密独立操作流的椭圆标量操作来获得系统的抗干扰性。
【技术实现步骤摘要】
本专利技术涉及安全系统,并且更具体而言,涉及用于椭圆曲线密码系统(ECC)的安全系统和方法,该安全系统和方法被设计作为旨在从由电路执行的操作中揭露秘密信息的侧信道攻击的对抗手段。
技术介绍
由于对于RSA而言,安全性的提高需要密钥长度的指数增长,而对于ECC而言安全性的提高只需要密钥长度的线性增长,这使得与ECC相比,RSA在安全性上的提高相对较难,所以椭圆曲线密码系统(ECC)实施方式正在取代RSA用于诸如Diffie-Hellman密钥交换或认证的非对称密码方案中。作为示例,对于128位对称系统的安全等级,RSA需要3072位的密钥长度,可以通过五倍增大RSA密钥长度至15360位,来将128位对称系统的安全等级转换为256位对称系统的安全等级。与之相比,将等同的128位ECC对称系统提高为256位对称系统所需要的密钥长度线性地增长,即,两倍,从256-283位至512-571位。因此,在与ECC安全电路相比时,对RSA产品的安全等级进行升级在时间、功耗以及成本方面大幅度地降低了系统性能。像其它密码系统,ECC使用标准的、非私有的算法来对机密数据进行加密以防御对秘密信息的窃听。然而,大多数加密方法,不能防止下定决心的敌人在机密信息的加密和解密期间随着数据被加密电路处理而绕过密码系统并且揭开关键密钥材料。密码系统的公知缺点包括在计算期间可以检测到并且甚至在没有物理篡改的情况下服从分析的时序、功耗以及电磁辐射信息的形式下的信息泄露。此外,当密码系统遭受故障注入时,信息可能泄露。侧信道攻击是经常用于通过利用以下事实来从安全系统(例如,支付终端、智能卡、安全模块、移动电话)中提取加密密钥、口令以及其它密
码数据的一类攻击:电路性质紧密关联于并且反映加密引擎的物理实施方式以及对通过特定加密算法处理的数据所执行的操作。例如,在差分侧信道攻击中,熟练的攻击者可以对其试图通过对特征电路性质执行统计分析来破解的安全系统中的函数执行许多调用,特征电路性质包括电流和电压转变的电磁辐射概况(profile)、功耗概况以及所产生的信号的时序模式。因为不同的指令具有不同的功耗概况,所以在监控了调查下的电路、收集了充分的数据并且通过统计方式滤除了噪声之后,可以从获得的信息中推断系统行为的细节,并且最终可以重建对秘密数据的寻找。例如,将标准算法实施为安全系统使电流流过给定逻辑电路,由此,关于电路的知识和由逻辑电路处理的数据被无意地透露到电路周围。在具有固定数量的门和固定位置的电路中,数据以及与该数据相关联的电流经过逻辑门,这使得易于为了追踪以及提取秘密信息的目的而探测电路内的逻辑操作,从而,致使密码系统的安全性易受攻击。存在旨在通过增加执行此类非入侵型攻击的难度等级来保护电路的安全性的几个方法,并且这些方法防止可观测到、泄漏性的信息从电路泄漏到电路周围。一个此类方法依赖于以如下方式来修改加密算法:对秘密密钥的实际位以及其反二者执行安全性相关操作。对电路的其它类型的攻击包括故障注入方法。使用此方法,在执行攻击的准备中,敌人操纵通常经历随机操作的电路,并且迫使该电路偏离正规密码操作而切换到更确定性的操作模式。例如,通过有目的地提高向电路施加的电压,攻击者可以触发某个电路响应,该响应有效降低操作的随机性,从而允许攻击者获得对更可预测的电路行为的控制并且更容易成功地执行攻击。对于安全系统设计者而言,需要工具以在利用ECC向安全电路提供的优点的同时,克服上述限制。附图说明将参考本专利技术的实施例,可以在附图中图示本专利技术的示例。这些附图旨在为说明性的而非限制性的。尽管本专利技术通常而言在这些实施例的语境中被描述,但是应该理解,这并不旨在将本专利技术的范围限制为这些特定实
施例。图1是图示了使用现有的ECC的过程的流程图,现有的ECC使用标量加倍和相加(double-and-add)算法,该算法包括作为简单功率分析的对抗手段的伪(dummy)操作。图2示出了示例性的加倍和相加操作序列的典型功率轨迹。图3A和图3B图示了从示例性的不具有对抗手段的椭圆加倍和相加操作序列中检测秘密密钥位。图4A图示了在不初始化为无穷远点的情况下作为对抗手段的示例性的椭圆加倍和总是相加(double-and-always-add)操作序列。图4B图示了在初始化为无穷远点的情况下作为对抗手段的现有椭圆加倍和总是相加操作序列。图5是图示了根据本专利技术的各种实施例的使用抗简单功率分析和c安全错误(c-safe-error)的标量加倍和相加算法的过程的流程图。图6是图示了使用现有的包括预计算的固定基点梳形算法(fixed-base comb algorithm)的现有技术过程的流程图。图7是图示了根据本专利技术的各种实施例的使用示例性固定基点梳形算法的过程的流程图。图8图示了由图5和图7中的过程之一产生的标量加倍和相加操作序列。图9图示了实施本专利技术的实施例的安全计算系统的功能框图。具体实施方式在以下描述中,为了解释的目的,阐述了具体细节以提供对本专利技术的理解。然而,对本领域的技术人员将显而易见的是,可以无需这些细节来实践本专利技术。本领域的技术人员将意识到,可以以各种方式并且使用各种方法来执行下文描述的本专利技术的实施例。本领域的技术人员还将意识到,如本专利技术可以提供实体的另外的领域,另外的变型、应用以及实施例处于本专利技术的范围内。因此,下文描述的实施例是对本专利技术的具体实施例的说明,并且意在避免模糊本专利技术。本说明书中对“一个实施例”或“实施例”的参考指代结合本专利技术的
至少一个实施例中包括的实施例来描述的特定特征、结构、特性或功能。短语“在一个实施例中”、“在实施例中”等在说明书中的不同地方的出现不必参照相同实施例。此外,附图中的部件之间或方法步骤之间的连接不限于直接被影响的连接。相反,在不脱离本专利技术的教义的情况下,可以经由对其添加中间部件或方法步骤来修改或以其它方式改变部件之间或方法步骤之间的附图中所图示的连接。在此文献中,交换地使用术语“无穷远点”、“设定为无穷远的初始值”以及“无穷远处的点”。图1是图示了使用现有的ECC的过程的流程图,现有的ECC使用标量加倍和相加算法,该算法包括作为简单功率分析的对抗手段的伪操作。通常,椭圆曲线是一组由等式定义的点。诸如标量乘法或加法的对椭圆曲线的点的基本操作可以用于对数据进行加密。当乘法、加法以及加倍操作类似于那些对数字施加的操作时,位于椭圆曲线上的两个点在它们自己的坐标系统内相加。曲线上的两个点的相加将产生位于该曲线上的第三个点,并且该加法过程是迭代的。典型地通过将点与其本身相加一定次数以基于公式产生曲线上的另一点,来将该点乘以标量,使得乘以标量的乘法等同于加法。如果已知原始点以及加法将执行的次数,则容易计算结果。与之对比,如果只已知结果点,则几乎不可能确定为了达到结果点所已经执行的加法的次数。此效果使得点乘在密码中的使用有吸引力。图1中所示的方法,也称作“总是加倍和相加(always-double-and-add)”,典型地被实施为ECC中的标量算法。过程100始于步骤102,在步骤102,ECC接收椭圆点和标量用于处理。在步骤104,将Q初始化为无穷远点(即,用于椭圆曲线的中性元),之后,在步骤106,顺序处理标本文档来自技高网...
【技术保护点】
一种用于执行椭圆标量操作的安全椭圆曲线密码系统(ECC),所述系统包括:包括密码电路的安全微控制器,所述密码电路被配置为在防止秘密标量泄漏的同时实施对抗手段;用于存储秘密标量的存储器,所述秘密标量包括秘密密钥位;以及用于执行椭圆标量操作的处理器,所述处理器包括指令,所述指令用于:接收椭圆点以及所述秘密标量;将值Q初始化为所述椭圆点,所述椭圆点不包括无穷远点处的初始值;以顺序的方式处理所述秘密标量的所述秘密密钥位,其中,处理包括将Q加倍;执行椭圆操作,所述椭圆操作包括椭圆点减法和加法;以及通过从所述值Q中减去所述椭圆点来执行椭圆点减法。
【技术特征摘要】
2015.03.18 FR 1552210;2015.06.19 US 14/744,9271.一种用于执行椭圆标量操作的安全椭圆曲线密码系统(ECC),所述系统包括:包括密码电路的安全微控制器,所述密码电路被配置为在防止秘密标量泄漏的同时实施对抗手段;用于存储秘密标量的存储器,所述秘密标量包括秘密密钥位;以及用于执行椭圆标量操作的处理器,所述处理器包括指令,所述指令用于:接收椭圆点以及所述秘密标量;将值Q初始化为所述椭圆点,所述椭圆点不包括无穷远点处的初始值;以顺序的方式处理所述秘密标量的所述秘密密钥位,其中,处理包括将Q加倍;执行椭圆操作,所述椭圆操作包括椭圆点减法和加法;以及通过从所述值Q中减去所述椭圆点来执行椭圆点减法。2.根据权利要求1所述的安全ECC,还包括状态机,所述状态机执行所述椭圆标量操作。3.根据权利要求1所述的安全ECC,还包括寄存器,所述寄存器被初始化为除了无穷远处的点以外的点。4.根据权利要求1所述的安全ECC,还包括秘密MSB,所述秘密MSB被设定为0。5.根据权利要求1所述的安全ECC,其中,所述处理器被配置为执行点验证操作以防御故障攻击。6.根据权利要求1所述的安全ECC,其中,所述处理器在平衡的循环
\t配置外部确定所述值Q和所述椭圆点之间的差,以使LSB免受时序攻击、SPA、EM等效的至少其中之一。7.根据权利要求1所述的安全ECC,还包括存储器,所述存储器用于存储所述椭圆标量操作的中间结果。8.一种用于创建秘密独立操作流的方法,所述方...
【专利技术属性】
技术研发人员:J·迪伯夫,F·莱尔米特,Y·Y·R·卢瓦泽尔,
申请(专利权)人:马克西姆综合产品公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。