一种通信方法、装置以及系统转让专利

申请号 : CN202080004910.0

文献号 : CN112640502B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈幼雷

申请人 : 华为技术有限公司

摘要 :

本申请实施例提供一种通信方法、装置以及系统,涉及通信技术领域,用以降低终端对加密密钥管理的负担,降低第一终端装置计算和存储的开销。该方案包括:第一终端装置向服务器发送第一请求消息,所述第一请求消息用于请求所述服务器分配第一服务对应的加密密钥,所述第一请求消息包括所述第一服务的标识以及所述第一终端装置的标识。第一终端装置接收来自所述服务器的第一响应消息,所述第一响应消息包括所述第一服务对应的加密密钥,所述加密密钥用于加密第一信息。该方案可以应用于车联网,例如V2X、LTE‑V、V2V等,或可以用于D2D,智能驾驶,智能网联车等领域。

权利要求 :

1.一种通信方法,其特征在于,所述方法包括:第一终端装置向服务器发送第一请求消息,所述第一请求消息用于请求所述服务器分配第一服务对应的加密密钥,所述第一请求消息包括所述第一服务的标识以及所述第一终端装置的标识,其中,不同的所述第一服务对应不同的所述加密秘钥;

所述第一终端装置接收来自所述服务器的第一响应消息,所述第一响应消息包括所述第一服务对应的加密密钥,所述加密密钥用于加密第一信息。

2.根据权利要求1所述的方法,其特征在于,所述第一请求消息还包括所述第一终端装置的度量值,所述度量值用于验证所述第一终端装置是否合法。

3.根据权利要求1或2所述的方法,其特征在于,所述第一请求消息还包括所述第一终端装置的位置信息,相应的,所述加密密钥由所述第一终端装置的位置信息以及所述第一服务的标识确定。

4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:所述第一终端装置接收来自所述服务器的所述加密密钥对应的授权码,所述授权码用于获取所述加密密钥。

5.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:所述第一终端装置将所述加密密钥存储在所述第一终端装置中;

所述第一终端装置更新所述第一服务的状态为第一状态,所述第一状态表示所述第一服务具有对应的加密密钥。

6.根据权利要求5所述的方法,其特征在于,所述方法还包括:在所述第一服务的状态为第一状态的情况下,所述第一终端装置根据所述第一服务的标识,从所述第一终端装置中存储所述加密密钥的模块获取所述加密密钥。

7.根据权利要求6所述的方法,其特征在于,所述在所述第一服务的状态为第一状态的情况下,所述第一终端装置根据所述第一服务的标识,从所述第一终端装置中存储所述加密密钥的模块获取所述加密密钥,包括:在所述第一服务的状态为第一状态的情况下,所述第一终端装置根据所述第一终端装置的度量值以及所述第一终端装置的标识生成第一授权码;

所述第一授权码与所述加密密钥对应的授权码相同,所述第一终端装置根据所述第一服务的标识,从所述第一终端装置中存储所述加密密钥的模块获取所述加密密钥。

8.根据权利要求1或2所述的方法,其特征在于,所述第一终端装置向服务器发送第一请求消息之前,所述方法还包括:所述第一终端装置向所述服务器发送第二请求消息,所述第二请求消息用于请求所述服务器分配所述第一服务对应的加密密钥,所述第二请求消息包括所述第一服务的标识以及所述第一终端装置的标识;

所述第一终端装置接收来自所述服务器的第二响应消息,所述第二响应消息用于表示所述第一服务具有对应的加密密钥;

所述第一终端装置根据所述第二响应消息,更新所述第一服务的状态为第一状态,所述第一状态表示所述第一服务具有对应的加密密钥。

9.根据权利要求5所述的方法,其特征在于,所述方法还包括:所述第一终端装置发送第一消息,所述第一消息包括所述第一服务的标识以及采用所述加密密钥加密后的第一信息。

10.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:所述第一终端装置接收来自所述服务器的密钥更新种子和/或版本号信息,所述密钥更新种子用于更新所述加密密钥,所述版本号信息用于标识更新后的加密密钥;

所述第一终端装置根据所述密钥更新种子更新所述加密密钥,得到更新后的加密密钥;和/或,

所述第一终端装置根据所述版本号信息确定所述更新后的加密密钥的版本号。

11.根据权利要求 1或2所述的方法,其特征在于,所述第一终端装置为车辆,或者所述第一终端装置为车载设备,或者所述第一终端装置为所述车载设备中的芯片。

12.根据权利要求1或2所述的方法,其特征在于,所述第一信息包括所述第一终端装置的位置信息。

13.一种通信方法,其特征在于,所述方法包括:服务器接收来自第一终端装置的第一请求消息,所述第一请求消息用于请求所述服务器分配第一服务对应的加密密钥,所述第一请求消息包括所述第一服务的标识以及所述第一终端装置的标识;

所述服务器根据所述第一服务的标识以及所述第一终端装置的标识,确定所述第一服务对应的加密密钥,其中,不同的所述第一服务对应不同的所述加密秘钥;

所述服务器向所述第一终端装置发送第一响应消息,所述第一响应消息包括所述第一服务对应的加密密钥。

14.根据权利要求13所述的方法,其特征在于,所述第一请求消息还包括所述第一终端装置的度量值,所述度量值用于验证所述第一终端装置是否合法;

所述服务器根据所述第一服务的标识以及所述第一终端装置的标识,确定所述第一服务对应的加密密钥,包括:

在根据所述度量值确定所述第一终端装置合法的情况下,所述服务器根据所述第一服务的标识以及所述第一终端装置的标识,确定所述第一服务对应的加密密钥。

15.根据权利要求13或14所述的方法,其特征在于,所述第一请求消息还包括所述第一终端装置的位置信息;

相应的,所述加密密钥由所述第一服务的标识以及所述第一终端装置的位置信息确定。

16.根据权利要求13或14所述的方法,其特征在于,所述方法还包括:所述服务器向所述第一终端装置发送所述加密密钥对应的授权码。

17.根据权利要求13或14所述的方法,其特征在于,所述服务器接收来自第一终端装置的第一请求消息之前,所述方法还包括:所述服务器接收来自所述第一终端装置的第二请求消息,所述第二请求消息用于请求所述服务器为所述第一服务分配对应的加密密钥,所述第二请求消息包括所述第一服务的标识以及所述第一终端装置的标识;

所述服务器向所述第一终端装置发送第二响应消息,所述第二响应消息用于表示所述第一服务具有对应的加密密钥。

18.根据权利要求17所述的方法,其特征在于,所述服务器向所述第一终端装置发送所述第一服务对应的加密密钥,包括:所述服务器接收来自所述第一终端装置的所述第一终端装置的度量值;

所述服务器根据所述第一终端装置的度量值确定所述第一终端装置合法,所述服务器向所述第一终端装置发送所述第一服务对应的加密密钥。

19.根据权利要求17所述的方法,其特征在于,所述服务器根据所述第一服务的标识以及所述第一终端装置的标识,确定所述第一服务对应的加密密钥,包括:所述服务器根据所述第一终端装置的标识确定所述第一终端装置具备开通所述第一服务的情况下,所述服务器根据所述第一服务的标识确定所述第一服务对应的加密密钥。

20.根据权利要求19所述的方法,其特征在于,所述服务器根据所述第一服务的标识确定所述第一服务对应的加密密钥,包括:所述服务器根据所述第一终端装置的标识确定所述第一终端装置具备开通所述第一服务的情况下,所述服务器根据所述第一服务的标识,将与第一服务的标识关联的加密密钥确定为所述第一服务对应的加密密钥。

21.根据权利要求13或14所述的方法,其特征在于,所述方法还包括:所述服务器向所述第一终端装置发送密钥更新种子和/或版本号信息;

所述密钥更新种子用于更新所述加密密钥,所述版本号信息用于标识更新后的加密密钥。

22.一种通信装置,其特征在于,包括处理单元以及通信单元,所述处理单元,用于处理信息,所述通信单元,用于向服务器发送第一请求消息,所述第一请求消息用于请求所述服务器分配第一服务对应的加密密钥,所述第一请求消息包括所述第一服务的标识以及终端装置的标识,其中,不同的所述第一服务对应不同的所述加密秘钥;

所述通信单元,还用于接收来自所述服务器的第一响应消息,所述第一响应消息包括所述第一服务对应的加密密钥,所述加密密钥用于加密第一信息。

23.根据权利要求22所述的装置,其特征在于,所述第一请求消息还包括所述终端装置的度量值,所述度量值用于验证所述终端装置是否合法。

24.根据权利要求22或23所述的装置,其特征在于,所述第一请求消息还包括所述终端装置的位置信息,相应的,所述加密密钥由所述终端装置的位置信息以及所述第一服务的标识确定。

25.根据权利要求22或23所述的装置,其特征在于,所述通信单元,还用于接收来自所述服务器的所述加密密钥对应的授权码,所述授权码用于获取所述加密密钥。

26.根据权利要求22或23所述的装置,其特征在于,所述处理单元,用于将所述加密密钥存储在所述终端装置中,以及用于更新所述第一服务的状态为第一状态,所述第一状态表示所述第一服务具有对应的加密密钥。

27.根据权利要求26所述的装置,其特征在于,在所述第一服务的状态为第一状态的情况下,所述处理单元,用于根据所述第一服务的标识,从所述终端装置中存储所述加密密钥的模块获取所述加密密钥。

28.根据权利要求27所述的装置,其特征在于,所述在所述第一服务的状态为第一状态的情况下,所述处理单元,用于根据所述终端装置的度量值以及所述终端装置的标识生成第一授权码;

所述第一授权码与所述加密密钥对应的授权码相同,所述处理单元,用于根据所述第一服务的标识,从所述终端装置中存储所述加密密钥的模块获取所述加密密钥。

29.根据权利要求22或23所述的装置,其特征在于,所述通信单元,还用于向所述服务器发送第二请求消息,所述第二请求消息用于请求所述服务器分配所述第一服务对应的加密密钥,所述第二请求消息包括所述第一服务的标识以及所述终端装置的标识;

所述通信单元,还用于接收来自所述服务器的第二响应消息,所述第二响应消息用于表示所述第一服务具有对应的加密密钥;

所述处理单元,用于根据所述第二响应消息,更新所述第一服务的状态为第一状态,所述第一状态表示所述第一服务具有对应的加密密钥。

30.根据权利要求27或28所述的装置,其特征在于,所述通信单元,还用于发送第一消息,所述第一消息包括所述第一服务的标识以及采用所述加密密钥加密后的第一信息。

31.根据权利要求22或23所述的装置,其特征在于,所述通信单元,还用于接收来自所述服务器的密钥更新种子和/或版本号信息,所述密钥更新种子用于更新所述加密密钥,所述版本号信息用于标识更新后的加密密钥;

所述处理单元,还用于根据所述密钥更新种子更新所述加密密钥,得到更新后的加密密钥,和/或,

所述处理单元,还用于根据所述版本号信息确定所述更新后的加密密钥的版本号。

32.根据权利要求 22或23所述的装置,其特征在于,所述装置为车辆,或者所述装置为车载设备,或者所述装置为所述车载设备中的芯片。

33.根据权利要求22或23所述的装置,其特征在于,所述第一信息包括所述终端装置的位置信息。

34.一种通信装置,其特征在于,包括:通信单元,用于接收来自第一终端装置的第一请求消息,所述第一请求消息用于请求服务器分配第一服务对应的加密密钥,所述第一请求消息包括所述第一服务的标识以及所述第一终端装置的标识,其中,不同的所述第一服务对应不同的所述加密秘钥;

处理单元,用于根据所述第一服务的标识以及所述第一终端装置的标识,确定所述第一服务对应的加密密钥;

所述通信单元,用于向所述第一终端装置发送第一响应消息,所述第一响应消息包括所述第一服务对应的加密密钥。

35.根据权利要求34所述的装置,其特征在于,所述第一请求消息还包括所述第一终端装置的度量值,所述度量值用于验证所述第一终端装置是否合法;

在根据所述度量值确定所述第一终端装置合法的情况下,所述处理单元,用于根据所述第一服务的标识以及所述第一终端装置的标识,确定所述第一服务对应的加密密钥。

36.根据权利要求34或35所述的装置,其特征在于,所述第一请求消息还包括所述第一终端装置的位置信息;

相应的,所述加密密钥由所述第一服务的标识以及所述第一终端装置的位置信息确定。

37.根据权利要求34或35所述的装置,其特征在于,所述通信单元,还用于向所述第一终端装置发送所述加密密钥对应的授权码。

38.根据权利要求34或35所述的装置,其特征在于,所述通信单元,还用于接收来自所述第一终端装置的第二请求消息,所述第二请求消息用于请求所述服务器为所述第一服务分配对应的加密密钥,所述第二请求消息包括所述第一服务的标识以及所述第一终端装置的标识;

所述通信单元,还用于向所述第一终端装置发送第二响应消息,所述第二响应消息用于表示所述第一服务具有对应的加密密钥。

39.根据权利要求38所述的装置,其特征在于,所述通信单元,还用于接收来自所述第一终端装置的所述第一终端装置的度量值;

在根据所述第一终端装置的度量值确定所述第一终端装置合法,所述通信单元,用于向所述第一终端装置发送所述第一服务对应的加密密钥。

40.根据权利要求38所述的装置,其特征在于,所述处理单元,用于根据所述第一终端装置的标识确定所述第一终端装置具备开通所述第一服务的情况下,根据所述第一服务的标识确定所述第一服务对应的加密密钥。

41.根据权利要求40所述的装置,其特征在于,所述处理单元,用于根据所述第一终端装置的标识确定所述第一终端装置具备开通所述第一服务的情况下,根据所述第一服务的标识,将与第一服务的标识关联的加密密钥确定为所述第一服务对应的加密密钥。

42.根据权利要求34或35所述的装置,其特征在于,所述通信单元,还用于向所述第一终端装置发送密钥更新种子和/或版本号信息;

所述密钥更新种子用于更新所述加密密钥,所述版本号信息用于标识更新后的加密密钥。

43.一种通信系统,其特征在于,包括:服务器以及第一终端装置,所述第一终端装置用于执行权利要求1 12任一项所述的方法,所述服务器用于执行权利要求13 21任一项所述~ ~

的方法。

44.一种通信装置,其特征在于,包括:至少一个处理器,该至少一个处理器用于运行存储器中存储的计算机程序或指令,以实现权利要求1 12任一项所述的方法,或,权利要求13~

21任一项所述的方法。

~

说明书 :

一种通信方法、装置以及系统

技术领域

[0001] 本申请实施例涉及通信技术领域,尤其涉及一种通信方法、装置以及系统。

背景技术

[0002] 在车与车互联(Vehicle to Vehicle,V2V)场景下,车辆A可以随时广播车辆A的坐标数据,从而形成连续轨迹。由于可能存在恶意车辆或专门的伪造的恶意路侧监听设备有
意监听收集周围车辆的广播信道获得坐标数据进等敏感数据。因此,对V2V场景下车辆广播
的坐标数据执行加密是亟需解决的技术问题。
[0003] 但是,在V2V场景下,由于车辆A广播坐标数据的对象随机,周边接收车辆随时都会变化,不存在固定的接收车辆,因此车辆A要寻找合适的广播对象。在车辆A寻找到广播对象
之后,车辆A可以根据广播对象的标识查询该广播对象的公钥以对坐标数据加密。但是这样
需要额外的通信和计算开销,如识别周边车辆,获取车辆的标识或属性信息,向周边车辆发
送加密密钥。因此,上述广播加密方案带来的计算和存储开销会非常大。

发明内容

