0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

密码算法实现的FIA防护

Semi Connect 来源:Semi Connect 2023-10-12 09:55 次阅读

安全控制器中的密码算法实现模块同样能有效抵御各种故障注入攻击(FIA),目前主要的防护手段包括检错技术和容错技术。

先以 ECC 算法为例,针对 ECC 的故障注入攻击可以分为三类:安全故障攻击、弱曲线攻击和差分故障分析 (Differential Fault Analysis, DFA)。安全故障攻击基于那些不改变输出结果的故障进行分析。弱曲线攻击试图将点乘运算从强椭圆曲线迁移到弱椭圆曲线上,以利于通过求解椭圆曲线离散对数问题获得作为点乘倍数的私钥或随机数。

DEA 通过分析正确输出和错误输出之间的差异,逐位地导出点乘的倍数。这些攻击的相应防御方法包括采用检错技术检测椭圆曲线参数是否正确、点乘基点是否在椭圆曲线上、点乘运算中的数据是否被插入故障,一旦故障被检测到,即中止执行点乘运算,并拒绝输出任何结果;采用容错技术,选择一条椭圆曲线使得即使将故障引入到点乘运算中,攻击者也不能从错误结果中导出点乘的倍数,譬如强扭曲线 (Twist-Strong Curves)在扭曲线攻击 (Twist- Curve Attack)下是容错的。

另外 ECC 的一些侧信道攻击防御方法也具有防御某些故障注入攻击的能力,如 Montgomery 阶梯、随机化点乘倍数都使得安全故障攻击更难以实施;点乘的基点育化方法可以防御弱曲线攻击。

对于 RSA 算法而言,根据错误的签名结果和正确的签名结果可以分析出签名所使用的私钥,故需要在私钥运算过程中进行故障检测或对签名结果进行验证,一旦发现故障或签名结果错误则拒绝输出签名结果。

对于达到 IND- CCA2 安全级别的公钥加密算法,其算法机制本身内置了错误检测技术,天然具备一定的故障注入攻击防御能力。

在对称密码算法中,密钥运算主要是添加轮密钥和S 盒,因此这也成为故障注入攻击者选择的主要攻击点。故障注入攻击可以分为暂时性故障注入攻击和永久性故障注入攻击。在暂时性故障注入攻击中,攻击者可以利用不规则时钟脉冲、辐射、瞬间高电压等技术改变缓存器或存储器内的某位。

而在永久性故障注入攻击中,攻击者可以利用紫外线等清除 EEPROM 内的某位,或使用微探针设定或清除 EEPROM内的某位。比特故障是指在加密的中间结果中仅引入1位的故障,而保证其他位不变,是一种有效的故障注入攻击。这种方法应用于对称密码算法,如果攻击者反复地向即将进入最后一轮加密的中间加密结果中引入比特故障,即每次加密引入的故障使得中间结果的某位改变,而保证其他位不变,则有可能得到最后一轮的轮密钥。

DFA 是一种有效的密码分析技术,它的基木思想是在选择明文后,对加密过程进行故障诱导,分别获得该明文对应的正确密文和错误密文,然后对两种密文进行数据对比分析,从而获得密钥。

对称密码算法实现中防御故障注入攻击的主要原则是采用错误检测技术。错误检测技术可检测到对称密码运算中插入的故障,一旦故障被检测到,即中止执行密码运算,并拒绝输出任何结果。适用于对称密码算法的错误检测技术包括基于冗余的错误检测技术、基于错误检测码的技术,以及两者混合使用的技术。

基于冗余的错误检测技术分为硬件冗余和时间冗余两类。

基于硬件冗余的错误检测技术直接复制密码算法硬件作为自检方法,将复制电路的输出与原始电路的结果相比较,如果不匹配则说明有错误。

基于时间冗余的错误检测技术对同样的数据做第二次加密/解密运算,与第一次加密/解密的运算结果比较,该方法增加 100%的额外时间开销,仅对单次故障注入有防御能力。

可以将硬件冗余和时间冗余技术相结合,从而在硬件和时间开销中寻找平衡,设计适合对称密码算法在安全控制器中安全实现的错误检测方案。

最简单的错误检测码是奇偶校验码,奇偶校验码可以根据需要设置一个到多个校验位,但奇偶校验码的错误检测覆盖率不够高,在对称密码算法实现中使用奇偶校验码时,应分析其错误检测覆盖率是否足够应对安全控制器可能面临的故障注入攻击情形。

为提高错误检测覆盖率,人们提出了分组密码算法的并发错误检测(Concurrent Error Detection, CED)方法,CED 检测安全控制器的对称密码运算过程中的操作以保证输出的正确性。如果CED检测到错误计算的发生,安全控制器将在输出前丢弃错误的结果,因此芯片能够抵御FIA的威胁。CED 的错误检测覆盖率通常远高于奇偶校验码,但也依赖于所采用的编码机制以及硬件实现细节。







审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    38

    文章

    7452

    浏览量

    163596
  • EEPROM
    +关注

    关注

    9

    文章

    1010

    浏览量

    81400
  • 缓存器
    +关注

    关注

    0

    文章

    63

    浏览量

    11652
  • 密码算法
    +关注

    关注

    0

    文章

    18

    浏览量

    7379
  • 安全控制器
    +关注

    关注

    0

    文章

    27

    浏览量

    10834

原文标题:密码算法实现的 FIA 防护,密碼算法實現的 FIA 防護

