面向MCU端的AUTOSAR CP平台加密组件——Crypto
ECU中所有的软件单元都遭受到信息安全攻击的可能。AUTOSAR为保障ECU信息和数据安全,定义了CRYPTO 组件,包含 SecOC、KeyM、IdsM、Csm、CryIf 和Crypto Driver 等标准模块。CRYPTO组件提供各种加解密算法以及密钥管理功能,能感知到信息安全攻击,发现安全事件,确保数据的安全性、完整性以及身份认证,为ECU提供信息安全保障。
SecOC模块是AUTOSAR基础软件架构一个标准软件模块,属于通信服务层。它的主要功能是为总线上进行传输的数据提供信息认证。消息在IF/TP和Com之间传输并路由PduR 模块时,将消息传入SecOC模块进行校验,可以有效抵御消息重放攻击,异常篡改等通信攻击方式。
SecOC为所需的通信报文提供加密服务机制,以及接收报文的认证机制,具体功能通过调用加密栈功能实现。另外 SecOC为加密通信提供防重放攻击机制,具体功能通过调用 FVM 模块实现,FVM模块属于应用层,通过维护一个不断变化的新鲜度值来为SecOC模块通信提供保护。
KeyM模块是AUTOSAR基础软件架构一个标准软件模块,属于加密服务层。其中加密密钥子模块主要包括密钥初始化、生成、更新、派生、维护和分配,其中证书子模块主要功能为配置工具链以及使用证书。
Csm 模块、CryIf模块和一个或者多个Crypto模块组成整个 AUTOSAR的加密栈。Csm作为加密栈中唯一个提供对外接口的模块,主要为AUTOSAR架构中的其他BSW模块和上层应用程序提供加密服务和密钥管理服务功能。Csm模块中提供了多种加密服务接口,包括HASH计算、MAC生成校验、数据加密解密等接口。通过配置Csm模块中的任务,使得每种服务接口可以实现一种或者多种算法。不过需要注意的是,数据的具体计算过程并未在Csm模块的核心代码中实现,Csm将收到的任务请求通过CryIf模块发送到具体的Crypto模块中进行计算,之后将计算结果返回。
CryIf模块,是连接Csm模块和下层的Crypto模块的桥梁,CryIf模块只为Csm提供服务,CryIf模块可连接一个或多个 Crypto模块。Csm模块中的任务通过CryIf模块下传到某个 Crypto模块中执行,并通过CryIf模块将结果通知给Csm模块。
Crypto Driver模块按照AUTOSAR规范中的标准接口对加密实现模块中的功能进行封装,提供加密实现所支持的多种加密算法功能。Crypto Driver(HW)基于芯片中硬件安全扩展模块开发的加密驱动模块,对具体芯片中的功能进行封装。Crypto Driver(SW)使用软件实现具体加密功能,而 Extern Crypto Driver则为对外部驱动进行调用,实现具体加密功能。
面向MPU端的AUTOSAR AP平台加密组件——Security
? 实现加密栈管理功能,支持多种加密算法,可定制开发其他算法,如:随机数生成器(CTR-DRBG)、哈希算法(SHA256,SHA512)、对称流加密算法(AES-128,AES-192,AES-256,支持 ECB CBC CFB CTR模式)、对称块加密算法(AES-128,AES-256,支持ECB模式)、非对称密钥生成算法、非对称密钥封装机制KEM服务、非对称加密算法(RSA)
? 支持密钥存储管理功能
? 提供 TLS/DTLS socket 封装接口
? 支持对服务接口访问的鉴权保护
? 实现 PEP 和 PDP
目前,经纬恒润已为国内多家客户提供汽车网络安全开发及测试服务,打造车联网可信安全平台,为智能网联汽车安行之路保驾护航!未来,经纬恒润将继续紧随汽车行业发展趋势,坚持自主创新,为客户提供更多优质的产品和服务!