历史上的今天
返回首页

历史上的今天

今天是:2025年01月02日(星期四)

正在发生

2019年01月02日 | 深入研究防伪技术的关键:网络安全认证芯片

2019-01-02

鉴于不断出现的系统伪造攻击事件,来自工业、军事/航空航天、商业和技术等各个领域的设计工程师正在寻找最佳的加密认证IC,以保护其先进的系统设计免受伪造之害。

遗憾的是,虽然有很多加密芯片可供选择,但大多数只能提供很小范围的安全保障。在某些情况下,设计工程师有意/无意中选择的芯片,可能与他们所期望的防伪(ACF)保护功能相差甚远。

有两种类型的认证IC:固定功能“状态机设计”,以及包含大量不同安全协议的软件可程序组件。图1显示了一个认证IC的通用原理架构图

20181227_cyber_security_TA01P1

图1:认证IC内部原理图(来源:Rambus)

可以对高性能安全处理器进行编码,以执行各种任务,包括身份验证。一个例子是可信平台模块(TPM)芯片,它可以执行许多不同类型的加密操作。相较之下,固定功能的认证芯片只执行一项任务:将质询安全地转化为回应。

质询/响应协议是防伪的核心,使用质询-握手验证协议(CHAP)示例有助于解解释这一点。在CHAP系统中,认证服务器以一种大量随机位的形式向用户发出质询。用户的密码(秘密值)用于加密质询,加密结果返回给服务器。一旦服务器收到用户响应,它就可以验证回应是否符合预期,这意味着用户必须输入正确的密码。确认匹配后,用户身份就通过了认证,由此得到了“质询/响应协议”的称号。

固定功能的ACF芯片也以类似的方式工作。它从验证器主机接收到质询(以大量随机位的形式),并且使用储存在ACF芯片内的秘密数据以加密的方式对该质询进行操作。然后,它将计算的结果返回给验证器芯片,然后就可以确认芯片知道正确的秘密值。如果确实是这样,芯片以及它所保护的产品就被认为是真实的。

考虑关键优势

尽管所有认证IC都使用秘密数值来遵守某种质询/响应协议,但为了彻底保护其系统设计免受伪造影响,精明的工程师就会对一个ACF芯片有别于其它同类芯片的关键差异进行全面审视。这涉及四个关键考虑因素:

  1. 要了解秘密数据如何储存在芯片中以及它是怎么受到保护的。

  2. 使用哪个密钥派生函数(KDF)?换句话说,秘密数据如何成为用于加密传入质询的密钥?

  3. 加密算法的具体细节也很重要,包括对DPA攻击和故障注入攻击的反应敏感程度。

  4. 芯片的整体防篡改功能也至关重要。

首先,系统设计人员必须询问所使用的非挥发性内存确切类型,以及该内存在芯片遭遇非侵入性、半侵入性和完全侵入性攻击时的坚韧性。供货商如何选择储存秘密数据是芯片的一个关键因素,安全芯片开发商会使用不同的技术来储存这些数据。相较于EEPROM或嵌入式闪存等带电可擦写式内存,一次性可程序设计(OTP)内存是更为安全的。虽然两者都会屈服于持续的侵入性攻击,但使用半侵入式扫描电子显微镜技术可以更容易地对带电可擦写式内存进行反向工程。

系统设计人员需要问的第二个问题是秘密数据如何成为用于加密质询的密钥。这是KDF的工作,它需要取出该资料并专门对其处理,以便让它成为密钥。最好使用工作量证明(PoW)函数从秘密数据中导出密钥。PoW函数或算法会以很高的时钟速率运行,并且需要使用极宽的数据路径,因此是无法在低成本微控制器(MCU)中进行有效模拟的。

实际上,具有这种PoW能力的KDF可以确保系统设计者每次在该芯片上执行认证时,芯片不仅会确认知道密钥,而且还可以执行KDF功能。这种双重身份认证专门用来防止攻击者仅使用程序设计到现成MCU中的秘密数据来部署低成本的攻击。

第三,需要清楚将质询转化为响应所使用的是什么加密引擎或实际协议。有许多协议可用于生成响应。一些芯片使用先进加密标准(AES),而其他芯片则使用安全哈希算法(SHA-2和SHA-3)。大多数安全芯片开发商都使用椭圆曲线密码术(ECC)。有不同的方法来组合质询和密钥,以便计算出响应,而且攻击者不能基于质询/响应数据对密钥进行反向工程。

