C-V2X直连通信安全机制和测试体系

2023-01-29 03:03房骥于润东葛雨明林琳
移动通信 2022年11期
关键词:消息证书管理系统

房骥,于润东,葛雨明,林琳

(1.中国信息通信研究院,北京 100191;2.车联网技术创新与测试评价工业和信息化部重点实验室(中国信息通信研究院),北京 100191)

0 引言

C-V2X(Cellular based Vehicle-to-Everything)技术实现了车与车(V2V,Vehicle-to-Vehicle)、车与路(V2I,Vehicleto-Infrastructure)、车与人(V2P,Vehicle-to-Pedestrian)以及车与网络(V2N,Vehicle-to-Network)之间的实时动态信息交互,为实现基于通信的安全预警、交通效率提升等应用提供了技术支撑和基本保障。C-V2X融合了蜂窝通信和直连通信技术,一方面通过4G/5G蜂窝网实现远距离、大范围通信,另一方面使用直连通信接口实现短距离、低延迟通信,车载设备(OBU,On-Board Unit)周期性发送车辆状态信息(包括:速度、方向、加速度、刹车状态等)、变道和汇入意图信息等,实现“车-车”安全预警类应用;路侧设备(RSU,Road Side Unit)结合多接入边缘计算(MEC,Multi-access Edge Computing)平台周期性发送红绿灯状态信息、道路连接信息、交通事件信息等,实现车路协同。利用C-V2X与高级驾驶辅助系统(ADAS,Advanced Driving Assistance System)融合技术可实现网联式自动驾驶功能增强,一方面实现单车超视距感知,另一方面实现协作式主动安全驾驶功能,可以降低单车智能对高性能算力与感知精度的要求,并提升对复杂场景和“极端场景”的适应性[1-4]。

C-V2X直连通信具有车辆移动速度快、通信对象不确定、网络拓扑变化大的特点,无法在车与车、车与路侧设施之间建立并维持点对点通信链路,因此为了减小通信延迟,实现快速信息传输和共享,使用了广播通信方式。在广播通信模式下,利用无线信道的开放性,攻击者可以利用非法终端发送伪造的业务信息,甚至可以篡改或者重放合法用户发送的业务信息,这将影响C-V2X业务的正常运行,严重时可危害周边车辆及行人的道路交通安全和人身安全。此外,攻击者可以监听获取广播消息中的车辆标识、位置等敏感信息,进而造成车辆身份、位置等隐私信息泄露。严重时,车辆可能被非法跟踪,直接威胁着用户的人身安全[5]。

C-V2X直连通信的移动特性和广播通信特性,决定了其无法像传统安全通信那样,在任意两个终端通信前建立安全通信链路(包括:建立通信链接和密钥协商等过程)以实现点对点安全通信(例如:HTTPS、IPSec等链路级安全通信方式)。因此,需要建立针对C-V2X广播通信特点的安全通信机制,采用轻量级保护机制对数据的完整性进行保护,防止篡改和伪造攻击。同时,需要对接入C-V2X网络的终端的安全防护能力进行检测,从源头确保C-V2X网络的安全。

1 C-V2X直连通信安全机制

1.1 安全证书管理系统

在C-V2X直连通信过程中,使用基于公钥基础设施(PKI,Public Key Infrastructure)的安全机制实现实体间的安全认证和安全通信,由安全证书管理系统为各参与实体签发数字证书,各实体采用数字签名等技术手段实现V2V/V2I/V2P直连通信安全,如图1所示。在C-V2X安全通信机制下,发送端实体使用数字证书的私钥对消息进行签名,将消息和数字证书(或数字证书的摘要信息)一同广播出去。接收端实体提取接收消息中的数字证书,首先验证数字证书的合法性和有效性,即:确认数字证书是由可信证书管理系统签发,并且证书处于有效期内、具备相应的应用权限,然后使用数字证书中的公钥对消息的签名进行验签,以确保消息的完整性,即:未经篡改或伪造[6-11]。

图1 C-V2X安全通信机制

C-V2X安全证书管理系统负责为C-V2X终端签发通信证书,由根证书机构(RCA,Root CA)、中间证书机构(ICA,Intermediate CA)、注册证书机构(ECA,Enrolment Certificate Authority)、假名证书机构(PCA,Pseudonym Certificate Authority)、应用证书机构(ACA,Application Certificate Authority)、链接值机构(LA,Linkage Authority)、异常行为管理机构(MA,Misbehavior Authority)和认证授权机构(AAA,Authentication and Authorization Authority)组成,架构如图2所示[12],其中:

