初始化 SAM(安全访问模块)

initialling SAM (Secure ACCESS MODULE)

我正在开发 AFC(自动收费)系统,该系统需要 SAM(安全访问模块)作为密钥 management.system 在 MCU 中与本地密钥管理配合良好,我没有任何经验使用 SAM.SAM 需要安装在 MCU 旁边作为主要 reader 控制器和非接触式卡 reader 芯片(PCD)。

  1. 智能卡使用的协议是基于ISO7816的吗?是吗?
  2. 据我所知,SAM 是 SMART 卡家族的一部分,是 SAM javacard 还是有 javacard SAM 和非 javacard SAM?
  3. 是否有用于与 SAM 通信的上层标准(基于 iso7816)或每个制造商使用自己的协议?
  4. SAM和普通的GSM SIM-CARD有什么区别?我可以使用 GSM-SIMCARD 代替 SAM 卡吗?
  5. 智能卡中的密钥管理过程是否有任何标准用例? wbr

SAM 可以是智能卡或其他芯片,如可信平台模块。 TPM 使用 API 寻址,参见 here

很少需要 SAM,因此没有独立于域的标准来解决这些问题。

如果使用智能卡,那么7816显然是最佳选择。原生智能卡也完全可以作为 SAM,特别是如果支持 ISO 7816-8 的执行安全操作命令。

一个典型的 SAM 命令是 "encrypt these data with your (say AES) key number 1"。典型的 SIM 卡没有命令。

你要自己收集你感兴趣的用例。一些想法:

  • 加密这些数据
  • 解密此密文
  • 计算或验证此消息身份验证 ocde
  • 导出会话密钥
  • 替换现有密钥的密钥数据