[0004] 本申请实施例提供一种通信方法、装置以及系统,用以降低终端(例如,车)对加密密钥管理的负担,降低终端计算和存储的开销。
[0005] 为了达到上述目的,本申请实施例提供如下技术方案:
[0006] 第一方面,本申请实施例提供一种通信方法,该方法包括:第一终端装置向服务器发送用于请求服务器分配第一服务对应的加密密钥的第一请求消息。该第一请求消息包括
第一服务的标识以及第一终端装置的标识。加密密钥用于加密第一信息。
[0007] 本申请实施例提供一种安全通信方法,该方法中第一服务对应的加密密钥由服务器管理,第一终端装置利用第一请求消息请求服务器分配第一服务对应的加密密钥,然后
接收来自服务器的第一服务对应的用于加密第一信息的加密密钥。这样不仅可以实现在
V2V车道级辅助驾驶应用场景下,利用加密密钥对第一信息等敏感数据的加密。还可以实现
加密密钥的分配和采用加密密钥进行安全通信的过程解耦。一方面,由第一终端装置从服
务器处获取加密密钥可以减少第一终端装置计算和存储的开销,节省第一终端装置计算生
成加密密钥的过程,提高时延,满足车道级辅助驾驶对通信时延的要求。再者由服务器分配
加密密钥更有利于进行加密密钥的统一维护和更新,减少了第一终端装置进行加密密钥管
理的负担,便于应用层控制,有利于推广使用。另一方,加密密钥与第一服务的标识对应可
以针对V2X下不同应用场景进行配置。
[0008] 在一种可能的实现方式中,本申请实施例中的第一请求消息还包括第一终端装置的度量值,该第一终端装置的度量值用于验证第一终端装置是否合法。利用第一请求消息
向服务器提供第一终端装置的度量值便于服务器确定第一终端是否具有请求第一服务对
应的加密密钥的资格。例如,对于合法的第一终端装置,则服务器确定第一终端装置具有请
求第一服务对应的加密密钥的资格。对于不合法的终端装置换言之对于非法的终端装置,
服务器确定第一终端不具有请求第一服务对应的加密密钥的资格。从而可以防止第一服务
对应的加密密钥被非法终端装置获取。
[0009] 在一种可能的实现方式中,第一请求消息还包括第一终端装置的位置信息。相应的,加密密钥由第一终端装置的位置信息以及第一服务的标识确定。这样可以使得第一服
务对应的加密密钥在指定区域内有效。
[0010] 在一种可能的实现方式中,本申请实施例提供的方法还包括:第一终端装置接收来自服务器的加密密钥对应的授权码,该授权码用于获取加密密钥。这样可以使得第一终
端装置利用授权码访问加密密钥,提高了加密密钥的安全性。
[0011] 在一种可能的实现方式中,本申请实施例提供的方法在第一终端装置接收到第一响应消息之后还包括:第一终端装置将加密密钥存储在第一终端装置中。通过存储加密密
钥可以实现将第一终端装置从服务器处获取加密密钥的过程与第一终端装置应用加密密
钥加密第一信息的过程分离,从而解决在应用阶段无法联网在线获取加密密钥的问题。
[0012] 在一种可能的实现方式中,本申请实施例提供的方法在第一终端装置接收到第一响应消息之后还包括:第一终端装置更新第一服务的状态为第一状态,该第一状态表示第
一服务具有对应的加密密钥。通过更新第一服务的状态,便于第一终端装置后续在应用阶
段确定第一服务具有对应的加密密钥。
[0013] 在一种可能的实现方式中,本申请实施例提供的方法还包括:在第一服务的状态为第一状态的情况下,第一终端装置根据第一服务的标识,从第一终端装置中存储加密密
钥的部件获取加密密钥。第一终端装置发送第一消息,第一消息包括第一服务的标识以及
采用加密密钥加密后的第一信息。这样可以提高第一信息的安全性。
[0014] 在一种可能的实现方式中,在第一服务的状态为第一状态的情况下,第一终端装置根据第一服务的标识,从第一终端装置中存储加密密钥的部件获取加密密钥,包括:在第
一服务的状态为第一状态的情况下,第一终端装置根据第一终端装置的度量值以及第一终
端装置的标识生成第一授权码。第一授权码与加密密钥对应的授权码相同,第一终端装置
根据第一服务的标识,从第一终端装置中存储加密密钥的部件获取加密密钥。
[0015] 在一种可能的实现方式中,授权码由度量值以及第一终端装置的标识确定。
[0016] 在一种可能的实现方式中,本申请实施例提供的方法第一终端装置向服务器发送第一请求消息之前,还包括:第一终端装置向服务器发送第二请求消息,第二请求消息用于
请求服务器分配第一服务对应的加密密钥,第二请求消息包括第一服务的标识以及第一终
端装置的标识。第一终端装置接收来自服务器的用于表示第一服务具有对应的加密密钥的
第二响应消息。第一终端装置根据第二响应消息,更新第一服务的状态为第一状态,该第一
状态表示第一服务具有对应的加密密钥。该方案可以实现密钥延迟分发,即服务器先基于
第二请求消息生成加密密钥,但是此时服务器并未向第一终端装置反馈第一服务对应的加
密密钥。
[0017] 在一种可能的实现方式中,第一终端装置向服务器发送第一请求消息之前,本申请实施例提供的方法还包括:服务器确定第一服务的状态为第一状态。
[0018] 在一种可能的实现方式中,本申请实施例提供的方法还包括:第一终端装置发送包括第一服务的标识以及采用加密密钥加密后的第一信息的第一消息。
[0019] 在一种可能的实现方式中,本申请实施例提供的方法还包括:第一终端装置接收来自服务器的密钥更新种子,密钥更新种子用于更新加密密钥;第一终端装置根据密钥更
新种子更新加密密钥,得到更新后的加密密钥。这样可以实现加密密钥的及时更新,提高了
加密密钥的安全性。
[0020] 在一种可能的实现方式中,本申请实施例提供的方法还包括:第一终端装置接收来自服务器的版本号信息,版本号信息用于标识更新后的加密密钥。第一终端装置根据版
本号信息确定更新后的加密密钥的版本号。
[0021] 在一种可能的实现方式中,第一终端装置接收来自服务器的密钥更新种子之前,本申请实施例提供的方法还包括:第一终端装置向服务器发送密钥更新请求,密钥更新请
求用于请求更新第一服务对应的加密密钥。
[0022] 在一种可能的实现方式中,第一终端装置向服务器发送密钥更新请求之前,还可以包括:第一终端装置确定更新第一服务对应的加密密钥。
[0023] 在一种可能的实现方式中,第一终端装置确定更新第一服务对应的加密密钥,包括:第一终端装置根据第一服务对应的密钥更新策略确定更新第一服务对应的加密密钥。
或者,第一终端装置接收来自服务器的密钥更新通知请求,该密钥更新通知请求用于指示
第一终端装置更新第一服务对应的加密密钥。第一终端装置根据密钥更新通知请求确定更
新第一服务对应的加密密钥。
[0024] 在一种可能的实现方式中,第一终端装置为车辆,或者第一终端装置为车载设备,或者所述第一终端装置为车载设备中的芯片。
[0025] 第二方面,本申请实施例提供一种通信方法,该方法包括:服务器接收来自第一终端装置的用于请求服务器分配第一服务对应的加密密钥的第一请求消息,该第一请求消息
包括第一服务的标识以及第一终端装置的标识。服务器根据第一服务的标识以及第一终端
装置的标识,确定第一服务对应的加密密钥。服务器向第一终端装置发送包括第一服务对
应的加密密钥的第一响应消息。
[0026] 在一种可能的实现方式中,第一请求消息还包括第一终端装置的度量值,该度量值用于验证第一终端装置是否合法。
[0027] 在一种可能的实现方式中,服务器根据第一服务的标识以及第一终端装置的标识,确定第一服务对应的加密密钥,包括:服务器根据度量值确定第一终端装置合法。服务
器根据第一服务的标识,确定第一服务对应的加密密钥。
[0028] 在一种可能的实现方式中,服务器根据第一终端装置的度量值确定第一终端装置合法,包括:第一终端装置的度量值与标准度量值相同或者第一终端装置的度量值存在于
标准度量列表中,则服务器确定第一终端装置合法。第一终端装置的度量值与标准度量值
不相同或者第一终端装置的度量值不存在于标准度量列表中,则服务器确定第一终端装置
非法。
[0029] 在一种可能的实现方式中,第一请求消息还包括第一终端装置的位置信息。相应的,加密密钥由第一服务的标识以及第一终端装置的位置信息确定。例如,服务器根据第一
服务的标识确定第一服务对应的加密密钥可以通过以下方式实现:服务器根据第一终端装
置的标识确定第一终端装置具有开通第一服务的条件,服务器根据第一服务的标识,第一
终端装置的位置信息确定第一服务对应的加密密钥。
[0030] 在一种可能的实现方式中,本申请实施例提供的方法还包括:服务器向第一终端装置发送加密密钥对应的授权码。
[0031] 在一种可能的实现方式中,授权码由第一终端装置的标识和第一终端装置的度量值中的一个或多个确定。
[0032] 在一种可能的实现方式中,该授权码由第一终端装置的标识确定。例如,服务器根据第一终端装置的标识确定该加密密钥对应的授权码。
[0033] 在一种可能的实现方式中,该授权码由第一终端装置的标识以及第一终端装置的度量值确定。例如,服务器根据第一终端装置的度量值以及第一终端装置的标识生成加密
密钥对应的授权码。
[0034] 在一种可能的实现方式中,该授权码由第一终端装置的度量值确定。例如,服务器根据第一终端装置的度量值确定授权码。
[0035] 在一种可能的实现方式中,服务器接收来自第一终端装置的第一请求消息之前,本申请实施例提供的方法还包括:服务器接收来自第一终端装置的用于请求服务器为第一
服务分配对应的加密密钥的第二请求消息,该第二请求消息包括第一服务的标识以及第一
终端装置的标识。服务器向第一终端装置发送第二响应消息,该第二响应消息用于表示第
一服务具有对应的加密密钥。
[0036] 在一种可能的实现方式中,第二请求消息包括第一终端装置的度量值、第一终端装置的位置信息中的一个或多个。
[0037] 在一种可能的实现方式中,服务器向第一终端装置发送第一服务对应的加密密钥,包括:服务器根据第一终端装置的度量值确定第一终端装置合法,该服务器向第一终端
装置发送第一服务对应的加密密钥。
[0038] 在一种可能的实现方式中,服务器根据第一服务的标识以及第一终端装置的标识,确定第一服务对应的加密密钥,包括:服务器根据第一终端装置的标识确定第一终端装
置具备开通第一服务的情况下,服务器根据第一服务的标识确定第一服务对应的加密密
钥。
[0039] 在一种可能的实现方式中,服务器根据第一服务的标识以及第一终端装置的标识,确定第一服务对应的加密密钥,包括:服务器根据第一终端装置的标识确定第一终端装
置具备开通第一服务的情况下,服务器根据第一服务的标识,将与第一服务的标识关联的
加密密钥确定为第一服务对应的加密密钥。
[0040] 在一种可能的实现方式中,本申请实施例提供的方法还包括:服务器向第一终端装置发送密钥更新种子和/或版本号信息。密钥更新种子用于更新加密密钥,版本号信息用
于标识更新后的加密密钥。
[0041] 在一种可能的实现方式中,服务器向第一终端装置发送密钥更新种子和/或版本号信息之前,本申请实施例提供的方法还包括:服务器接收来自第一终端装置的密钥更新
请求,该密钥更新请求用于请求更新第一服务对应的加密密钥。可选的,密钥更新请求中包
括指示信息x,用于指示第一终端装置请求更新第一服务对应的加密密钥。
[0042] 在一种可能的实现方式中,服务器接收来自第一终端装置的密钥更新请求之前,本申请实施例提供的方法还包括:服务器向第一终端装置发送密钥更新通知请求。该密钥
更新通知请求用于通知第一终端装置更新第一服务对应的加密密钥。该密钥更新通知请求
中可以包括第一服务的标识。可选的,该密钥更新通知请求中可以携带指示信息y,用于指
示第一终端装置更新第一服务对应的加密密钥。
[0043] 在一种可能的实现方式中,第一终端装置为车辆,或者所述第一终端装置为车载设备,或者所述第一终端装置为所述车载设备中的芯片。
[0044] 第三方面,本申请实施例提供一种安全通信方法,包括:第二终端装置接收来自第一终端装置的包括第一服务的标识以及加密后的第一信息的第一消息。第二终端装置根据
第一服务的标识,从服务器处获取第一服务对应的加密密钥。第二终端装置根据加密密钥
处理加密后的第一信息,得到第一信息。
[0045] 在一种可能的实现方式中,第二终端装置根据第一服务的标识,从服务器处获取第一服务对应的加密密钥,包括:第二终端装置向服务器发送第一请求消息,第一请求消息
包括第一服务的标识。第二终端装置接收来自服务器的第一响应消息,第一响应消息包括
第一服务对应的加密密钥。
[0046] 在一种可能的实现方式中,第一消息中还可以包括加密密钥对应的授权码。相应的,第一请求消息还包括加密密钥对应的授权码,授权码用于获取加密密钥。
[0047] 在一种可能的实现方式中,第一请求消息还包括第二终端装置的标识或第二终端装置的位置信息中的一个或多个。
[0048] 在一种可能的实现方式中,第一消息中还可以包括地域标签,第一请求消息还可以包括地域标签。
[0049] 在一种可能的实现方式中,第二终端装置为车辆,或者所述第二终端装置为车载设备,或者第二终端装置为车载设备中的芯片。
[0050] 第四方面,本申请实施例提供一种密钥更新方法,该方法应用于第一终端装置中,该第一终端装置具有第一服务对应的加密密钥,该方法包括:第一终端装置接收来自服务
器的第一服务对应的密钥更新种子,该密钥更新种子用于更新该加密密钥。第一终端装置
根据该密钥更新种子以及该加密密钥,得到更新后的加密密钥。
[0051] 在一种可能的实现方式中,本申请实施例提供的方法还包括:第一终端装置获取第一服务对应的版本号信息。该版本号信息用于识更新后的加密密钥。相应的,本申请实施
例提供的方法还包括:第一终端装置根据版本号信息确定更新后的加密密钥的版本号。示
例性的,该版本号信息可以由第一终端装置自己确定之后,并经服务器确认,或者版本号信
息由第一终端装置和服务器协商确定,或者协议预定义,当然该版本号信息也可以由服务
器发送给第一终端装置。
[0052] 在一种可能的实现方式中,第一终端装置为车辆,或者所述第一终端装置为车载设备,或者所述第一终端装置为所述车载设备中的芯片。
[0053] 在一种可能的实现方式中,在第一终端装置接收来自服务器的第一服务对应的密钥更新种子之前,本申请实施例提供的方法还可以包括:第一终端装置向服务器发送密钥
更新请求,该密钥更新请求用于请求更新第一服务对应的加密密钥。例如,密钥更新请求中
包括第一服务的标识。可选的,密钥更新请求中包括指示信息x,用于指示第一终端装置请
求更新第一服务对应的加密密钥。
[0054] 在一种可能的实现方式中,本申请实施例提供的方法在第一终端装置向服务器发送密钥更新请求之前,还可以包括:第一终端装置接收来自服务器的密钥更新通知请求。该
密钥更新通知请求用于通知第一终端装置更新第一服务对应的加密密钥。该密钥更新通知
请求中可以包括第一服务的标识。可选的,该密钥更新通知请求中可以携带指示信息y,用
于指示第一终端装置更新第一服务对应的加密密钥。
[0055] 第五方面,本申请实施例提供一种密钥更新方法,该方法包括:服务器根据密钥更新策略,确定第一服务对应的密钥更新种子。服务器向第一终端装置发送第一服务对应的
密钥更新种子。
[0056] 在一种可能的实现方式中,该方法还可以包括:服务器根据密钥更新策略,确定第一服务对应的版本号信息。服务器向第一终端装置发送第一服务对应的版本号信息。
[0057] 在一种可能的实现方式中,本申请实施例提供的方法在服务器向第一终端装置发送第一服务对应的密钥更新种子之前,还可以包括:服务器接收来自第一终端装置的密钥
更新请求,该密钥更新请求用于请求更新第一服务对应的加密密钥。例如,密钥更新请求中
包括第一服务的标识。可选的,密钥更新请求中包括指示信息x,用于指示第一终端装置请
求更新第一服务对应的加密密钥。
[0058] 在一种可能的实现方式中,本申请实施例提供的方法还可以包括:服务器接收来自第一终端装置的密钥更新通知请求。该密钥更新通知请求用于通知第一终端装置更新第
一服务对应的加密密钥。该密钥更新通知请求中可以包括第一服务的标识。可选的,该密钥
更新通知请求中可以携带指示信息y,用于指示第一终端装置更新第一服务对应的加密密
钥。
[0059] 第六方面,本申请实施例提供一种通信装置,该通信装置可以是终端,也可以是内置于终端内的车载设备或者车载设备的部件(例如,芯片)。该通信装置可以包括通信单元。
该通信装置还可以包括处理单元和存储单元。一种示例,当该通信装置是终端时,该通信单
元可以为收发器。该存储单元可以是存储器。该存储单元用于存储指令。处理单元可以为处
理器。该处理单元执行该存储单元所存储的指令,以使该终端实现第一方面或第一方面的
任意一种可能的实现方式中描述的一种通信方法。另一种示例,当该通信装置是内置于终
端内的部件(例如,芯片)时,该处理单元可以是处理器,该通信单元可以是通信接口。例如
芯片中的通信接口可以为输入/输出接口、管脚或电路等。该处理单元执行存储单元所存储
的指令,以使该通信装置实现第一方面或第一方面的任意一种可能的实现方式中描述的一
种通信方法,该存储单元可以是该芯片内的存储单元(例如,寄存器、缓存等),也可以是该
终端内的位于该芯片外部的存储单元(例如,只读存储器、随机存取存储器等)。
[0060] 第七方面,本申请实施例提供一种通信装置,该通信装置可以是服务器,也可以是内置于服务器内的部件(例如,芯片)。该通信装置可以包括通信单元和处理单元。可选的,
该通信装置还可以包括存储单元。一种示例,当该通信装置是服务器时,该通信单元可以为
通信接口。该存储单元可以是存储器。该存储单元用于存储指令,或者第一服务和第一服务
对应的加密密钥。处理单元可以为处理器。该处理单元执行该存储单元所存储的指令,以使
该服务器实现第二方面或第二方面的任意一种可能的实现方式中描述的一种通信方法。另
一种示例,当该通信装置是内置于服务器内的部件(例如,芯片)时,该处理单元可以是处理
器,该通信单元可以是通信接口。例如芯片中的通信接口可以为输入/输出接口、管脚或电
路等。该处理单元执行存储单元所存储的指令,以使该通信装置实现第二方面或第二方面
的任意一种可能的实现方式中描述的一种通信方法,该存储单元可以是该芯片内的存储单
元(例如,寄存器、缓存等),也可以是该服务器内的位于该芯片外部的存储单元(例如,只读
存储器、随机存取存储器等)。
[0061] 第八方面,本申请实施例提供一种通信装置,该通信装置可以是终端,也可以是内置于终端内车载设备或者车载设备内的部件(例如,芯片)。该通信装置可以包括通信单元。
该通信装置还可以包括处理单元和存储单元。一种示例,当该通信装置是终端时,该通信单
元可以为收发器。该存储单元可以是存储器。该存储单元用于存储指令。处理单元可以为处
理器。该处理单元执行该存储单元所存储的指令,以使该终端实现第三方面或第三方面的
任意一种可能的实现方式中描述的一种安全通信方法。另一种示例,当该通信装置是内置
于终端内的部件(例如,芯片)时,该处理单元可以是处理器,该通信单元可以是通信接口。
例如芯片中的通信接口可以为输入/输出接口、管脚或电路等。该处理单元执行存储单元所
存储的指令,以使该通信装置实现第三方面或第三方面的任意一种可能的实现方式中描述
的一种安全通信方法,该存储单元可以是该芯片内的存储单元(例如,寄存器、缓存等),也
可以是该终端内的位于该芯片外部的存储单元(例如,只读存储器、随机存取存储器等)。
[0062] 第九方面,本申请实施例提供一种通信装置,该通信装置可以是终端,也可以是终端内的车载设备,或者应用于车载设备内的部件(例如,芯片)。该通信装置可以包括通信单
元。该通信装置还可以包括处理单元和存储单元。一种示例,当该通信装置是终端时,该通
信单元可以为收发器。该存储单元可以是存储器。该存储单元用于存储指令。处理单元可以
为处理器。该处理单元执行该存储单元所存储的指令,以使该终端实现第四方面或第四方
面的任意一种可能的实现方式中描述的一种密钥更新方法。另一种示例,当该通信装置是
内置于终端内的部件(例如,芯片)时,该处理单元可以是处理器,该通信单元可以是通信接
口。例如芯片中的通信接口可以为输入/输出接口、管脚或电路等。该处理单元执行存储单
元所存储的指令,以使该通信装置实现第四方面或第四方面的任意一种可能的实现方式中
描述的一种密钥更新方法,该存储单元可以是该芯片内的存储单元(例如,寄存器、缓存
等),也可以是该终端内的位于该芯片外部的存储单元(例如,只读存储器、随机存取存储器
等)。
[0063] 第十方面,本申请实施例提供一种通信装置,该通信装置可以是服务器,也可以是内置于服务器内的部件(例如,芯片)。该通信装置可以包括通信单元和处理单元。可选的,
该通信装置还可以包括存储单元。一种示例,当该通信装置是服务器时,该通信单元可以为
通信接口。该存储单元可以是存储器。该存储单元用于存储指令,或者第一服务和第一服务
对应的密钥更新种子。处理单元可以为处理器。该处理单元执行该存储单元所存储的指令,
以使该服务器实现第五方面或第五方面的任意一种可能的实现方式中描述的一种密钥更
新方法。另一种示例,当该通信装置是内置于服务器内的部件(例如,芯片)时,该处理单元
可以是处理器,该通信单元可以是通信接口。例如芯片中的通信接口可以为输入/输出接
口、管脚或电路等。该处理单元执行存储单元所存储的指令,以使该通信装置实现第五方面
或第五方面的任意一种可能的实现方式中描述的一种密钥更新方法,该存储单元可以是该
芯片内的存储单元(例如,寄存器、缓存等),也可以是该服务器内的位于该芯片外部的存储
单元(例如,只读存储器、随机存取存储器等)。
[0064] 第十一方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行如
第一方面或第一方面的各种可能的实现方式中描述的通信方法。
[0065] 第十二方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行如
第二方面或第二方面的各种可能的实现方式中描述的通信方法。
[0066] 第十三方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行如
第三方面或第三方面的各种可能的实现方式中描述的安全通信方法。
[0067] 第十四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行如
第四方面或第四方面的各种可能的实现方式中描述的密钥更新方法。
[0068] 第十五方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行如
第五方面或第五方面的各种可能的实现方式中描述的密钥更新方法。
[0069] 第十六方面,本申请实施例提供一种包括指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行如第一方面的任意一种可能的实现方式中描述的通信方法。
[0070] 第十七方面,本申请实施例提供一种包括指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行如第二方面的任意一种可能的实现方式中描述的通信方法。
[0071] 第十八方面,本申请实施例提供一种包括指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行如第三方面的任意一种可能的实现方式中描述的安全通信方
法。
[0072] 第十九方面,本申请实施例提供一种包括指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行如第四方面的任意一种可能的实现方式中描述的密钥更新方
法。
[0073] 第二十方面,本申请实施例提供一种包括指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行如第五方面的任意一种可能的实现方式中描述的密钥更新方
法。
[0074] 第二十一方面,本申请实施例提供一种通信系统,该通信系统包括:第六方面或第六方面的各种可能的实现方式中描述的通信装置,以及第七方面或第七方面的各种可能的
实现方式中描述的通信装置。
[0075] 在一种可能的实现方式中,该通信系统还可以包括:第八方面或第八方面的各种可能的实施例描述的通信装置。
[0076] 第二十二方面,本申请实施例提供一种通信系统,该通信系统包括:第九方面或第九方面的各种可能的实现方式中描述的通信装置,以及第十方面或第十方面的各种可能的
实现方式中描述的通信装置。
[0077] 第二十三方面,本申请实施例提供一种通信装置,该通信装置包括处理器和存储介质,存储介质存储有指令,指令被处理器运行时,实现如第一方面或第一方面的各种可能
的实现方式描述的通信方法。
[0078] 第二十四方面,本申请实施例提供一种通信装置,该通信装置包括处理器和存储介质,存储介质存储有指令,指令被处理器运行时,实现如第二方面或第二方面的各种可能
的实现方式描述的通信方法。
[0079] 第二十五方面,本申请实施例提供一种通信装置,该通信装置包括处理器和存储介质,存储介质存储有指令,指令被处理器运行时,实现如第三方面或第三方面的各种可能
的实现方式描述的安全通信方法。
[0080] 第二十六方面,本申请实施例提供一种通信装置,该通信装置包括处理器和存储介质,存储介质存储有指令,指令被处理器运行时,实现如第四方面或第四方面的各种可能
的实现方式描述的密钥更新方法。
[0081] 第二十七方面,本申请实施例提供一种通信装置,该通信装置包括处理器和存储介质,存储介质存储有指令,指令被处理器运行时,实现如第五方面或第五方面的各种可能
的实现方式描述的密钥更新方法。
[0082] 第二十八方面,本申请实施例提供一种通信装置,该通信装置包括至少一个处理器。该至少一个处理器和存储器耦合,存储器中存储有计算机程序或指令,该至少一个处理
器运行存储器中存储的计算机程序或指令,实现如第一方面或第一方面的各种可能的实现
方式描述的通信方法。
[0083] 第二十九方面,本申请实施例提供一种通信装置,该通信装置包括至少一个处理器。该至少一个处理器和存储器耦合,存储器中存储有计算机程序或指令,该至少一个处理
器运行存储器中存储的计算机程序或指令,实现如第二方面或第二方面的各种可能的实现
方式描述的通信方法。
[0084] 第三十方面,本申请实施例提供一种通信装置,该通信装置包括至少一个处理器。该至少一个处理器和存储器耦合,存储器中存储有计算机程序或指令,该至少一个处理器
运行存储器中存储的计算机程序或指令,实现如第三方面或第三方面的各种可能的实现方
式描述的安全通信方法。
[0085] 第三十一方面,本申请实施例提供一种通信装置,该通信装置包括至少一个处理器。该至少一个处理器和存储器耦合,存储器中存储有计算机程序或指令,该至少一个处理
器运行存储器中存储的计算机程序或指令,实现如第四方面或第四方面的各种可能的实现
方式描述的密钥更新方法。
[0086] 第三十二方面,本申请实施例提供一种通信装置,该通信装置包括至少一个处理器。该至少一个处理器和存储器耦合,存储器中存储有计算机程序或指令,该至少一个处理
器运行存储器中存储的计算机程序或指令,实现如第五方面或第五方面的各种可能的实现
方式描述的密钥更新方法。
[0087] 在一种可选的实现方式中,第二十八方面~第三十二方面描述的通信装置还可以包括通信接口。
[0088] 应理解,第二十八方面~第三十二方面描述的存储器可以位于通信装置内部,也可以位于通信装置外部,本申请实施例对此不进行限定。
[0089] 需要说明的是,上述各个方面描述的通信装置应用于终端或服务器内部时,可以为芯片、芯片系统或者电路系统。
[0090] 第三十三方面,本申请实施例提供了一种通信装置,该通信装置包括一个或者多个模块,用于实现上述第一方面、第二方面、第三方面、第四方面、或第五方面中任意一方面
的方法,该一个或者多个模块可以与上述第一方面、第二方面、第三方面、第四方面、或第五
方面中任意一方面描述的方法中的各个步骤相对应。
[0091] 第三十四方面,本申请实施例提供一种芯片,该芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行计算机程序或指令,以实现第一方面或第一方面的各
种可能的实现方式中所描述的一种通信方法。通信接口用于与所述芯片之外的其它模块进
行通信。
[0092] 第三十五方面,本申请实施例提供一种芯片,该芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行计算机程序或指令,以实现第二方面或第二方面的各
种可能的实现方式中所描述的一种通信方法。通信接口用于与所述芯片之外的其它模块进
行通信。
[0093] 第三十六方面,本申请实施例提供一种芯片,该芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行计算机程序或指令,以实现第三方面或第三方面的各
种可能的实现方式中所描述的一种安全通信方法。通信接口用于与所述芯片之外的其它模
块进行通信。
[0094] 第三十七方面,本申请实施例提供一种芯片,该芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行计算机程序或指令,以实现第四方面或第四方面的各
种可能的实现方式中所描述的一种密钥更新方法。通信接口用于与所述芯片之外的其它模
块进行通信。
[0095] 第三十八方面,本申请实施例提供一种芯片,该芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行计算机程序或指令,以实现第五方面或第五方面的各
种可能的实现方式中所描述的一种密钥更新方法。通信接口用于与所述芯片之外的其它模
块进行通信。
[0096] 具体的,本申请实施例中提供的芯片还包括存储器,用于存储计算机程序或指令。
[0097] 上述提供的任一种装置或计算机存储介质或计算机程序产品或芯片或通信系统均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文提供的对
应的方法中对应方案的有益效果,此处不再赘述。

