APP下载

电动汽车充电网络系统身份鉴别与认证技术研究

2021-03-18杨家全

云南电力技术 2021年1期
关键词:数字证书私钥公钥

杨家全

(云南电网有限责任公司电力科学研究院,昆明 650217)

0 前言

随着电动汽车市场的快速发展,作为充电基础设施的电动汽车充电桩也得到了大规模的应用部署。根据中国电动汽车充电基础设施促进联盟预测,2020 年将新增公共充电桩15.6 万台,公共充电桩保有量将达到66.7 万台;新增私人充电桩37.3 万台,私人充电桩数量将达到107.6 万台。

然而,充电设施大量分散建设在居民区、商业区,分布广、间隔远,存在着明显的信息安全隐患。因此,充电桩作为电动汽车主要的充电设备,不仅要满足为电动汽车提供便捷、安全、可靠的供电需求,而且要具备强大的信息安全防护能力。信息安全防护的首要工作就是对充电网络系统中的实体节点进行身份鉴别,从而解决充电桩系统中存在的包括充电桩设备、运营平台在内的各网络节点的身份仿冒问题,保证系统内实体的真实性。

以下通过对当前成熟的PKI 身份鉴别机制进行分析,针对充电桩的具体应用场景,对证书内容进行简化以及对认证流程进行优化,同时采用国产SM2 算法,提出了一套存储空间占用低、认证过程耗时少的身份鉴别系统,并进行了实验室验证。

1 基于PKI的身份鉴别技术

身份鉴别通过验证信息的发送方和接收方的身份是否与其所宣称的一致,保障通信实体身份的真实性,是信息安全的第一道防护关卡。身份鉴别的本质是被鉴别方有一些信息,除被鉴别方自己外任何第三方不能伪造,被鉴别方能够使鉴别方相信它确实拥有那些秘密,则它的身份就得到了认证。

安全的鉴别机制是建立在成熟的密码学算法的基础之上的,使用密码算法不但可以产生身份鉴别使用的口令,还可以保证鉴别消息的完整性、机密性以及抵抗各种攻击,实践证明密码学是保证鉴别安全的基础。在各种基于密码学的身份鉴别机制中,基于PKI(公钥密码基础设施)的身份鉴别技术是当前网络与信息安全领域技术成熟度最高、应用范围最广泛的一种解决方案。

PKI 是通过使用公钥密码技术和数字证书来确保信息安全并负责对数字证书持有者进行身份鉴别的一种体系。基于PKI 的身份鉴别机制首先要求被鉴别的实体向权威的CA 机构申请数字证书,数字证书通常采用X.509 格式,证书内容包含证书持有者的身份标识和公钥等丰富的信息。

基于PKI 的身份鉴别机制主要包含验证证书有效性和验证实体是否拥有与数字证书对应的私钥。证书有效性的验证包括对证书的有效期、CA 证书链以及证书吊销列表CRL 的验证;验证实体是否拥有与数字对应的私钥可以是基于数字签名的挑战应答方式,也可以是遵循GB/T 15843.3《信息技术 安全技术 实体鉴别 第3 部分:采用数字签名技术的机制》标准的鉴别流程。

2 简化数字证书身份认证原理

尽管基于PKI 的身份鉴别机制在包含电力、金融在内的许多行业得到了广泛应用,但由于其鉴别过程复杂、性能要求高和证书存储空间大的特点,在部分物联网应用场景中,采用PKI 身份鉴别机制将带来更大延时、消耗更高计算性能和占用更多存储空间。

电动汽车充电网络作为典型的物联网应用场景,通过简化X.509 数字证书的内容,设计适用于充电网络系统的高效身份鉴别流程;同时选用国产SM2 椭圆曲线密码算法作为证书签名算法,进一步提升身份鉴别的强度。

2.1 SM2椭圆曲线密码算法

目前国际上在PKI 体系中一般采用RSA 算法作为主要的公钥密码算法,而RSA 算法是基于大整数难分解。随着大数分解方法的逐渐完善、计算机运算速度的不断提高,为了保障安全性,安全应用中采用RSA 算法的大整数要求越来越大,密钥的位数也逐新增加。当前普遍认可2048 位以上的RSA 算法才具有安全保障。但是,加解密的速度是跟密钥长度密切相关的,增加密钥长度势必会降低加解密的速度,其对应的硬件实现也更加复杂。

相比较RSA 算法,ECC 椭圆曲线算法采用了比较短的密钥长度。与大数分解问题及有限域上离散对数问题相比,由于ECC 的困难性是基于优先于上的椭圆曲线离散对数问题,椭圆曲线离散对数问题的求解难度要大得多。

SM2 算法由国家密码管理局于2010 年12月17 日发布,是我国自主设计的公钥密码算法,基于更加安全先进的椭圆曲线密码机制,在国际标准的ECC 椭圆曲线密码理论基础上进行自主研发设计,具备ECC 算法的性能特点并实现优化改进。

SM2 算法主要基于素域Fp的椭圆曲线参数,其数字签名算法适用于商业应用中的数字签名和验证,对于密钥K,相应的签名算法为sigk∈siG,其中sigk:M →S,对任意的消息m ∈M,有s=sigk(m),那么s ∈S 为消息m的签名。