文章出处:【微信号:Semi Connect,微信公众号:Semi Connect】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【「从算法到电路—数字芯片算法的电路实现」阅读体验】+内容简介

    内容简介这是一本深入解读基础算法及其电路设计,以打通算法研发到数字IC设计的实现屏障,以及指导芯片设计工程师从底层掌握复杂电路设计与优化方法为目标的专业技术书。任何芯片(如WiFi芯片、5G芯片
    发表于 11-21 17:14

    【「从算法到电路—数字芯片算法的电路实现」阅读体验】+介绍基础硬件算法模块

    作为嵌入式开发者往往比较关注硬件和软件的协调。本书介绍了除法器,信号发生器,滤波器,分频器等基本算法的电路实现,虽然都是基础内容,但是也是最常用到的基本模块。 随着逆全球化趋势的出现,过去的研发
    发表于 11-21 17:05

    【「从算法到电路—数字芯片算法的电路实现」阅读体验】+一本介绍基础硬件算法模块实现的好书

    作为嵌入式开发者往往比较关注硬件和软件的协调。本书介绍了除法器,信号发生器,滤波器,分频器等基本算法的电路实现,虽然都是基础内容,但是也是最常用到的基本模块,本书的内容比较对本人胃口。 我们先来
    发表于 11-20 13:42

    名单公布!【书籍评测活动NO.46】从算法到电路 | 数字芯片算法的电路实现

    :elecfans123)领取书籍进行评测,如在5个工作日内未联系,视为放弃本次试用评测资格! 《从算法到电路——数字芯片算法的电路实现》 是一本深入解读基础算法及其电路设计,以打通
    发表于 10-09 13:43

    C加密算法实现

    电子发烧友网站提供《C加密算法实现.pdf》资料免费下载
    发表于 09-20 11:10 1次下载
    C加密<b class='flag-5'>算法</b>的<b class='flag-5'>实现</b>

    电信设备进网许可增加“商用密码

    增加了“商用密码”选项,各设备的商用密码算法清单如下表所示,供参考。请各企业在填报设备进网检测信息时,务必核实被测设备实际所支持的商用密码并进行勾选即可!设备名称及
    的头像 发表于 06-07 15:15 413次阅读
    电信设备进网许可增加“商用<b class='flag-5'>密码</b>”

    航天宏图自主研发国产密码网安防护成套技术(PIE-SM J&amp;K)

    密码是保障网络安全的核心技术。近年来,我国高度重视密码行业,陆续出台系列政策措施以保障密码事业的健康稳步发展。
    的头像 发表于 05-27 17:42 604次阅读
    航天宏图自主研发国产<b class='flag-5'>密码</b>网安<b class='flag-5'>防护</b>成套技术(PIE-SM J&amp;K)

    FPGA能实现什么样的算法

    FPGA功能如此强大,请问用FPGA能实现或者比较适合实现什么样的算法
    发表于 05-26 20:18

    MySQL忘记root密码解决方案

    mysql登录密码为password()算法加密,解密成本太高,以下为通用方案; 原理:mysql提供了特殊启动方式,即跳过权限表验证,启动后,登录不需要提供密码; 登录后,即可修改mysql数据库的user表,重置
    的头像 发表于 04-23 16:08 651次阅读

    通过Python脚本实现WIFI密码的自动猜解

    本文将记录学习下如何通过 Python 脚本实现 WIFI 密码的自动猜解。
    的头像 发表于 01-25 10:46 3292次阅读
    通过Python脚本<b class='flag-5'>实现</b>WIFI<b class='flag-5'>密码</b>的自动猜解

    PPTC(自恢复保险丝)如何实现防护作用?

    PPTC(自恢复保险丝)如何实现防护作用? PPTC(自恢复保险丝)是一种在电路中起到防护作用的重要元件。它可以在电路中发生过载或短路时迅速断开电流,以保护其他电子元件不受损坏。PPTC采用的是一种
    的头像 发表于 01-04 14:13 596次阅读

    LED驱动浪涌防护器件的选型和实现方法

    LED驱动浪涌防护器件的选型和实现方法  LED驱动浪涌防护器件是一种用于保护LED灯具免受电网浪涌干扰的重要组件。电网浪涌是指电力系统中突然出现的短时高能脉冲电压,它可能会导致LED灯具的损坏或
    的头像 发表于 01-03 11:20 1008次阅读

    浮点LMS算法的FPGA实现

    引言 LMS(最小均方)算法因其收敛速度快及算法实现简单等特点在自适应滤波器、自适应天线阵技术等领域得到了十分广泛的应用。为了发挥算法的最佳性能,必须采用具有大动态范围及运算精度的浮点
    的头像 发表于 12-21 16:40 720次阅读

    什么是后量子密码学?量子计算机vs经典计算机

    后量子密码学(Post-Quantum Cryptography,PQC)是在经典计算机上定义和执行算法,研究量子计算机和经典计算机都无法破解的新密码系统。后量子密码学的提出是为了抵抗
    的头像 发表于 12-19 11:42 1617次阅读

    基于单片机的指纹密码锁设计

    利用单片机和指纹识别模块实现指纹密码锁,通过指纹模块采集识别指纹,4*4矩阵键盘输入密码,能够进入管理系统,进入管理后能修改密码、注册指纹,删除指纹等操作。
    的头像 发表于 11-30 09:29 1734次阅读
    基于单片机的指纹<b class='flag-5'>密码</b>锁设计