物联网安全从“芯”开始,数十亿设备有了安全基础
2016-12-14

12年前,微控制器 (MCU)行业发生了翻天覆地的变化。ARM发布了首款Cortex-M处理器,把通用架构的优势搬到了微控制器市场。嵌入式开发者迅速接受了Cortex-M系列处理器,因为它具备直观的程序员模型、出色的性能以及绝佳的节能性。该处理器集简单易用和深远的生态系统支持于一身,加快了嵌入式行业的创新速度,大大拓展了微控制器的使用场合。这些基于Cortex-M的小巧型MCU现已无处不在,为我们当今所使用的设备带来了无形的智能和强化的功能。现在,大多数MCU和嵌入式设备厂商均采用了这项行业标准,生产了共计220亿台基于Cortex-M的设备。

随着新的挑战开始浮现,为越来越多的联网设备提供安全性已变得至关重要,其中就包括保护这些设备的数据机密性、功能和完整性及其从基础设施到云端的连接。这种安全性不仅需要利用经过验证的最佳实践来符合极高的标准,而且必须做到简单易用、易于编程,从而最大限度减少使用不当的风险。成功部署的最后一个重要要素是,这种创新需要构建在行业标准平台之上,以确保获得广泛的生态系统支持、形成巨大的开发者群体,从而打造出多种多样的设备,加速各个物联网纵向细分市场的发展。

  为数十亿设备提供安全基础


  确保联网设备的安全是众所周知的一大挑战,现在已有超过100亿颗Cortex-A芯片为各种移动设备所采用,这些芯片利用ARM TrustZone技术来保护可信根免受潜在的可疑软件的损害。今年Tech Symposia 2016期间,ARM针对物联网应用专门推出了两款全新Cortex-M处理器,分别是基于基本型ARMv8-M、适用于大多数领域和功耗要求严苛应用的Cortex-M23以及基于主流型ARMv8-M、适用于高性能系统的Cortex-M33。这两款产品均搭载ARM TrustZone 技术作为其安全基础,而且还提供一款更加简单易用的MPU程序员模型,能够限制调试的可见性,因此可以保障软件机密的安全。Cortex-M23和Cortex-M33的安全性概念是全方位的,它超越了处理器的界限,涵盖了整个系统,包括总线/互联、内存和外设,因而可利用 AMBA AHB5标准在整个系统上导出处理器的安全状态。


  最适合的应用场景


  Cortex-M23和Cortex-M33两款处理器因内部架构的差异,应用场景也有所区别。据ARM应用市场事业部总经理Noel Hurley介绍,Cortex-M23主要针对联网传感器这一类较低成本且有无线功能的应用,比如智能照明系统等。现在的很多应用其传感器是相互连接的,不仅需要传感器收集信息,而且还要在这些信息输送前进行处理,因此处理器还必须具备数字信号处理(DSP)功能。此类应用场景就需要使用Cortex-M33这样的技术。接下来,Noel Hurley还对两个技术的具体应用做了详细解释,他表示:“具体应用往往取决于处理工作在整个物联网的哪个环节进行,如果是在物联网端点设备上进行,使用基于Cortex-M33的芯片将更适合。如果只是希望安装一个非常简单、安全且能够收集信息的物联网的终端设备,那么Cortex-M23就能满足要求。有些时候还可以将两个技术配合使用,即用基于Cortex-M23的传感器收集信息,基于Cortex-M23的设备再将这些信息整合起来。”

Cortex-M0+和Cortex-M3是应用最广泛的两项技术,ARM全球营销和战略联盟副总裁Ian Ferguson表示,现在,Cortex-M0+和Cortex-M3已有成千上万种类型的应用,有的公司对于它们的使用已经非常熟练,未来物联网的设备仍将在这个基础之上进行设计,因此,Cortex-M0+和Cortex-M3的出货量在未来会将保持稳定。随着物联网的发展,需要的芯片数量会越来越多,Cortex-M23、Cortex-M33出货量将不断增加。然而芯片的更新换代替代是一个缓慢的过程,可能需要十多年的时间才能够全部的完成。

全方位方案助力用户产品差异化

现在的芯片技术集成了内核、安全机制、无线接口甚至包括mbed OS等,将众多的能力提供给设计者,有效节省了开发时间。是否会因此而削弱了彼此产品的差异化呢?Noel Hurley表示这个担心是不必要的,他认为,ARM公司提供的这些IP技术都是最基本的,是用于开发整个生态系统最基本的基础设施。产品真正需要差异化的是,企业要在这些基础设施上开发相关应用, 这才是产品形成差异化过程中比较有价值的部分。

Ian Ferguson补充道:“具体来说,有些企业的专长是开发很多的应用、算法。这一次,ARM公司最新发布的Cortex-M23和Cortex-M33,除了TrustZone以及相关的安全特性以外,还分别带来了ARMv8-M基础型和主流型的额外功能。它们为芯片设计师和软件开发者提供了更一致的接口和特性,例如:调试、内存共享和纯执行内存支持以及更高的中断数量上限。所有这些使得系统设计和软件开发更具扩展性且更加高效,可加快开发速度,这对于数十亿物联网节点的发展而言至关重要。”

利用基于Cortex-M23或Cortex-M33的芯片所打造的联网设备将得益于可信世界所提供的保护,以便执行那些对安全性而言至关重要的功能,例如安全启动、密码学、身份和密钥管理、供应和设备更新。在处理器的常规世界里,来宾应用和非安全服务的运行方式与之前基于Cortex-M的设备类似。TrustZone将让这些应用和服务能够访问可信世界的安全功能,同时确保安全资源不会被来宾误用、损坏或检查。值得一提的是,由于程序员模型具有向前兼容性,因此针对现有Cortex-M处理器而编写的应用程序会在Cortex-M33和Cortex-M23的非安全世界中运行,不会察觉到自己在基于ARMv8-M的处理器上运行。将现有的应用程序快速转移到新一轮微控制器上也不是什么难事。