图2 C-V2X安全证书管理系统架构

(1)RCA 是C-V2X 证书管理系统的顶级信任锚点,负责单个证书管理系统根证书的管理与维护,并为其他下级证书机构签发数字证书,使其成为系统内的有效实体;

(2)ICA是在RCA与其他证书机构之间部署的中间证书机构,通过部署多个ICA,可支持多层级部署;

(3)ECA负责向OBU、RSU和服务提供商(VSP,V2X Service Provider)签发注册证书(EC,Enrolment Certificate);

(4)PCA 为C-V2X 设备签发假名证书(P C,Pseudonym Certificate),用于车辆发送安全BSM消息;

(5)ACA 为C-V2X 设备签发应用证书(A C,Application Certificate),用于路侧设备或服务平台发送安全应用消息;

(6)LA为PC生成链接种子,并根据链接种子生成多个链接值,以此实现假名证书的隐私保护和批量撤销。

(7)MA负责识别车辆潜在的C-V2X异常行为,由MA或证书撤销机构(CRA,Certificate Revocation Authority)撤销其PC,生成并发布证书撤销列表(CRL,Certificate Revocation List);

(8)AAA负责证书申请主体的身份认证和授权。在设备初始化阶段,由AAA 为C-V2X 设备签发初始化安全凭证,使其能够凭借初始安全凭证与C-V2X证书管理系统交互并获取相应的证书。根据实际应用场景的不同,AAA可基于设备配置管理(DCM,Device Configuration Manager)服务系统、网络通用引导架构(GBA,General Bootstrapping Architecture)认证授权系统或者开放授权协议(OAuth,Open Authorization)等多种方式实现。

1.2 安全证书

在C-V2X直连通信安全体系下,按安全证书的用途分类,安全证书分为EC、PC、AC和IC[3],其中:

(1)EC代表C-V2X设备的长期身份(例如:3年),C-V2X设备可以通过ECA获得EC,然后利用EC向应用证书机构(PCA、ACA等)申请C-V2X安全通信证书;

(2)PC用于为车辆基本安全消息(BSM)进行签名,其证书ID使用了假名链接值,不包含C-V2X设备或车辆信息,并且在使用一段时间后(例如:300 s)会随机切换使用其他PC,从而避免通过证书ID被跟踪造成轨迹和隐私泄露;

(3)AC用于为路侧单元(RSU)发送的消息进行签名,其ID一般固定,且使用周期较长(例如:1个月);

(4)IC用于特定车联网应用消息。使用IC可向RSU或车联网服务商表明真实身份,并获取对应的服务。

各类证书结构相同,但每类证书具有不同的权限,证书结构和各字段含义如表1 所示。其中,应用权限(appPermissions)标识了证书可对哪类应用消息进行签名,OBU和RSU证书具有不同的应用权限;签发权限(certIssuePermissions)表示使用该证书可以签发具有哪些应用权限的证书。在一条有效的证书链中,终端证书的应用权限需要包含在其上级证书的签发权限范围内才算有效。

表1 C-V2X安全证书结构和字段含义

当某证书不在使用或某车辆存在异常时,需要主动将其证书撤销。由安全证书管理系统发布证书撤销列表,公布被撤销证书信息。特别地,当某机构证书(例如:PCA证书)被撤销时,则由其签发的下级证书也自然失效。机构证书的证书撤销列表里包含了机构证书的HashId8值;EC/AC/IC的证书撤销列表里也包含了证书的HashId8值;PC的证书撤销列表里包含了PC的链接种子、链接机构ID值,终端根据链接种子和链接机构ID值计算PC的链接值,进而识别PC的有效性。

1.3 跨信任域互信互认

C-V2X终端的证书可能由不同证书管理系统签发,为实现跨信任域互认,一个信任域中的C-V2X设备需要获取另一个信任域签发证书的机构证书或证书链,例如:另一个信任域的RCA-ICA-PCA证书链。文献[3]中定义了可信根证书列表(TRCL,Trusted Root Certificate List)结构,用于存储不同信任域的RCA证书以及可信域证书链表(TDCL,Trusted Domain CA Certificates List)下载地址。由可信根证书列表管理机构(TRCLA,Trusted Root Certificate List Authority)负责签发TRCL。各RCA负责签发并发布TDCL。C-V2X终端获取TRCL后,获取各RCA证书,并通过TDCL地址获取可信域机构证书,从而建立多个可信域的证书链。C-V2X跨信任域互信互认结构如图3所示:

图3 C-V2X跨信任域互信互认结构

1.4 安全通信过程

在安全通信过程中,发送端使用安全证书的签名私钥对C-V2X消息签名,然后将消息和签名值封装在安全协议数据单元(SPDU,Security Protocol Data Unit)中。在签名前,需要首先检查签名证书的有效性,如果证书过期或被吊销或不具有对应消息类型的签名权限,那么不应该使用该证书生成SPDU。

接收端收到SPDU后,首先验证SPDU的签名证书的合法性,具体验证内容包括:

(1)证书签名值:验证证书的签名是否正确;

(2)证书签发者:验证证书是否由可信证书机构签发,即:在证书信任链中可以找到一个信任的机构证书,并且证书的应用权限在其签发者证书的证书签发权限范围内;

(3)证书有效期:验证安全消息的生成时间是否在证书的有效时间范围内;

(4)证书地理区域范围:验证接收消息的地点是否在证书的地理区域范围内;

(5)证书签名权限:验证证书的应用权限是否包含了上层应用消息类型;

(6)证书有效性:检查证书是否已经被吊销,使用被吊销的证书签名的消息应被丢弃。

然后,使用安全证书中的签名公钥验证SPDU的签名值是否正确。只有通过上述安全性检查的消息,才被认为是合法的消息,可将消息进一步用于上层业务应用。

1.5 安全隐私保护

为保护C-V2X车辆隐私,在C-V2X通信协议中涉及的标识均采用随机化机制,防止其他车辆或设备通过C-V2X通信协议中的标识跟踪车辆,造成车辆或用户隐私泄露。这种随机化标识机制包括:

(1)媒体访问控制(MAC)层ID随机化:在设备启动时,随机生成MAC层ID,并且在使用一段时间后,重新生成新MAC层ID;

(2)安全层证书随机化:每辆车在每周内有20张有效的PC,每张PC在使用一段时间后(例如:300 s),重新随机选取另一张PC证书。但在有紧急事件时(刹车、安全警示灯亮等)或移动位移小于特定距离(例如:2.1 km)时,同一PC可继续使用。并且,PC中的证书标识使用假名链接值,不包含车辆或用户的任何信息,因此无法通过不同PC之间的标识与特定车辆进行关联。

(3)应用层消息随机化:车辆BSM消息中的序号和ID在PC切换后,重新生成随机值。

(4)轨迹清除:当PC改变时,车辆BSM消息中的历史轨迹数据会被清除。

通过“MAC-安全层-应用层”随机化机制,可有效防止通过分析通信协议追踪车辆,进而起到保护车辆或用户隐私的作用。

2 C-V2X直连通信安全测试体系

接入C-V2X网络的设备需要具备身份认证和安全通信能力,因此在部署C-V2X设备前,需要对C-V2X设备开展安全测试。按照C-V2X安全通信机制要求,对C-V2X设备的安全测试体系包括证书管理机制测试、安全协议一致性测试、安全隐私保护测试和安全通信性能测试,如图4所示。通过这些安全测试,可以确保C-V2X设备具备安全保护机制,且性能满足要求。

图4 C-V2X直连通信安全测试体系

2.1 证书管理机制测试

构建可信证书链是开展安全通信的基础,对C-V2X设备证书管理能力进行测试,可有效保障C-V2X设备对安全消息来源的可信验证。证书管理一致性测试主要测试C-V2X设备是否能够构建完整的可信证书链、证书撤销链,并从安全证书管理系统申请、下载、更新通信证书。

(1)证书链构建测试

测试系统模拟TRCLA和证书管理系统,生成并发布TRCL、TDCL和CRL。C-V2X设备从TRCLA下载TRCL,并利用TRCLA的证书验证TRCL的签名是否正确。验签通过后,解析TRCL并提取可信根CA证书,并根据TDCL下载地址下载TDCL。利用TDCL对应的根CA证书验证TDCL签名,验签通过后,从TDCL内提取可信域机构证书,并通过证书撤销列表下载地址获取可信域证书撤销列表(CRL)。根据可信域机构证书的签发者依次建立可信证书链,并验证证书链中机构证书的有效性。机构证书有效性的验证包括:

(1)证书签名值:使用上级证书中的签名公钥验证本证书的签名值是否正确;

(2)证书有效期:验证本证书的有效时间范围是否在上级证书的有效时间范围内;

(3)证书地理区域范围:验证本证书的地理区域范围是否在上级证书的地理区域范围内;

(4)证书应用权限:验证本证书的应用权限是否在上级证书的应用权限范围内;

