新闻动态
数据加密时代,智能汽车系统对外接口安全如何保障
来源: | 作者:望安科技 | 发布时间: 820天前 | 1523 次浏览 | 分享到:
在过去汽车是一个独立的系统,相对来说是比较安全,外部也是很难受到相应的攻击。可是随着网联化的引入,车载OBD、智能充电以及跟OTA系统和蓝牙无线的引入,整个系统就不再安全,就需要采用相应的技术确保车辆的安全。

在过去汽车是一个独立的系统,相对来说是比较安全,外部也是很难受到相应的攻击。可是随着网联化的引入,车载OBD、智能充电以及跟OTA系统和蓝牙无线的引入,整个系统就不再安全,就需要采用相应的技术确保车辆的安全。但是在确保整个技术落地的过程中,需要有相应的工具做相应的开发和测试。过去在整个系统做开发的过程中,相关数据“明码”,并没有进行加密,所以任何工具都可以拿到相关的数据,可以进行相应的数据读写,也可以做仿真以及回放。但是在系统通信数据加密之后,很多功能没有办法做使用常规工具满足,如数据加密时,简单的数据分析都会遇到很大困扰,然而并不是所有的工具都支持加密系统的开发和测试。


现在所有用的开发和测试工具都必须考虑,产品面临相关问题时,如何支持Security相关的应用,尤其是供应商,因为供应商会面对不同OEM的不同项目在不同通信应用层面,各项目各通信层依赖于不同加密体系进行加密,供应商不可能在每个OEM的每个项目都需要采购和学习全新工具链。


带有TLS的DoIP


随着Ethernet相关技术的引入,诊断系统里面采用了DoIP做相应的诊断应用,但是也会随着安全诊断的考虑,在2019年发布了新一版的ISO13400-2,这版规范定义的DoIP通过TLS实现安全诊断。具体流程来看,会在整个通讯过程中,在车辆连接后首先通过13400端口进行Routing激活,在接收到07拒绝响应则表示需要采用TLS进行安全诊断。紧接着测试设备发送关闭传统的DoIP的13400端口服务,然后进行打开支持TLS的3496端口。然后建立TLS“握手”,实现诊断设备和ECU或者相应车辆安全密钥或证书安全通信连接。最后使用再次激活通过TLS协议,紧接着整个诊断的服务处理都会在TLS协议下面进行相应的传输。


在诊断处理完之后,需要把3496端口进行相应的关闭处理。在整个流程可以看到,数据是有通过TLS实现相应的加密,进行相应的开发调试和测试以后,是需要工具能够支持DoIP里面的TLS协议。



出口新能源车辆面临ISO15118的加密充电


车辆互联的时候,还有一个重要的接口,就是充电接口。在充电这部分,国内目前是使用基于GB/T 27930协议进行相应的充电处理。但相信国内的新能源车企都是有在做车辆出口的业务,就不得不面临需要在欧美充电基建体系下进行相应的充电。在欧洲充电体系下中,就需要面对一个重要的规范:ISO15118。这个协议本身也一直在做相应的迭代更新,会明显看到在整个系统里面,随着新版的15118-20这个协议的发布,其中TLS是强制性的要求。


也就是在充电方面,在协议上面也有相应的加密,在开发过程中和调试过程中,无论OEM还是供应商,也不得不依赖相应的工具去解决:ISO15118这个协议是否支持?在工具和设备里面,另一个重要的考虑将是刚才提到里面的ISO15118-2和-20中要求的TLS部分,是否能够完全做相应的支持。


对于充电系统的整个开发过程,充电部分和实际的传统开发流程都是一样,会有相应的从虚拟SiL原型,到A/B样以及C样和量产车,在早期开发产品的时候,需要模拟充电桩(EVSE)或车辆(EV),因为EV和EVSE之间通信是带有TLS加密通信,本身充电桩的模拟也要能够支持TLS的协议在里面。到后期实际充电的时候,接了真实的桩进行相应的数据传输,数据也有TLS的协议在里面,一方面数据能够采集下来,另外一方面在分析的时候,解密的工作也是需要工具可以处理的。


在以太网或者PLC中数据在通讯的时候,在开发环境里面都是能够把相应的数据进行加密和解密的处理。随着测试完成之后,系统ECU和车辆做集成,集成之后会把车辆跟相应的装进行数据的处理,在里面也是要处理证书,就是TLS方面的一些应用处理。


车联网-V2X的安全


车辆外互联接口方面,尤其是在V2X这块,在中国地,我们看到很多的实验区,包括三跨、四跨也在做相应的开发应用。在整个系统里面层面:在整个链路上,无论是车与车、车与其他设备进行通讯的时候,可以通过PC5实现V2X的数据传输,传输的数据上面会使用相应的证书进行的数据加密。以及相应数据进到车的内部以后,车辆端的通信随着OEM车内安全技术的应用,对数据也进行相应的加密。


所以在车联网V2X方面,在选择工具的时候也有很多条件需要进行相应的考虑,当然很多供应商和OEM也不仅仅只会面临中国的项目需要做,当然面对全球的项目都要做相应的支撑。在Security方面,中国的V2X安全规范目前还是Draft版本,但是对于欧美的安全规范ETSI TS 103 097和IEEE 1602.2都是发布状态。在工具选择方面,肯定是要能够支持相应国家的Security。也需要支持各OEM车内通信的安全加解密。另外工具需要支持常规车载通信开发和测试的要求,比如需要支持通信需要的arxml、诊断的cdd等,以及车载通信1000/100BASE-T1和CAN FD等连接通道。需要以长远的视角规划相应工具和设备,以实现V2X方面Security的处理。


安全互联Connectivity


越来越多的OEM会使得车辆跟云端和后台有相应的交互,以及随着SOA的引进,整个系统不仅仅是车,也可能是车+后台、车+运后、手机等等在内的通讯应用。在车辆互联方面主要的通讯技术:MQTT和HTTP。跟外部互联通讯的时候都需要对相当的数据进行相应的加密和处理。在这种应用的情况下,也需要工具能够支持MQTT或HTTP等协议。


这可能会有两种情况需要考虑,一种情况是会接真实的ECU,ECU的一端是车内常规通信;ECU另一端的通信需要通过MQTT或HTTP实现和云端后台的交互。


还有一种应用场景在开发早期的时候,必须跟云端应用交互的情况下,完全可以把整个软件系统的的功能部署在虚拟环境里面,在虚拟环境里面的时候,直接访问的是软件接口,对软件接口的访问,相对于真实控制器的接口可以直接以更方便的方式实现,能够在自己的PC和对应的环境下搭建虚拟环境实现MQTT和HTTP相应协议的互联。


在整个系统里面,就会遇到跟安全相关的证书部分,因为整个数据在通讯的时候要实现相应的安全通讯应用,这里面就会有不同的证书需要做相应的配置。比如在证书方面有PM格式或者PFX格式的证书,这个证书会产生CANoe所需要的证书,以及匹配SUT的证书,使得整个通讯链路本身也能够实现相应的加密通讯应用在里面。


另外在针对MQTT进行互联通信服务时,不同开发阶段需要的测试环境是有所差异的。在MQTT进行相应数据处理时,需要链接相应的MQTT Booker。当然MQTT整个通讯的层面,整个数据有可能通过Google Protocol Buffer协议或JSON实现MQTT数据的虚拟化和反序列传输应用。


NEWS