然而,即便所有这些都确定后,也无法避免所有加密算法都必须面对的与差分功率分析(DPA)相关的问题。无论你使用ECC、AES、DES或任何SHA,都必须正视这一问题。实际上,几乎每个加密算法在根据质询计算相应的响应时都会「泄漏」一些与其密钥相关的信息。

小心DPA攻击

简言之,DPA攻击就是攻击者或假冒芯片制造商在真实芯片执行加密操作时想法监控它的电源消耗。然后,他们记录下这些波形,并使用泄漏信息来精确定位加密密钥的数据位。在大多数情况下,这足以从安全芯片中获取密钥的值。

采取这种数据分析过程不会引起昂贵的侵入性攻击。因此,在芯片中储存秘密数据的内存类型或者防篡改保护措施都无关紧要了。如果加密算法没有进行DPA保护,攻击者就可以透过DPA攻击来获取密钥。

因此,系统工程师应该专注于用来计算质询-响应的算法,使其具有DPA免疫性。在这种情况下,即使攻击者可以从安全芯片收集到数亿个电源追踪曲线(trace),也都无济于事。

20181227_cyber_security_TA01P2

图2:DPA阻抗性/保护与DPA免疫的区别(来源:Rambus)

有了DPA免疫协议,攻击者根本无法获得足够的信息来对密钥进行任何重要的推断,无论他们收集到多少电源消耗追踪曲线。另一方面,受DPA保护(但不具有DPA免疫性)且嵌入在低成本安全芯片中的加密IP核心最终将泄漏足够的信息让DPA攻击得逞。这可能需要很长的时间,攻击者可能需要收集超过1亿条追踪曲线才能获取密钥,但是可以做到的。

防篡改技术的重要性

上面列出的关键考虑因素中,第四项是确保在安全芯片中有防篡改功能。防篡改机制本身不是算法或安全问题。然而,它可以指明芯片制造商如何能够阻止攻击者进入芯片并以电子方式监控讯号。如果非侵入性攻击(例如DPA分析)证明无法得逞,攻击者就会使用篡改的办法来获取秘密数据,这对攻击者是十分有效的途径。

遗憾的是,关于芯片的特定防篡改技术大多不会公开,因为芯片开发商的技术是专有的,再说这些信息对有意攻击者来说是特别敏感的。但是,根据保密协议(NDA),系统工程师可以与供货商核实,以确定他们如何实施这一关键保护层。在检测到有篡改攻击时,确切知道安全芯片如何保护其秘密数据是最值得关心的事情。

总结来看,在现今这个时代,应该深入研究防伪技术。对于最先进的技术来说尤其如此,以防止那些既有耐心又非常渴望获得密钥的攻击者,他们用此启动兼容的安全芯片,让假冒山寨产品流入市场。


推荐阅读

史海拾趣

Boundary Devices公司的发展小趣事

近年来,电子行业面临着诸多变革和挑战,如物联网的快速发展、人工智能的崛起等。面对这些变革,Boundary Devices积极调整战略,加强在物联网和人工智能领域的研发投入,推出了一系列符合市场趋势的新产品。同时,公司还加强与高校和研究机构的合作,共同推动电子行业的创新与发展。

HBControls公司的发展小趣事
定期检查冰箱电源线、插头、插座等是否完好无损,避免老化、破损引起的电路故障。
奇力新(chilisin)公司的发展小趣事

在电感器领域,技术创新是推动产业升级的关键因素。奇力新始终将技术创新作为公司发展的核心驱动力。公司不断投入研发资金,加强与国际知名企业和研究机构的合作,推出了一系列具有自主知识产权的新技术和新产品。这些技术和产品不仅提升了奇力新的市场竞争力,还推动了整个电感器行业的升级和发展。

Connective Peripherals Pte Ltd公司的发展小趣事

随着市场的不断变化和客户需求的多样化,奇力新开始拓展产品线,推出了更多类型的电感器产品。这些产品不仅涵盖了传统领域,还涉及到了新能源汽车、工业控制等新兴市场。为了保持市场竞争优势,奇力新不断加大研发投入,提升产品质量和性能。通过不断的市场推广和客户服务,奇力新逐渐赢得了客户的信任和市场的认可。

