绵羊汽车生活记录 sheep汽车资讯 量产主控芯片的网络安全设计

量产主控芯片的网络安全设计

“网络安全”这个词广义上指包含网络系统中的硬件,软件,数据的传输和存储的安全,信息系统的完整和保密等受到保护。因为现今绝大部分IOT设备和汽车ECU都以某种方式连到网络访问,所以网络安全的覆盖范围非常广泛,嵌入式系统即使不联到Internet,只要和外界有所信息交互,也会涉及到网络安全。网络安全有一套系统方法,其中芯片硬件支持的安全是基础。

网络安全越来越受到重视,虽然各种安全芯片和算法不断被发明,可是“道高一尺,魔高一丈”,即使是大家公认的网络安全水平比较高的iPhone手机, Tesla汽车也有被黑客发现漏洞而利用的例子。这时,如果对于网络安全技术的发展过程不甚了解,有可能会陷入恐慌。特别是汽车自动驾驶域控制器,要在复杂的硬件软件体系上,不仅要和本地设备通信,也许还要在背景通过OTA做功能升级,这种场景需要控制器芯片从底层硬件和软件打好网络安全基础。

网络安全而是以几门相关学科做基础,加上大量工程实践叠加而成,是可循序渐进地了解,进行比较和参照的。以下我们来看看芯片相关的安全设计基本准则。

网络安全设计是相关技术要素和方法的有机组合。这篇微软的论文:The Seven Properties of Highly Secure Devices (MSR-TR-2017-16)对此进行了很好的列举。基于这种准则和市场需求,并结合技术实现细节,我参与了安霸CV系列芯片的网络安全设计,经过团队几年的努力,这些CV2x系列芯片已经在安防和汽车行业成功量产,得到领先客户的认可。

设备的机密信息的到硬件保护,并且这个信任根可以在硬件设计中抵御已知的旁路攻击。信任根通常是在不可修改的存储器上的一组或者多组密钥,而且不允许用户直接读出。这里通常采用的加密算法会使用基于公钥系统的比如RSA,ECC类的算法,其中公钥会在系统启动过程中,验证启动代码的各个环节是否被篡改。

专用加密芯片通常有内建的安全执行环境比如苹果手机用的Secure Enclave;主流Android手机则使用ARM的TrustZone,汽车的ECU和域控制器可使用HSM。这些设计原理类似,但功能,性能和安全等级不同。

安全执行环境意味着内部的操作通常受限,并且和主要的应用程序执行环境间的信息交流也受限。一般说来,系统开放的功能越多,接口越丰富,潜在安全风险点越多,所以在能满足需求的情况下,”信息安全岛”需要尽可能小而且简单。

纵深防御是一种必要的安全策略。这种“洋葱皮”式的设计,使得单层系统的弱点如果被攻破以后,并不会导致系统安全的全面崩溃。比如,即使使用了TrustZone来保护生物信息验证,系统还是可以使用软件层面的SELinux来设置程序权限来阻止不希望打开的权限。而且系统的配置也可能要考虑到防止root用户远程登录,并且保护root用户的密码。

隔离就是一种“密封舱”的思想。安全的系统可以由硬件建立一个个屏障,让单个模块带来的安全风险,难以转移到别的模块。“分区隔离”的做法常采用把软件模块的内存地址空间进行分离。Linux系统设立了用户空间和内核空间,就已经对大部分应用程序做了一层隔离。ARM TrustZone的Secure World和Normal world之间也被隔离。使用虚拟机等技术等对整个操作系统进行隔离,也是分区隔离的一种例子。

而简单RTOS则没有进行内存隔离,不仅仅一个软件模块的地址越界错误可能影响整个系统并导致崩溃,而且一个软件模块中的安全漏洞也会传播到别的模块。

旧有的方式,比如Windows默认的登录方式就是用户名/密码,这种如果用于远程登录,则一旦用户名和密码泄漏,则无法区分用户身份是否真实,一般的可以采用“两步验证”的方法加以改善,但仍然比较麻烦。