附图说明

[0098] 图1为本申请实施例提供的一种通信系统的架构图;
[0099] 图2为本申请实施例提供的一种密钥分发示意图;
[0100] 图3为本申请实施例提供的另一种密钥分发示意图;
[0101] 图4为本申请实施例提供的一种通信设备的结构示意图;
[0102] 图5为本申请实施例提供的一种通信方法的交互示意图;
[0103] 图6为本申请实施例提供的另一种通信方法的交互示意图;
[0104] 图7为本申请实施例提供的再一种通信方法的交互示意图;
[0105] 图8为本申请实施例提供的一种密钥更新方法的交互示意图;
[0106] 图9为本申请实施例提供的一种安全通信方法的具体实施例的示意图一;
[0107] 图10为本申请实施例提供的一种安全通信方法的具体实施例的示意图二;
[0108] 图11为本申请实施例提供的一种安全通信方法的具体实施例的示意图三;
[0109] 图12为本申请实施例提供的一种安全通信方法的具体实施例的示意图四;
[0110] 图13为本申请实施例提供的一种安全通信方法的具体实施例的示意图五;
[0111] 图14为本申请实施例提供的一种安全通信方法的具体实施例的示意图六;
[0112] 图15为本申请实施例提供的一种安全通信方法的具体实施例的示意图七;
[0113] 图16为本申请实施例提供的一种密钥更新方法的具体实施例的示意图;
[0114] 图17为本申请实施例提供的一种通信装置的结构示意图;
[0115] 图18为本申请实施例提供的另一种通信装置的结构示意图;
[0116] 图19为本申请实施例提供的一种芯片的结构示意图。

具体实施方式

