HSM 作用
包含两个部分:
- Security building blocks负责加密/解密的硬件操作;
- Logical building blocks负责与Application ECU交互数据以及软件的加密/解密操作;
HSM 最重要的作用是安全边界, 和trustzone的机制类似, 提供安全的物理隔离能力, 安全rom和安全ram 无法被外部cpu 访问, 即使外部cpu 环境被破解, 也能保证hsm 运行的内容无法被探知. 当前的hsm产品中大多是过了FIPS 140-2 level3 标准的.
密钥存储/派生/权限管控/交换机制处于hsm内部(授信环境), 密钥存于安全rom或安全ram中, 无法被外部拿到.
与 只有硬件安全ip 加 otp 方案的对比
- 该方案密钥即使可以通过otp 管控密钥无法被外界拿到, 但也存在无法灵活配置, 很难做到密钥派生/密钥交换类似的需求, 在main域或其他域上的密钥更换是非常频繁的, 频繁的更换密钥能够保证前向安全(即如果密钥被泄露, 那hack 监听到的以往的数据都会变得不再安全)和重放攻击等. 比如https中使用的ssl/tls 加密机制, 每次建立连接后都是使用的新的密钥
- 芯片的安全ip采用的算法往往是对外公开的, 没有秘密可言. 相当于说是这种方案其实只有硬解加速的作用, 一旦密钥被探知, 那整个安全链路系统是非常脆弱的.
- hsm上执行的程序, 中间过程会锁在安全rom 安全ram内, 这种hsm 上跑的软件上层的机制其实也是安全的. 而只有安全ip的方案, 无论是做驱动还是什么都可以被探知破解.