SM2 算法和RSA 算法都属于公钥加密算法,但两者分别基于不同的数学理论基础。与RSA算法相比,SM2 算法具有抗攻击性强、CPU 占用少、内存使用少、网络消耗低、加密速度快等特点。因此,采用SM2 算法作为公钥密码算法颁发证书、进行身份鉴别。

2.2 数字证书的简化

X.509 数字证书中的主体名称、颁发者名称、扩展域等信息主要用于增强证书的可读性,不参与实体身份鉴别。而充电桩等物联网设备的存储空间有限,在不影响认证强度的情况下,通过去除X.509 数字证书中部分不参与实体身份鉴别的数据域,减小证书存储占用空间。数字证书的简化结构如下所示。

上述的证书结构由issuerUniqueID、subjectUniqueID、publicKeyInfo、validity 和signatureValue 五个数据域构成。这些域的含义如下:

1)issuerUniqueID:颁发者唯一标识,系统内唯一标识颁发者身份的字段。

2)subjectUniqueID:主体唯一标识,系统内唯一标识当前主体身份的字段,与颁发者唯一标识具有一致的编码格式。

3)publicKeyInfo:用来表示主体的公钥信息,包括主体的签名和加密公钥。仅当证书还用于加密时,主体的加密公钥数据项存在。

4)validity:有效期限,具体包括证书有效期的起始时间(notBefore)和证书有效期的终止时间(notAfter)。notBefore 和notAfter 两个时间使用GeneralizedTime通用时间类型进行编码。

5)signatureValue:颁发者签名,颁发者用自己的私钥对上述域的杂凑值签名的结果。

3 简化数字证书身份认证实现

基于简化数字证书的身份认证系统在电动汽车充电桩系统网络中包括充电桩设备、认证加密网关以及证书管理中心,如图1 所示。

图1 基于简化数字证书的身份认证系统

在进行身份认证前,证书管理中心为系统中的充电桩设备和接入服务网关签发简化的数字证书。已签发证书的充电桩设备使用ESAM安全芯片存储SM2 签名和加密私钥、设备证书以及签发者证书(即证书管理中心的证书)。由于ESAM 安全芯片能够有效保障私钥安全,避免私钥泄露,因此接入服务网关仅需要验证设备证书的签名值以及证书的有效期。

已签发证书的接入服务网关使用专用的密钥安全存储模块存储SM2 签名和加密私钥、网关证书以及签发者证书(即证书管理中心的证书)。接入服务网关是内置密码卡的硬件密码模块,在提供高性能的密码运算功能的同时,同样能够有效保障私钥安全,避免私钥泄露,因此充电桩设备仅需验证网关证书的签名值以及证书的有效期。

签发证书后,充电桩设备和加密认证网关之间即可进行双向的身份鉴别,采用基于数字签名技术的鉴别机制,鉴别流程如图2 所示。

图2 双向身份认证流程

步骤1:充电桩设备生成随机数序列RT,将RT与设备唯一标识DevID 发送给接入服务网关。

步骤2:接入服务网关校验DevID是否符合预定的规则,检验通过后,生成随机数序列RS,并使用自身签名私钥对RT和RS的组合序列进行签名;将RS、签名值、网关证书CertS发送给终端设备。

步骤3:充电桩设备对CertS和随机数组合序列的签名值进行验证,验证通过后,即完成充电桩设备对网关的身份鉴别;充电桩设备对网关证书CertS进行验证,只需要检查证书是否在有效期限内以及证书管理中心对证书的签名即可,无需检查CRL 或在线向证书管理中心查询网关证书是否被吊销。

步骤4:充电桩设备使用自身签名私钥对RS和RT的组合序列进行签名;将签名值、设备证书CertT发送给接入服务网关。

步骤5:接入服务网关对CertT和随机数组合序列的签名值进行验证,验证通过后,即完成网关对充电桩设备的身份鉴别;网关对充电桩设备证书CertT进行验证,同样只需检查证书是否在有效期限内以及证书管理中心对证书的签名,无需检查CRL 或在线向证书管理中心查询设备证书是否被吊销。

步骤6:接入服务网关身份认证的结果返回给充电桩设备。

4 结束语

本文通过对现有身份鉴别技术,尤其是基于密码学的PKI 身份认证体系进行了研究,结合电动汽车充电网络的特点,提出了一套适用于充电桩系统的新型身份认证体系。与传统的PKI 身份认证系统相比,代表身份的数字证书去除了常规X.509 中描述性信息,对于存储空间有限的充电桩设备,大幅降低了证书存储占用的空间;简化的数字证书中同时包含了签名和加密公钥,在一个证书中实现了原来需要签名和加密两个X.509 证书才能实现的双密钥体制;使用证书管理系统直接签发实体证书,身份鉴别过程中就无须进行复杂的证书链验证;整个双向身份鉴别流程仅需要2 次SM2 签名和4 次SM2 验签运算,简化了认证流程,降低了通信时延。

猜你喜欢

数字证书私钥公钥
比特币的安全性到底有多高
Spatially defined single-cell transcriptional profiling characterizes diverse chondrocyte subtypes and nucleus pulposus progenitors in human intervertebral discs
程序员把7500枚比特币扔掉损失巨大
神奇的公钥密码
国密SM2密码算法的C语言实现
基于身份的聚合签名体制研究
PKI技术在SSLVPN中的应用
数字签名保护Word文档
一种公开密钥RSA算法的实现