扫一扫加站长微信
Crypto Stack
Crypto Stack 加密协议栈为应用程序和系统功能提供了对加密服务的标准化访问,它位于整个 AUTOSAR 架构中的 BSW 中。
总所周知 BSW 中标准模块被分为微控制器抽象层、硬件抽象层、服务层,Crypto Stack 所包含的 KeyM 与 CSM、CryIf、Crypto Driver 就分别位于相应的层级中。
Crypto Stack 架构
Crypto Stack 在 AUTOSAR 中的架构层级
KeyM
SHE也有它的局限性:无法保护软件应用程序、不支持非对称算法、同一时间只允许一个进程访问,即:不支持并发。
与 HSM 相比 SHE 属于低配置安全存储,HSM按安全级别分三个等级:Full、Medium、Light,SHE应处在Full > Medium > SHE > Light。
CSM
是其他软件模块调用加解密模块的第一接口。应用层SWC通过RTE访问CSM,而其他底层软件(BSW)或者复杂驱动(CDD)则可以直接调用CSM。同时CSM也负责安全相关任务的队列管理,即优先级管理。
CryIf
CSM往下调用的接口模块,每一个CryIf中的加密基元都会与CSM中的一个服务相对应。而且CryIf支持分发相关任务,进一步调用不同的驱动
Crypto Driver
驱动模块,访问相关硬件模块,实现加解密、机数生成等最终的操作。
支持的算法和密码元素
AUTOSAR 需求 <Requirements on Crypto Stack> R22-11 中已经规定了,以下的算法和密码元素需要支持:
- 随机数生成器
- 伪随机数生成器(DRNG)
- 真随机数生成器(TRNG)
- 对称加密
- AES
- PRESENT
- ChaCha12/ChaCha20
- AEAD
- AES GCM
- ChaCha20 and POLY1305
- Asymmetric Encryption/Decryption and Signature Handling
- RSA
- Key Length: 1024, 2048, 3072, 4096
- Padding: PKCS#1 v2.2
- ECDSA
- Key Length: 256 bits
- Curve: NIST P-256
- Ed25519
- Hash
- SHA-2
- Length: 224, 256, 384, 512
- SHA-3
- Length: 224, 256, 384, 512
- BLAKE
- Length: 224, 256, 384, 512
- RIPEMD-160
- MAC
- Key exchange
- ECDH
- Key Length: 256 bits
- Curve: NIST P-256
- X25519