基于公钥系统的证书则是从机制上保证可靠。比如银行手机APP可以对用户的手机的唯一标识符做数字签名,并颁发证书保护这个数字签名,证书内包含着银行APP的公钥。这样在用户用网银时,服务器端收到用户发过来的加签名和证书的请求数据,进行校验即可确认这个数据是否被被篡改,并且这个业务请求的来源是否真实。

公钥机制需要安全芯片自带RSA/ECC等非对称加密算法引擎,或者支持在ARM的Secure world内运行,并且对相关的密钥进行可靠的保护。

为了对抗不断发现的新安全威胁,安全策略也需要不断被更新。对于已经发现的安全漏洞(CVE等),需要及时弥补,包括废止和更新密钥的机制。

为什么发现安全漏洞了还有机会升级更新呢?这就是因为前面已经说过的“纵深防御”和“分区隔离”,也许系统底层还尚未被黑客攻破。特别对于0-day安全漏洞,及时进行升级可消除安全隐患,这也是OTA的重要意义之一。

系统的任何和安全相关的失效或者潜在相关的异常,都需要汇报到后台管理。黑客往往不是通过单次攻击成功进入系统的,而是经过反复尝试。所以系统的。错误日志往往包含着有价值的信息,可用于增进防范的策略,改善安全措施。

“安全启动(Secure boot)“ 如果在启动过程中遇到错误,比如密钥校验错,通常是停下来,或者进入功能受限的“安全状态”以待维修。这项技术的一种发展趋势是走向“measured boot”,也叫“trusted boot”。“Measured boot”字面的意思是“可量度的启动”,但目前我没看到有广泛接受的中文翻译。Measured boot要求启动并不中断,而是把参与启动的模块信息和状态记录下来,包括错误,以待后面再进行校验,通常measured boot这些记录要写入带有安全存储的硬件,比如TPM或者HSM。

安霸在CV2x以后的系列芯片,均采用以上的硬件设计,并不断改进,符合ARM的TSBA规范(Trusted base System Architecture for ARMv8-A),并且在安防行业的龙头企业包括Axis,以及中国国内,欧美日本等等诸多客户取得成功量产;在中国乘用车行业也和著名民族品牌合作并成功量产。

我们在底层实现了安全启动,通过上层软件协议实现了隐私保护,算法加密,安全存储,安全传输等功能,给用户一个完整的套件,核心算法对用户开源。

较为复杂的汽车域控制器芯片更多使用HSM实现网络安全,主要原因是HSM是系统层面的,不仅仅可以对CPU上的数据进行保护,也可以保护MCU,AI引擎,图像视频引擎等多个单元,其内部带有安全存储和加密计算单元,可以用于存储用户的保密数据如密钥和证书。2022年初安霸发布的大算力自动驾驶域控制器芯片CV3,不仅实现了高AI算力,并且也实现了先进的网络安全。

CV3内建HSM,并采用了全新设计,自带可编程的高性能加密引擎支持各种常见加密算法,内建了高速内存,自带OTP以及其他安全计算硬件。不仅可以实现对各个硬件单元的的数据安全保护,还可以做系统的安全启动,内存隔离,保存用户的重要信息,通过对神经网络算法全程加密保护知识产权,把网络安全以及用户信息保护提到了新高度。

汽车测试网-创办于2008年,报道汽车测试技术与产品、趋势、动态等 联系邮箱 marketing#auto-testing.net (把#改成@)

本文来自网络,不代表绵羊汽车生活记录立场,转载请注明出处:http://car.shaomingyang.com/20652.html

作者: sheep

博格华纳OBC,黑科技助力充电安全

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

联系我们

13426325341

在线咨询: QQ交谈

邮箱: 2363400792@qq.com

工作时间:7*24小时全年无休
返回顶部