保护可编程密码电路的方法,以及由所述方法保护的电路技术

技术编号:5091359 阅读:175 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种包括单元的电路,所述单元包含限定了每个单元的逻辑函数的存储器,所述电路集成了能够针对二进制变量对进行运算的差分网络,该差分网络包括实现了所述对的第一分量的逻辑函数的第一单元网络,以及针对所述对的第二分量执行互补逻辑的对偶单元的第二网络。运算步骤包括至少一个预充电阶段(41),在该阶段变量在单元的输入端设置到已知状态,接着是评估阶段(43),在该阶段由单元执行运算。在评估阶段或预充电阶段之前在够接收多个传送输入变量的信号的每个单元执行变量同步阶段(42,44),针对最长延迟的信号执行同步。本发明专利技术用于保护该类型的电路抵抗差分功率分析攻击。

【技术实现步骤摘要】
【国外来华专利技术】,以及由所述方法保护的电路的制作方法
本专利技术涉及一种。还涉及一种由所述方法保护的电 路。其主要应用于保护该类型的电路抵抗差分功率分析攻击。
技术介绍
密码学的目的主要是-通过加密及其对偶操作(dualoperation)即解密手段保护信息的秘密;或者-或通过签名和签名验证操作保护信息的完整性。密码学使用可靠的数学方法,在此意义上,在公知知识的现有状态下,没有攻 击方法比与测试所有可能密钥相对应的穷举攻击更快速。通常,加密方法涉及系统安全所需的复杂的运算。其复杂度不会对计算机造成 特别的问题,但是在一般公众所用的设备通常是低成本微处理器控制的设备,不具有高 运算能力时,这会构成障碍。因此,后果可能是几种等级,例如,银行卡将会花费几分 钟来对交易签名,或者数字支付电视解码器将不能满足所涉及的数据速率。为了解决这类问题而不增加系统的成本,通常是为控制设备的中央处理单元增 加辅助设备,一般是密码专用协处理器。然而,无论是通过中央处理单元还是专用协处理器实现,密码算法在所有情况 下都是通过物理电子设备实现的。然而电子设备具有不可避免的不理想性,这是由于电 学原理的内在属性造成的。因此,可能利用实现了如下算法的物理系统的不理想性来攻击从数据观点看可 靠的密码系统-运算的持续时间可取决于数据的值,特别是对于时间优化软件系统,这可能引 发时间攻击,在某些情况下,使得基于简单的运行时间测试就能发现所有的密钥;-瞬时功耗也可能取决于数据而且可能引发一系列攻击,例如-SPA(simple power analysis,简单功率分析),其试图基于测量密码操作期间中 央处理单元的功耗来区分中央处理单元执行的操作;-DPA(differential power analysis,差分功率分析),其针对很多功耗测量进行统计操作,这在针对随机消息执行密码操作期间进行,并且用固定密钥来对密钥的有限部 分所作的假设进行验证有效或者无效。-模板攻击(templateattack),其-在第一阶段,使用与被攻击设备相同的设备,除非该相同设备不包含秘密,来 建构用密钥的有限部分的值来排序的功率模型;以及。-在第二阶段,对被攻击设备的功耗进行几次测量,来确定测量的功率水平最接 近哪个模型,因而确定该子密钥的值;-导线中流动的任何电流会产生电磁场,对其测量会引发攻击,其原理与基于功 耗的攻击,主要是DPA,相同;以及-最后,攻击会干扰系统的操作以便利用错误结果来发现系统的秘密。实现密码算法并且能够泄露与存储在设备的存储器中的秘密有关的信息的物理 设备的不理想性称为“隐藏通道”(cached channel)。重新配置的FPGA(现场可编程门阵列)类型电路非常广泛用于需要密码的应用 中。至少有两个原因。首先,密码标准变比很快,某些具有弱点的算法被其他改正了缺 陷的算法替代。另外,密码参数,例如密钥大小,也是可变的。因此需要灵活性,且不 危害性能。实际上,密码算法能保护是因为它们的运算是复杂的。FPGA完美地满足了 对于灵活性和功率的要求。其次,某些密码应用被少量的传播。这主要是例如星上系统 的情况。因此FPGA方案相比于例如ASIC类型的专用实现更加有效。然而,像所有的 密码电路一样,具有密码功能的FPGA易受攻击,主要是隐藏通道攻击。物理门操作于 互补逻辑(complementary logic),这造成功耗独立于数据并因此变得不可用,主要是对于 DPA。为了保证在每个运算的转换(transition)的数量固定,即功率消耗固定,差分逻辑 需要两个工作阶段-预充电阶段,用于将变量设置到已知状态;以及-评估阶段,在该阶段用固定数量的转换来执行运算。因此密码电路的复杂度不止加倍,因为采用了差分逻辑和其实现所需的双轨 (dual-rail)连接。尽管某些FPGA将计数器盗用保护器件集成到其结构内,但没有被设计来经受 对它们的施行的攻击。因此保护器件采用了 RTL(Register Transfer Level,寄存器输出级) 的方案,主要为例如WDDL逻辑,在K.Tiri和I.Verbauwhede于2004年2月在Proceedings of DATE,04的第246-251页发表的文献“安全的抗DPA的ASIC或FPGA实现的逻 辑级设计方法(A logic Level Design Methodology for a Secure DPA ResistantASIC or FPGA Implementation) ” 中提出,或者是 MDPL 逻辑,在 T.Popp 和 S.Mangard 在 2005 年 9 月, Springer, Proceedings of CHES' 05,LNCS 的卷 3659 第 172-186 页发表的“掩码双轨 预充电逻辑没有路由限制的抗 DPA (Masked Dual Rail Pre-Charge Logic DPA Resistance without routing Constraints)"中提出。这些方案是不足的,因为它们表现出了能够被攻击 者利用的逻辑和工艺偏差。在提出的所有差分逻辑类型中,不论表面的功耗平衡,二阶现象显示出了不平 衡因而信息泄露。最严重的现象主要是差分网络中的预先评估和工艺差别。
技术实现思路
本专利技术的一个目的主要是绕开这些现象并且使其很难通过功耗测量来攻击,特 别是针对FPGA工艺的密码电路。为此目的,本专利技术的一个主题是一种用于,所述方 法利用多个门,所述门本身由限定了每个单元的逻辑函数的基于存储器的单元组成,所 述电路配置为集成了能够对由信号对组成的二进制变量进行运算的差分网络,所述差分 网络包括实现了针对所述对的第一分量的逻辑函数的单元的第一网络,以及以针对所述 对的第二分量的互补逻辑来操作的对偶单元的第二网络。运算包括两个阶段预充电阶 段,在该阶段中所有变量的两个信号设置为已知的相同状态(例如0),评估阶段,在该6阶段中由单元执行实际的运算,其中表示每个变量的两个信号中的一个激活,以及在每 个预充电阶段和评估阶段之前的同步阶段。例如,变量同步阶段在一组变量中执行并且插入到每个单元的评估阶段之前, 该每个单元能够接收传送输入变量的多个信号,针对最长延迟的信号执行同步。变量同步阶段还可以在一组变量中执行并且插入到每个运算单元的预充电阶段 之前,该每个运算单元能够接收传送输入变量的多个信号,针对最长延迟的信号执行同止少ο例如通过利用了一致单元(unanimity cells)的汇聚机构,针对差分网络的每个单 元执行同步阶段,所述汇聚机构的输入对于差分网络的所述单元的输入是公共的,并且 所述汇聚机构的输出控制了所述单元的操作,当一致单元的输入端上的值一致时发生汇 聚,门的输出仅当汇聚在同步后到达时才改变。为了使得方法更易于理解,所有的信号对(对应于非互补和互补变量)被认为在 预充电阶段为(0,0)状态,该推理还应用于(1,1)状态。一致单元有两个类型一致到1 (unanimity-to-1)单元U1和一致到 OCunanimity-to-O)单元Utl,其具有公共的输入端,并且分别使能评估阶段和预充电阶 段-一致到1单元U1,其在所有输入变量一离开预充电状态就产生本文档来自技高网
...

【技术保护点】
一种用于保护可编程密码电路的方法,其特征在于,其利用多个门,所述多个门本身由限定了每个单元的逻辑函数的基于存储器的单元(101)组成,所述电路配置为集成了能够对由信号对组成的二进制变量进行运算的差分网络,所述差分网络包括实现了针对所述对的第一分量的逻辑函数(T)的单元的第一网络(1),以及以针对所述对的第二分量的互补逻辑(F)来操作的对偶单元的第二网络(2),运算步骤包括预充电阶段(41),在该阶段中变量在单元的输入端设置为已知状态、由单元执行运算的评估阶段(43)、以及在每个预充电阶段和评估阶段之前的同步阶段(42,44)。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:S吉耶JL当热P霍格沃斯特
申请(专利权)人:电信教育集团巴黎电信学校国家科学研究中心
类型:发明
国别省市:FR[法国]

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

1