APP下载

ETCS密钥管理系统实现方案研究

2020-12-31田宏达郭军强刘栋青

铁路通信信号工程技术 2020年12期
关键词:数字证书离线密钥

田宏达 ,郭军强 ,刘栋青 ,张 韦

(1.北京全路通信信号研究设计院集团有限公司,北京 100070;2.北京市高速铁路运行控制系统工程技术研究中心,北京 100070)

1 概述

ETCS 列控系统车地安全信号设备建立安全通信时,为保证双方交互消息的真实性及完整性,需在每次对话开始时进行对端标识校验和身份认证,并生成会话密钥,通过会话密钥对此次会话的消息进行保护。身份认证及会话密钥生成是基于ETCS密钥管理系统预先安装的KMAC 密钥,因此密钥管理功能是安全信号设备间通信的安全基础。

ETCS 密钥管理系统负责ETCS 体系下安全信号设备之间的密钥管理功能,密钥管理包含的主要功能有:密钥生成、存储、安全分配、解除、销毁和应用等操作。

ETCS 系统使用三级密钥机制,密钥等级划分如表1 所示,密钥管理主要涉及KMAC、KTRANS和K-KMC 密钥。

ETCS 密钥管理系统主要由密钥管理中心KMC, 安全信号设备组成。安全信号设备为使用KMAC 密钥的设备,所以在密钥管理系统中称之为KMAC 实体。三级密钥在密钥管理系统的产生及流向如图1 所示。

表 1 ETCS系统密钥等级划分表Tab.1 Table for key grade division of ETCS system

2 系统结构

2.1 系统组成

如上所述,密钥管理系统主要由密钥管理中心KMC、数字证书中心CA 及KMAC 实体组成,一个KMAC 实体由一个KMC 负责为其管理密钥,将该KMC 称为KMAC 实体的Home KMC。密钥管理系统组成如图2 所示。

图1 ETCS各分级密钥的流向图Fig.1 Flow graph for each grading key of ETCS system

图2 ETCS密钥管理系统组成Fig.2 The composition of ETCS key management system

KMC 作为密钥管理的核心设备,由KMC 主机、操作显示终端和密码机组成。KMC 主机负责实现密钥管理逻辑功能(生成、添加、删除、更新、查询及存储密钥等);操作显示终端负责与操作人员交互进行密钥管理操作与维护;密码机负责生成密钥,密码机采用国家密码管理局批准的硬件芯片生成高质量的真随机数,保证密钥的高强度。

CA 数字证书中心采用数字证书对KMC 及KMAC 实体进行身份认证,包括向KMC 和KMAC实体签发用于TLS 连接的数字证书及数字证书状态改变后(例如证书废止)向TLS连接双方反馈证书有效性。证书签发应遵循CMP 协议,证书验证应遵循OCSP 协议。ETCS 密钥管理系统CA 体系结构如图3 所示,采用分级结构。

图3 CA体系结构Fig.3 CA architecture

密钥管理中心可采用在线和离线两种方式向KMAC 实体执行密钥的增加、更新、查询和删除操作。

2.2 在线密钥管理接口

在线密钥管理方式下,KMC 与KMAC 实体间、KMC 间接口遵循Subset-137 规范执行消息交互,通过网络在线传输密钥。为了防止传输过程中密钥数据被监听或篡改,在线密钥管理通过KMC与KMAC 实体、KMC 间建立TLS 连接,来保证交互内容加密、身份认证和数据完整性。Subset-137规定TLS 应采用基于TLS-PSK 体系或基于TLSPKI 体系两种方式进行密钥管理系统内设备的身份认证,防止中间人攻击,其中基于TLS-PSK 体系方式为基于TLS-PKI 体系的降级备份且不适用于KMC 间接口。基于TLS-PKI 体系的在线密钥管理的具体算法及防御范围如图4 所示。

图4 ETCS在线密钥管理防御措施Fig.4 Defensive measures of ETCS on-line key management

基于TLS-PKI 体系的在线密钥管理方式主要通过非对称加密、对称加密及散列算法3 种加密技术保证密钥传输的安全性,非对称加密采用基于RSA公私钥对的ECDHE 密钥交换算法实现身份认证和对称密钥协商,对称加密采用非对称加密协商的对称密钥并利用AES_256_GCM 算法对交互数据加密,基于SHA384 散列算法用于验证交互数据完整性。

当KMAC 实体为轨旁设备时,其为TLS 响应方;当KMAC 实体为车载设备时,其为TLS 发起方;KMC 设备间需由运营规程约定TLS 发起方。KMAC 实体与KMC 建立TLS 连接后即可进行密钥管理应用消息交互,TLS 消息将应用消息加密为密文。KMAC 实体与KMC 交互密钥管理消息采用应答交互方式,即发送命令后只有收到对方回复才可进行下一条命令的发送。基于TLS-PKI 体系的在线密钥交互流程如图5 所示。