[0117] 在介绍本申请实施例之前,对本申请实施例涉及到的相关名词作如下释义:
[0118] 1)、度量值(也可以称为完整性度量(integrity measurement))由客户端(例如,终端装置)执行可信度量得到。所谓的可信度量包括服务端(例如,服务器)对客户端(例如,
终端)的运行环境和关键应用程序进行完整性验证。客户端对当前的运行环境(如内核代
码、模块和服务)和关键应用程序(如使用广播密钥的应用程序)进行哈希值计算,并组成哈
希链。所谓的度量值可以包括该哈希链的值。服务端查询与客户端使用的运行环境和应用
程序一致的标准度量值进行比对。可信度量的一种实现方式是采用可信计算组(Trusted 
Computing Group,TCG)标准的远程证明协议。或采用其他轻量级的运行时完整性度量
(Runtime Integrity Measurement,RIM)。
[0119] 其中,哈希链是指,将多个不同的哈希值拼接起来,再进行哈希计算。
[0120] 2)、标准度量值包括:根据该终端(例如,车辆)或车载通信模块的识别码,提前配置好的用于该终端的主要运行环境(如运行自动驾驶程序的操作系统版本)的完整性值(如
操作系统代码的MD5值)。
[0121] 为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一终端装
置和第二终端装置仅仅是为了区分不同的终端装置,并不对其先后顺序进行限定。本领域
技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、
“第二”等字样也并不限定一定不同。
[0122] 需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其
他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在
以具体方式呈现相关概念。
[0123] 本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员
可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似
的技术问题,同样适用。
[0124] 本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,
同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关
联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组
合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:
a,b,c,a‑b,a‑c,b‑c,或a‑b‑c,其中a,b,c可以是单个,也可以是多个。
[0125] 本申请实施例描述的系统架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员
可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似
的技术问题,同样适用。本申请实施例中以提供的方法应用于新无线(new radio,NR)系统
或第5代(5th generation,5G)网络中为例进行说明。
[0126] 如图1所示,图1示出了本申请实施例提供的一种通信系统,该通信系统包括:服务器10,终端20以及多个其他终端30。图1中以终端20以及多个其他其他终端30为车辆为例。
[0127] 其中,服务器10可以管理部署在该服务器10上的一个或多个服务(例如,第一服务)对应的加密密钥,以及验证终端20以及多个其他终端30是否具有获取一个或多个服务
对应的加密密钥的权限。示例性的,服务器10可以为V2V应用服务器或者V2X应用服务器。
[0128] 所谓服务器10管理部署在该服务器10上的一个或多个服务可以指:服务器10生成该一个或多个服务对应的加密密钥,或者,服务器10更新该一个或多个服务对应的加密密
钥,或者服务器删除该一个或多个服务对应的加密密钥,本申请实施例对此不做限定。
[0129] 在一种可能的实现方式中,本申请实施例中的服务器10至少包括密钥管理模块以及验证服务模块。其中,密钥管理模块用于管理部署在该服务器10上的一个或多个服务(例
如,第一服务)对应的加密密钥。验证服务模块用于根据终端20的标识验证终端20是否具有
获取一个或多个服务对应的加密密钥的权限。
[0130] 本申请实施例中的终端20和多个其他终端30中的部分终端可以请求服务器10生成第一服务对应的加密密钥,以及从服务器10处获取第一服务对应的加密密钥,然后终端
20可以采用获取的加密密钥加密向其他终端30发送的第一信息,本申请实施例对此不做限
定。
[0131] 本申请实施例中服务器10和终端20,或者服务器10与多个终端20之间具有通信连接(例如,安全连接(也可以称为安全通道))。所谓的安全连接用于服务器10与终端20或其
他终端30之间进行安全通信。例如,安全连接可以由服务器10与终端20或其他终端30之间
通过安全传输层协议(Transport Layer Security,TLS)/安全套接层(Secure Sockets 
Layer,SSL)协议进行双向认证并建立。
[0132] 本申请实施例中将终端即将驶入的管辖区域的V2X服务器作为服务器。可选的,该服务器部署在路侧单元RSU上。
[0133] 本申请实施例中的终端20和多个其他终端30之间具有第一通信接口。该第一通信接口支持终端20和多个其他终端30之间通信。例如,第一通信接口可以为PC5接口,采用车
联网专用频段(如5.9吉赫兹(GHz))。PC5接口一般用于车到一切(vehicle to everything,
V2X)通信场景中,或者设备到设备(device to device,D2D)等可以在设备间进行直连通信
的场景。
[0134] 所谓V2X,就是车与外界进行互联互通,这是未来智能汽车、自动驾驶、智能交通运输系统的基础和关键技术。V2X将在已有的D2D技术的基础上对V2X的具体应用需求进行优
化,需要进一步减少V2X设备的接入时延,解决资源冲突问题。
[0135] V2X具体又包括车与车(vehicle‑to‑vehicle,V2V)、车与路侧基础设施(vehicle‑to‑infrastructure,V2I)、车与行人(vehicle‑to‑pedestrian,V2P)的直接通信,以及车与
网络(vehicle‑to‑network,V2N)的通信交互等几种应用需求。如图1所示,V2V指的是车辆
间的通信。V2P指的是车辆与人(包括行人、骑自行车的人、司机、或乘客)的通信;V2I指的是
车辆与网络设备的通信,网络设备例如路侧单元(road side unit,RSU),另外还有一种V2N
可以包括在V2I中,V2N指的是车辆与基站/网络的通信。RSU还可以为该系统中的各个终端
提供各类服务信息和数据网络的接入,例如,以终端为车辆为例,例如,RSU还可以为该系统
中的各个终端提供不停车收费、车内娱乐等功能都极大的提高了交通智能化。
[0136] 其中,V2P可以用做给道路上行人或非机动车安全警告。通过V2I,车辆可以与道路甚至其他基础设施,例如交通灯、路障等,进行通信,获取交通灯信号时序等道路管理信息。
V2V可以用做车辆间信息交互和提醒,最典型的应用是用于车辆间防碰撞安全系统。V2N是
目前应用最为广泛的车联网形式,其主要功能是使车辆通过移动网络,连接到云服务器,使
用云服务器提供的导航、娱乐、或防盗等应用功能。
[0137] 终端可以为终端设备,包括向用户提供语音和/或数据连通性的设备,具体的,包括向用户提供语音的设备,或包括向用户提供数据连通性的设备,或包括向用户提供语音
和数据连通性的设备。例如可以包括具有无线连接功能的手持式设备、或连接到无线调制
解调器的处理设备。该终端设备可以经无线接入网(radio access network,RAN)与核心网
进行通信,与RAN交换语音或数据,或与RAN交互语音和数据。该终端设备可以包括用户设备
(user equipment,UE)、无线终端设备、移动终端设备、设备到设备通信(device‑to‑
device,D2D)终端设备、车到一切(vehicle to everything,V2X)终端设备、机器到机器/机
器类通信(machine‑to‑machine/machine‑type communications,M2M/MTC)终端设备、物联
网(internet  of things,IoT)终端设备、订户单元(subscriber unit)、订户站
(subscriber station),移动站(mobile station)、远程站(remote station)、接入点
(access point,AP)、远程终端(remote terminal)、接入终端(access terminal)、用户终
端(user terminal)、用户代理(user agent)、或用户装备(user device)等。例如,可以包
括移动电话(或称为“蜂窝”电话),具有移动终端设备的计算机,便携式、袖珍式、手持式、计
算机内置的移动装置等。例如,个人通信业务(personal communication service,PCS)电
话、无绳电话、会话发起协议(session initiation protocol,SIP)话机、无线本地环路
(wireless local loop,WLL)站、个人数字助理(personal digital assistant,PDA)、等设
备。还包括受限设备,例如功耗较低的设备,或存储能力有限的设备,或计算能力有限的设
备等。例如包括条码、射频识别(radio frequency identification,RFID)、传感器、全球定
位系统(global positioning system,GPS)、激光扫描器等信息传感设备。
[0138] 作为示例而非限定,在本申请实施例中,该终端还可以是可穿戴设备。可穿戴设备也可以称为穿戴式智能设备或智能穿戴式设备等,是应用穿戴式技术对日常穿戴进行智能
化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直
接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种
硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能
设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:智能手表或
智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类
进行体征监测的智能手环、智能头盔、智能首饰等。
[0139] 而如上介绍的各种终端,如果位于车辆上(例如放置在车辆内或安装在车辆内),都可以认为是车载终端设备,车载终端设备例如也称为车载单元(on‑board unit,OBU)。
[0140] 本申请实施例提供的方法和装置,可以应用于终端设备或网络设备,该终端设备或网络设备包括硬件层、运行在硬件层之上的操作系统层,以及运行在操作系统层上的应
用层。该硬件层包括中央处理器(central processing unit,CPU)、内存管理单元(memory 
management unit,MMU)和内存(也称为主存)等硬件。该操作系统可以是任意一种或多种通
过进程(process)实现业务处理的计算机操作系统,例如,Linux操作系统、Unix操作系统、
Android操作系统、iOS操作系统或windows操作系统等。该应用层包含浏览器、通讯录、文字
处理软件、以及即时通信软件等应用。并且,在本申请实施例中,传输信号的方法的执行主
体的具体结构,本申请实施例并未特别限定,只要能够通过运行记录有本申请实施例的传
输信号的方法的代码的程序,以根据本申请实施例的传输信号的方法进行通信即可,例如,
本申请实施例的无线通信的方法的执行主体可以是终端设备或网络设备,或者,是终端设
备或网络设备中能够调用程序并执行程序的功能模块。
[0141] 此外,本申请实施例的各个方面或特征可以实现成方法、装置或使用标准编程和/或工程技术的制品。本申请中使用的术语“制品”涵盖可从任何计算机可读器件、载体或介
质访问的计算机程序。例如,计算机可读存储介质可以包括,但不限于:磁存储器件(例如,
硬盘、软盘或磁带等),光盘(例如,压缩盘(compact disc,CD)、数字通用盘(digital 
versatile disc,DVD)等),智能卡和闪存器件(例如,可擦写可编程只读存储器(erasable 
programmable read‑only memory,EPROM)、卡、棒或钥匙驱动器等)。另外,本文描述的各种
存储介质可代表用于存储信息的一个或多个设备和/或其它机器可读介质。术语“机器可读
介质”可包括但不限于,无线信道和能够存储、包含和/或承载指令和/或数据的各种其它介
质。
[0142] 如图1所示,图1示出了本申请实施例提供的一种场景,如图1所示,以终端20为标识为X的车辆(简称:车辆X),其他终端30为标识为Y的车辆(简称:车辆Y),车辆X和车辆Y采
用V2X通信为例,车辆X可以向位于其周围的车辆Y在侧行链路资源上发送对话框50中的侧
行链路数据(例如,侧行链路数据可以为车辆X的坐标数据),以便车辆Y接收到车辆X的坐标
数据后,根据车辆X的坐标数据判断与车辆X与车辆Y之间的相对位置,结合车辆传感器对车
道,周边物体的感知和定位,从而实现包括前向碰撞预警、盲区/变道辅助、紧急制动预警、
逆向超车碰撞预警、交叉路口碰撞预警、左转辅助等多种功能。当然,车辆Y也可以向车辆X
发送车辆Y的坐标数据。对应于V2V场景下,车辆X或车辆Y需要随时广播自车的坐标数据,从
而形成了连续轨迹。但是,可能存在恶意车辆(例如,图1中的未认证车辆)或专门的伪造的
恶意路侧监听设备有意监听收集周围车辆的广播信道获得连续坐标等敏感数据。因此在这
种情况下,需要对V2V广播的坐标数据进行保护。图1中的未认证车辆可以看做未在服务器
10中注册的车辆,或者度量值不符合标准度量值的车辆。
[0143] 图1所示的场景仅为举例,其他终端之间通信的场景也适用于本申请方案。
[0144] 在介绍本申请实施例之前,首先对本申请实施例所涉及的技术背景进行介绍说明。
[0145] 为了加密坐标数据,一种加密方案的流程如下所示:前提是广播中心和每个终端(例如,车辆)均配备公钥和与公钥对应的私钥。
[0146] 1、车辆A生成广播加密密钥Ka。2、车辆A使用加密密钥Ka加密第一消息m,得到EKa(m)。3、车辆A获得车辆A附近的多个车辆的标识,车辆A根据多个车辆的标识查询多个车辆
的公钥,并生成n个加密消息(n为多个车辆的数量):Epk1(Ka),Epk2(Ka),Epk3(Ka),…,
Epkn(Ka),每个加密消息中包括EKa(m)以及采用接收端车辆的公钥加密的广播密钥Ka。4、
多个车辆中的任一个车辆查询加密消息包中的车辆的标识,用自己的私钥解密Ka,然后用
Ka解密EKa(m)便可以得到第一消息m。
[0147] 或者,其他广播加密方案大多是在减少传输包数量和存储的参数数量等方面做改进,比如提前公开参数N,发送参数M,由参数N和参数M来恢复加密密钥。只有实现授权的合
法终端才能通过接收到的参数M和实现分配的参数来恢复加密密钥。
[0148] 但是,在V2V场景下,由于车辆A广播第一消息的对象随机,周边接收车辆随时都会变化,因此车辆A要寻找合适的广播对象,并根据广播对象的标识生成相应的广播消息,需
要额外的通信和计算开销,如识别周边车辆,获取车辆的标识或属性信息,向周边车辆发送
加密密钥。因此,该加密方案带来的计算和存储开销会非常大。
[0149] 另一种加密方案如图2所示,协调服务器来协助车辆之间数据安全交换,协调服务器借助验证服务器,对车辆的安全性进行验证。车辆将信息发送到协调服务器,包括:传感
器数据、验证数据、对传感器信息或验证数据的签名(使用车辆可信执行环境(Trusted 
Execution Environment,TEE)的签名密钥)。协调服务器对验证数据进行验证,成功后将传
感器数据发送到远端车辆。该方案适用于远程救援,发送信息到远程救援车辆,V2X中点对
点的通信,不适用于自动驾驶V2V的广播场景。对于自动驾驶类V2V应用,原始设备制造商
(Original Equipment Manufacturer,OEM)车企希望尽量减少通信模块的依赖性,以免增
加额外成本。
[0150] 再一种加密方案如图3所示,车辆a向服务器发起注册请求,获取V2X场景下的通信密钥。服务器生成与该车辆a关联的通信密钥a。服务器保存该通信密钥a与该车辆a的标识
信息之间的关联关系。服务器向车辆a返回通信密钥a。车辆a保存通信密钥a。在应用阶段,
车辆a使用通信密钥a加密消息Q并广播,周边车辆b、车辆c、车辆d接收到加密消息Q后,各自
去服务器查询车辆a的通信密钥a,服务器在数据库中根据车辆a的标识信息查询车辆a的通
信密钥a,分别向车辆b、车辆c、车辆d返回车辆a的通信密钥a,车辆b、车辆c、车辆d获得车辆
a的通信密钥a后,能够解密加密消息Q,得到消息Q。该方案中当一个车辆同时获得多个不同
车辆的加密消息时,使得车辆的实现复杂,开销大,在车辆密集时存储计算开销大。
[0151] 如图4所示,图4示出了本申请实施例中的一种通信设备的结构示意图。本申请实施例中的第一终端装置、服务器的结构可以参考图4所示的通信设备的结构。该通信设备包
括处理器41,通信线路44以及至少一个通信接口(图4中仅是示例性的以包括通信接口43为
例进行说明)。
[0152] 可选的,该通信设备还可以包括存储器42。
[0153] 处理器41可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application‑specific integrated circuit,ASIC),或一个或多
个用于控制本申请方案程序执行的集成电路。
[0154] 通信线路44可包括一通路,在上述组件之间传送信息。
[0155] 通信接口43,用于与其他装置进行信息交互,例如:使用任何收发器一类的装置,用于与其它设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无
线局域网(wireless local area networks,WLAN)等。
[0156] 存储器42可以是只读存储器(read‑only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信
息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically 
erasable programmable read‑only memory,EEPROM)、只读光盘(compact disc read‑
only memory,CD‑ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用
光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指
令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器可以是独立存在,通过通信线路44与处理器相连接。存储器也可以和处理器集成在
一起。
[0157] 其中,存储器42用于存储执行本申请方案的计算机执行指令,并由处理器41来控制执行。处理器41用于执行存储器42中存储的计算机执行指令,从而实现本申请下述实施
例提供的一种通信方法。
[0158] 可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
[0159] 在具体实现中,作为一种实施例,处理器41可以包括一个或多个CPU,例如图4中的CPU0和CPU1。
[0160] 在具体实现中,作为一种实施例,通信设备可以包括多个处理器,例如图4中的处理器41和处理器45。这些处理器中的每一个可以是一个单核(single‑CPU)处理器,也可以
是一个多核(multi‑CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处
理数据(例如计算机程序指令)的处理核。
[0161] 在本申请实施例中,一种通信方法的执行主体的具体结构,本申请实施例并未特别限定,只要可以通过运行记录有本申请实施例的一种通信方法的代码的程序,以根据本
申请实施例的一种通信方法进行通信即可。下述实施例以一种通信方法的执行主体为第一
终端装置、第二终端装置、以及服务器为例进行描述。
[0162] 需要指出的是,本申请各实施例之间可以相互借鉴或参考,例如,相同或相似的步骤,方法实施例、装置实施例或系统实施例之间,均可以相互参考,不予限制。
[0163] 结合图1,如图5所示,图5示出了本申请实施例提供的一种通信方法的交互实施例,该方法包括:
[0164] 步骤501、第一终端装置向服务器10发送第一请求消息,相应的,服务器10接收来自第一终端装置的第一请求消息。该第一请求消息用于请求服务器10分配第一服务对应的
加密密钥,该第一请求消息包括第一服务的标识以及第一终端装置的标识。
[0165] 结合图1,示例性的,第一终端装置可以为终端20或者为设置在终端20中的能够实现终端20的处理功能或通信功能的部件(例如,终端内部的电路系统)。例如,第一终端装置
可以为车辆,该车辆具有通信功能。第一终端装置也可以为车辆中的处理装置,该处理装置
可以通过车辆的接口电路(例如,与外界通信的电路)与服务器20或第二终端装置通信。例
如,接口电路可以为远程信息处理器(Telematics BOX,T‑BOX)。又或者第一终端装置可以
为车载设备。例如,车载设备可以为车载通讯盒子(telematics box,T‑BOX)。再或者,第一
终端装置可以为T‑BOX中的芯片,则第一终端装置可以利用接口电路将第一消息或者第一
请求消息或者第二请求消息等发送给该芯片的天线,以由天线将第一消息或者第一请求消
息或者第二请求消息发送出去。示例性的,T‑BOX可以包括蜂窝网通讯模块、V2X通讯模块和
处理器。蜂窝网通讯模块可以是2G、3G、4G或5G网络的通讯模块。V2X通讯模块可以是LTE‑
V2X或5G‑V2X。在一个实施例中,T‑BOX还包括全球导航卫星系统(global navigation 
satellite,GNSS)和航位推算(dead reckoning,DR)通讯模块。T‑BOX还通过V2N与基站进行
通信,经由基站与服务器和第二终端装置进行通信。
[0166] 当然,本申请实施例中涉及到的服务器也可以为应用于服务器10中的能够实现服务器功能的芯片或部件,本申请实施例对此不做限定。
[0167] 应理解,服务器10上可以部署有第一服务,或者服务器10上虽然未部署第一服务,但是服务器10可以管理第一服务对应的加密密钥。
[0168] 作为一种可能的实现方式,本申请实施例提供的第一请求消息中包括指示信息a,该指示信息a用于请求服务器10分配第一服务对应的加密密钥。
[0169] 示例性的,第一终端装置的标识用于识别第一终端装置。以第一终端装置为车辆为例,第一终端装置的标识可以为车辆识别码或车载终端设备的识别码。第一服务的标识
用于识别第一服务。
[0170] 步骤502、服务器10根据第一服务的标识以及第一终端装置的标识确定第一服务对应的加密密钥。例如,加密密钥由第一服务的标识确定。
[0171] 步骤503、服务器10向第一终端装置发送第一响应消息,相应的,第一终端装置接收来自服务器10的第一响应消息。
[0172] 具体的,本申请实施例中步骤503可以通过以下方式实现:服务器10使用与第一终端装置协商的会话密钥,加密传输第一服务对应的加密密钥,或使用服务器10和第一终端
装置双方建立的安全连接向第一终端装置传输第一服务对应的加密密钥。
[0173] 其中,第一响应消息包括第一服务对应的加密密钥。例如,第一响应消息包括第一服务的标识以及加密密钥。或者第一响应消息包括加密密钥,本申请实施例对此不做限定。
所谓第一服务对应的加密密钥可以理解为:第一服务的标识或者第一服务与加密密钥关
联。
[0174] 本申请实施例中不同服务可用对应不同的加密密钥,服务可以对应某个应用场景,不同服务可能对应不同的应用场景。如该服务a针对车道级辅助驾驶场景,由加密密钥a
由该服务a的标识确定,那么使用该服务a的一个或多个终端装置均使用相同的加密密钥a。
如另一服务b对应车队编队行驶场景,则服务b与服务a的标识不同,则服务a对应的加密密
钥a和服务b对应的加密密钥b不同。这样可以针对服务场景或功能配置不同的加密密钥,增
加灵活性。
[0175] 可以理解的是,本申请实施例中第一信息可以为第一服务对应的场景下终端装置需要加密的信息。
[0176] 本申请实施例提供一种安全通信方法,该方法中第一服务对应的加密密钥由服务器管理,第一终端装置利用第一请求消息请求服务器分配第一服务对应的加密密钥,然后
接收来自服务器的第一服务对应的用于加密第一信息的加密密钥。这样不仅可以实现在
V2V车道级辅助驾驶应用场景下,利用加密密钥对第一信息等敏感数据的加密。还可以实现
加密密钥的分配和采用加密密钥进行安全通信的过程解耦。一方面,由第一终端装置从服
务器处获取加密密钥可以减少第一终端装置计算和存储的开销,节省第一终端装置计算生
成加密密钥的过程,提高时延,满足车道级辅助驾驶对通信时延的要求。再者由服务器分配
加密密钥更有利于进行加密密钥的统一维护和更新,减少了第一终端装置进行加密密钥管
理的负担,便于应用层控制,有利于推广使用。另一方,加密密钥与第一服务的标识对应可
以针对V2X下不同应用场景进行配置。
[0177] 在一种可能的实施例中,本申请实施例提供的方法在步骤501之前还可以包括:第一终端装置注册服务器10上的第一服务,以及建立与服务器10之间的安全连接过程。
[0178] 在一种可能的实现方式中,第一终端装置注册服务器10上的第一服务,以及建立与服务器10之间的安全连接过程的具体实现可以参考如图9中的步骤901~步骤904中的描
述,此处不再赘述。
[0179] 在一种可能的实施例中,本申请实施例提供的方法还可以包括:服务器10确定加密密钥对应的授权码。服务器10向第一终端装置发送加密密钥对应的授权码。相应的,该第
一终端装置接收来自服务器10的该加密密钥对应的授权码。
[0180] 示例性的,本申请实施例中的授权码由第一终端装置的标识以及第一终端装置的度量值中的一个或多个确定。
[0181] 一种示例,本申请实施例中的加密密钥对应的授权码由第一终端装置的标识确定。例如,服务器10或密钥管理装置根据第一终端装置的标识以及KDF生成加密密钥对应的
授权码。
[0182] 在密钥管理装置生成授权码的情况下,服务器10可以通过以下方式a或方式b从密钥管理装置处获取加密密钥对应的授权码。
[0183] 方式a、服务器10根据第一终端装置的标识向该密钥管理装置请求该授权码,以获取授权码。方式b、密钥管理装置生成授权码之后在服务器10上配置授权码和第一终端装置
的标识之间的授权码映射关系,后续服务器10根据第一终端装置的标识通过查询授权码映
射关系得到授权码。
[0184] 示例性的,Auth_code=KDF(V_ID)。所谓加密密钥对应的授权码(Auth_code)可以看作访问或者获取该加密密钥的密码。其中,Auth_code表示授权码。KDF表示密钥派生函
数。V_ID表示第一终端装置的标识。
[0185] 另一种示例,在服务器10具有第一终端装置的度量值的情况下,如果第一终端装置合法,本申请实施例中的加密密钥对应的授权码由第一终端装置的度量值确定。例如,服
务器10或密钥管理装置根据第一终端装置的度量值以及KDF生成加密密钥对应的授权码。
密钥管理装置生成授权码的情况下,服务器10获取加密密钥对应的授权码的方式可以参考
上述方式a或方式b。
[0186] 再一种示例,在服务器10具有第一终端装置的度量值的情况下,如果根据第一终端装置的度量值确定第一终端装置合法,本申请实施例中的加密密钥对应的授权码也可以
由第一终端装置的度量值以及第一终端装置的标识确定。例如,服务器10或密钥管理装置
利用KDF,第一终端装置的度量值、以及第一终端装置的标识生成加密密钥对应的授权码。
例如,Auth_code=KDF(度量值,V_ID)。
[0187] 在一种可能的实现方式中,为了节约服务器10和第一终端装置之间的信令开销,服务器10可以利用第一响应消息向第一终端装置发送加密密钥对应的授权码。当然,加密
密钥对应的授权码和第一服务对应的加密密钥可以携带在不同的消息中,本申请实施例对
此不做限定。
[0188] 需要说明的是,本申请实施例中生成加密密钥的KDF和生成授权码的KDF可以相同,也可以不相同,本申请实施例对此不做限定。
[0189] 为了提高加密密钥的安全性,本申请实施例中第一请求消息中除了携带第一终端装置的标识以及第一服务的标识外,还可以携带其他参数(例如,第一终端装置的度量值,
位置信息中的一个或多个组合)。由于第一请求消息的内容不同,服务器根据第一请求消息
确定加密密钥的过程存在差异,因此,下述将分别介绍:
[0190] 示例1、第一请求消息中还可以携带第一终端装置的度量值。该度量值用于验证第一终端装置是否合法。
[0191] 本申请实施例中的步骤502可以通过以下方式实现:在根据度量值确定第一终端装置合法的情况下,服务器10根据第一服务的标识以及第一终端装置的标识,确定第一服
务对应的加密密钥。
[0192] 示例性的,第一终端装置的度量值与标准度量值相同或者第一终端装置的度量值存在于标准度量列表中,则服务器确定第一终端装置合法。第一终端装置合法则意味着第
一终端装置可以通过服务器10的验证,从而具有从服务器10处获取第一服务对应的加密密
钥的资格。本申请实施例中的标准度量列表可以包括一个或多个标准度量值。
[0193] 应理解,服务器10中可以配置该标准度量值或者标准度量列表。
[0194] 举例说明,标准度量值为a,如果第一终端装置的度量值也为a,则表示第一终端装置合法。或者标准度量列表包括a、b、c、d,则服务器10也可以确定第一终端装置合法。
[0195] 当然,该标准度量值如果为一个范围值时,如果第一终端装置的度量值位于标准度量值的范围内时,则表示第一终端装置合法。如果第一终端装置的度量值位于标准度量
值的范围外时,则表示第一终端装置非法。
[0196] 如果第一终端装置的度量值与标准度量值不相同或者第一终端装置的度量值不存在于标准度量列表中,则服务器确定第一终端装置非法。
[0197] 结合上列,如果第一终端装置的度量值为e,则不存在于标准度量列表中,则表示第一终端装置非法。
[0198] 本申请实施例中第一终端装置不合法则意味着第一终端装置未通过服务器10的验证,换言之第一终端装置未在服务器10侧完成注册认证,或者第一终端装置不具有请求
第一服务对应的加密密钥的权限。
[0199] 可以理解的是,即使根据第一终端装置的度量值确定第一终端装置合法,在第一终端装置具备开通第一服务的条件的情况下,第一终端装置才可以从服务器10处获得第一
服务对应的加密密钥。换言之,对于通过服务器10验证的合法终端装置,如果该合法终端装
置不具有开通第一服务的条件,则该服务器10也可以拒绝第一终端装置从服务器10处获得
第一服务对应的加密密钥。当然,对于未通过服务器10验证的非法终端装置,服务器10可能
会拒绝为其分配第一服务对应的加密密钥。
[0200] 需要说明的是,根据度量值确定第一终端装置是否合法的动作可以由服务器10执行,也可以由服务器10以外的动作执行。在由服务器10以外的动作确定第一终端装置是否
合法的情况下,服务器10可以向该装置发送第一终端装置的度量值,之后,该装置向服务器
10反馈该第一终端装置是否合法的响应。
[0201] 本申请实施例中第一终端装置的度量值可以携带在第一请求消息中,当然该第一终端装置的度量值也可以单独发送给服务器10,本申请实施例对此不做限定。
[0202] 可以理解的是,在第一终端装置向服务器10发送第一终端装置的度量值的情况下,本申请实施例提供的方法还可以包括:第一终端装置执行可信度量,得到第一终端装置
的度量值。
[0203] 一方面,本申请实施例中第一终端装置可以主动执行可信度量,得到第一终端装置的度量值,并发送给服务器10。另一方面,第一终端装置也可以在接收到基于服务器10的
可信环境认证要求之后再向服务器10提供第一终端装置的度量值。例如,在第一终端装置
发送第一请求消息之前(例如,第一终端装置与服务器10建立安全连接之后)。又例如,服务
器10在接收到来自第一终端的装置的第一请求消息之后,向第一终端装置发送可信环境认
证要求,本申请实施例对此不做限定。当然,第一终端装置和服务器10之间也可以协商或者
协议预定义第一终端装置发送可信度量的时机(例如,第一终端装置向服务器10发送第一
请求消息之后或者发送第一请求消息之前执行可信度量)。在第一终端装置和服务器10之
间协商或者协议预定义第一终端装置执行可信度量的时机的情况下,服务器10向第一终端
装置发送可信环境认证要求的步骤可以省略。
[0204] 示例2、第一请求消息中还可以包括第一终端装置的位置信息。相应的,加密密钥由第一服务的标识以及第一终端装置的位置信息确定。在这种情况下,同一个服务在不同
区域对应的加密密钥不同。
[0205] 例如,服务器10根据第一服务的标识以及第一终端装置的位置信息确定加密密钥。
[0206] 示例性的,本申请实施例中的服务器10根据第一服务的标识以及第一终端装置的位置信息确定可以通过以下方式实现:
[0207] 一种实现:服务器10向其他装置(例如,密钥管理装置)发送第一服务的标识以及第一终端装置的位置信息,以请求密钥管理装置根据第一服务的标识以及第一终端装置的
位置信息生成加密密钥。之后,密钥管理装置向服务器10发送第一服务对应的加密密钥。
[0208] 另一种实现:服务器10根据第一服务的标识以及第一终端装置的位置信息生成加密密钥。
[0209] 例如,加密密钥满足kb=KDF(第一服务的标识,区域标签)。
[0210] 具体的,服务器10根据第一终端装置的位置信息,查询第一终端装置对应的地域标签。然后服务器10根据第一服务的标识、区域标签以及KDF生成第一服务对应的加密密
钥。需要说明的是,引入第一终端的位置信息确定第一服务的加密密钥,可以使得第一服务
对应的加密密钥在第一终端的位置信息对应的区域标签指示的范围内使用。这是,第一服
务在不同的范围内可能对应不同的加密密钥。
[0211] 需要说明的是,本申请实施例中第一终端装置内具有全球定位系统(Global Positioning System,GPS)或全球导航卫星系统(Global Navigation Satellite System,
GNSS),从而第一终端装置可以上报第一终端装置的位置信息。第一终端装置的位置信息用
于确定第一终端装置的位置。例如,第一终端装置的位置信息可以WGS84坐标或GCJ‑02坐
标。其中,WGS84指:World Geodetic System 1984是为GPS全球定位系统使用而建立的坐标
系统,一种全球定位系统(GNSS输出的坐标)。
[0212] 在一种可能的实现方式中,本申请实施例中的步骤502可以通过以下方式实现:服务器10根据第一终端装置的标识确定第一终端装置具有开通第一服务的条件。服务器10根
据第一服务的标识确定第一服务对应的加密密钥。
[0213] 一种示例,服务器10根据第一终端装置的标识判断第一终端装置是否具备开通第一服务的条件,可以依据该第一终端装置的标识查询第一终端装置的车型,版本和主要功
能,依据功能是否支持自动驾驶应用场景作为是否具有开通第一服务的条件。例如,第一终
端装置支持自动驾驶应用场景,则第一终端装置具有开通第一服务的条件。
[0214] 举例说明,本申请实施例中服务器10根据第一服务的标识确定第一服务对应的加密密钥可以通过以下方式1或方式2实现:
[0215] 方式1:服务器10根据密钥派生函数(key derivation function,KDF)以及第一服务的标识生成第一服务对应的加密密钥。
[0216] 举例说明,服务器10根据KDF生成随机数(nonce)。服务器10根据该随机数以及以及第一服务的标识生成加密密钥。例如,加密密钥=KDF(APP_ID,nonce)。其中,APP_ID表示
第一服务的标识。
[0217] 示例性的,服务器10生成第一服务对应的加密密钥,并建立第一服务和第一服务对应的加密密钥之间的对应关系。示例性的,该对应关系可以以表格形式存在。其中,密钥
映射关系表是指由一条或多条记录组成的数据库,其中每条记录包括一个元组:(APP_ID,
V_ID,kb)。APP_ID表示第一服务的标识。V_ID表示第一终端装置的标识,kb表示加密密钥。
[0218] 方式2:服务器10根据第一服务的标识以及密钥映射关系表确定第一服务对应的加密密钥。
[0219] 可以理解的是,如果第一终端装置请求第一服务对应的加密密钥时,如果服务器10中具有第一服务对应的加密密钥(例如,服务器10中存储有第一服务的标识和加密密钥
之间的映射关系),则服务器10可以以方式2确定第一服务对应的加密密钥。如果第一终端
装置请求第一服务对应的加密密钥时,服务器10中不具有第一服务对应的加密密钥,则服
务器10可以以方式3确定第一服务对应的加密密钥。
[0220] 需要说明的是,本申请实施例中第一服务对应的加密密钥可以由服务器10生成,也可以由密钥管理装置生成之后配置在服务器10上,本申请实施例对此不做限定。例如,服
务器10向密钥管理装置发送第一服务对应的标识,以请求密钥管理装置生成第一服务对应
的加密密钥。之后,服务器10从密钥管理装置处获取第一服务对应的加密密钥。
[0221] 需要说明的是,如果第一终端装置不具备开通第一服务的条件,则服务器10向第一终端装置发送拒绝请求消息。可选的,该拒绝请求消息中还可以携带第一终端装置不具
备开通第一服务的原因。
[0222] 需要说明的是,上述步骤501~503可以适用于不同的场景,例如,步骤501~步骤503可以位于第一终端装置请求服务器10生成第一服务对应的加密密钥之后(对应场景
二)。或者步骤501~步骤503即为第一终端装置请求服务器10生成第一服务对应的加密密
钥的过程(对应场景一)。基于此,下述将分别介绍:
[0223] 场景一、
[0224] 如图6所示,为本申请实施例提供的一个实施例,该实施例中的步骤601~步骤603同步骤501~步骤503。该实施例中在步骤603之后还可以包括:
[0225] 步骤604、第一终端装置将加密密钥存储在第一终端装置中。
[0226] 其中,为确保加密密钥存储的安全性,第一终端装置可以将加密密钥存储在第一终端中用于存储加密密钥的部件(例如,安全存储硬件)中。安全存储硬件提供访问控制机
制来确保加密密钥不能非法访问。
[0227] 步骤605、第一终端装置更新第一服务的状态为第一状态,该第一状态表示第一服务具有对应的加密密钥。
[0228] 本申请实施例中第一服务的状态可以为第一状态或第二状态,第二状态表示第一服务不具有对应的加密密钥。
[0229] 其中,更新服务的状态是指通过改变服务的状态的标志位来更新状态标志,如第一状态为“1”表示第一服务可用或者第一终端装置开通该第一服务,或者第一服务具有对
应的加密密钥。第二状态可用为“0”表示第一服务不可用,或者第一终端装置开通该第一服
务,或者第一服务不具有对应的加密密钥。
[0230] 在一种可能的实现方式中,当第一终端装置需要发送第一信息时,如图6所示,本申请实施例提供的方法在步骤605之后还可以包括:
[0231] 步骤606、在第一服务的状态为第一状态的情况下,第一终端装置根据第一服务的标识,从第一终端装置中存储加密密钥的部件获取加密密钥。
[0232] 示例性的,如果第一终端装置获取到了加密密钥对应的授权码,则本申请实施例中的步骤606可以通过以下方式实现:在第一服务的状态为第一状态的情况下,第一终端装
置生成第一授权码。第一授权码与加密密钥对应的授权码相同,第一终端装置根据第一服
务的标识,从第一终端装置中存储加密密钥的模块获取加密密钥。
[0233] 示例性的,第一终端装置可以通过以下方式生成第一授权码。例如,第一终端装置根据第一终端装置的标识以及KDF生成第一授权码。又例如,第一终端装置根据第一终端装
置的标识、第一终端装置的度量值以及KDF生成第一授权码。再或者,第一终端装置根据第
一终端装置的度量值以及KDF生成第一授权码。
[0234] 可以理解的是,服务器10处和第一终端装置侧具有相同的KDF。
[0235] 由于授权码根据第一终端装置的标识生成,每个终端装置的标识不同,相当于为每个终端装置配置一个访问加密密钥的口令。可以增加第一终端装置访问加密密钥的安全
性。此外,无需实现可信度量,降低实现难度。
[0236] 步骤607、第一终端装置发送第一消息,该第一消息包括第一服务的标识以及采用加密密钥加密后的第一信息。
[0237] 示例性的,本申请实施例中的步骤607可以通过以下方式实现:第一终端装置广播第一消息。这样可以使得距离第一终端装置预设范围内(例如,1公里,500米,1.5公里)内的
一个或多个其他终端装置(例如,第二终端装置)接收到第一消息。
[0238] 例如,第二终端装置可以为图1所示的其他终端30或者为设置在其他终端30中的能够实现终端20的功能的芯片或其他部件。
[0239] 示例性的,第一信息可以为第一终端装置的位置信息。例如,第一终端装置的位置信息可以为第一终端装置的坐标数据。当然,第一信息还可以包括第一终端装置的车速、转
向、变换车道、停车、左转向、或者右转向等信息,本申请实施例对此不做限定。
[0240] 本申请实施例提供的方法步骤607之前还可以包括:第一终端装置采用加密密钥加密第一信息。例如,第一信息的加密可以采用标准的对称加密算法进行,建议实际使用国
密对称算法SM4,或使用国际标准对称算法AES。
[0241] 本申请实施例中的第一消息可以为任意两个车辆之间通信的消息,示例性的,第一消息可以为基本安全信息(basic safety messsage,BSM)。
[0242] 步骤608、第二终端装置根据第一服务的标识,从服务器10处获取第一服务对应的加密密钥。
[0243] 关于步骤608的实现可以参考第一终端装置从服务器10处获取第一服务对应的加密密钥的过程,具体的,将由第一终端装置执行的从服务器10处请求第一服务对应的加密
密钥过程中的第一终端装置替换为第二终端装置即可,后续不再赘述。
[0244] 在一种可能的实现方式中,如果加密密钥与授权码对应,则第一终端装置还可以向第二终端装置发送加密密钥对应的授权码。这时,第二终端装置向服务器10发送的密钥
请求消息中除了包括第二终端装置的标识、第一服务的标识外,还可以携带加密密钥对应
的授权码。
[0245] 在一种可能的实现方式中,如果加密密钥由第一服务的标识和第一终端装置的位置信息确定,则第一终端装置还可以向第二终端装置发送第一终端装置对应的区域标签。
这时,第二终端装置向服务器10发送的密钥请求消息中除了包括第二终端装置的标识、第
一服务的标识外,还可以携带第一终端装置对应的区域标签。或者第二终端装置向服务器
10发送的密钥请求消息中除了包括第二终端装置的标识、第一服务的标识外,还可以携带
第二终端装置的位置信息。这样当第二终端装置的位置信息指示第二终端装置位于区域标
签指示的范围内时,第二终端装置可以从服务器10处获取到正确的加密密钥。
[0246] 步骤609、第二终端装置根据加密密钥处理加密后的第一信息,得到第一信息。
[0247] 示例性的,第二终端装置根据加密密钥解密加密后的第一信息,得到第一信息。
[0248] 场景二、
[0249] 如图7所示,为本申请实施例提供的一个实施例,该实施例中的步骤707~步骤709同步骤501~步骤503。该实施例中在步骤707之前还可以包括步骤701~步骤706:
[0250] 步骤701、第一终端装置向服务器10发送第二请求消息,相应的,服务器10接收来自第一终端装置的第二请求消息。
[0251] 其中,该第二请求消息用于请求服务器10生成第一服务对应的加密密钥,该第二请求消息包括第一服务的标识以及第一终端装置的标识。
[0252] 示例性的,第二请求消息中具有指示信息b,该指示信息b用于请求服务器生成第一服务对应的加密密钥。
[0253] 步骤702、服务器10根据第一终端装置的标识,确定第一终端装置具有开通第一服务的条件。
[0254] 步骤703、服务器10根据第一服务的标识,生成第一服务对应的加密密钥。
[0255] 步骤704、服务器10向第一终端装置发送第二响应消息。相应的,该第一终端装置接收来自服务器10的第二响应消息。该第二响应消息用于表示第一服务具有对应的加密密
钥。
[0256] 步骤705、第一终端装置根据第二响应消息,更新第一服务的状态为第一状态,该第一状态表示所述第一服务具有对应的加密密钥。
[0257] 步骤706、第一终端装置确定第一服务的状态为第一状态。
[0258] 在一种可能的实施例中,如图7所示,本申请实施例提供的方法在步骤709之后还可以包括步骤710~步骤712。其中,步骤710~步骤712同步骤607~步骤609,此处不再赘
述。
[0259] 为了提高第一服务对应的加密密钥的安全性,可以定期更新加密密钥。基于此,如图8所示,本申请实施例提供一种密钥更新方法,该方法包括:
[0260] 步骤801、服务器10根据密钥更新策略,确定第一服务对应的密钥更新种子。该密钥更新种子用于更新该加密密钥。
[0261] 其中,密钥更新策略是由服务具体定义,可以按照服务的注册数量和注册方式,以及服务的安全性要求定义密钥更新的频率。比如服务a对应的密钥更新周期比服务b对应的
密钥更新周期短。其中,服务a的安全要求高于服务b的安全要求。
[0262] 其中,密钥更新种子可以为随机数seed,用于KDF的输入,生成新的加密密钥。
[0263] 步骤802、服务器10向第一终端装置发送第一服务对应的密钥更新种子。相应的,第一终端装置接收来自服务器10的第一服务对应的密钥更新种子。
[0264] 在一种可能的实现方式中,本申请实施例中服务器10可以主动向第一终端装置发送第一服务对应的密钥更新种子以及版本号信息。
[0265] 在一种可能的实现方式中,本申请实施例中的服务器10也可以在第一终端装置的请求下,再执行步骤802。基于此,本申请实施例提供的方法在步骤802之前还可以包括:第
一终端装置向服务器10发送密钥更新请求。相应的,服务器10接收来自第一终端装置的密
钥更新请求。该密钥更新请求用于表示第一终端装置请求更新第一服务对应的加密密钥。
例如,密钥更新请求中携带第一服务的标识。可选的,密钥更新请求中还可以携带指示信息
x。该指示信息x用于表示第一终端装置请求更新第一服务对应的加密密钥。
[0266] 本申请实施例中的第一终端装置向服务器10发送密钥更新请求之前,还可以包括:第一终端装置确定更新第一服务对应的加密密钥。
[0267] 一种示例,第一终端装置确定更新第一服务对应的加密密钥可以通过以下方式实现:第一终端装置根据第一服务对应的密钥更新周期,确定更新第一服务对应的加密密钥。
[0268] 另一种示例,第一终端装置确定更新第一服务对应的加密密钥可以通过以下方式实现:第一终端装置接收来自服务器10的密钥更新通知请求,该密钥更新通知请求用于指
示更新第一服务对应的加密密钥。第一终端装置根据密钥更新通知请求确定更新第一服务
对应的加密密钥。
[0269] 示例性的,服务器10可以按照加密密钥对应的密钥更新周期向一个或多个终端装置(包括第一终端装置)发送密钥更新通知请求。或者服务器10可以自主确定向一个或多个
终端装置(包括第一终端装置)发送密钥更新通知请求的周期。
[0270] 步骤803、第一终端装置根据该密钥更新种子以及该加密密钥,得到更新后的加密密钥。
[0271] 示例性的,更新后的加密密钥由密钥更新种子、加密密钥以及KDF确定。以更新后的加密密钥由第一终端装置确定为例,则第一终端装置可以根据公式:更新后的kb=KDF
(seed,kb_oldversion)确定更新后的加密密钥。其中,kb_oldversio表示更新前的加密密
钥。
[0272] 在一种可能的实施例中,如图8所示,本申请实施例提供的方法还可以包括:
[0273] 步骤804、服务器10向第一终端装置发送第一服务对应的版本号信息。相应的,第一终端装置接收来自服务器10的第一服务对应的版本号信息。该版本号信息用于确定更新
后的加密密钥的版本号。
[0274] 其中,版本号信息可以理解为加密密钥对应的编号或者版本号,每个更新的加密密钥在之前的版本号上加n(n为大于或等于1的整数)。例如,加密密钥更新前的版本号为
v1,则加密密钥更新后的版本号可以为v2。
[0275] 步骤805、第一终端装置根据第一服务对应的版本号信息,确定更新后的加密密钥的版本号。
[0276] 在一种可能的实现方式,在基于第一终端装置的请求,服务器10向第一终端装置发送第一服务对应的密钥更新种子的情况下,本申请实施例提供的方法还可以包括:第一
终端装置向服务器10发送第一终端装置的度量值。相应的,本申请实施例中的步骤802可以
通过以下方式实现:服务器10根据度量值确定第一终端装置合法,则服务器10根据第一服
务确定第一服务对应的密钥更新种子,然后服务器10向第一终端装置发送第一服务对应的
密钥更新种子。
[0277] 需要说明的是,本申请实施例中的图8所示的实施例可以和图5~图7所示的实施例中的任一个结合使用,例如,步骤801~步骤805位于步骤503之后。当然,第一终端装置具
有第一服务对应的加密密钥的情况下,步骤801~步骤805也可以单独使用。
[0278] 需要说明的是,上述图8所示的实施例以第一终端装置根据第一服务对应的密钥更新种子,更新加密密钥为例。当然,服务器10也可以根据第一服务对应的密钥更新种子,
更新服务器10侧存储的第一服务对应的加密密钥,这样可以保证第一终端装置侧和服务器
10侧关于第一服务对应的加密密钥相同。此外,如果第一终端装置和服务器10均更新了第
一服务对应的加密密钥,则服务器10还可以向第一终端装置发送更新后的加密密钥。对于
第一终端装置而言,从服务器10处接收到的第一服务对应的更新后的加密密钥的优先级高
于第一终端装置侧具有的第一服务对应的加密密钥。或者从服务器10处接收到的第一服务
对应的更新后的加密密钥的优先级高于由第一终端装置更新的第一服务对应的加密密钥。
[0279] 图9以第一终端装置为车辆1,第二终端装置为车辆2,服务器为V2V应用服务器、第一服务为服务1、第一信息为车辆1的坐标数据为例,示出了本申请实施例提供的一种安全
通信方法的具体流程,该安全通信方法包括:注册阶段和应用阶段,其中,注册阶段包括步
骤901~步骤908。应用阶段包括步骤909~步骤913。该方法包括:
[0280] 步骤901、车辆1向V2V应用服务器发起服务注册请求消息。相应的,V2V应用服务器接收来自车辆1的服务注册请求消息。
[0281] 其中,服务注册请求消息可以包括车辆1的身份信息。例如,车辆1的身份信息包括车辆1对应的以下信息中的一项或多项:车辆识别码、使用者的身份信息或注册需要提供的
注册码等信息。服务注册请求消息请求在V2V应用服务器处注册车辆1的身份信息。其中,注
册码可以是内置在车辆1中的唯一标识。
[0282] 步骤902、V2V应用服务器核实车辆1的身份信息后,向车辆1返回注册成功消息。相应的,车辆1接收来自V2V应用服务器的注册成功消息。
[0283] 其中,注册成功消息表示已将车辆1的身份信息成功注册在V2V应用服务器上。
[0284] 步骤903、V2V应用服务器要求建立与车辆1之间的安全连接(例如,TLS连接或SSL连接)。
[0285] 例如,步骤903可以通过以下方式实现:V2V应用服务器向车辆1发送连接建立请求,以请求建立与车辆1之间的安全连接。
[0286] 可以理解的是,步骤903也可以通过以下方式替换:车辆1请求建立与V2V应用服务器之间的安全连接,V2V应用服务器同意建立安全连接之后,V2V应用服务器向车辆1发送同
意建立安全连接响应。
[0287] 步骤904、车辆1和V2V应用服务器通过TLS/SSL进行双向认证并建立安全连接。
[0288] 其中,V2V应用服务器与车辆1之间的双向认证可以基于证书方式,也可以基于口令方式。基于口令方式则车辆1向V2V应用服务器提供步骤901中的注册码。
[0289] 一种示例,如果采用证书方式建立安全连接,则车辆1和V2V应用服务器采用标准的TLS安全协议建立安全连接。
[0290] 另一种示例,如果采用口令方式,则车辆1和V2V应用服务器基于口令双方协商一个会话密钥,可以基于PSK的密钥协商,也可以基于DH密钥协商出用于安全通信的会话密
钥。
[0291] 步骤905、车辆1向V2V应用服务器发送服务密钥申请消息。相应的,V2V应用服务器接收来自车辆1的服务密钥申请消息。其中,服务密钥申请消息包括App_ID和设备ID。
[0292] 其中,APP_ID可以唯一标识服务1,设备ID可以为唯一标识车辆1或位于车辆1上的车载终端设备的识别码,如果是车辆,则设备ID可以为车辆识别码V_ID。
[0293] 步骤906、V2V应用服务器判断该车辆1是否具备开通服务1的条件。
[0294] 其中,V2V应用服务器判断车辆1是否具备开通APP_ID标识的服务1的条件,可以依据该车辆1的识别码来查询车辆1的车型,版本和主要功能,依据功能是否支持自动驾驶应
用场景作为开通条件。
[0295] 步骤907、如果车辆1具备开通服务1的条件,则V2V应用服务器根据App_ID生成服务1对应的加密密钥kb。
[0296] 此外,V2V应用服务器生成加密密钥kb后,V2V应用服务器可以保存加密密钥kb,并建立密钥映射关系表。其中,密钥映射关系表是指由一条或多条记录组成的数据库,其中每
条记录包括一个元组:(APP_ID,V_ID,kb)。
[0297] 其中,V2V应用服务器可以采用密钥派生函数(key derivation function,KDF)生成加密密钥kb。例如,V2V应用服务器选择或预先配置KDF,生成随机数(nonce),并计算kb=
KDF(APP_ID,nonce)。
[0298] 应理解,如果车辆1不具备开通服务1的条件,则V2V应用服务器向车辆1发送拒绝请求消息。可选的,该拒绝请求消息中还可以携带车辆1不具备开通服务1的条件的原因。
[0299] 步骤908、V2V应用服务器向车辆1发送加密密钥kb。相应的,车辆1接收加密密钥kb。
[0300] 示例性的,V2V应用服务器向车辆1发送服务密钥响应消息,该服务密钥响应消息中包括加密密钥kb,或者该服务密钥响应消息中包括APP_ID以及加密密钥kb。
[0301] 具体的,本申请实施例中步骤908可以通过以下方式实现:V2V应用服务器使用之前与车辆1协商的会话密钥,加密传输加密密钥kb,或使用V2V应用服务器和车辆1双方建立
的安全连接向车辆1传输加密密钥kb。
[0302] 步骤909、车辆1存储加密密钥kb,以及将服务1的状态更新为第一状态。
[0303] 其中,为确保加密密钥kb存储的安全性,车辆1可以将加密密钥kb存储在车辆1的安全存储硬件中。
[0304] 在一种可能的实施例中,如图9所示,本申请实施例提供的方法在步骤909之后还可以包括应用阶段。该应用阶段对应步骤910~步骤916。
[0305] 步骤910、车辆1首先根据APP_ID判断该服务1的状态是否为第一状态。
[0306] 可以理解的是,在车辆1确定采用服务1对应的加密密钥加密数据之前,车辆1执行步骤910。
[0307] 步骤911、如果服务1的状态为第一状态,则车辆1访问安全存储硬件获取加密密钥kb,安全存储硬件提供访问控制机制来确保加密密钥不能被非法访问。
[0308] 需要说明的是,如果在应用阶段,车辆1确定服务1的状态为不是第一状态(例如,第二状态),则车辆1执行上述步骤901~步骤908以获取加密密钥。
[0309] 步骤912、车辆1采用加密密钥kb加密车辆1的坐标数据。
[0310] 示例性的,车辆1的坐标数据的加密可以采用标准的对称加密算法进行。例如,车辆1可以使用国密对称算法SM4,或使用国际标准对称算法AES利用加密密钥加密车辆1的坐
标数据。
[0311] 步骤913、车辆1广播V2V消息,该V2V消息中包括APP_ID和经过加密的车辆1的坐标数据,相应的,其他车辆(例如,车辆2)接收V2V消息。
[0312] 步骤914、车辆2获取V2V消息中的APP_ID,根据APP_ID判断车辆2是否注册该服务1。
[0313] 步骤915、如果车辆2注册该服务1,则车辆2获取从V2V应用服务器处获取加密密钥kb。
[0314] 关于步骤915中车辆2从V2V应用服务器处获取加密密钥kb的过程可以通过以下方式实现:车辆2向V2V应用服务器发送第三请求消息,该第三请求消息包括服务1的标识以及
车辆2的标识。第三请求消息用于请求第一服务对应的加密密钥。V2V应用服务器根据车辆2
的标识确定车辆2具有开通服务1的条件,则V2V应用服务器根据服务1的标识,从密钥映射
关系表中获取服务1对应的加密密钥kb。V2V应用服务器向车辆2发送加密密钥kb。
[0315] 步骤916、车辆2采用加密密钥kb解密经过加密的车辆1的坐标数据,得到车辆1的坐标数据。
[0316] 需要说明的是,如果注册阶段之后,车辆1不采用服务1的加密密钥加密数据,则步骤911~步骤916可以省略。
[0317] 如图10所示,图10示出了本申请实施例提供的另一种安全通信方法的具体流程,该方法与图9所示的方案的区别在于:图10所示的实施例中引入了授权码,即在注册阶段,
增加授权码的生成过程,在应用阶段,车辆1需要提供有效的授权码用于获得加密密钥kb,
其具体流程如下所示:
[0318] 步骤1001~步骤1007,同步骤901~步骤907,此处不再赘述。
[0319] 步骤1008、V2V应用服务器根据车辆1的标识获取加密密钥对应的授权码(Auth_code)。
[0320] 示例性的,授权码由车辆1的标识确定。
[0321] 本申请实施例中的步骤1008的实现可以参考上述步骤703的描述,此处不再赘述。
[0322] 步骤1009、V2V应用服务器向车辆1发送加密密钥kb和授权码。相应的,车辆1接收加密密钥kb和授权码。
[0323] 示例性的,V2V应用服务器向车辆1发送服务密钥响应消息,该服务密钥响应消息中包括加密密钥kb和授权码。或者,加密密钥kb和授权码分别通过不同的消息发送给车辆
1。
[0324] 步骤1010、车辆1存储加密密钥kb和授权码,以及将服务1的状态更新为第一状态。
[0325] 可以理解的是,车辆1存储加密密钥kb和授权码之间的对应关系,后续在应用阶段如果车辆1利用加密密钥kb加密数据时,车辆1需要提供该加密密钥kb对应的授权码(Auth_
code)才能得到加密密钥kb。如果车辆1提供的授权码与加密密钥对应的授权码(Auth_
code)不一致,则车辆1并不能访问加密密钥。
[0326] 步骤1011,同步骤910,此处不再赘述。
[0327] 步骤1012、如果服务1的状态为第一状态,则车辆1通过加密密钥kb对应的授权码获取加密密钥kb。
[0328] 步骤1013~步骤1017同步骤912~步骤916,此处不再赘述。
[0329] 在图10所示的实施例中,由于授权码根据车辆的标识生成,每辆车的标识不同,因此根据每个车辆的标识生成的授权码也不同,相当于为每辆车配置一个访问加密密钥的口
令。增加车辆1访问加密密钥的安全性。同时无需实现可信度量,降低实现难度。
[0330] 如图11所示,图11示出了本申请实施例提供的另一种安全通信方法的具体流程,该方法与图9所示的方案的区别在于:为提高对密钥访问的安全性,图11所示的实施例中还
包括车辆1执行可信度量过程,即在注册阶段,V2V应用服务器要求对车载通信模块或车辆1
进行可信度量。如果请求车辆1执行可信度量后得到的度量值与标准度量值相同,或者第一
终端装置的度量值存在于标准度量列表中,则车辆1才能通过V2V应用服务器的密钥注册申
请获得加密密钥,具体流程如下所示:
[0331] 步骤1101~步骤1104同步骤901~步骤904,此处不再赘述。
[0332] 步骤1105、V2V应用服务器向车辆1发起可信环境验证请求。该可信环境验证请求用于指示车辆1执行可信度量。
[0333] 需要说明的是,在车辆1和V2V应用服务器之间提前协商好或者协议预定义,车辆1向V2V应用服务器请求加密密钥之前需要执行可信度量,或者可信度量由车辆1自主发起,
则步骤1105可以省略。例如,本申请实施例中的可信环境验证请求中携带指示信息c,用于
指示车辆1执行可信度量。
[0334] 步骤1106、车辆1执行可信度量,生成度量值。
[0335] 步骤1107、车辆1向V2V应用服务器发送服务密钥申请消息。相应的,V2V应用服务器发接收来自车辆1的服务密钥申请消息。其中,服务密钥申请消息中包括APP_ID,V_ID以
及度量值。
[0336] 步骤1108、V2V应用服务器根据度量值验证车辆1是否合法。
[0337] 例如,度量值与标准度量值相同或者第一终端装置的度量值存在于标准度量列表内,则V2V应用服务器确定车辆1合法。如果度量值与标准度量值不相同或者不存在于标准
度量列表中,则V2V应用服务器确定车辆1不合法。
[0338] 可选的,如果车辆1合法,V2V应用服务器还需要判断车辆1是否具备开通服务1的条件,在车辆1具备开通服务1的条件时,V2V应用服务器1执行步骤1109。
[0339] 步骤1109、在根据度量值确定车辆1合法的情况下,则V2V应用服务器根据APP_ID,生成与该APP_ID对应的加密密钥kb。
[0340] 步骤1110~步骤1118,同步骤908~步骤916,此处不再赘述。
[0341] 图11描述的方案中首先车辆1执行可信度量,生成车辆1的度量值。在车辆1请求加密密钥阶段,车辆1向V2V应用服务器提供车辆1的标识、度量值以及第一服务的标识。然后
V2V应用服务器根据度量值验证车辆1合法,以及车辆1具备开通服务1的条件后,生成加密
密钥。这样可以提高V2V密钥配置阶段的安全性,防止恶意程序非授权获取加密密钥。
[0342] 由于车辆1执行可信度量是对访问加密密钥的服务1(例如,应用程序和运行应用程序依赖库)等关键组件进行完整性验证,远程验证由V2V应用服务器发起,要求车辆1在本
地进行可信度量,并采用白名单机制(或预先由应用服务商定义的可信值)来对可信度量结
果进行验证,确保访问密钥的应用程序、运行环境和接口库等程序的安全和可信,如没有被
注入恶意代码或运行其他可疑程序,因此,通过远程验证后,可疑有效防止密钥存储、使用
过程的安全。
[0343] 如图12所示,图12示出了本申请实施例提供的另一种安全通信方法的具体流程,该方法与图11所示的方案的区别在于:图12所示的实施例中将度量值和授权码结合,与图
11不同在于:授权码生成的参数中,引入度量值,其具体流程包括步骤1201~步骤1221。
[0344] 其中,步骤1201~步骤1209,同步骤1101~步骤1109,此处不再赘述。
[0345] 步骤1210、V2V应用服务器根据度量值以及车辆1的标识确定该加密密钥kb对应的授权码。
[0346] 示例性的,步骤1210的一种实现为:Auth_code=KDF(度量值,V_ID)。
[0347] 本申请实施例中的步骤1210可以通过以下方式实现:一方面,授权码可以由V2V应用服务器以外的密钥管理装置根据车辆1的V_ID、度量值以及密钥派生函数生成。之后,V2V
应用服务器根据车辆1的标识以及度量值向该密钥管理装置请求该授权码,以获取授权码。
另一方面,V2V应用服务器根据车辆1的V_ID以及度量值,利用密钥派生函数生成该授权码。
再一方面,密钥管理装置根据车辆1的V_ID、度量值以及密钥派生函数生成授权码之后在
V2V应用服务器上配置授权码、车辆1的标识以及度量值之间的相互映射关系,后续V2V应用
服务器根据车辆1的标识以及度量值作为索引通过查询该相互映射关系得到授权码。
[0348] 步骤1211~步骤1213同步骤1009~步骤1011,此处不再赘述。
[0349] 在一种可能的实施例中,如图12所示本申请实施例提供的方法在步骤1213之后还可以包括步骤1214~步骤1221。
[0350] 步骤1214、如果服务1的状态为第一状态,车辆1执行可信度量,生成度量值。
[0351] 步骤1215、车辆1根据度量值以及车辆1的标识生成第一授权码。
[0352] 步骤1216、如果第一授权码与加密密钥对应的授权码相同,则车辆1根据第一授权码获取加密密钥kb。
[0353] 步骤1217~步骤1221,同步骤912~步骤916,此处不再赘述。
[0354] 在图12所示的实施例中,由于授权码由车辆1的标识以及车辆1的度量值确定,也即授权码同度量值绑定,由于每辆车的度量值不同,因此每辆车的授权码也不同,同时与车
辆的安全状态相关,只有在车辆符合安全状态时,才可访问加密密钥。增加密钥访问安全
性,防止非授权车辆获取加密密钥。
[0355] 如图13所示,图13示出了本申请实施例提供的另一种安全通信方法的具体流程,该方法与图9所示的方案的区别在于:引入车辆1的位置信息,用于V2V应用服务器生成加密
密钥kb。其具体流程包括步骤1301~步骤1316。
[0356] 其中,步骤1301~步骤1304,同步骤901~步骤904,此处不再赘述。
[0357] 步骤1305、车辆1向V2V应用服务器发送服务密钥申请消息,相应的,V2V应用服务器接收来自车辆1的服务密钥申请消息。其中,服务密钥申请消息包括App_ID、设备ID以及
车辆1的位置信息。
[0358] 可以理解的是,车辆1根据车辆1的标识确定车辆1具有开通第一服务的条件,则执行步骤1306。
[0359] 步骤1306、V2V应用服务器根据车辆1的位置信息确定车辆1对应的地域标签(location_tag)。
[0360] 步骤1307、V2V应用服务器根据地域标签、App_ID生成加密密钥kb。
[0361] 示例性的,V2V应用服务器在生成加密密钥kb时,可以根据车辆1的位置信息,查询相关的地域标签(也可以称为地域编码或者地区编码),其中地域标识的一种为地域临时分
配的ID,如上海浦东区可以分配一个具体的数字,北京朝阳区也可以临时分配一个具体数
字。地域标签并不固定指定,只在服务有效期间临时分配使用,并且对每个不同的服务APP_
ID,相同地域的地域标签可以不同。
[0362] 例如,步骤1307可以通过以下方式实现:V2V应用服务器根据KDF、App_ID以及地域标识生成加密密钥kb。例如,kb=KDF(APP_ID,location_tag)。
[0363] 步骤1308~步骤1316,同步骤908~步骤916,此处不再赘述。
[0364] 应理解,在引入位置信息生成服务1对应的加密密钥时,服务1在不同区域存在不同加密密钥,V2V应用服务器可以记录服务1在不同区域分别对应的加密密钥。也即同一个
服务1在不同区域对应的加密密钥可以关联一个地域标签。该地域标签用于指示与其关联
的加密密钥适用的区域。车辆2在注册服务1时,V2V应用服务器也会根据车辆2的地理位置
信息来返回相应的加密密钥。因此,无论车辆1还是车辆2在获取加密密钥时,都需要携带各
自的位置信息,这样V2V应用服务器才能返回对应区域的加密密钥。
[0365] 图13所描述的方案中,通过引入车辆1的位置信息可以进一步增强加密密钥的安全性,考虑所有的注册相同的服务1的车辆都具有相同的加密密钥,因此,一旦一辆车上针
对该服务1的加密密钥泄露,则其他车辆也会受影响。因此为限制加密密钥泄露造成的范
围,也增加V2V具体应用场景的选择(如需要考虑自动驾驶车辆在不同区域使用自动驾驶功
能的合规性要求,某些地域或区域不具备开通条件等因素),引入针对地域或区域的标识,
不仅限制加密密钥的使用范围,还可以使得V2V消息在指定区域范围内有效。
[0366] 1、增加地域限制,适用于对V2V应用有一定地域要求的场景,比如在测试阶段不同城市的法规要求有一些限制。
[0367] 2、能够一定程度限制敏感数据通过V2V跨境传输的情况,符合监管要求。
[0368] 3、增强密钥管理的安全性,限制密钥泄露造成的影响范围。
[0369] 需要说明的是,在图9~图13所示的实施例中服务密钥申请消息对应上述第一请求消息。服务密钥响应消息对应上述实施例中的第一响应消息。
[0370] 需要说明的是,在图9~图13所示的实施例中授权码、度量值以及车辆1的位置信息可以组合使用,本申请实施例对此不做限定。例如,在图12或图9所示的实施例中,如果车
辆1还向V2V应用服务器提供了车辆1的位置信息,则步骤1209可以通过以下方式替换:在根
据度量值确定车辆1合法的情况下,则V2V应用服务器根据APP_ID以及地域标签,生成与该
APP_ID对应的加密密钥kb。步骤907可以通过以下方式替换:如果车辆1具备开通服务1的条
件,则V2V应用服务器根据App_ID以及地域标签,生成服务1对应的加密密钥kb。
[0371] 可以理解的是,V2V应用服务器可以保存App_ID、地域标签以及加密密钥kb之间的映射关系,V2V应用服务器向车辆1发送加密密钥时还可以发送加密密钥kb对应的地域标
签,以便于车辆1确定该加密密钥kb可以适应于地域标签1对应的范围内。之后,为了便于车
辆2成功从V2V应用服务器处获取加密密钥kb,则V2V消息中不仅携带服务1的标识、经加密
的车辆1的坐标数据,还可以携带加密密钥kb对应的地域标签。这样,车辆2便可以基于服务
1的标识、加密密钥kb对应的地域标签从V2V应用服务器处获取加密密钥kb。
[0372] 举例说明,如表1所示,表1示出了同一个服务在不同范围内对应的加密密钥,即密钥映射关系表。
[0373] 表1一种密钥映射关系表示例
[0374]
[0375] 如表1所示,如果车辆1的位置信息对应location_tag1,则V2V应用服务器向车辆1反馈的服务1对应的加密密钥为kb1。同理,V2V应用服务器根据车辆2提供的服务1以及
location_tag1可以向车辆2反馈kb1。
[0376] 需要说明的是,在图9~图13所示的实施例中,车辆1从V2V应用服务器处获得第一服务对应的加密密钥之后,将第一服务对应的加密密钥存储于车辆1中,这样在应用阶段即
使V2V应用服务器与车辆1之间的安全连接中断时,也可以使得车辆1从安全存储硬件中获
取加密密钥,以加密第一信息,从而解决在应用阶段无法联网获取加密密钥的问题。
[0377] 如图14所示,图14示出了本申请实施例提供的另一种安全通信方法的具体实施流程,该方法与图9~图13所示的实施例的区别在于:为减少车辆本地存储加密密钥带来的安
全风险,采用延迟分发密钥方式(即在应用阶段,基于车辆1的请求,V2V应用服务器向车辆1
发送加密密钥),此外,加密密钥临时存储,在车辆启动阶段获取加密密钥,在车辆熄火状态
(发动机关闭)时,清除加密密钥。具体步骤如下所示:
[0378] 步骤1401~步骤1407,同步骤901~步骤907,此处不再赘述。
[0379] 步骤1408、V2V应用服务器向车辆1发送密钥申请成功响应消息。相应的,车辆1接收密钥申请成功响应消息。
[0380] 该密钥申请成功响应消息表示车辆1成功开通服务1,或者该服务1的服务状态可用。或者V2V应用服务器已生成服务1对应的加密密钥。可以理解的是,密钥申请成功响应消
息中包括第二指示信息,该第二指示信息用于表示车辆1成功开通服务1,或者该服务1的服
务状态可用或者V2V应用服务器已生成服务1对应的加密密钥。
[0381] 步骤1409、车辆1将服务1的状态更新为第一状态。
[0382] 在一种可能的实施例中,如图14所示,本申请实施例提供的方法在步骤1409之后还可以包括:
[0383] 步骤1410、车辆1启动时判断服务1的服务1的状态是否为第一状态。
[0384] 步骤1411、如果车辆1的服务状态为第一状态,则车辆1与V2V应用服务器之间执行双向认证并建立安全连接。
[0385] 需要说明的是,如果在步骤1401~步骤1410之后,车辆1与V2V应用服务器之间的安全连接中断,则车辆1还需要与V2V应用服务器之间执行双向认证并建立安全连接。如果
在步骤1401~步骤1410之后,当车辆1需要使用加密密钥加密第一信息时,车辆1与V2V应用
服务器之间的安全连接未中断,则步骤1411可以省略。
[0386] 步骤1412、车辆1向V2V应用服务器发送密钥分发请求。相应的,V2V应用服务器接收来自车辆1的密钥分发请求。
[0387] 其中,密钥分发请求用于请求服务1对应的加密密钥。例如,密钥分发请求中包括APP_ID和V_ID。
[0388] 步骤1413、V2V应用服务器根据APP_ID以及V_ID,从密钥映射关系表中确定加密密钥kb。
[0389] 示例性的,V2V应用服务器根据V_ID确定车辆1具有开通服务1的条件,则根据APP_ID作为索引查询密钥映射关系表,将该密钥映射关系表中与APP_ID关联的加密密钥作为
APP_ID对应的加密密钥。
[0390] 步骤1414、V2V应用服务器向车辆1发送密钥分发响应。相应的,车辆1接收来自V2V应用服务器的密钥分发响应。
[0391] 其中,密钥分发响应中包括APP_ID对应的加密密钥kb。
[0392] 步骤1415、车辆1临时存储加密密钥kb,使用加密密钥kb加密车辆1的坐标数据。
[0393] 步骤1416~步骤1419,同步骤913~步骤916,此处不再赘述。
[0394] 需要说明的是,在图14所示的实施例中,车辆1在请求V2V应用服务器生成服务1对应的加密密钥时,也可以提供终端1的位置信息,以由V2V应用服务器根据车辆1的标识以及
地域标签生成加密密钥。后续,V2V消息中还可以包括地域标签。当加密密钥由地域标签确
定时,车辆2从V2V应用服务器处获取加密密钥时,也需要提供地域标签。
[0395] 如图15所示,图15示出了本申请实施例提供了另一种安全通信方法的流程示意图,该方法与图14所示的实施例的区别在于:增加了可信度量过程,进一步增强密钥在车辆
本地使用的安全性,与图14所示的实施例相比,不同点在于在注册阶段进行可信度量,验证
通过后V2V应用服务器生成加密密钥并保存,以及向车辆1返回密钥申请成功响应消息,不
返回加密密钥。在应用阶段,只有通过可信度量后,V2V应用服务器才向车辆1发送加密密钥
kb。具体步骤如下所示:
[0396] 步骤1501~步骤1509,同步骤1101~步骤1109,此处不再赘述。
[0397] 步骤1510~步骤1511同步骤1408~步骤1409,此处不再赘述。
[0398] 其中,密钥申请成功响应消息用于表示车辆1已成功申请服务1对应的加密密钥kb。例如,密钥申请成功响应消息携带APP_ID。在一种可能的实现方式中,密钥申请成功响
应消息还可以携带用于指示车辆1已成功申请服务1对应的加密密钥kb的指示信息或字段。
[0399] 在一种可能的实施例中,如图15所示,本申请实施例提供的方法在步骤1511之后还可以包括:
[0400] 步骤1512~步骤1514同步骤1410~步骤1412,此处不再赘述。
[0401] 步骤1515、车辆1执行可信度量,得到度量值。
[0402] 可以理解的是,在步骤1514之后,车辆1可以基于V2V应用服务器的执行可信环境验证要求,然后车辆1执行步骤1515。或者在车辆1自主决定需要执行步骤1515。或者V2V应
用服务器和车辆1之间提前协商或者协议预定义在密钥分发场景中,在应用阶段,车辆1如
果需要获取加密密钥时,则需要执行可信度量。对于后两种情况,则度量值可以携带在步骤
1514的密钥分发请求中。
[0403] 可以理解的是,步骤1515可以位于步骤1514之前。当然,车辆1也可以先向V2V应用服务器发送度量值,然后再发送密钥分发请求。或者度量值和密钥分发请求并行执行。
[0404] 步骤1516、车辆1向V2V应用服务器发送度量值,相应的,V2V应用服务器接收来自车辆1的度量值。
[0405] 步骤1517、V2V应用服务器根据车辆1的度量值,验证车辆1是否合法。
[0406] 步骤1518、在车辆1合法的情况下,V2V应用服务器根据APP_ID,从密钥映射关系表中密钥查询该APP_ID对应的加密密钥kb。
[0407] 步骤1519~步骤1524同步骤1414~步骤1419,此处不再赘述。
[0408] 需要说明的是,在图14或图15所示的实施例中,密钥分发响应对应上述实施例中的第一响应消息。密钥分发请求对应上述实施例中的第一请求消息。密钥申请成功响应消
息对应的第二响应消息。服务密钥申请消息对应第二请求消息。
[0409] 在图14或图15所示的实施例中,在注册阶段,V2V应用服务器也可以向车辆1发送加密密钥对应的授权码,之后,在应用阶段由车辆1根据服务1的标识以及授权码从V2V应用
服务器处获取服务1对应的加密密钥。
[0410] 如图16所示,图16示出了本申请实施例提供了一种密钥更新方法的具体实施例,该方法包括:
[0411] 步骤1601、V2V应用服务器根据密钥更新策略,按照APP_ID生成APP_ID对应的密钥更新种子和版本号信息。
[0412] 步骤1602、V2V应用服务器向一个或多个车辆(包括车辆1)发送密钥更新通知请求,相应的,一个或多个车辆接收来自V2V应用服务器的密钥更新通知请求。该密钥更新通
知请求用于通知车辆更新服务1对应的加密密钥。
[0413] 可以理解的是,该一个或多个车辆可以为注册过服务1的全部车辆或者部分车辆。或者该一个或多个车辆可以为注册过服务1,且曾经请求过服务1对应的加密密钥的车辆。
[0414] 需要说明的是,接收到密钥更新通知请求的车辆,在下一次启动时,会自动发起安全连接,与V2V应用服务器进行双向认证后,建立安全连接,执行加密密钥更新过程。
[0415] 示例性的,V2V应用服务器可以按照加密密钥对应的密钥更新周期向一个或多个车辆(包括车辆1)发送密钥更新通知请求。或者V2V应用服务器可以自主确定向一个或多个
车辆(包括车辆1)发送密钥更新通知请求的周期。
[0416] 步骤1603、车辆1向V2V应用服务器发起密钥更新请求。该密钥更新请求用于请求V2V应用服务器更新服务1对应的加密密钥。
[0417] 步骤1604、车辆1执行可信度量,得到度量值。
[0418] 可以理解的是,在步骤1603之后,车辆1可以基于V2V应用服务器的执行可信环境验证要求,然后车辆1执行步骤1604。或者在车辆1自主决定需要执行步骤1604。或者V2V应
用服务器和车辆1之间提前协商或者协议预定义在密钥更新场景中,车辆1如果需要更新加
密密钥时,则需要执行可信度量。对于后两种情况,则度量值可以携带在步骤1603的密钥更
新请求中。
[0419] 步骤1605、车辆1向V2V应用服务器发送度量值,相应的,V2V应用服务器接收来自车辆1的度量值。
[0420] 步骤1606、V2V应用服务器根据度量值验证车辆1是否合法。
[0421] 步骤1607、在度量值合法的情况下,V2V应用服务器根据APP_ID,查询该APP_ID对应的密钥更新种子和版本号信息。
[0422] 步骤1608、V2V应用服务器向车辆1发送APP_ID对应的密钥更新种子和版本号信息。相应的,车辆1接收来自V2V应用服务器的APP_ID对应的密钥更新种子和版本号信息。
[0423] 步骤1609、车辆1根据APP_ID对应的密钥更新种子,更新APP_ID对应的加密密钥,得到更新后的加密密钥。
[0424] 步骤1610、车辆1根据版本号信息确定更新后的加密密钥的版本号。
[0425] 需要说明的是,车辆1更新加密密钥的过程中,V2V应用服务器也可以根据APP_ID对应的密钥更新种子更新V2V应用服务器侧存储的APP_ID对应的加密密钥,得到更新后的
加密密钥。此外,V2V应用服务器也可以根据APP_ID对应的版本号信息确定更新后的加密密
钥的版本号。
[0426] 在图16所示的实施例中,如果车辆1得到更新后的加密密钥之后,本申请实施例提供的方法还可以包括:车辆1向V2V应用服务器发送更新成功消息。该更新成功消息用于V2V
应用服务器确定车辆1已成功更新服务1对应的加密密钥。
[0427] 需要说明的是,如果车辆1中配置有各个服务对应的密钥更新周期,则车辆1可以在服务1对应的密钥更新周期到达时,主动向V2V应用服务器发送密钥更新请求,也即上述
步骤1601~步骤1602可以省略。图16以V2V应用服务器通知车辆1更新加密密钥为例。此外,
如果加密密钥更新的步骤由V2V应用服务器来执行,则步骤1607~步骤1610可以替换为:
V2V应用服务器根据APP_ID,查询该APP_ID对应的密钥更新种子和版本号信息。V2V应用服
务器根据APP_ID对应的密钥更新种子,更新APP_ID对应的加密密钥,得到更新后的加密密
钥。V2V应用服务器根据版本号信息确定更新后的加密密钥的版本号。V2V应用服务器向车
辆1发送更新后的加密密钥以及更新后的加密密钥的版本号。
[0428] 可以理解的是,V2V应用服务器和车辆1根据密钥更新种子更新加密密钥得到的更新后的加密密钥相同。在V2V应用服务器和车辆1根据密钥更新种子均更新加密密钥的情况
下,如果V2V应用服务器向车辆1发送更新后的加密密钥,则车辆1确定来自V2V应用服务器
的更新后的加密密钥的优先级高于车辆1根据密钥更新种子得到的更新后的加密密钥的优
先级。
[0429] 示例性的,V2V应用服务器或车辆可以根据密钥更新种子、加密密钥以及KDF确定更新后的加密密钥。例如,更新后的kb=KDF(seed,kb_oldversion)。其中,kb_oldversio表
示更新前的加密密钥。
[0430] 为确保使用同一个服务的车辆及时更新加密密钥,V2V应用服务器预留一定时间的更新周期,对于长时间不启动的车辆,在车辆启动后会收到来自V2V应用服务器的密钥更
新通知请求,然后向V2V应用服务器发送密钥更新请求,更新到最新版本的加密密钥。因此,
车辆启动后上路,并且注册过该服务的车辆,均会保持相同的加密密钥。
[0431] 在图9~图16所示的实施例中,车辆1对应上述第一终端装置,V2V消息对应上述第一消息,V2V应用服务器对应上述服务器10。App_ID对应上述第一服务的标识。V_ID对应上
述第一终端装置的标识。
[0432] 本申请实施例提供的方法可以适用于车联网领域,例如V2X、LTE中的V2X、NR中V2X或V2V等,或可以用于D2D、智能网联车、无人驾驶、自动驾驶、辅助驾驶、智能驾驶、网联驾
驶、智能网联驾驶、汽车共享、人工智能等领域。
[0433] 上述主要从各个网元之间交互的角度对本申请实施例的方案进行了介绍。可以理解的是,各个网元,例如服务器、第一终端装置等为了实现上述功能,其包括了执行各个功
能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开
的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合
形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方
案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实
现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0434] 本申请实施例可以根据上述方法示例服务器、第一终端装置进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一
个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的
形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能
划分,实际实现时可以有另外的划分方式。
[0435] 上面结合图5至图16,对本申请实施例的方法进行了说明,下面对本申请实施例提供的执行上述方法的通信装置进行描述。本领域技术人员可以理解,方法和装置可以相互
结合和引用,本申请实施例提供的一种通信装置可以执行上述通信方法或密钥更新方法中
由服务器执行的步骤。或者,该通信装置可以执行上述实施例中的通信方法或密钥更新方
法中由第一终端装置执行的步骤。
[0436] 下面以采用对应各个功能划分各个功能模块为例进行说明:
[0437] 如图17所示,图17示出了本申请实施例提供的通信装置的结构示意图,该通信装置可以是本申请实施例中的第一终端装置或服务器或应用于服务器中的芯片或芯片系统。
该通信装置包括:处理单元101和通信单元102。其中,通信单元102用于支持通信装置执行
信息发送或接收的步骤。处理单元101用于支持通信装置执行信息处理的步骤。
[0438] 一种示例,以该通信装置为服务器或应用于服务器中的芯片或芯片系统为例,该通信单元102用于支持通信装置执行上述实施例中的步骤501中由服务器10执行的接收动
作。处理单元101用于支持通信装置执行上述实施例中的步骤502。通信单元102还用于支持
通信装置执行上述实施例中的步骤503中由服务器10执行的发送动作。
[0439] 在一种可能的实施例中,通信单元102还用于支持通信装置执行上述实施例中的步骤701中由服务器10执行的接收动作。处理单元101还用于支持通信装置执行上述实施例
中的步骤702以及步骤703。通信单元102还用于支持通信装置执行上述实施例中的步骤704
中由服务器10执行的发送动作。
[0440] 另一种示例,以该通信装置为第一终端装置为例,该通信单元102用于支持通信装置执行上述实施例中的步骤501中由第一终端装置执行的发送动作。通信单元102用于支持
通信装置执行上述实施例中的步骤503中由第一终端装置执行的接收动作。
[0441] 在一种可能的实施例中,通信单元102还用于支持通信装置执行上述实施例中的步骤607、步骤701中由第一终端装置执行的发送动作。通信单元102还用于支持通信装置执
行上述实施例中的步骤704中由第一终端装置执行的接收动作。
[0442] 处理单元101用于支持通信装置执行上述实施例中的步骤604、步骤605、步骤606、步骤705、步骤706中由第一终端装置执行的处理动作。
[0443] 另一种示例,以该通信装置为服务器或应用于服务器中的芯片或芯片系统为例,该通信单元102用于支持该通信装置执行上述实施例中的步骤802中由服务器10执行的发
送动作。处理单元101用于支持该通信装置执行上述实施例中的步骤801。
[0444] 在一种可能的实现方式中,通信单元102还用于支持该通信装置执行上述实施例中的步骤804中由服务器10执行的发送动作。
[0445] 再一种示例,以该通信装置为第一终端装置为例,通信单元102,用于支持通信装置执行上述实施例中的步骤802中由第一终端装置执行的接收动作。处理单元101用于支持
通信装置执行上述实施例的步骤803中由第一终端装置执行的处理动作。
[0446] 在一种可能的实施例中,通信单元102还用于支持通信装置执行上述实施例中的步骤804中由第一终端装置执行的接收动作。处理单元101还用于支持通信装置执行上述实
施例中的步骤805中由第一终端装置执行的处理动作。
[0447] 在一种可能的实施例中,通信装置还可以包括:存储单元103。处理单元101、通信单元102、存储单元103通过通信总线相连。
[0448] 存储单元103可以包括一个或者多个存储器,存储器可以是一个或者多个设备、电路中用于存储程序或者数据的器件。
[0449] 存储单元103可以独立存在,通过通信总线与通信装置具有的处理单元101相连。存储单元103也可以和处理单元集成在一起。
[0450] 通信装置可以用于通信设备、电路、硬件组件或者芯片中。
[0451] 以通信装置可以是本申请实施例中的应用于第一终端的芯片或芯片系统、或应用于服务器的芯片或芯片系统为例,则通信单元102可以是输入或者输出接口、管脚或者电路
等。示例性的,存储单元103可以存储第一终端、服务器侧的方法的计算机执行指令,以使处
理单元101执行上述实施例中第一终端装置、服务器侧的方法。存储单元103可以是寄存器、
缓存或者RAM等,存储单元103可以和处理单元101集成在一起。存储单元103可以是ROM或者
可存储静态信息和指令的其他类型的静态存储设备,存储单元103可以与处理单元101相独
立。
[0452] 本申请实施例提供了一种通信装置,该通信装置包括一个或者多个模块,用于实现上述步骤501~步骤503,或者步骤701~步骤712,或者步骤601~步骤609,或者步骤801
~步骤805中的方法,该一个或者多个模块可以与上述步骤501~步骤503,或者步骤701~
步骤712,或者步骤601~步骤609,或者步骤801~步骤805相对应。具体的,本申请实施例中
由服务器执行的方法中的每个步骤,服务器中存在执行该方法中每个步骤的单元或者模
块。由第一终端装置执行的方法中的每个步骤,第一终端装置中存在执行该方法中每个步
骤的单元或者模块。例如,对于执行对该通信装置的动作进行控制或处理的模块可以称为
处理模块。对于执行对在通信装置侧进行消息或数据处理的步骤的模块可以称为通信模
块。
[0453] 示例性的,通信单元102可以包括发送单元和接收单元。其中,发送单元用于支持该通信装置执行发送动作。接收单元用于支持该通信装置执行接收动作。
[0454] 应理解,以通信装置为第一终端装置为例,通信单元102还用于执行图9~图16中车辆1执行的接收或发送动作。处理单元101还用于执行图9~图16中车辆1执行的处理动
作。
[0455] 以通信装置为服务器为例,通信单元102还用于执行图9~图16中V2V应用服务器执行的接收或发送动作。处理单元101还用于执行图9~图16中V2V应用服务器执行的处理
动作。
[0456] 在采用集成的单元的情况下,图18示出了上述实施例中所涉及的通信装置的一种可能的逻辑结构示意图,该通信装置可以为上述实施例中第一终端装置。或者该通信装置
可以为上述实施例中的服务器。该通信装置包括:处理模块112和通信模块113。处理模块
112用于对该通信装置的动作进行控制管理,通信模块113用于执行在通信装置侧进行消息
或数据处理的步骤。
[0457] 可选的,该通信装置还可以包括存储模块111,用于存储该通信装置的程序代码和数据。
[0458] 一种示例,以该通信装置为服务器或应用于服务器中的芯片或芯片系统为例,该通信模块113用于支持通信装置执行上述实施例中的步骤501中由服务器10执行的接收动
作。处理模块112用于支持通信装置执行上述实施例中的步骤502。通信模块113还用于支持
通信装置执行上述实施例中的步骤503中由服务器10执行的发送动作。
[0459] 在一种可能的实施例中,通信模块113还用于支持通信装置执行上述实施例中的步骤701中由服务器10执行的接收动作。处理模块112还用于支持通信装置执行上述实施例
中的步骤702以及步骤703。通信模块113还用于支持通信装置执行上述实施例中的步骤704
中由服务器10执行的发送动作。
[0460] 另一种示例,以该通信装置为第一终端装置为例,该通信模块113用于支持通信装置执行上述实施例中的步骤501中由第一终端装置执行的发送动作。通信模块113用于支持
通信装置执行上述实施例中的步骤503中由第一终端装置执行的接收动作。
[0461] 在一种可能的实施例中,通信模块113还用于支持通信装置执行上述实施例中的步骤607、步骤701中由第一终端装置执行的发送动作。通信模块113还用于支持通信装置执
行上述实施例中的步骤704中由第一终端装置执行的接收动作。
[0462] 处理模块112用于支持通信装置执行上述实施例中的步骤604、步骤605、步骤606、步骤705、步骤706中由第一终端装置执行的处理动作。
[0463] 另一种示例,以该通信装置为服务器或应用于服务器中的芯片或芯片系统为例,该通信模块113用于支持该通信装置执行上述实施例中的步骤802中由服务器10执行的发
送动作。处理模块112用于支持该通信装置执行上述实施例中的步骤801。
[0464] 在一种可能的实现方式中,通信模块113还用于支持该通信装置执行上述实施例中的步骤804中由服务器10执行的发送动作。
[0465] 再一种示例,以该通信装置为第一终端装置为例,通信模块113,用于支持通信装置执行上述实施例中的步骤802中由第一终端装置执行的接收动作。处理模块112用于支持
通信装置执行上述实施例的步骤803中由第一终端装置执行的处理动作。
[0466] 在一种可能的实施例中,通信模块113还用于支持通信装置执行上述实施例中的步骤804中由第一终端装置执行的接收动作。处理模块112还用于支持通信装置执行上述实
施例中的步骤805中由第一终端装置执行的处理动作。
[0467] 其中,处理模块112可以是处理器或控制器,例如可以是中央处理器单元,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体
管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的
各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包括一个
或多个微处理器组合,数字信号处理器和微处理器的组合等等。通信模块113可以是通信接
口、收发器、收发电路或接口电路等。存储模块111可以是存储器。
[0468] 当处理模块112为处理器41或处理器45,通信模块113为通信接口43时,存储模块111为存储器42时,本申请所涉及的该通信装置可以为图4所示的通信设备。
[0469] 图19是本发明实施例提供的芯片150的结构示意图。芯片150包括一个或两个以上(包括两个)处理器1510和通信接口1530。
[0470] 可选的,该芯片150还包括存储器1540,存储器1540可以包括只读存储器和随机存取存储器,并向处理器1510提供操作指令和数据。存储器1540的一部分还可以包括非易失
性随机存取存储器(non‑volatile random access memory,NVRAM)。
[0471] 在一些实施方式中,存储器1540存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
[0472] 在本发明实施例中,通过调用存储器1540存储的操作指令(该操作指令可存储在操作系统中),执行相应的操作。
[0473] 一种可能的实现方式中为:第一终端装置、服务器所用的芯片的结构类似,不同的装置可以使用不同的芯片以实现各自的功能。
[0474] 处理器1510控制第一终端装置、服务器的操作,处理器1510还可以称为中央处理单元(central processing unit,CPU)。存储器1540可以包括只读存储器和随机存取存储
器,并向处理器1510提供指令和数据。存储器1540的一部分还可以包括非易失性随机存取
存储器(non‑volatile random access memory,NVRAM)。例如应用中存储器1540、通信接口
1530以及存储器1540通过总线系统1520耦合在一起,其中总线系统1520除包括数据总线之
外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图19中
将各种总线都标为总线系统1520。
[0475] 以上通信单元可以是一种该装置的接口电路或通信接口,用于从其它装置接收信号。例如,当该装置以芯片的方式实现时,该通信单元是该芯片用于从其它芯片或装置接收
信号或发送信号的接口电路或通信接口。
[0476] 本发明实施例揭示的方法可以应用于处理器1510中,或者由处理器1510实现。处理器1510可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步
骤可以通过处理器1510中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器
1510可以是通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电
路(application specific integrated circuit,ASIC)、现成可编程门阵列(field‑
programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、
分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用
处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所
公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件
及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读
存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于
存储器1540,处理器1510读取存储器1540中的信息,结合其硬件完成上述方法的步骤。
[0477] 一种可能的实现方式中,以图19所示的芯片应用于终端为例,则通信接口1530用于执行图5~图8所示的实施例中由第一终端装置执行的发送或接收的步骤。处理器1510用
于执行图5~图8所示的实施例中由第一终端装置执行的处理的步骤。
[0478] 一种可能的实现方式中,以图19所示的芯片应用于服务器为例,则通信接口1530用于执行图5~图8所示的实施例中由服务器执行的发送或接收的步骤。处理器1510用于执
行图5~图8所示的实施例中由服务器执行的处理的步骤。
[0479] 在上述实施例中,存储器存储的供处理器执行的指令可以以计算机程序产品的形式实现。计算机程序产品可以是事先写入在存储器中,也可以是以软件形式下载并安装在
存储器中。
[0480] 计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专
用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质
中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可
以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线
(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中
心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包括一个
或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例
如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘solid state 
disk,SSD)等。
[0481] 本申请实施例还提供了一种计算机可读存储介质。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,则功能可
以作为一个或多个指令或代码存储在计算机可读存储介质上或者在计算机可读存储介质
上传输。计算机可读存储介质可以包括计算机存储介质和通信介质,还可以包括任何可以
将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任
何目标介质。
[0482] 作为一种可选的设计,计算机可读存储介质可以包括RAM,ROM,EEPROM,CD‑ROM或其它光盘存储器,磁盘存储器或其它磁存储设备,或目标于承载的任何其它介质或以指令
或数据结构的形式存储所需的程序代码,并且可由计算机访问。而且,任何连接被适当地称
为计算机可读存储介质。例如,如果使用同轴电缆,光纤电缆,双绞线,数字用户线(DSL)或
无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光
纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本
文所使用的磁盘和光盘包括光盘(CD),激光盘,光盘,数字通用光盘(DVD),软盘和蓝光盘,
其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。上述的组合也应包
括在计算机可读存储介质的范围内。
[0483] 一种示例,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行如
图5~图8对应的实施例中由第一终端装置执行的动作。
[0484] 一种示例,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行如
图5~图8对应的实施例中由服务器执行的动作。
[0485] 一种示例,本申请实施例提供一种通信系统,该通信系统包括:第一终端装置以及服务器。其中,服务器用于执行图5~图7所示的实施例中由服务器执行的动作。第一终端装
置用于执行图5~图7所示的实施例中由第一终端装置执行的动作。
[0486] 在一种可能的实现方式中,该通信系统还可以包括:第二终端装置,用于执行图5~图7所示的实施例中由第二终端装置执行的动作。
[0487] 一种示例,本申请实施例提供一种通信系统,该通信系统包括:第一终端装置以及服务器。其中,服务器用于执行图8所示的实施例中由服务器执行的动作。第一终端装置用
于执行图8所示的实施例中由第一终端装置执行的动作。
[0488] 本申请实施例还提供了一种计算机程序产品。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,可以全部或者
部分得通过计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在
计算机上加载和执行上述计算机程序指令时,全部或部分地产生按照上述方法实施例中描
述的流程或功能。上述计算机可以是通用计算机、专用计算机、计算机网络、基站、终端或者
其它可编程装置。
[0489] 一种示例,本申请实施例提供一种包括指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行如图5~图8对应的实施例中由服务器执行的动作。
[0490] 一种示例,本申请实施例提供一种包括指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行如图5~图8对应的实施例中由第一终端装置执行的动作。
[0491] 以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明
的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应
包括在本发明的保护范围之内。