当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]嵌入式应用中的安全级别分析

 嵌入式系统需要安全保护的原因有多种,某些应用中,政府部门需要对敏感数据进行保护,例如:病历、信用卡信息等。有时还会对销售流程进行安全保护,例如,公司可能以低于成本价出售打印机,通过打印机耗材的高利润进行补偿。利用安全技术可以鉴别耗材的真伪,避免使用第三方的假冒产品。某些情况下,安全技术被用来保护知识产权,嵌入式设备中可能包含极具创新的算法,制成成品后,为了保护来之不易的产品设计,需要增加安全性,以防止盗版。

  安全性设计是一个折中的过程一理想的安全产品设计将耗资无限,而不具备安全保护的设计则不需要任何安全功能的花费。每种特定应用都必须确定所要求的安全等级,具体了解安全系统需要保护什么?

  加密安全吗?

  选择合适的加密工具对于通讯架构来说至关重要,应选择公共算法,应用较为普遍的算法包括:DES、RSA或DSA。许多人认为选择一个模糊的私有算法会更安全,实际情况并非如此,公开算法已经经过学术界、政府机构和业内专家的评估。私有算法看起来安全,而且也经过一位收取一定费用的专家的评审,但是,如何保证事物背后的安全性,如何保证评审人员的可信度?另外,私有算法还可能需要支付许可权费用、版权费用等,限制今后的选

  择权。

  尽管加密技术对于嵌入式系统的安全性来说至关重要,但这只是一个方面。假设现实世界场景中,两个人通过相互传递编码信息进行交流。攻击者可能窃取此信息,如果信息编码所采用的加密技术可靠,这种攻击将是无效的。有胆量的攻击者可能会直接对人进行攻击。与破解加密信息相比,强迫参与者泄漏通讯密码会更加容易。

  这个例子对于嵌入式应用非常形象,例如ATM与银行之间的加密通信。试图破译传输线上的加密PIN数据几乎是不可能的,有些攻击者可能认为攻击ATM机更有效。攻击者可能会在夜深人静时打开ATM。在一系列攻击后获取ATM与银行通信的密钥。然后,攻击者将ATM恢复原位后离开。这种情况下,对传输线的监测使攻击人员获取了密钥,可以解密所有帐号和PIN数据。

  值得庆幸的是,目前的ATM具备强大的物理层和逻辑安全技术的保护。当然,上述例

  子也提出了以下几个安全性问题:

  ·加密技术只提供一层保护,不能完全阻止攻击者的行为。

  ·贮存在ATM机中最有价值的东西是密钥,而非账号、PIN数据或现金。

  ·一个安全的嵌入式设备必须在遭受攻击时有所反应,擦除有价值的密钥。

  对嵌入式系统的攻击

  攻击者通过什么途径得到ATM的密钥呢?

  攻击着可能从最简单的操作开始,假如密钥存储在外部存储器,攻击者只需简单地访问地址和数据总线窃取密钥。即使密钥没有连续存放在存储器内,攻击者仍然可以破解外部代码,确定哪个存储器包含有密码。引导装入、调试和测量状态下都是遭受简单攻击的薄弱环节。这些工作状态通常允许对微处理器内存和寄存器读/写操作。即使这些状态的文件不公开,对于有着广泛社交经验的工程师来说,通过微处理器厂商的雇员来获取这些信息也是轻而易举的事情。

  尝试了简单的攻击手段后,如果没有达到目的的话,攻击者还会采取更为诡异的手段。从简单的时序和功率分析中观察加密操作的时序和功率消耗。对于设计不理想的加密过程可能会在处理密钥1时比处理0时消耗更多的时间和功率,这为攻击者提供了足够的信息,使其推算出密钥。如果这种简单的分析手段不起作用,攻击者便会使用差分能量分析(DPA)技术。差分能量分析是一种统计攻击方法,通过采集上千次运行时的能量损耗数据,最终,从功率脉冲信号中获取密码。虽然这种方法耗时,但可以自动操作。此外,攻击者还可能采用故障注入攻击,使微处理器运行在工作范围以外的条件下,从而产生故障信息,导致密码泄漏。攻击者也可能试图拆除微处理器的塑料封装,用微探针分析密码数据。内存具有规则的结构,很容易在硅片中识别出来,利用微探针设备可以很容易地对此操作。

  面对上述种种攻击,工程师必须采取适当的措施为嵌入式系统提供有效防护。

  防攻击措施

  在高安全性应用中需要具有唯一的质询,单一品牌的处理器。安全微处理器,例如DallasSemiconductor的DS5250(图1),能够满足最高安全级别的设计需求。

  优秀的安全处理器非常注重密钥保护,使用非易失电池备份SRAM储存敏感信息。这种SRAM应该采用定制的可归零或瞬间擦除的存储器,一旦检测到篡改操作时即刻擦除存储器内容。利用连续工作的传感器或有电池供电的时钟检测篡改事件(例如温度攻击、电压攻击或微探针攻击)。这种安全监测可以确保攻击者利用外部时钟控制时无法阻止清零过程。使用片上存储器,攻击者无法窃取器件内部传输的密钥。另外,假如对器件实施物理攻击,密钥会被立刻擦除。

  为了确保攻击者无法控制内存总线、插入可能窃取密钥的指令,安全处理器对外部存储器总线进行加密,并对程序存储器提供完整性监测,密钥随机产生,每个器件不同,这种加密方法确保攻击者无法复制或窃取产品设计,提供有效的知识产权保护。假如攻击者试图插入随机指令,完整性检查就会报告检测错误,认为侦测到篡改事件。

  安全处理器同样配备了硬件加密加速器,可以在纳秒级(而不是毫秒级)时间内执行三DES算法。另外,硬件加速器设计运行在固定数量的时钟周期,不管密钥内容如何,都会消耗同样的能量。随机数生成器也能够把一系列虚假的执行周期添加到加密算法的头部和尾部,禁止功率时序分析。

  结语

  设计者必须确定具体应用对安全级别的要求,一次成功的攻击会产生什么样的后果。对于安全级别要求较高的嵌入式系统宁可废除其操作功能,也不能泄漏密码,必须对多种攻击措施有所考虑。对于防攻击措施要求较高的应用,可以使用DS5250等安全微处理器,能够在任何情况下对加密数据提供有效保护。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