2.3 系统离线密钥管理接口

在离线密钥管理方式KMC 将密钥管理命令消息写入可移动设备,由操作人员离线传递至KMAC实体,完成密钥的增加、更新和删除操作。离线密钥管理KMC 间接口遵循Subset-038 规范 ,KMC与KMAC 实体间接口遵循Subset-114 规范。

离线密钥管理方式为了密钥传输过程的安全,密钥传输过程中需要使用传输密钥对验证密钥进行加密。传输密钥KTRANS 保证KMC 与KMAC实体间交互消息,由KTRANS1 和KTRANS2 组成,KTRANS1 负责保证交互消息的真实性和完整性,KTRANS2 用于加密交互的KMAC。传输密钥K-KMC 负责保证KMC 之间交互消息,由K-KMC1 和K-KMC2 组 成,K-KMC1 负责保证KMC 之间交互消息的真实性和完整性,K-KMC2负责加密KMC 之间交互的KMAC。离线密钥管理利用3DES 算法使用传输密钥对KMAC 进行加解密,如图6 所示。

图5 ETCS在线密钥管理交互流程Fig.5 Interactive process of ETCS on-line key management

离线密钥管理传输密钥为明文, 因此还需制定额外管理规程保证离线密钥传输的安全性。管理规程应确保传输密钥和加密后的KMAC 的存储媒介必须独立,在密钥实施开展前以及密钥实施完成后,都应禁止二者被合并保管或传送。

3 密钥管理过程分析应用举例

本节以向属于不同Home KMC 的对端KMAC 实体添加密钥为例子,说明密钥管理过程。为实施在线密钥管理,KMAC 实体与KMC 需在有密钥任务前,预先申请CA 数字证书,CA 数字证书中心体系结构需遵循图3 结构。

根据Subset-114 规定,当使用密钥的两个对端KMAC 实体属于不同Home KMC 时,均需在轨旁KMAC实体的Home KMC 完成操作。当有密钥任务需求时,密钥管理员首先在轨旁KMAC 实体的Home KMC 下达密钥管理命令;然后Home KMC 将命令通过在线或离线方式(管理员据实际情况选择)下达给KMAC 实体;若密钥涉及相邻KMC 管辖的KMAC 实体时,需Home KMC 向相邻KMC 发起请求,再由相邻KMC 向其域内的KMAC 实体下达命令。

管理员优先选择在线下达密钥,在线下达密钥后,若KMAC 实体为轨旁设备,需要KMC 主动发起TLS 连接;若KMAC 实体为车载设备,需周期或维护人员操作由KMAC 实体发起TLS 连接。TLS 安全连接建立后,按照图7、8 消息流向,执行2.2 节在线交互流程。因网络或CA等原因,不具备在线密钥管理条件时,可采用离线方式按照图7、8 消息流向,执行2.3 节离线密钥管理流程。

图6 ETCS利用KTRANS加密KMAC示意图Fig.6 KMAC schematic diagram of ETCS system used by KTRANS encryption

图7 ETCS密钥管理应用示意-增加车载设备Fig.7 Schematic diagram for application of ETCS key management-adding on-board equipment

图8 ETCS密钥管理应用示意-增加轨旁设备Fig.8 Schematic diagram for application of ETCS key management-adding wayside equipment

最后Home KMC 综合KMAC 实体及相邻KMC 在线或离线下达命令的状态回复结果,刷新数据库中KMAC 实体密钥执行状态。

密钥管理其他如删除、更新等操作,与添加密钥步骤类似,可参照上述添加密钥过程执行。对端KMAC 实体属于同一个Home KMC 时,去除图7、8 中的KMC 间消息交互即可。

4 结语

本文从系统组成、系统接口及应用举例等方面总结了ETCS 离线密钥管理实现方式,可为ETCS系统及其他列控系统密钥管理系统研制提供参考,经过室内测试验证表明,本文描述的方案切实可行,可保证列控系统密钥安全可靠高效传输。

猜你喜欢

数字证书离线密钥
幻中邂逅之金色密钥
幻中邂逅之金色密钥
异步电机离线参数辨识方法
密码系统中密钥的状态与保护*
浅谈ATC离线基础数据的准备
互联互通车载控制器离线数据自动生成方法研究
TPM 2.0密钥迁移协议研究
基于数字证书的军事信息系统安全防护方案
数字签名保护Word文档
离线发文件 不是会员也能用