(5)证书签发权限:验证本证书的签发权限是否在上级证书的签发权限范围内;

(6)证书请求权限:验证本证书的请求权限是否在上级证书的签发权限范围内,适用于PRA和ARA证书;

(7)证书状态有效性:检查本证书、上级证书是否在证书撤销列表内。

在测试过程中,测试系统可构造存在错误的TRCL、TDCL和机构证书,C-V2X设备应能够检测出这些错误,并将其排除在可信证书链之外。

(2)证书申请协议一致性测试

测试系统模拟证书管理系统,C-V2X设备向测试系统发出证书申请请求,依次验证EC、PC、AC、IC证书的申请能力。由测试系统对证书申请请求进行验证,并返回相应的证书。

2.2 安全通信协议一致性测试

安全协议一致性测试主要验证被测C-V2X设备是否按照安全通信协议发送安全消息,是否可以正确解析接收的安全消息并识别异常消息。

(1)发送安全消息验证

C-V2X设备使用通信证书(例如:PC)发送安全消息,测试系统接对接收到的安全新消息进行验证,验证内容包括:1)安全消息的签名值是否正确;2)安全消息的签名证书是否正确(按照1.4节要求验证);3)安全协议字段值是否正确。

(2)接收安全消息验证

由测试系统发送安全消息,C-V2X设备对接收到的消息进行验证(验证内容与1.4节相同)。同时,测试系统构造一些含有错误或异常的安全消息,验证C-V2X设备是否可以识别这些异常消息。异常消息包括:1)安全消息签名值错误;2)安全协议字段值错误;3)应用层消息类型与证书应用权限不配;4)证书不可信(即:证书签发者不在可信证书链中);5)签名证书已被撤销;6)证书链中上级机构证书被撤销;7)当前位置超出证书有效地理范围等。

2.3 安全隐私保护测试

由GNSS模拟器发送预设轨迹数据,被测OBU设备发送BSM消息,测试系统接收并记录OBU发送的BSM消息,验证OBU是否按1.5节要求执行隐私保护。不同的场景下对隐私保护的要求不同[13],具体包括:

(1)当连续行驶时间超过300 s,位置不超过2.1 km时,PC不改变;

(2)当连续行驶时间超过300 s,位置超过2.1 km时,PC改变,且PC改变后,MAC层ID随机变化,消息层计数序号和ID随机变化,BSM消息的历史轨迹数据被清空;

(3)当连续行驶时间超过300 s,且有关键事件触发时,PC不改变。

2.4 安全通信性能测试

在密集环境下,车辆OBU会收到大量BSM消息(例如:2 000条/秒),这对OBU的安全消息接收能力带来挑战。因此,需要测试OBU接收大量安全消息的能力,验证OBU是否可以正确识别所有错误、异常消息,并测试接收消息的延迟和丢包率。

由测试系统模拟多OBU发送BSM消息,被测OBU设备接收并统计BSM消息。同时,测试系统在正常BSM消息中,随机插入存在错误或异常的消息,以验证OBU在极限条件下安全机制是否生效、是否可以识别所有错误或异常消息,并测试其处理正常消息的性能。异常消息包括安全协议字段值错误、签名值错误、消息类型和证书权限不匹配、通信证书已被撤销(不同CRL大小情况)、通信证书的上级机构证书被撤销等。

3 结束语

本文介绍了C-V2X直连通信的安全通信机制,基于PKI体系实现C-V2X网络中各实体的身份认证和安全通信。提出了C-V2X直连通信安全检测体系,从证书管理机制、安全通信协议、隐私保护、安全通信性能方面提出需要检测的内容。通过安全检测,可以确保C-V2X终端具备安全通信能力,抵御篡改、伪造的等风险,对保护C-V2X网络安全运行起到基础防护作用。

但是,在实际中,会存在具有合法身份的终端发送错误或虚假消息的情况,即:C-V2X消息本身可以通过安全机制的检查,但是消息内容存在错误。这种虚假消息可能会导致其他车辆产生虚假预警,严重时可能会导致车辆异常刹车,对车上人员乘车体验带来影响,甚至影响人身安全。因此,还需要建立一种安全机制,对这种拥有合法身份发送错误、虚假消息的行为进行检测与处置。

猜你喜欢
消息证书管理系统
WJCI 收录证书
基于James的院内邮件管理系统的实现
CSCD收录证书
收录证书
收录证书
一张图看5G消息
基于LED联动显示的违停管理系统
海盾压载水管理系统
消息
消息