Global Platform Technology(以下简称为GP)的安全通道协议(Secure Channel protocol,以下简称为SCP)是可信服务管理(Trusted Service Manager,以下简称为TSM)的安全基础。
安全通道协议通常分成两大部分,第一部分是相互认证和通道初始化流程,在此流程中生成过程密钥;第二部分基于此过程密钥进行安全数据信息交换,保证数据信息交换的保密性和完整性。另外按GP标准协议,安全通讯双方采用如下简称OCE(Off Card Entity), SD (Security Domain)。
本文根据以上两大部分的划分,对安全通道协议GP SCP02 SCP10 SCP03 SCP11进行简单分析和比较如下:
一、SCP02协议
协议可分成两大部分:
第一部分基于3DES CBC算法进行安全通道初始化,进行双向认证,协议支持两种形式的固定密钥,一种形式仅有一个固定密钥:安全通道基础密钥,或者采用另一种形式是有三个固定密钥:安全通道加密密钥,安全通道MAC密钥和数据加密密钥。由以上固定密钥可以派生出三个过程密钥:C-MAC过程密钥,R-MAC过程密钥和加密过程密钥,密钥派生通过固定密钥加密规定密钥分散因子的形式生成。
第二部分对基于C-MAC过程密钥、R-MAC过程密钥和加密过程密钥如何进行安全通道数据交换进行详细的规定,加密算法采用3DES CBC算法,生成MAC的算法是“Single DES Plus Final Triple DES MAC”的方式,具体引用标准协议是“ISO 9797-1”中的 “MAC Algorithm 3”。
二、SCP10协议
协议可分成两大部分:
第一部分基于RSA算法进行安全通道初始化,进行双向认证,SCP10协议通过RSA公钥加密传输OCE过程密钥信息给SD,按照协议,双方生成MAC过程密钥和加密过程密钥,按照协议交互双方基于RSA进行签名和验签完成双向认证。
第二部分则是对如何基于已经生成的MAC过程密钥和加密过程密钥进安全通信数据交换进行了详细的规定,加密算法采用3DES CBC算法,生成MAC的算法是“Single DES Plus Final Triple DES MAC”的方式,具体引用标准协议是“ISO 9797-1”中的 “MAC Algorithm 3”。
三、SCP03协议
协议可分成两大部分:
第一部分基于AES算法进行安全通道初始化,进行双向认证,SCP03有三个固定密钥K-ENC和K-MAC, K-DEK。由固定密钥派生出三个过程密钥S-ENC, S-MAC和S-RMAC三个过程密钥,过程密钥生成方式采用了“NIST SP 800-108”标准所述KDF算法中的计数模式。
第二部分对基于S-ENC, S-MAC和S-RMAC如何进行安全通道数据交换规则进行了详细的规定,加密算法采用AES算法,生成MAC的算法为AES-CMAC,具体引用标准协议参考“NIST SP 800-38B”。
四、SCP11协议
相对之前所述安全通道所述内容,SCP11比较特别的是只规定所述安全通道协议第一部分内容,第二部分内容则直接引用了SCP03协议第二部分的内容。SCP11协议按照安全通道基于ECC(Elliptic Curve Cryptography)算法进行完成认证,生成共享秘密,进行安全通道初始化,后续基于AES算法进行安全通道数据传输。SCP11 生成共享秘密后,按“BSI TR-03111, Version 2.0”标准协议所述的X9.63 KDF方法进行密钥分散,最终生成S-ENC, S-MAC和S-RMAC三个过程密钥用于SCP03安全通道的数据传输。
SCP11协议有三种形式,分别是SCP11a, SCP11b和SCP11c。它们之间的区别如下表所示:
文章来源:https://www.toymoban.com/news/detail-762842.html
五、小结
综上所述,在安全通道协议的实际应用方面,小结如下,如有错误,请指正:文章来源地址https://www.toymoban.com/news/detail-762842.html
- 通过以上安全通道协议的简单分析和比较,TSM采用SCP11生成过程密钥,基于过程密钥建立SCP03安全通道是当前适合的选择。
- 基于业内对DES算法安全性的考虑,新项目设计应避免使用基于DES算法的安全通道协议,如SCP02和SCP10。
- 上述SCP11和SCP03的组合应用安全通道的形式与Car Connectivity Consortium数字车钥匙标准中应用安全通道的形式在原理上是相通的,比如在CCC数字车钥匙标准中车主钥匙配对流程中,车辆和车主设备通过SPAKE2+算法过程中形成共同秘密生成过程密钥,再基于过程密钥建立SCP03安全通道进行数据交换;在CCC数字车钥匙标准中车主钥匙交易流程,则是交易双方通过交易流程中形成的共同秘密生成过程密钥,再基于过程密钥建立SCP03安全通道进行数据交换。
到了这里,关于Global Platform Technology安全通道协议SCP02 SCP10 SCP03 SCP11的简单分析和比较的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!