假如您是一位电子工程师,受聘于一家公司,职责是为汽水自动售货机添加嵌入式安全性能。在面试时,凭着对加密技术的渊博知识,您给新雇主留下了深刻印象。现在,表现的时候到了。从表面看来,这个工作应该像利用优良的加密算法挑选芯片一样简单,但现实世界可不是这样简单的。
自动售货机等嵌入设备的安全隐忧
为什么要召集大队人马来保护汽水自动售货机?因为汽水自动售货机存在安全隐忧,而且世界各地的机器制造商都感受到了这种实际存在的问题。通过机器固件提高安全性呈现出日益上升的趋势,虽然乍一看来,这些机器似乎并不需要这样的安全性能。汽水自动售货机是本文所选取的一个例子,你不难想到其他这样的例子:例如停车计时器、自助洗衣房里的洗衣机和烘干机、收费亭和售票机等。
目前的售货机正在实现联网,以便提供有助于削减运营成本和增加收益的直观实时信息。现在,机主可以知道哪台机器需要维修,而且掌握着相关资料,可以选择最适合的产品组合并安装机器。实时信息是对抗竞争和盗贼的有利武器。利用这一信息流的竞争者可以利用这些信息来提高产品的竞争攻势,也可隐藏机主信息(例如,拒绝服务攻击)。同样,现在盗贼也知道可以抢劫哪台机器或者何时进行抢劫。
图1 越来越多的应用领域发现了实现机器联网的价值,从而引发了对嵌入式安全的需求
如何实施保护
上面做了简要的介绍,得出的结论是:产品设计者必须保护由自动售货机发送的信息。一种相当简单的方法就是对网络上的信息进行加密,并防止自动收货机内的密钥和固件被非法访问。
网络信息的加密简单而直接。首先,确定一种良好的加密算法,最佳候选算法是那些公开算法而非私密性算法,因为公开算法已经通过了公众检验,高级加密标准(AES)算法便是一个很好的例子;接着,在自动售货机的MCU中应用该算法。为了实现这一点,您可以通过在固件中嵌入该算法,也可以选择在硬件中固化该算法的MCU。
最后但同样重要的是,按照推荐模式使用算法。为了通过加密算法实现信息的安全性,所需的不仅仅是将明文顺序全部打乱以获得密文。大部分公开的算法都有运行的推荐模式,以此来保证它们加密数据的保密性。
AES可用的样例模式包括密码段链接(CBC)、密码反馈(CFB)、填充密码块链接(PCBC)、输出反馈(OFB)和计数器(CTR),可将他们按照不同组合方式来加以使用,从而提高加密强度。有关这些算法类型和使用的深入讨论不属于本文讨论的范围。需要知道的一点是,仅仅拥有这些算法并不能保障安全。
防止无正当理由获悉密钥或未经授权访问固件,这种做法不是那么直接,因此理解起来难度较大。对于许多安全措施而言,这往往最容易产生弱点。这一弱点源自对攻击者资源的低估和对硬件防入侵篡改的集成电路价值的低估。通常,人们把加密等同于安全,因此,没有看到防篡改保护集成电路的投资价值。
选择安全MCU,还是采用其他方法
您作为一名受人尊重的电子工程专业人士,通过阅读本杂志保持与当前业界趋势同步,您能够快速分析事实,并提出十分简单的解决方案:利用安全MCU替换自动售货机中的MCU,并增加少量的额外固件。安全MCU可以保护固件和密钥,加密通信,并实现硬件防篡改和防侵入。
事实上,它们可以检测到多种复杂的攻击,并采取从简单的延迟应答到关机的各种措施。安全MCU是银行用来运营ATM机的IC芯片。现在让您设计一个解决方案,方案中不采用安全MCU,能办到吗?
事实是,安全MCU成本更高,而且,您的公司也许要坚持使用它们的标准处理器。安全MCU的编写代码也比较难,导致更高的工程成本。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)