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

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

3天内不再提示

嵌入在FPGA中的AES静态与动态数据

星星科技指导员 来源:嵌入式计算设计 作者:Paul Dillien 2022-10-20 10:29 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

考虑 AES 加密数据沿以太网链路以 1G、10G 或更高的速率流式传输的位置。攻击者可以拦截并存储传递的消息,以便在尝试破解加密之前进行后续分析。他将快速生成大量数据包,并且只有源地址和目标地址可用于过滤掉感兴趣的消息。这些可能都使用相同的加密密钥,但在组织良好的加密系统中,加密密钥将经常更改,从而限制了任何安全故障的规模。

那么攻击者可以使用哪些方法来破解加密呢?说实话,攻击者通常更容易通过破坏物理或人类安全性来访问密钥或明文来访问机密数据而不会破解加密。数据仅以明文形式有用(例如,您无法观看加密视频或阅读加密文档)。同样,密钥需要以未加密的形式存储才能使用,并且保护它的物理安全性可能比加密算法更容易破坏。

或者,攻击者可能让内部人员提供密钥。假设必须破解加密算法,那么用于破解早期DES系统的方法称为蛮力。在这里,攻击者使用巨大的计算能力来尝试密钥的每个组合。随着计算能力的提高,这种技术对于资金充足的组织(如敌对政府)变得可行。然而,AES最少使用的128位密钥组合的绝对数量是惊人的(5.79E + 76)。

另一种常见的攻击方法依赖于攻击者对包含密钥的设备有足够的访问权限,以允许使用实验室设备。请记住,我已经说过,嵌入式加密核心永远不应该靠近设备的引脚。在这种类型的攻击中,称为差分功率分析(DPA),电源电流的测量是在器件的引脚上进行的,因此具有不同密钥的加密将具有略微不同的能量使用。这导致功耗模式,可以使用信号处理进行分析以推断出密钥。

微处理器上实现的公钥算法比AES更容易受到这种攻击。这就是理论,一些学者已经从完全控制的AES实现中梳理出关键点,使用带有慢速时钟的DPA和定制电路板,旨在促进功率测量。

DPA基本上是关于从噪声中提取信号。通过使测量结果难以获得,可以使其更具挑战性。这包括物理安全性,例如在检测到篡改时将密钥清零。诸如使用表面贴装封装(引脚不可访问)的电路板布局和具有封装内去耦电容器的器件等因素将阻碍功率毛刺的测量。

使用低电源电压、较高频率以及芯片上相关电路产生额外噪声的设计将不那么容易受到攻击。此外,加密器中的设计技术可能会影响对 DPA 攻击的敏感性,并且通过频繁更改密钥,使得攻击者无法在更改密钥之前捕获足够的数据来确定密钥,从而无法做到这一点。我并不是说这是不可能的,但与使用FPGA实现AES的典型应用相比,DPA对智能卡,公钥算法和微处理器实现的威胁更大。也就是说,与没有加密相比,向系统添加加密的安全性是向前迈出的一大步。

静态数据存在不同的问题。机密数据显然可以在磁盘上被攻击者访问和更改。加密存储的两个重要标准是数据的大小不变,并且相同的明文加密并存储在多个位置应始终具有不同的密文。还希望对扇区进行随机访问,而不是坚持加密和解密完整文件。

不扩大数据的要求是,磁盘可以存储相同数量的数据,无论是否加密。如果没有数据扩展选项以包含额外的完整性检查值(ICV),则很难提供身份验证,即保证加密数据未被篡改。

磁盘上相同的数据应该总是不同的原因是它可能会揭示数据的结构(类似于上一篇博客中提到的ECB模式问题)。它为攻击打开了漏洞,其中系统被指示加密已知的所需数据(例如,指示某人在其银行帐户中有1,000,000美元的记录),然后将其复制到磁盘上的另一个位置(在这种情况下,通过攻击者自己的银行帐户记录)。避免这种情况的方案是一种称为AES-XTS(IEEE标准1619)的变体。XTS IP 核比基本的 AES 设计更复杂,它使用两个不同的密钥来加密数据。它考虑了数据的扇区地址,以确保相同的数据不会重复。

另一个考虑因素是,虽然加密可确保数据的机密性,但它不会提供有关邮件是否损坏或恶意更改的任何信息。这对于金融交易等应用程序至关重要,其中消息中更改的数字可能会将付款从$ 1,000更改为$ 9,000。AES有一个解决方案 - 它在加密数据时对数据执行“哈希”,然后在消息末尾包含完整性检查值(ICV)。这会扩展数据包长度,但会增加用户的值,因为可以检测到并拒绝被篡改的消息。