2025年9月11日 – 专注于引入新品的全球电子元器件和工业自动化产品授权代理商贸泽电子 (Mouser Electronics) 即日起开售Microchip Technology的新型MCP16701电源管理集成电...

关键字: PMIC 工业物联网 微处理器

在工业物联网设备部署中,Modbus通信故障是导致系统停机的首要原因之一。据统计,超过60%的现场问题源于通信配置错误或数据解析异常。本文从嵌入式系统开发视角,系统阐述Modbus通信调试的方法论,结合实际案例解析如何高...

关键字: 嵌入式系统 Modbus通信

在嵌入式系统开发中,看门狗(Watchdog Timer, WDT)是保障系统可靠性的核心组件,其初始化时机的选择直接影响系统抗干扰能力和稳定性。本文从硬件架构、软件流程、安全规范三个维度,系统分析看门狗初始化的最佳实践...

关键字: 单片机 看门狗 嵌入式系统

现代社会对计算能力的需求日益增长。人工智能 (AI) 的飞速发展推动了数据量的爆炸式增长,包括数据的创建、处理和存储。AI已渗透到现代生活的方方面面,从汽车到购物方式无所不在。在工业领域,边缘计算改变了制造业,创造了一个...

关键字: 微处理器 电源 人工智能

2025年8月4日 – 提供超丰富半导体和电子元器件™的业界知名新品引入 (NPI) 代理商贸泽电子 (Mouser Electronics) 即日起开售Altera®的Agilex™ 3 FPGA C系列开发套件。此开...

关键字: FPGA 边缘计算 嵌入式应用

人工智能(AI)和机器学习(ML)是使系统能够从数据中学习、进行推理并随着时间的推移提高性能的关键技术。这些技术通常用于大型数据中心和功能强大的GPU,但在微控制器(MCU)等资源受限的器件上部署这些技术的需求也在不断增...

关键字: 嵌入式系统 人工智能 机器学习

Zephyr开源项目由Linux基金会维护,是一个针对资源受限的嵌入式设备优化的小型、可缩放、多体系结构实时操作系统(RTOS)。近年来,Zephyr RTOS在嵌入式开发中的采用度逐步增加,支持的开发板和传感器不断增加...

关键字: 嵌入式系统 软件开发 实时操作系统 Zephyr项目

在资源受限的嵌入式系统中,代码执行效率和内存占用始终是开发者需要权衡的核心问题。内联函数(inline functions)和宏(macros)作为两种常见的代码展开技术,在性能、可维护性和安全性方面表现出显著差异。本文...

关键字: 内联函数 嵌入式系统

在嵌入式系统和服务器开发中,日志系统是故障排查和运行监控的核心组件。本文基于Linux环境实现一个轻量级C语言日志库,支持DEBUG/INFO/WARN/ERROR四级日志分级,并实现按大小滚动的文件轮转机制。该设计在某...

关键字: C语言 嵌入式系统
关闭