Eby Electro Inc公司的发展小趣事

Eby Electro Inc在发展壮大的同时,始终关注社会责任的履行。公司积极参与环保和公益活动,推广绿色电子产品,减少生产过程中的环境污染。此外,公司还设立了奖学金和助学金,支持教育事业的发展。这些举措不仅提升了公司的社会形象,也为公司赢得了更多的社会支持和认可。

Crystalfontz America Inc公司的发展小趣事

为了保证产品质量和客户满意度,Crystalfontz America Inc公司建立了完善的质量管理体系。公司从原材料采购、生产制造到产品出厂等各个环节都严格把控质量,确保产品符合相关标准和客户要求。同时,公司还不断优化生产流程和管理制度,提高生产效率和产品质量稳定性。这些措施为公司赢得了良好的市场声誉和客户口碑。

问答坊 | AI 解惑

凌特推出100%占空比DC/DC电流模式控制器,适合汽车应用

凌特公司(Linear Technology Corporation)日前推出4V至60V输入范围、100%占空比、低IQ、可调开关频率DC/DC电流模式控制器LTC3824。该控制器非常适合于汽车应用,在此类应用中,4V最小输入电压支持冷车发动,60V最大输入电压可承受感应负载突 ...…

查看全部问答>

1-wire系统中TM卡的单片机等效替换

1 TM卡简介   TM(Touch Memory)卡是美国Dallas公司的专利产品。它采用单线协议通信,通过瞬间碰触完成数据读写,既具有非接触式IC卡的易操作性,又具有接触式IC 卡的廉价性,是当前性价比最优秀的IC卡之一。它的外形类似于一个钮扣(button) ...…

查看全部问答>

cadence画原理图系列问题2

又遇到些问题 书上写的也不是很详细 只好请教各位高手: 1、page1和page2有两种连接方式:“place”-> \"Off-page Connector\" -> \"place Off-Page Connector \" 和\"place\" -> \"port\" ->\"place Hierachical port\"    即在画图 ...…

查看全部问答>

请问,WINCE注册表[HKEY_LOCAL_MACHINE\Drivers\BuiltIn]下的DLL都会被设备管理器加载吗?

我在移植SDIO驱动SDHC_SC2440.dll,它在注册表里的项如下。但是我感觉它的入口函数DllEntry、初始化函数SDH_Init没有执行。 我在开头用printf打印,在串口上没看到输出。 在[HKEY_LOCAL_MACHINE\\Drivers\\Active]下确实也没看到这个DLL。 难道 ...…

查看全部问答>

CCS环境下,移植ucos_ii到28335上时出现的重复定义问题,如何解决?

移植ucos_ii v2.86到28335时,总是出现重复定义的问题,error #10056: symbol \"_OSStatRdy\" redefined: first defined in    \"./OS/source/ucos_ii.obj\"; redefined in \"./OS/source/os_core.obj\"如图: 求各路高手相助。…

查看全部问答>

LM4F120开发板问题

前几天刚收到TI的LM4F120开发板,照着文档新建工程,我按照hello这个例程新建工程,结果编译出现一个错误“errors encountered during linking:\"my_project1.out\" no built”,网上找了找,没找到具体原因和可行的解决方法。谷歌翻译:“在连接时 ...…

查看全部问答>

关于铝基板的一些敷铜问题

最近一直在做led控制电路,但是我的公司一直都要求用铝基板做电路,而且老是要敷铜一大片的,这个敷铜能用其他的方式代替吗?毕竟一点点的敷铜太好费时间了…

查看全部问答>

Happy Tumbler

   这个想法,我个人认为如果这个东西能做出来还是很有趣味性的,不当可以作为baby的玩具,同时也可以作为一种消遣娱乐器具,拿到野外还可以当指南针使用。放之室内即为一个室内温湿度等各项环境检测播报器,家居小饰品;于baby手中就是 ...…

查看全部问答>

C语言关键字register、extern、static、一些总结

C语言关键字register、extern、static、一些总结 一、register变量       关键字regiter请求编译器尽可能的将变量存在CPU的寄存器中。有以下几点注意的地方。register变量必须是能被CPU寄存器所接受的类型,这通常意味着reg ...…

查看全部问答>