用于身份验证和加密的最流行的 IP 核称为 AES-GCM。AES-GCM的好处是整个操作可以流水线化,FPGA可以支持100G数据速率。这是用FPGA不动产换取性能的又一个例子。AES-GCM内核比基本的AES实现更复杂,但构成了更广泛的加密子系统的基础,正如我们将在第3部分中看到的那样。

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

    关注

    1656

    文章

    22298

    浏览量

    630505
  • 以太网
    +关注

    关注

    41

    文章

    5929

    浏览量

    179592
  • 微处理器
    +关注

    关注

    11

    文章

    2416

    浏览量

    85361
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    关于晶振的静态电容与动态电容

    静态电容与动态电容 C0与C1 的区别是什么呢?
    的头像 发表于 11-21 15:38 4108次阅读
    关于晶振的<b class='flag-5'>静态</b>电容与<b class='flag-5'>动态</b>电容

    嵌入式与FPGA的区别

    ,一是嵌入式软件开发,主要与嵌入式cao作系统、应用软件等有关。第二是嵌入式硬件开发,需要掌握硬件设计、模拟仿真、 PCB设计等技能。 ✅2、FPGA:它是
    发表于 11-20 07:12

    嵌入式和FPGA的区别

    。 在当今智能化时代,嵌入式系统和FPGA技术都是电子系统设计的重要组成部分,但许多工程师和技术爱好者常常对两者的区别和应用场景感到困惑。本文将深入解析嵌入式系统和
    发表于 11-19 06:55

    AES加解密算法逻辑实现及其蜂鸟E203SoC上的应用介绍

    这次分享我们会简要介绍AES加解密算法的逻辑实现,以及如何将AES算法做成硬件协处理器集成蜂鸟E203 SoC上。 AES算法介绍 AES
    发表于 10-29 07:29

    针对AES算法的安全防护设计

    。 2. 硬件层面的防护 随机掩码技术是目前唯一可证安全的技术手段,我们便采用掩码技术作为AES的抗功耗击手段。 掩码技术对加密过程的中间数据做随机化处理,使攻击者很难采集到有效的功耗曲线,从而
    发表于 10-28 07:38

    AES加密流程

    密钥,这些轮密钥将在后续的加密和解密过程中使用。 初始轮(Initial Round):初始轮,将待加密数据与第一个轮密钥进行异或运算。这一步骤有助于消除数据的模式和统计特性,增强
    发表于 10-23 06:13

    飞凌嵌入式ElfBoard-Vim编辑器之静态链接和动态链接

    1.静态链接静态链接通过静态库进行链接,生成的目标程序包含运行需要的所有库,可以直接运行,不过就是文件比较大。静态库是汇编产生的.o文件的
    发表于 10-17 09:07

    FPGA机器学习的具体应用

    ,越来越多地被应用于机器学习任务。本文将探讨 FPGA 机器学习的应用,特别是加速神经网络推理、优化算法和提升处理效率方面的优势。
    的头像 发表于 07-16 15:34 2643次阅读

    怎么结合嵌入式,Linux,和FPGA三个方向达到一个均衡发展?

    嵌入式领域,不少人都怀揣着让嵌入式、Linux 和 FPGA 三个方向实现均衡发展的梦想,然而实践却面临诸多挑战。就像备受瞩目的全栈工程
    的头像 发表于 06-25 10:08 655次阅读
    怎么结合<b class='flag-5'>嵌入</b>式,Linux,和<b class='flag-5'>FPGA</b>三个方向达到一个均衡发展?

    动态BGP与静态BGP的区别?

    BGP(边界网关协议,Border Gateway Protocol) 是互联网中用于自治系统(AS)之间路由信息交换的核心协议。实际部署,BGP 可分为静态 BGP和动态 BGP
    发表于 06-24 06:57

    PLL技术FPGA动态调频与展频功能应用

    随着现代电子系统的不断发展,时钟管理成为影响系统性能、稳定性和电磁兼容性(EMI)的关键因素之一。FPGA设计,PLL因其高精度、灵活性和可编程性而得到广泛应用,本文将深入探讨PLL技术
    的头像 发表于 06-20 11:51 2240次阅读
    PLL技术<b class='flag-5'>在</b><b class='flag-5'>FPGA</b><b class='flag-5'>中</b>的<b class='flag-5'>动态</b>调频与展频功能应用

    详解ADC电路的静态仿真和动态仿真

    ADC电路主要存在静态仿真和动态仿真两类仿真,针对两种不同的仿真,我们存在不同的输入信号和不同的数据采样,因此静态仿真和动态仿真是完全不同的
    的头像 发表于 06-05 10:19 1548次阅读
    详解ADC电路的<b class='flag-5'>静态</b>仿真和<b class='flag-5'>动态</b>仿真

    请问STM32G473是否支持硬件AES

    STM32G473参考手册及数据手册中含有硬件AES相关内容及寄存器相关描述。但STM32G473xx.h并无AES相关寄存器,pack版本已更新为最新。以地址方式直接赋值,Keil
    发表于 03-12 06:38

    SiC SBD的静态特性和动态特性

    SiC SBD具有高耐压、快恢复速度、低损耗和低漏电流等优点,可降低电力电子系统的损耗并显著提高效率。适合高频电源、新能源发电及新能源汽车等多种应用,本文介绍SiC SBD的静态特性和动态特性。
    的头像 发表于 02-26 15:07 1057次阅读
    SiC SBD的<b class='flag-5'>静态</b>特性和<b class='flag-5'>动态</b>特性

    集成电路设计静态时序分析介绍

    Analysis,STA)是集成电路设计的一项关键技术,它通过分析电路的时序关系来验证电路是否满足设计的时序要求。与动态仿真不同,STA不需要模拟电路的实际运行过程,而是通过分析电路
    的头像 发表于 02-19 09:46 1319次阅读