掌桥专利:专业的专利平台
掌桥专利
首页

本申请涉及信息技术领域,尤其涉及一种数据传输方法及装置。

随着超高清视频的发展,内容安全越来越被重视。同时,媒体接口上的业务场景越来越复杂,从一个媒体流扩展到多个媒体流,从单纯的媒体流扩展到数据流。现有的媒体接口保护标准是对链路上所有数据统一加密,下游设备能够解密上一跳设备发来的音视频数据,安全性较低。

发明内容

本申请提供一种数据传输方法及装置,以提高音视频数据的传输安全性。

第一方面,本申请实施例提供一种数据传输方法,应用于源端装置,源端装置对下游的第一传输装置进行身份认证,并与所述第一传输装置协商第一加密密钥;生成第一内容密钥,使用所述第一加密密钥对所述第一内容密钥进行加密处理得到第二内容密钥,所述第一内容密钥用于所述源端装置与所述第一传输装置传输的内容的加密或者解密;获取第一音视频数据,并将所述第一音视频数据封装为音视频报文,所述音视频报文属于第一音视频流;对所述第一音视频流进行处理得到第二音视频流;其中,所述处理包括使用所述第一内容密钥对所述第一音视频流的音视频报文进行加密;所述第二音视频流包括第一密钥分发报文,所述第一密钥分发报文供所述第一传输装置解密来自所述源端装置的内容时使用,所述第一密钥分发报文包括所述第二内容密钥;向所述第一传输装置发送所述第二音视频流。第一传输装置可以是用于输出源端装置的音视频数据的宿端装置或者对源端装置的数据进行转换处理的转换装置等。通过上述方案,由源端装置对该第一传输装置进行身份认证以及密钥协商,通过在视频流中封装密钥分发报文,从而该第一传输装置使用密钥分发报文能够解密经过加密的音视频流,即使源端装置和第一传输装置之间还连接有其它装置,也无法解密该音视频流,可以提高音视频的传输安全性。

在一种可能的设计中,所述源端装置对待发送的第一多媒体流进行处理得到第二音视频流,包括:使用所述第一内容密钥和随机产生的第一计数值对所述第一音视频流加密处理,并在经过加密处理的第一音视频流中添加所述第一密钥分发报文得到所述第二音视频流;其中,所述第一密钥分发报文中还包括所述第一计数值。随机产生的第一计数值可以是随机产生的计数器(counter)的全部计数值或者部分计数值。通过随机计数值来加密音视频数据,可以进一步提高传输安全性。

在一种可能的设计中,所述第一密钥分发报文中还包括所述第一传输装置的设备标识,用于指示使用所述第一密钥分发报文的设备为所述第一传输装置。通过设备标识使得第一传输装置能够过滤自身使用的密钥分发报文。

在一种可能的设计中,所述第一密钥分发报文中还包括第一流标识,用于指示所述第一密钥分发报文作用的音视频流为所述源端装置与所述第一传输装置之间传输的。通过流标识使得第一传输装置确定该密钥分发报文是针对哪个流使用的。

在一种可能的设计中,所述第一密钥分发报文中还包括加密算法、加密模式、校验码中的一项或者多项。

在一种可能的设计中,所述第一内容密钥包括奇内容密钥或偶内容密钥,所述第二内容密钥包括使用所述第一加密密钥对所述奇内容密钥进行加密得到的加密后的奇内容密钥,或使用所述第一加密密钥对所述偶内容密钥进行加密得到的加密后偶内容密钥。

在一种可能的设计中,在经过加密处理的第一音视频流中添加所述第一密钥分发报文得到所述第二音视频流,包括:在经过加密处理的第一音视频流的垂直消隐区中添加所述第一密钥分发报文得到所述第二音视频流。在垂直消隐区添加密钥分发报文可以提高视频区的利用率。

在一种可能的设计中,所述源端装置与所述第一传输装置之间可以通过音视频传输接口相连。

在一种可能的设计中,所述下游的第一传输装置为宿端装置,所述源端装置与所述第一传输装置通过第二传输装置连接,所述第二传输装置为菊花链装置,所述方法还包括:对所述菊花链装置进行身份认证,并与所述菊花链装置协商第二加密密钥;获取第二音视频数据,并将所述第二音视频数据封装为属于第三音视频流的音视频报文;生成第三内容密钥,使用所述第二加密密钥对所述第三内容密钥进行加密处理得到第四内容密钥,所述第三内容密钥用于所述源端装置与所述菊花链装置传输的内容的加密或者解密;对所述第三音视频流进行处理得到第四音视频流;其中,所述处理包括使用所述第三内容密钥对所述音视频报文进行加密;所述第四音视频流包括第二密钥分发报文,所述第二密钥分发报文供所述菊花链装置解密来自所述源端装置的内容时使用,所述第二密钥分发报文包括所述第四内容密钥;将所述第二音视频流和所述第四音视频流复用为一路音视频流,并向所述菊花链装置发送所述一路音视频流。

通过上述方案,由源端装置对菊花链装置和宿端装置进行身份认证以及密钥协商,不需要进行音视频流输出或者转换处理的其它设备无需进行认证和密钥协商,在音视频流传输时,仅需为宿端装置(和菊花链装置)生成用于解密经过加密的音视频流的密钥分发报文,从而传输路径上不需要输出的设备和进行转换处理的设备无法获知密钥,无法解密音视频流。从而菊花链装置在接收到加密的音视频流后,对于无需输出的音视频流仅执行转发处理。可以提高音视频流的传输安全性以及传输性能。

在一种可能的设计中,第一传输装置为所述源端装置与第二传输装置之间传输路径上的音视频处理装置且所述第二传输装置为所述源端装置对应的宿端装置,或者,所述第一传输装置为所述源端装置对应的宿端装置,所述第一传输装置支持向上游的第二传输装置回传所述源端装置的音视频数据;所述方法还包括:对所述第二传输装置进行身份认证,并与所述第二传输装置协商第三加密密钥;生成第五内容密钥,使用所述第一加密密钥对所述第五内容密钥进行加密得到第六内容密钥以及使用所述第三加密密钥对所述第五内容密钥进行加密处理得到第七内容密钥,所述第五内容密钥用于对所述第一传输装置与所述第二传输装置传输的内容的加密或者解密;其中,所述第二音视频流还包括第三密钥分发报文和第四密钥分发报文,所述第三密钥分发报文供所述第一传输装置加密向所述第二传输装置传输的内容时使用,所述第四密钥分发报文供所述第二传输装置解密来自所述第一传输装置的内容时使用,所述第三密钥分发报文包括所述第六内容密钥,所述第四密钥分发报文包括所述第七内容密钥。

第一传输装置为音视频处理装置时,由源端装置对宿端装置和执行转换处理的音视频处理装置进行身份认证以及密钥协商,针对音视频处理装置分别生成用于解密源端装置发送的音视频流的密钥分发报文,以及用于对向宿端装置发送的音视频流进行加密的密钥分发报文,为宿端装置生成用于解密音视频处理装置发送的音视频流的密钥分发报文,从而传输路径上的其它设备无法获知密钥,无法解密音视频流,可以提高音视频流的传输安全性。第一传输装置为宿端装置,并支持回传时,由源端装置对宿端装置以及回传的上游接收设备进行身份认证以及密钥协商,无需对不需要进行音视频流输出或者转换处理的其它设备进行认证和密钥协商,在音视频流传输时,为宿端装置生成用于解密经过加密的音视频流的密钥分发报文以及生成用于加密回传音视频流的密钥分发报文,以及为回传音视频流的接收设备生成用于解密的密钥分发报文,从而传输路径上不需要输出的设备和进行转换处理的设备无法获知密钥,无法解密音视频流。从而宿端装置在接收到加密的音视频流后,可以执行输出操作,还可以对需要向上游接收设备发送的音视频流执行转换处理。不仅支持回传场景,还可以提高音视频流的传输安全性以及传输性能。

在一种可能的设计中,第三密钥分发报文还包括所述第一传输装置的设备标识,用于指示使用所述第三密钥分发报文的设备为所述第一传输装置;所述第四密钥分发报文还包括所述第二传输装置的设备标识,用于指示使用所述第四密钥分发报文的设备为所述第二传输装置。

在一种可能的设计中,所述第三密钥分发报文中还包括第一流标识,用于指示所述第三密钥分发报文所作用的音视频流是所述源端装置与所述第一传输装置之间传输的;所述第四密钥分发报文还包括第二流标识,用于指示所述第四密钥分发报文所作用的音视频流是所述第一传输装置与所述第二传输装置之间传输的。

在一种可能的设计中,所述源端装置对应的宿端装置还包括下游的第二传输装置;所述源端装置通过中继器分别与所述第一传输装置和所述第二传输装置连接,所述方法还包括:对下游的第二传输装置进行身份认证,并与所述第二传输装置协商第四加密密钥;使用所述第四加密密钥对所述第一内容密钥进行加密处理得到第八内容密钥,所述第一内容密钥还用于所述源端装置与所述第二传输装置传输的内容的加密或者解密;其中,所述第二音视频流包括供第二传输装置使用的第五密钥分发报文,所述第五密钥分发报文包括所述第八内容密钥;向所述第一传输装置发送所述第二音视频流,包括:通过中继器分别向所述第一传输装置和所述第二传输装置发送所述第二音视频流。

通过上述方案,由源端装置对宿端装置身份认证以及密钥协商,无需对不需要进行音视频流输出或者转换处理的其它设备进行认证和密钥协商,比如无需对中继设备进行身份认证也不需要与其进行密钥协商,在音视频流传输时,仅需为宿端装置生成用于解密经过加密的音视频流的密钥分发报文,从而传输路径上的中继设备无法获知密钥,无法解密音视频流,在接收到加密的音视频流后,仅需进行中继转发。可以提高音视频流的传输安全性。

在一种可能的设计中,所述第五密钥分发报文还包括所述第二传输装置的设备标识,用于指示使用所述第五密钥分发报文的设备为所述第二传输装置。

在一种可能的设计中,所述第五密钥分发报文中还包括第三流标识,用于指示所述第五密钥分发报文所作用的音视频流是所述源端装置与所述第二传输装置之间传输的。

在一种可能的设计中,所述方法还包括:接收来自内容授权系统的授权控制信息;验 证所述第一传输装置和所述第二传输装置满足授权控制信息的要求。通过上述方案,由源端装置对于需要接收或者转换数据的装置进行授权控制,比如直播场景下切换频道时,相比级联的授权控制,可以降低时延,提高传输性能。

在一种可能的设计中,所述授权控制信息中包括协议版本、安全级别、最大设备数或者最大层级数中的一项或者多项;所述验证所述第一传输装置和所述第二传输装置满足授权控制信息的要求,包括:验证所述第一传输装置和所述第二传输装置支持所述授权控制信息中指示的协议版本;验证所述第一传输装置和所述第二传输装置的安全级别高于或者等于所述授权控制信息指示的安全级别;验证包括所述第一传输装置和所述第二传输装置在内的传输装置的数量小于或者等于所述最大设备数;或者,验证所述音视频数据到达所述源端装置对应的宿端装置所经过的音视频处理装置的数量小于所述最大层级数。

在一种可能的设计中,对所述第一传输装置进行身份认证,包括:通过与所述第一传输装置之间的辅助链路对所述第一传输装置进行身份认证;对所述第二传输装置进行身份认证,包括:通过与所述第二传输装置之间的辅助链路对所述第二传输装置进行身份认证。

第二方面,本申请实施例提供一种数据传输方法,应用于菊花链装置,包括:与源端装置协商第一加密密钥;接收来自所述源端装置的第二音视频流,所述第二音视频流包括第一密钥分发报文,所述第一密钥分发报文供所述第一传输装置解密来自所述源端装置的内容时使用,所述第一密钥分发报文包括第二内容密钥;使用所述第一加密密钥从所述第二内容密钥解密得到第一内容密钥;使用所述第一内容密钥从所述第二音视频流中解密得到第一音视频流;从所述第一音视频流解析得到音视频数据并输出;接收来自所述源端装置的第三音视频流,所述第三音视频流包括第二密钥分发报文,所述第二密钥分发报文供所述第二传输装置解密来自所述源端装置的内容时使用;向所述第二传输装置转发所述第三音视频流。

通过上述方案,由源端装置对菊花链装置和宿端装置进行身份认证以及密钥协商,无需对不需要进行音视频流输出或者转换处理的其它设备进行认证和密钥协商,在音视频流传输时,仅需为宿端装置(和菊花链装置)生成用于解密经过加密的音视频流的密钥分发报文,从而传输路径上不需要输出的设备和进行转换处理的设备无法获知密钥,无法解密音视频流。从而菊花链装置在接收到加密的音视频流后,对于无需输出的音视频流仅执行转发处理。可以提高音视频流的传输安全性以及传输性能。

在一种可能的设计中,所述第一密钥分发报文中还包括第一计数值;使用所述第一加密密钥从所述第二内容密钥解密得到第一内容密钥,包括:使用所述第一加密密钥和所述第一计数值从所述第二内容密钥解密得到所述第一内容密钥。

在一种可能的设计中,所述第一密钥分发报文还包括所述第一传输装置的设备标识,用于指示使用所述第一密钥分发报文的设备为所述第一传输装置。

在一种可能的设计中,所述第一密钥分发报文中还包括第一流标识,用于指示所述第一密钥分发报文所作用的对象为所述源端装置与所述第一传输装置之间传输的内容。

在一种可能的设计中,所述源端装置与所述第一传输装置之间通过音视频传输接口相连。

在一种可能的设计中,所述第二密钥分发报文包括第二传输装置的设备标识。

第三方面,本申请实施例还提供一种数据传输方法,应用于第一传输装置,例如第一传输装置为音视频处理装置,包括:与源端装置协商第一加密密钥;接收来自所述源端装 置的第二音视频流,所述第二音视频流包括第一密钥分发报文、第二密钥分发报文和第三密钥分发报文;其中,所述第一密钥分发报文供所述第一传输装置解密来自所述源端装置的内容时使用,所述第二密钥分发报文供所述第一传输装置加密向所述第二传输装置传输的内容时使用,所述第三密钥分发报文供所述第二传输装置解密来自所述第一传输装置的内容时使用,所述第一密钥分发报文包括所述第二内容密钥,所述第二密钥分发报文包括所述第四内容密钥;使用所述第一加密密钥从所述第二内容密钥解密得到第一内容密钥;使用所述第一内容密钥从所述第二音视频流中解密得到第一音视频流;

使用所述第一加密密钥从所述第四内容密钥解密得到第三内容密钥;针对所述第一音视频流进行视频转换处理得到第三音视频流;使用所述第三内容密钥对所述第三音视频流进行加密处理得到第四音视频流;将所述第三密钥分发报文添加至所述第四音视频流,并发送给所述第二传输装置。

通过上述方案,由源端装置对宿端装置身份认证以及密钥协商,无需对不需要进行音视频流输出或者转换处理的其它设备进行认证和密钥协商,比如无需对中继设备进行身份认证也不需要与其进行密钥协商,在音视频流传输时,仅需为宿端装置生成用于解密经过加密的音视频流的密钥分发报文,从而传输路径上的中继设备无法获知密钥,无法解密音视频流,在接收到加密的音视频流后,仅需进行中继转发。可以提高音视频流的传输安全性。

第四方面,本申请实施例还提供一种数据传输方法,应用于第一传输装置,所述第一传输装置为所述源端装置对应的宿端装置,所述第二传输装置为所述第一传输装置的上游的传输装置且用于接收由所述第一传输装置回传的来自所述源端装置的音视频数据。方法包括:与源端装置协商第一加密密钥;接收来自所述源端装置的第二音视频流,所述第二音视频流包括第一密钥分发报文、第二密钥分发报文和第三密钥分发报文;其中,所述第一密钥分发报文供所述第一传输装置解密来自所述源端装置的内容时使用,所述第二密钥分发报文供所述第一传输装置加密向所述第二传输装置传输的内容时使用,所述第三密钥分发报文供所述第二传输装置解密来自所述第一传输装置的内容时使用,所述第一密钥分发报文包括所述第二内容密钥,所述第二密钥分发报文包括所述第四内容密钥;使用所述第一加密密钥从所述第二内容密钥解密得到第一内容密钥;使用所述第一内容密钥从所述第二音视频流中解密得到第一音视频流,并从所述第一音视频流解析得到第一音视频数据并输出;针对所述第一音视频数据进行处理得到第二音视频数据,并将所述第二音视频数据封装为属于第三音视频流的音视频报文;使用所述第一加密密钥从所述第四内容密钥解密得到第三内容密钥;对所述第三音视频流进行处理得到第四音视频流,所述处理包括使用所述第三内容密钥对所述第三音视频流的音视频报文进行加密,所述第四音视频流包括加密后的属于第三音视频的音视频报文和所述第三密钥分发报文;将所述第四音视频流,并发送给所述第二传输装置。

通过上述方案,由源端装置对宿端装置以及回传的上游接收设备进行身份认证以及密钥协商,无需对不需要进行音视频流输出或者转换处理的其它设备进行认证和密钥协商,在音视频流传输时,为宿端装置生成用于解密经过加密的音视频流的密钥分发报文以及生成用于加密回传音视频流的密钥分发报文,以及为回传音视频流的接收设备生成用于解密的密钥分发报文,从而传输路径上不需要输出的设备和进行转换处理的设备无法获知密钥,无法解密音视频流。从而宿端装置在接收到加密的音视频流后,可以执行输出操作,还可 以对需要向上游接收设备发送的音视频流执行转换处理。不仅支持回传场景,还可以提高音视频流的传输安全性以及传输性能。

第五方面,一种源端装置,包括第一音视频发送适配器和发送器;

发送器,用于对下游的第一传输装置进行身份认证,并与所述第一传输装置协商第一加密密钥;生成第一内容密钥,使用所述第一加密密钥对所述第一内容密钥进行加密处理得到第二内容密钥,所述第一内容密钥用于所述源端装置与所述第一传输装置传输的内容的加密或者解密;

所述第一音视频发送适配器,用于获取第一音视频数据,并将所述第一音视频数据封装为属于第一音视频流的音视频报文,将第一音视频流发送给所述发送器;

所述发送器,还用于对所述第一音视频流进行处理得到第二音视频流;

其中,所述处理包括使用所述第一内容密钥对所述音视频报文进行加密;所述第二音视频流包括第一密钥分发报文和加密后的所述音视频报文,所述第一密钥分发报文供所述第一传输装置解密来自所述源端装置的内容时使用,所述第一密钥分发报文包括所述第二内容密钥;

所述发送器,还用于通过端口向所述第一传输装置发送所述第二音视频流。

在一种可能的设计中,所述发送器包括认证模块、第一加密模块;

所述认证模块,用于下游的第一传输装置进行身份认证,并与所述第一传输装置协商第一加密密钥;

所述第一加密模块,用于生成第一内容密钥,使用所述第一加密密钥对所述第一内容密钥进行加密处理得到第二内容密钥;对所述第一音视频流进行处理得到第二音视频流。

在一种可能的设计中,所述第一加密模块,具体用于:

使用所述第一内容密钥和第一计数值对所述第一音视频流加密处理,并在经过加密处理的第一音视频流添加所述第一密钥分发报文得到所述第二音视频流;

其中,所述第一密钥分发报文中还包括所述第一计数值。

在一种可能的设计中,所述装置还包括:

复用器,用于将所述第二音视频流与其它待发送的音视频流合并为一路音视频流。

在一种可能的设计中,所述第一密钥分发报文中还包括所述第一传输装置的设备标识,用于指示使用所述第一密钥分发报文的设备为所述第一传输装置。

在一种可能的设计中,所述第一密钥分发报文中还包括第一流标识,用于指示所述第一密钥分发报文所作用的音频流为所述源端装置与所述第一传输装置之间传输的。

在一种可能的设计中,所述第一密钥分发报文位于所述第二音视频流中的垂直消隐区。

在一种可能的设计中,所述下游的第一传输装置为宿端装置。

在一种可能的设计中,所述源端装置与所述第一传输装置通过菊花链装置连接,所述认证模块,还用于:

在向所述第一传输装置发送所述第二音视频流之前,对所述菊花链装置进行身份认证并与所述菊花链装置协商第二加密密钥;

第二音视频发送适配器,用于获取第二音视频数据,并将所述第二音视频数据封装为属于第三音视频流的音视频报文;

第二加密模块,用于生成第三内容密钥,使用所述第二加密密钥对所述第三内容密钥进行加密处理得到第四内容密钥,所述第三内容密钥用于所述源端装置与所述菊花链装置 传输的内容的加密或者解密;对所述第三音视频流进行处理得到第四音视频流;

其中,所述处理包括使用所述第三内容密钥对所述音视频报文进行加密;所述第四音视频流包括第二密钥分发报文,所述第二密钥分发报文供所述菊花链装置解密来自所述源端装置的内容时使用,所述第二密钥分发报文包括所述第四内容密钥;

所述装置还包括:

复用器,用于将所述第二音视频流和所述第四音视频流复用为一路音视频流,并通过所述端口向所述菊花链装置发送所述一路音视频流。

在一种可能的设计中,所述源端装置的下游还包括第二传输装置,所述第二传输装置为所述源端装置对应的宿端装置且第一传输装置为所述源端装置与所述第二传输装置之间传输路径上的音视频处理装置;

所述认证模块,还用于对所述第二传输装置进行身份认证,并与所述第二传输装置协商第三加密密钥;

所述第一加密模块,还用于生成第五内容密钥,使用所述第一加密密钥对所述第五内容密钥进行加密得到第六内容密钥以及使用所述第三加密密钥对所述第五内容密钥进行加密处理得到第七内容密钥,所述第五内容密钥用于对所述第一传输装置与所述第二传输装置传输的内容的加密或者解密;

其中,所述第二音视频流还包括第三密钥分发报文和第四密钥分发报文,所述第三密钥分发报文供所述第一传输装置加密向所述第二传输装置传输的内容时使用,所述第四密钥分发报文供所述第二传输装置解密来自所述第一传输装置的内容时使用,所述第三密钥分发报文包括所述第六内容密钥,所述第四密钥分发报文包括所述第七内容密钥。

在一种可能的设计中,第三密钥分发报文还包括所述第一传输装置的设备标识,用于指示使用所述第三密钥分发报文的设备为所述第一传输装置;所述第四密钥分发报文还包括所述第二传输装置的设备标识,用于指示使用所述第四密钥分发报文的设备为所述第二传输装置。

在一种可能的设计中,所述第三密钥分发报文中还包括第一流标识,用于指示所述第三密钥分发报文所作用的对象为所述源端装置与所述第一传输装置之间传输的内容;所述第四密钥分发报文还包括第二流标识,用于指示所述第四密钥分发报文所作用的对象为所述第一传输装置与所述第二传输装置之间传输的内容。

在一种可能的设计中,所述源端装置对应的宿端装置还包括下游的第二传输装置;所述源端装置通过中继器分别与所述第一传输装置和所述第二传输装置连接;

所述认证模块,还用于:对下游的第二传输装置进行身份认证,并与所述第二传输装置协商第四加密密钥;

所述第一加密模块,使用所述第四加密密钥对所述第一内容密钥进行加密处理得到第八内容密钥,所述第一内容密钥还用于所述源端装置与所述第二传输装置传输的内容的加密或者解密;

其中,所述第二音视频流包括供第二传输装置使用的第五密钥分发报文,所述第五密钥分发报文包括所述第八内容密钥;

所述装置还包括:

端口,用于通过中继器分别向所述第一传输装置和所述第二传输装置发送所述第二音视频流。

在一种可能的设计中,所述第五密钥分发报文还包括所述第二传输装置的设备标识,用于指示使用所述第五密钥分发报文的设备为所述第二传输装置。

在一种可能的设计中,所述第五密钥分发报文中还包括第三流标识,用于指示所述第五密钥分发报文所作用的对象为所述源端装置与所述第二传输装置之间传输的内容。

在一种可能的设计中,所述发送器还包括:

授权模块,用于接收来自内容授权系统的授权控制信息,所述授权控制信息用于对接收所述源端装置发送的音视频数据的传输装置进行控制;验证接收所述源端装置的音视频数据的传输装置满足授权控制信息的要求。

在一种可能的设计中,所述授权控制信息中包括协议版本、安全级别、最大设备数或者最大层级数中的一项或者多项;

所述验证所述第一传输装置和所述第二传输装置满足授权控制信息的要求,包括:

验证所述第一传输装置和所述第二传输装置支持所述授权控制信息中指示的协议版本;

验证所述第一传输装置和所述第二传输装置的安全级别高于或者等于所述授权控制信息指示的安全级别;

验证包括所述第一传输装置和所述第二传输装置在内的传输装置的数量小于或者等于所述最大设备数;或者,

验证所述音视频数据到达所述源端装置对应的宿端装置所经过的音视频处理装置的数量小于所述最大层级数。

第六方面,一种第一传输装置,包括:

接收器,用于与源端装置协商第一加密密钥;

音视频接收适配器,用于接收来自所述源端装置的第二音视频流,所述第二音视频流包括第一密钥分发报文,所述第一密钥分发报文供所述第一传输装置解密来自所述源端装置的内容时使用,所述第一密钥分发报文包括第二内容密钥;

所述接收器,还用于使用所述第一加密密钥从所述第二内容密钥解密得到第一内容密钥;使用所述第一内容密钥从所述第二音视频流中解密得到第一音视频流;从所述第一音视频流解析得到音视频数据并通过端口输出;

交换器,用于通过接收端口接收来自所述源端装置的第三音视频流,所述第三音视频流包括第二密钥分发报文,所述第二密钥分发报文供所述第二传输装置解密来自所述源端装置的内容时使用;通过发送端口向所述第二传输装置转发所述第三音视频流。

在一种可能的设计中,所述接收器包括认证模块、第一加密模块;

所述认证模块,用于与所述源端装置协商所述第一加密密钥;生成第一内容密钥,使用所述第一加密密钥对所述第一内容密钥进行加密处理得到第二内容密钥;

所述第一加密模块,用于对所述第一音视频流进行处理得到第二音视频流。

在一种可能的设计中,所述第一密钥分发报文中还包括第一计数值;

所述接收器,具体用于使用所述第一加密密钥和所述第一计数值从所述第二内容密钥解密得到所述第一内容密钥。

在一种可能的设计中,所述第一密钥分发报文还包括所述第一传输装置的设备标识,用于指示使用所述第一密钥分发报文的设备为所述第一传输装置。

在一种可能的设计中,所述第一密钥分发报文中还包括第一流标识,用于指示所述第 一密钥分发报文所作用的音频流是所述源端装置与所述第一传输装置之间传输的。

在一种可能的设计中,所述第二密钥分发报文包括第二传输装置的设备标识。

第七方面,一种第一传输装置,包括:

接收器,用于与源端装置协商第一加密密钥;

所述接收器,还用于通过接收端口接收来自所述源端装置的第二音视频流,所述第二音视频流包括第一密钥分发报文、第二密钥分发报文和第三密钥分发报文;

其中,所述第一密钥分发报文供所述第一传输装置解密来自所述源端装置的内容时使用,所述第二密钥分发报文供所述第一传输装置加密向第二传输装置传输的内容时使用,所述第三密钥分发报文供所述第二传输装置解密来自所述第一传输装置的内容时使用,所述第一密钥分发报文包括所述第二内容密钥,所述第二密钥分发报文包括所述第四内容密钥;

所述接收器,还用于使用所述第一加密密钥从所述第二内容密钥解密得到第一内容密钥;使用所述第一内容密钥从所述第二音视频流中解密得到第一音视频流;使用所述第一加密密钥从所述第四内容密钥解密得到第三内容密钥;

音视频处理器,用于针对所述第一音视频流进行视频转换处理得到第三音视频流;

所述接收器,还用于使用所述第三内容密钥对所述第三音视频流进行加密处理得到第四音视频流;将所述第三密钥分发报文添加至所述第四音视频流,并通过发送端口发送给所述第二传输装置。

一种可能的设计中,接收器包括认证模块,用于与源端装置协商第一加密密钥。解密模块,用于使用所述第一加密密钥从所述第二内容密钥解密得到第一内容密钥,使用所述第一内容密钥从所述第二音视频流中解密得到第一音视频流。加密模块,用于使用所述第一加密密钥从所述第四内容密钥解密得到第三内容密钥,并使用所述第三内容密钥对所述第三音视频流进行加密处理得到第四音视频流;将所述第三密钥分发报文添加至所述第四音视频流。

一种可能的设计中,解密模块可以使用所述第一内容密钥和第一密钥分发报文包括的第一计数值从第二音视频流中解密得到第一音视频流。加密模块可以使用所述第三内容密钥和第二密钥分发报文中的第二计数值对所述第三音视频流进行加密处理得到第四音视频流。

第八方面,本申请实施例提供一种第一传输装置,包括:

接收器,用于与源端装置协商第一加密密钥;

所述接收器,还用于通过接收端口接收来自所述源端装置的第二音视频流,所述第二音视频流包括第一密钥分发报文、第二密钥分发报文和第三密钥分发报文;

其中,所述第一密钥分发报文供所述第一传输装置解密来自所述源端装置的内容时使用,所述第二密钥分发报文供所述第一传输装置加密向第二传输装置传输的内容时使用,所述第三密钥分发报文供所述第二传输装置解密来自所述第一传输装置的内容时使用,所述第一密钥分发报文包括所述第二内容密钥,所述第二密钥分发报文包括所述第四内容密钥;

所述接收器,还用于使用所述第一加密密钥从所述第二内容密钥解密得到第一内容密钥;使用所述第一内容密钥从所述第二音视频流中解密得到第一音视频流;

音视频发送适配器,用于从所述第一音视频流解析得到第一音视频数据并输出;

所述接收器,还用于针对所述第一音视频数据进行处理得到第二音视频数据;

音视频接收适配器,用于将所述第二音视频数据封装为属于第三音视频流的音视频报文;

所述接收器,还用于使用所述第一加密密钥从所述第四内容密钥解密得到第三内容密钥;对所述第三音视频流进行处理得到第四音视频流,所述处理包括使用所述第三内容密钥对所述第三音视频流的音视频报文进行加密,所述第四音视频流包括加密后的属于第三音视频的音视频报文和所述第三密钥分发报文;并通过发送端口将所述第四音视频流发送给所述第二传输装置。

第九方面,本申请实施例提供了一种数据传输装置,该数据传输装置可以为芯片。数据传输装置中可以包括处理器。该处理器调用存储在存储器中的软件指令以实现上述第一方面或者第二方面或者第三方面或者第四方面的方法实施例、方法实施例的任意一种可能的设计中所涉及的功能。存储器可以是部署于数据传输装置内的存储器,也可以是部署于数据传输装置外的存储器。

第十方面,本申请实施例提供了一种计算机程序产品,包括计算机程序,该计算机程序在某一计算机或处理器上执行时,将会使计算机或处理器实现上述第一方面或者第二方面或者第三方面或者第四方面方法实施例、方法实施例的任意一种可能的设计中所涉及的功能。

第十一方面,本申请实施例提供了一种计算机可读存储介质,用于存储程序、指令,这些程序、指令在计算机中被调用执行时,可以使得计算机执行上述第一方面或者第二方面或者第三方面或者第四方面所述方法实施例、方法实施例的任意一种可能的设计中所涉及的功能。

第十二方面,本申请实施例提供了一种芯片系统,该芯片系统中包括处理器,还可以包括存储器,用于实现上述方法中所涉及的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。

图1为本申请实施例提供的通信系统结构示意图;

图2A为本申请实施例提供的一种数据传输方法流程示意图;

图2B为本申请实施例提供的一种的密钥分发报文的位置示意图;

图3为本申请实施例的第一种可能的场景下的方法流程示意图;

图4为本申请实施例的第二种可能的场景下的方法流程示意图;

图5为本申请实施例的第三种可能的场景下的方法流程示意图;

图6为本申请实施例的第四种可能的场景下的方法流程示意图;

图7为本申请实施例的第五种可能的场景下的方法流程示意图;

图8A为本申请实施例的一种可能的发送器结构示意图;

图8B为本申请实施例的第一种可能的源端装置结构示意图;

图8C为本申请实施例的第二种可能的源端装置结构示意图;

图8D为本申请实施例的第三种可能的源端装置结构示意图;

图8E为本申请实施例的第四种可能的源端装置结构示意图;

图9A为本申请实施例的一种可能的接收器结构示意图;

图9B为本申请实施例的第一种可能的宿端装置结构示意图;

图9C为本申请实施例的第二种可能的宿端装置结构示意图;

图9D为本申请实施例的第三种可能的宿端装置结构示意图;

图9E为本申请实施例的第四种可能的宿端装置结构示意图;

图10为本申请实施例的一种可能的音视频处理装置结构示意图;

图11为本申请实施例的一种可能的菊花链装置结构示意图;

图12为本申请实施例的一种可能的中继装置结构示意图;

图13A为本申请实施例的第一种可能的场景的流程示意图;

图13B为本申请实施例的第二种可能的场景的流程示意图;

图13C为本申请实施例的第三种可能的场景的流程示意图;

图13D为本申请实施例的第四种可能的场景的流程示意图;

图13E为本申请实施例的第五种可能的场景的流程示意图;

图14A为本申请实施例的信任链结构示意图;

图14B为本申请实施例的一种可能的身份认证流程示意图;

图15为本申请实施例的另一种可能的身份认证流程示意图;

图16为本申请实施例的另一种可能的位置检查流程示意图;

图17为本申请实施例的数据传输装置的结构示意图。

在对本申请提供的技术方案进行说明之前,先对本申请实施例涉及到的技术术语进行解释说明。

(1)发送器(Transmitter),是音视频数据流传输的起点,也是认证及授权的控制端,支持对接收端身份认证及密钥协商、授权控制,支持对产生的音视频数据进行加密并发送到接收端。音视频数据,也可以称为视音频数据。音视频数据流也可以称为音视频流或者称为视音频流或者称为多媒体数据流。

(2)接收器(Receiver),视音频流传输的终点,支持发送器的身份认证及密钥协商,对视音频数据解密并输出。

(3)转换器(Transformer),视音频流的音视频处理装置,既支持对上游设备发送的视音频流解密,在视音频流转换后,也支持对新的视音频流加密,发送到下游设备。

(4)发送端(Sender),具有视音频流发送功能,发送器和转换器均可以作为发送端。

(5)接收端(Receiver End),视音频流的接收设备,具有接收器或者转换器的装置(或设备)均可以作为接收端。

(6)源端装置(Source Device),视音频流的输入设备,视音频流传输的起点。一般源端装置可以部署发送器。源端装置可以是部署于源设备中的装置,或者由源设备的功能实现。

(7)宿端装置(Sink Device),视音频流的输出设备,视音频流传输的终点。

(8)中继装置(Repeater Device),可将一路视音频流分成多路同样的视音频流分别转发给下游多个接收端。中继装置也可以称为中继器。

(9)菊花链装置(Daisy Chain Device),可实现视音频流接收输出并支持将其他视音频流转发到下游接收端。例如,菊花链装置中可以部署接收器和转换器。

(10)路由装置(Router Device),可将音频流按照路由要求发送到下游接收端的视音频传输装置。路由装置,一般不具备加密和解密功能。

(11)音视频处理装置(Video Audio Processor Device),用于对音视频流进行转换处理,比如将音视频流进行格式转化后发送到下游接收端。视音频处理装置包括转换器,可以内置转换器证书。

(12)密钥分发报文,是指针对需要接收音视频数据或者对音视频数据进行转换处理的设备,封装的用于对音视频数据进行加密和解密的报文。例如,密钥分发报文中包括经过加密的内容密钥,加密的内容密钥可以是通过设备双方协商的加密密钥对源端设备产生的内容密钥加密得到的。再比如,密钥分发报文中还可以包括流标识,用于标识两个设备之间传输的音视频流。还可以包括用于标识使用该密钥分发报文的设备的设备标识。

(13)本申请涉及的“上行音视频流”是指源端装置向宿端装置发送的音视频流,“下行音视频流”是指宿端装置向上游传输设备回传的音视频流。

本申请主要提供应用于数字媒体传输装置之间进行内容保护的方案。目前一种可行的内容保护方案是采用高带宽内容保护(high-bandwidth digital content protection,HDCP)技术。在采用HDCP技术时,传输设备执行无编码的流复用、然后在执行流复用、负载复用,将多路音视频流复用为一路音视频流后,然后对该一路流进行加密处理,导致对于需要加密的数据和不需要加密的数据都进行加密处理,从而降低传输接口的传输性能。另外,针对需要经过其它转发设备时,需要上游传输设备对下游传输设备进行身份认证,也就是多个传输设备需要采用级联的方式进行身份认证以及授权控制,因此导致直播场景下切换频道时,每次都需要级联的方式进行内容授权信息下发,需要的时间较长,影响传输性能。还有,中间设备在不需要输出音视频流的情况下解密音视频流,存在很大的安全风险。

本申请实施例提供一种数据传输方案,无需对不需要输出数据或者不涉及视频转换处理的传输设备不参与认证、授权以及解密,从而不需要输出数据或者不涉及视频转换处理的传输设备不需要解密数据,可以提高安全性,并且可以提高传输性能。

参见图1所示,为本申请实施例提供的一种可能的通信系统结构示意图。通信系统中至少包括源端装置和宿端装置。本申请可以应用于到家庭网络场景。

家庭网络的信号源输入到源端装置,进而输出到宿端装置。源端装置与宿端装置可以直接相连,也可以通过一个或者多个音视频设备相连。音视频传输装置可以包括音视频处理装置、菊花链装置、中继设备或者路由设备等。

此处连接可以是有线连接,也可以是无线连接,本申请对此不作具体限定。比如,参见图1所示,信号源可以是由音视频服务平台产生,通过分发网络输入到源端装置。还可以是由源端装置自身产生。比如源端装置可以是机顶盒、分体扩展坞(DOCK)、或者终端设备等。宿端装置可以包括电视机、投影仪、智慧屏或者具有显示功能的电子设备(比如,具有显示屏的音箱或者终端设备)或者具有音频播放功能的电子设备,比如音箱。

智慧屏可以是家庭中的影音娱乐中心,更是信息共享中心、控制管理中心、多设备交互中心。终端设备也可以称为用户设备、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或者用户装置。终端设备可以是蜂窝电话、无绳电话、个人数字助理(personal digital assistant,PDA),具有无线通信功能的手持设备、计算设备或者无线调整解调器的其它处理设备、可穿戴设备等。

应理解的是,一个电子设备可以具备源端装置的功能、宿端装置的功能、音视频处理装置的功能中的一项或者多项。例如,一个电子设备可以仅具备源端装置的功能,作为源端装置使用,比如该电子设备包括发送器。或者一个电子设备仅具备宿端装置的功能,作为宿端装置使用,比如该电子设备包括接收器,内置接收器证书。又或者,一个电子设备具备源端装置和宿端装置的功能,可以作为源端装置使用也可以作为宿端使用。该电子设备包括接收器和发送器,内置接收器证书。

下面结合图2A对本申请实施例提供的数据传输方法进行描述。

201,源端装置执行身份认证和密钥协商。比如,源端装置对所述源端装置对应的宿端装置执行身份认证和密钥协商。在宿端装置包括多个时,源端装置对所有的宿端装置进行身份认证。在源端装置与宿端装置之间的传输路径上还包括其它传输装置时,还需要对其它的传输装置进行身份认证以及密钥协商。例如,其它传输装置可以包括音视频处理装置和/或菊花链装置等。

源端装置向宿端装置和其它传输装置发起身份认证和密钥协商。图2A中以源端装置与宿端装置进行身份认证和密钥协商为例。源端装置与宿端装置进行信息交互,协商支持的协议版本,验证宿端装置包括的接收器的证书链(或者称为信任链)、协商内容密钥加密密钥(content key encryption key,CKEK)和位置检查密钥(IcMacKey)。宿端装置内置有接收器证书。接收器类型证书中可以包括设备标识(DeviceId)、安全级别或者设备类型(或者称为证书类型)中的一项或者多项。设备类型(证书类型)包括转换器、接收器、接收及转换器等。接收及转换器,既具备接收器的功能,还具备转换器的功能。

应理解的是,一般源端装置包括发送器。宿端装置一般包括接收器,可以包括接收器证书。菊花链装置一般包括接收器,可以包括接收器证书。音视频处理装置一般包括转换器,可以包括转换器证书。可以理解的是,源端装置对宿端装置或者其它传输装置进行身份认证或者密钥协商时,即为发送器对当前音视频数据的所有接收器、转换器或者接收及转换器进行身份认证,以及与所有接收器、转换器或者接收及转换器进行密钥协商。

示例性地,内容密钥加密密钥也可以称为加密密钥,还可以采用其它名字命名,本申请实施例对此不作具体限定。

一些实施例中,源端装置可以通过辅助链路(或者描述为控制链路)来对宿端装置或者其它传输装置进行身份认证以及密钥协商。辅助链路支持设备间的路由转发。可以理解的是,源端装置与宿端装置之间传输音视频流,采用主链路,主链路支持路由转发。源端装置与宿端装置传输控制信息,采用辅助链路,辅助链路支持路由转发。

202,源端装置对宿端装置认证通过后,可以对宿端装置进行位置检查。对宿端装置进行位置检查,可以是确定宿端装置与源端装置的距离在设定范围内。

203,源端装置执行授权控制。比如,源端装置对宿端装置进行授权控制。在宿端装置包括多个时,源端装置对所有的宿端装置均执行授权控制。在源端装置与宿端装置之间的传输路径上还包括其它传输装置时,还需要对其它的传输装置进行授权控制。例如,其它传输装置可以包括音视频处理装置、菊花链装置。

1)源端装置接收内容授权系统发送的当前音视频数据的授权控制信息。比如,通过授权接口接收内容授权系统发送的当前音视频数据流的授权控制信息。

例如,授权控制信息包括协议版本、安全级别、最大设备数、最大层级中的一项或者多项。

作为一种举例,授权控制信息可以采用如下消息格式定义,参见表1所示。

表1

2)源端装置验证宿端装置(和其它传输装置)是否满足授权控制信息的要求。

示例性地,验证宿端装置(和其它传输装置)是否满足授权控制信息的要求可以包括如下一项或者多项。

(1)验证宿端装置(和其它传输装置)是否支持所述授权控制信息中指示的协议版本。例如,验证宿端装置不支持所述授权控制信息中指示的协议版本时,可以不向该宿端装置发送当前音视频数据。例如,源端装置验证身份认证过程中与接收端协商的协议版本与授权控制信息中的VersionRequired是否相同。

(2)验证宿端装置(和其它传输装置)的安全级别是否高于或者等于所述授权控制信息指示的安全级别。例如,比较接收端的安全级别是否大于或者等于授权控制信息中的SecurityLevel。例如,验证宿端装置安全级别低于所述授权控制信息指示的安全级别时,可以不向该宿端装置发送当前音视频数据。安全级别是安全能力的分级定义。

作为一种举例,参见表2所示,示例性地描述安全级别的定义。

表2

(3)源端装置验证接收当前音视频数据的宿端装置的数量是否小于或者等于所述最大设备数。

源端装置可以根据当前待发送的音视频数据的路由路径,确定涉及的接收端,获取相关接收端证书及其设备标识来统计设备数量,和授权控制信息中要求的最大设备数MaxCount限制做比较,以实现数量控制。

4)源端装置验证当前音视频数据到达宿端装置所经过的音视频处理装置的数量是否小于所述最大层级数。源端装置可以根据当前待发送的音视频数据的路由路径,确定转换器和接收器的最大层级,从而与最大级联深度MaxDepth比较来限制层级数。

在一些实施例中,内容授权系统确定当前音视频数据的授权控制信息发生更新,向源端装置的发送器发送给更新后的授权控制信息。比如要求的协议版本更新、或者安全级别 更新、或者最大级联深度更新、或者每级设备支持最多的连接设备数更新。源端装置接收到更新后的授权控制信息时,重新对接收当前音视频数据的各个接收端进行授权控制。针对每个接收端确定是否满足授权控制信息的要求,如果满足,则执行更新授权流程。如果不满足,则执行取消授权流程。

示例性地,更新授权流程可以包括:源端装置重新生成用于加密音视频数据的内容密钥和计数器(Counter)的计数值。源端装置重新生成密钥分发报文,使用重新生成的内容密钥和counter来对打包的音视频报文进行加密,并添加重新生成的密钥分发报文。

示例性地,取消授权流程可以包括:如果一个接收端不满足授权控制信息的要求,并且当前音视频数据的接收端仅包括一个,则源端设备可以取消当前音视频数据的发送。如果一个接收端不满足授权控制信息的要求,并且当前音视频数据的接收端包括多个,则可以取消向该接收端发送用于对当前音视频数据进行解密或者加密时使用的密钥分发报文,以及取消向该接收端的下游的接收端发送用于对当前音视频数据进行解密或者加密时使用的密钥分发报文。

在另一些实施例中,如果源端设备对应的接收端未发生变化,但是需发送的音视频数据发生变化,即用户观看的节目发生变化,源端设备重新完成授权控制。并针对更新的音视频数据重新产生内容密钥和Counter。源端装置重新生成密钥分发报文,使用重新生成的内容密钥和Counter来对打包的音视频报文进行加密,并添加重新生成的密钥分发报文。

204,源端装置执行加密音视频数据流。以源端装置向宿端装置加密传输音视频数据流为例。

1)产生内容密钥。源端装置可以随机产生内容密钥(content key,CK)。示例性地,源端装置可以随机产生计数器(Counter)的计数值。例如,源端装置可以随机产生Counter的部分计数值,其余计数值可以初始化为0。比如Counter为128比特(bit),随机产生Counter的高64bit的计数值,低64bit初始化为0。

2)源端装置产生密钥分发报文(key distribution packet,KDP)。源端装置使用内容密钥加密密钥CKEK来加密内容密钥CK得到加密后的内容密钥(encryption content key,ECK)。KDP供所述宿端装置解密来自所述源端装置的内容时使用。密钥分发报文中包括加密的内容密钥ECK。示例性地,密钥分发报文还可以包括宿端装置的设备标识,以指示使用该密钥分发报文的设备为宿端装置。为了便于后续描述,设备标识采用DeviceId表示。示例性地,密钥分发报文还可以包括音视频数据的流标识,用于指示密钥分发报文所作用的对象是源端装置与宿端装置之间传输的内容。不同的流标识对应的作用对象可以不同。为了便于后续描述,流标识可以采用StreamId表示。

可选地,密钥分发报文还可以包括版本号Version(KDP版本号)、加密内容使用的Counter的部分或者全部计数值等。Counter的部分或者全部计数值,比如加密使用Counter的高64bit。Counter的部分或者全部计数值可以在加密源端装置与宿端装置之间传输的内容时使用。

作为一种举例,参见表3所示,示例性地描述一种可能的密钥分发报文格式定义。

表3

需要说明的是,在CTR模式的基础上增加“认证”功能的模式称为GCM模式(Galois/Counter Mode)。GCM模式能够在CTR模式生成密文的同时生成用于认证的信息,从而判断密文是否通过合法的加密过程。

作为一种举例,为支持内容密钥的平滑变换,加密方法可以采用奇偶密钥变换机制,即将EncryptionMethod设置为1或2。

3)源端装置对向宿端装置传输的内容进行加密。示例性地,加密算法可以采用AES-128-CTR或SM4-128-CTR算法,当然还可以采用其它的加密算法。

一种示例中,源端装置使用CK对待发送的音视频数据流进行加密。另一种示例中,源端装置可以使用CK和Counter的部分或者全部计数值加密待发送的音视频数据流。例如,使用CK和Counter的高64bit加密待发送的音视频数据流。

4)发送器将密钥分发报文KDP打包到加密后音视频数据流中,发送到下游的宿端装置。

一种可能的示例中,KDP可以打包到音视频数据流的垂直消隐区、水平消隐区或者视频区。例如,参见图2B所示。音视频报文可以包括垂直消隐区、水平消隐区和视频区。视频区用于承载视频报文。应理解的是,电子枪从左到右画出像素点,每次只能画一条扫描线,画下一条之前要先回到左边并做好画下一条扫描线的准备,将电子枪画上一条结尾回到下一条的开始所扫描的区域称为水平消隐区。在画完全部扫描线之后它又回到屏幕左上角准备下一次画屏幕(帧),将电子枪从画完全部扫描线的结尾回到屏幕左上角扫描的 区域称为垂直消隐区。垂直消隐区和水平消隐区可以用于承载辅助数据和音频数据。辅助数据比如可以是音视频格式。视频区用于承载视频数据或者说视频报文。

作为一种举例,KDP可以打包在垂直消隐区的开始位置,比如在帧格式开始字段之后,例如,帧格式开始字段可以通过媒体帧控制(video frame control,VFC)表示。密钥分发报文还可以包括开始指示和结束指示,以指示KDP所在的区域。图2B中,开始指示采用内容保护开始(content protection start,CPS)表示,结束指示采用内容保护结束(content protection end,CPE)表示。一种示例中,视频区的视频报文可以包括开始指示和结束指示,以指示视频报文数据的开始和结束。例如,开始指示采用有效视频开始(active video start,AVS)或带内容保护的有效视频开始(active video protection start,AVPS)表示,结束指示可以采用有效视频结束(active video end,AVE)或带内容保护的有效视频结束(active video protection end,AVPE)表示。作为一种举例,位于AVS和AVE指示的区域承载未经过加密的视频报文,位于AVPS和AVPE指示的区域承载经过加密的视频报文。另一种示例中,承载辅助数据或者音频数据的辅助报文也可以包括开始指示和结束指示。例如,开始指示采用辅助数据开始(auxiliary data start,ADS)或带内容保护的辅助数据开始(auxiliary data protection start,ADPS)表示,结束指示采用辅助数据结束(auxiliary data end,ADS)或带内容保护的辅助数据结束(auxiliary data protection end,ADPS)表示。作为一种举例,位于ADS和ADE指示的区域承载未经过加密的音频报文或者辅助报文,位于ADPS和ADPE指示的区域承载经过加密的音频报文或者辅助报文。示例性地,音视频流的水平消隐区可以包括开始指示,比如图2B采用水平消隐区开始(HBlank start,HBS)表示。垂直消隐区可以包括开始指示,比如图2B中采用垂直消隐区开始(VBlank start,VBS)表示。

205、宿端装置接收来自源端装置的加密后的音视频数据流,对加密后的音视频数据流进行解密处理。

1)从加密后的音视频数据流中过滤密钥分发报文KDP。

一种示例中,宿端装置接收到加密后的音视频数据流,可以通过StreamId和DeviceId过滤属于宿端装置的密钥分发报文KDP。

2)解密获得内容密钥。宿端装置从密钥分发报文KDP中获取加密的内容密钥ECK,然后使用与源端装置协商的内容密钥加密密钥CKEK解密ECK得到内容密钥CK。

一种示例中,源端装置可以每次向宿端装置发送密钥分发报文,可以连续重复发送多个相同密钥分发报文,比如,重复发送多个,从而宿端装置可以采用多数判决的方式对多个密钥分发报文进行纠错处理。

一些实施例中,宿端装置从密钥分发报文KDP中获取加密的内容密钥ECK之前,宿端装置还可以验证密钥分发报文是否正确接收,比如可以采用如下方式来确定:

在加密模式采用GCM模式时,宿端装置将密钥分发报文作为附加消息加入到GCM的计算,以对密钥分发报文进行完整性验证,如验证通过,则密钥分发报文接收正确。

在加密模式采用CTR模式时,可以通过传输通道校验实现密钥分发报文的完整性验证。

3)使用内容密钥执行内容解密。一种示例中,宿端装置使用CK解密经过加密的音视频数据流。另一种示例中,宿端装置使用CK和Counter的部分或者全部计数值,比如Counter的高64bit解密经过加密的音视频数据流。

4)输出音视频数据。

本申请实施例通过上述方案,由源端装置对到宿端装置的传输路径上需要输出音视频数据或者执行转换处理的传输设备进行身份认证以及密钥协商,从仅针对需要输出音视频数据或者执行转换处理的传输设备生成用于加密或者解密音视频流的密钥分发报文,传输路径上其它设备无法获知密钥,因此无法执行解密,可以提高音视频流的传输安全性。另外,本申请由源端装置统一对其它需要输出音视频数据或者执行转换处理的传输设备进行身份认证以及授权控制,直播场景下切换频道时,仅需源端装置进行授权控制,相比采用级联的验证和授权方式,可以降低时延,提高传输性能。

下面结合不同的场景,对本申请实施例提供的方案进行说明。

第一种可能的场景:

源端装置与宿端装置之间直接相连或者通过一个或者多个路由设备相连。比如源端装置与宿端装置之间通过音视频传输接口相连。例如,音视频传输接口可以是数字式视频接口(display port,DP)或者通用串行总线(universal serial bus,USB)类型(Type)-C接口或者其它能够支持路由的接口等等。例如,源端装置可以是机顶盒、宿端装置可以是电视机。

参见图3所示,为应用于第一种可能的场景中的数据传输方法流程示意图。源端装置与第一传输装置相连。第一传输装置为接收源端装置的音视频数据的宿端装置。

301,源端装置对第一传输装置进行身份认证,并与第一传输装置协商加密密钥,为了便于区分,此处将源端装置与第一传输装置协商的加密密钥称为第一加密密钥,通过CKEK1-1表示。在传输路径上包括路由设备,由于路由设备不参与加密和解密,因此可以不对路由设备执行身份认证,以及不需要与路由设备协商加密密钥。源端装置还对传输路径上的音视频处理装置以及宿端装置进行授权控制,可以参见步骤203中的相关描述,此处不再赘述。

需要说明的是,源端装置到宿端装置的传输路径上包括哪些传输装置可以根据音视频数据对应的路由表来确定。

302,源端装置生成内容密钥。该内容密钥用于所述源端装置与所述第一传输装置传输的内容的加密或者解密。为了便于区分,此处将用于所述源端装置与所述第一传输装置传输的内容的加密或者解密的内容密钥称为第一内容密钥,采用CK1-1来表示。

303,源端装置产生密钥分发报文,该密钥分发报文供所述第一传输装置解密来自所述源端装置的内容时使用。针对密钥分发报文的描述可以参见步骤204中的相关描述,此处不再赘述。为了便于区分,将供所述第一传输装置解密来自所述源端装置的内容时使用的密钥分发报文称为第一密钥分发报文,采用KDP1-1表示。源端装置使用CKEK1-1对CK1-1进行加密得到第二内容密钥,第二内容密钥采用ECK1-1表示。此处以KDP1-1中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId1-1、设备标识DeviceId1-1、加密的内容密钥ECK1-1、加密内容使用的Counter的部分计数值或者全部计数值,比如采用Counter的高64bit。采用Counter1-1表示Counter高64bit。后续描述时,以加密内容使用Counter1-1为例进行说明。

源端装置可以产生音视频数据或者从内容分发网络接收音视频数据等。对音视频数据进行封装获得音视频报文。为了便于区别,此处将音视频数据封装获得的音视频报文所属的数据流称为第一音视频流。进而源端装置对第一音视频流进行处理第二音视频流。处理可以包括加密和添加密钥分发报文。

应理解的是,接收同一音视频数据的宿端装置越多,源端装置产生的密钥分发报文越多。每增加一个宿端装置,可以为该增加的宿端装置增加用于解密的密钥分发报文。

304,源端装置使用CK1-1对属于第一音视频流的音视频报文进行加密。可选地,为了进一步提高音视频数据传输的安全性,可以使用CK1-1和Counter1-1对属于第一音视频流的音视频报文进行加密。

305,源端装置在加密后的第一音视频流中插入KDP1-1得到第二音视频流。

作为一种举例,可以每间隔一定数量的音视频报文插入KDP1-1。作为另一种举例,可以在音视频流的开始阶段插入设定数量的KDP1-1,后续每间隔一定数量的音视频报文插入KDP1-1。

306,源端装置向第一传输装置发送所述第二音视频流,从而第一传输装置接收来自源端装置的第二音视频流。比如,源端装置可以通过一个或者多个路由设备将第一传输装置发送所述第二音视频流。路由设备仅对第二音视频流进行转发,并不对第二音视频流进行加解密处理,可以提高音视频数据传输的安全性。

307,第一传输装置从所述第二音视频流中过滤出KDP1-1。

308,第一传输装置从KDP1-1获取Counter1-1,并从ECK1-1中解密得到CK1-1。

309,第一传输装置使用CK1-1和Counter1-1从第二音视频流中解密得到第一音视频流。

310,第一传输装置从第一音视频流中解析得到音视频数据并输出。比如将视频数据渲染到显示屏,经音频数据渲染到扬声器。

通过上述方案,由源端装置对到宿端装置的传输路径上需要输出音视频数据或者执行转换处理的传输设备进行身份认证以及密钥协商,从仅针对需要输出音视频数据或者执行转换处理的传输设备生成用于加密或者解密音视频流的密钥分发报文,传输路径上其它设备无法获知密钥,因此无法执行解密,可以提高音视频流的传输安全性。

第二种可能的场景:

转换场景,源端装置与宿端装置的传输路径上包括音视频处理装置,音视频处理装置的数量可以是一个或者多个。音视频处理装置用于对音视频流进行转换处理。以源端装置、第一传输装置和第二传输装置为例。第一传输装置为音视频处理装置,第二传输装置为宿端装置。

参见图4所示,为应用于第二种可能的场景中的数据传输方法流程示意图。源端装置与第一传输装置相连,第一传输装置连接第二传输装置。此处所说的连接,可以是有线连接或者也可以是无线连接。源端装置与第二传输装置之间的传输路径上还可以包括其它的转发设备,比如路由设备。其它的转发设备不对数据流进行加密和解密。

第二传输装置为接收源端装置的音视频数据的宿端装置,第一传输装置为源端装置与第二传输装置之间传输路径上的音视频处理装置。

401a,源端装置对第一传输装置进行身份认证,并与第一传输装置协商加密密钥。

401b,源端装置对第二传输装置进行身份认证,并与第二传输装置协商加密密钥。

为了便于区分,此处将源端装置与第一传输装置协商的加密密钥称为第一加密密钥,通过CKEK2-1表示;将源端装置与第二传输装置协商的加密密钥称为第二加密密钥,通过CKEK2-2表示。

在传输路径上包括路由设备,由于路由设备不参与加密和解密,因此可以不对路由设备执行身份认证,以及不需要与路由设备协商加密密钥。

源端装置还对传输路径上的音视频处理装置以及宿端装置进行授权控制,可以参见步骤203中的相关描述,此处不再赘述。需要说明的是,源端装置到宿端装置的传输路径上包括哪些传输装置可以根据音视频数据对应的路由表来确定。

402,源端装置生成用于源端装置与第一传输装置之间的内容使用的内容密钥和用于第一传输装置与第二传输装置之间传输的内容使用(包括加密或者解密)的内容密钥。为了便于区分,将用于源端装置与第一传输装置之间传输的内容使用的内容密钥称为第一内容密钥,采用CK2-1表示。针对用于第一传输装置与第二传输装置之间传输的内容使用的内容密钥称为第三内容密钥,采用CK2-2表示。

示例性地,可以采用StreamId2-1用于标识源端装置与第一传输装置之间传输的内容,采用StreamId2-2用于标识第一传输装置与第二传输装置之间传输的内容。

403,源端装置产生第一密钥分发报文、第二密钥分发报文和第三密钥分发报文。该第一密钥分发报文供所述第一传输装置解密来自所述源端装置的内容时使用。第二密钥分发报文供第一传输装置对向第二传输装置发送的内容加密时使用。第三密钥分发报文供第二传输装置对第一传输装置发送的内容解密时使用。

针对密钥分发报文的描述可以参见步骤204中的相关描述,此处不再赘述。为了便于描述,将第一密钥分发报文,采用KDP2-1表示。第二密钥分发报文采用KDP2-2表示,第三密钥分发报文采用KDP2-3表示。

源端装置使用CKEK2-1对CK2-1进行加密得到第二内容密钥,第二内容密钥采用ECK2-1表示。源端装置使用CKEK2-1对CK2-2进行加密得到第四内容密钥,第四内容密钥采用ECK2-2表示。源端装置使用CKEK2-2对CK2-2进行加密得到第五内容密钥,第五内容密钥采用ECK2-3表示。此处以KDP2-1中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId2-1、设备标识DeviceId2-1、加密的内容密钥ECK2-1、Counter2-1为例进行说明。此处以KDP2-2中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId2-2、设备标识DeviceId2-1(第一传输装置的设备标识)、加密的内容密钥ECK2-2、Counter2-2为例进行说明。此处以KDP2-3中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId2-2、设备标识DeviceId2-2(第二传输装置的设备标识)、加密的内容密钥ECK2-3、Counter2-2为例进行说明。

源端装置可以产生音视频数据或者从内容分发网络接收音视频数据等。对音视频数据进行封装获得音视频报文。为了便于区别,此处将音视频数据封装获得的音视频报文所属的数据流称为第一音视频流。进而源端装置对第一音视频流进行处理得到第二音视频流。处理可以包括加密和添加第一密钥分发报文、第二密钥分发报文和第三密钥分发报文。

应理解的是,音视频数据的传输路径上的音视频处理装置越多,源端装置产生的密钥分发报文越多。每增加一个音视频处理装置,可以为该增加的音视频处理装置增加用于解密的密钥分发报文和用于加密的密钥分发报文。

404,源端装置使用CK2-1对属于第一音视频流的音视频报文进行加密。可选地,为了进一步提高音视频数据传输的安全性,可以使用CK2-1和Counter2-1对属于第一音视频流的音视频报文进行加密。

405,源端装置在加密后的第一音视频流中插入KDP2-1、KDP2-2和KDP2-3得到第 二音视频流。

作为一种举例,可以每间隔一定数量的音视频报文在垂直消隐区或者水平消隐区或者视频区插入KDP2-1、KDP2-2和KDP2-3。作为另一种举例,可以在音视频流的开始阶段的垂直消隐区插入设定数量的KDP2-1、KDP2-2和KDP2-3,后续每间隔一定数量的音视频报文在垂直消隐区或者水平消隐区或者视频区插入KDP2-1、KDP2-2和KDP2-3。

406,源端装置向第一传输装置发送所述第二音视频流,从而第一传输装置接收来自源端装置的第二音视频流。比如,源端装置还可以通过一个或者多个路由设备将第一传输装置发送所述第二音视频流。路由设备仅对第二音视频流进行转发,并不对第二音视频流进行加解密处理,可以提高音视频数据传输的安全性。

407,第一传输装置从所述第二音视频流中过滤出KDP2-1和KDP2-2。

例如,可以根据KDP2-1和KDP2-2包括的设备标识DeviceId2-1,确定该两个密钥分发报文供第一传输装置使用。根据KDP2-1包括的流标识StreamId2-1确定该KDP2-1供第一传输装置解密第二音视频流使用。

408,第一传输装置从KDP2-1获取Counter2-1,并使用EKCK2-1从ECK2-1中解密得到CK2-1。

409,第一传输装置使用CK2-1和Counter2-1从第二音视频流中解密得到第一音视频流。

410,对所述第一音视频流进行格式转换处理得到第三音视频流。

411,第一传输装置从KDP2-2获取Counter2-2和ECK2-2,并使用EKCK2-1从ECK2-2中解密得到CK2-2。根据KDP2-2包括的流标识StreamId2-2确定该KDP2-2供第一传输装置加密第三音视频流使用。

412,第一传输装置使用CK2-2和Counter2-2对第三音视频流进行加密。

413,第一传输装置在加密的第三音视频流中添加KDP2-3得到第四音视频流。

414,第一传输装置向第二传输装置发送所述第四音视频流。

415,第二传输装置接收第四音视频流,并从第四音视频流中过滤出KDP2-3。

416,第二传输装置从KDP2-3获取Counter2-2和ECK2-3,并使用EKCK2-2从ECK2-3中解密得到CK2-2。

417,第二传输装置使用CK2-2和Counter2-2对第四音视频流进行解密得到第三音视频流。

418,第二传输装置从第三音视频流中解析得到音视频数据并输出。比如将视频数据渲染到显示屏,经音频数据渲染到扬声器。

通过上述方案,由源端装置对宿端装置和执行转换处理的音视频处理装置进行身份认证以及密钥协商,针对音视频处理装置分别生成用于解密源端装置发送的音视频流的密钥分发报文,以及用于对向宿端装置发送的音视频流进行加密的密钥分发报文,为宿端装置生成用于解密音视频处理装置发送的音视频流的密钥分发报文,从而传输路径上的其它设备无法获知密钥,无法解密音视频流,可以提高音视频流的传输安全性。

第三种可能的场景:

中继场景,源端装置对应的宿端装置包括多个。源端装置通过中继器分别与多个宿端装置相连。源端装置与中继器之间还可以包括音视频处理装置,或者中继器与宿端装置之 间包括音视频处理装置。本实施例中以两个宿端装置为例,分别为第一传输装置和第二传输装置。源端装置通过中继器分别与第一传输装置和第二传输装置相连。此处所说的连接,可以是有线连接或者也可以是无线连接。

参见图5所示,为应用于第三可能的场景中的数据传输方法流程示意图。源端装置与第二传输装置之间的传输路径上还可以包括其它的转发设备,源端装置与第一传输装置之间的传输路径上还可以包括其它的转发设备,比如路由设备。其它的转发设备不对数据流进行加密和解密。中继设备不需要对数据流进行加密和解密。

501a,源端装置分别对第一传输装置进行身份认证,并与第一传输装置协商加密密钥。

501b,源端装置分别对第二传输装置进行身份认证,并与第二传输装置协商加密密钥。

为了便于区分,此处将源端装置与第一传输装置协商的加密密钥称为第一加密密钥,通过CKEK3-1表示;将源端装置与第二传输装置协商的加密密钥称为第二加密密钥,通过CKEK3-2表示。

在传输路径上包括中继设备,由于中继设备不参与加密和解密,因此可以不对中继设备执行身份认证,以及不需要与中继设备协商加密密钥。

源端装置还对传输路径上的音视频处理装置以及宿端装置进行授权控制,可以参见步骤203中的相关描述,此处不再赘述。需要说明的是,源端装置到宿端装置的传输路径上包括哪些传输装置可以根据音视频数据对应的路由表来确定。

502,源端装置生成CK3-1。

示例性地,可以采用StreamId3-1用于标识源端装置与第一传输装置之间传输的内容,采用StreamId3-2用于标识源端装置与第二传输装置之间传输的内容。

503,源端装置产生KDP3-1和KDP3-2。该KDP3-1供所述第一传输装置解密来自所述源端装置的内容时使用。KDP3-2供第二传输装置解密来自所述源端装置的内容。

针对密钥分发报文的描述可以参见步骤204中的相关描述,此处不再赘述。

源端装置使用CKEK3-1对CK3-1进行加密得到ECK3-1,源端装置使用CKEK3-2对CK3-1进行加密得到ECK3-2。此处以KDP3-1中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId3-1、设备标识DeviceId3-1(第一传输装置的设备标识)、加密的内容密钥ECK3-1、Counter3-1为例进行说明。此处以KDP3-2中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId3-2、设备标识DeviceId3-2(第二传输装置的设备标识)、加密的内容密钥ECK3-2、Counter3-1为例进行说明。

源端装置可以产生音视频数据或者从内容分发网络接收音视频数据等。对音视频数据进行封装获得音视频报文。为了便于区别,此处将音视频数据封装获得的音视频报文所属的数据流称为第一音视频流。进而源端装置对第一音视频流进行处理第二音视频流。处理可以包括加密和添加KDP3-1和KDP3-2。

504,源端装置使用CK3-1对属于第一音视频流的音视频报文进行加密。可选地,为了进一步提高音视频数据传输的安全性,可以使用CK3-1和Counter3-1对属于第一音视频流的音视频报文进行加密。

505,源端装置在解密后的第一音视频流中插入KDP3-1、KDP3-2得到第二音视频流。

作为一种举例,可以每间隔一定数量的音视频报文在垂直消隐区或者水平消隐区或者视频区插入KDP3-1、KDP3-2。作为另一种举例,可以在音视频流的开始阶段的垂直消隐区插入设定数量的KDP3-1、KDP3-2,后续每间隔一定数量的音视频报文在垂直消隐区或 者水平消隐区或者视频区插入KDP3-1、KDP3-2。

506,源端装置向中继器发送所述第二音视频流,从而中继器接收来自源端装置的第二音视频流。

507a,中继设备向第一传输装置发送所述第二音视频流。

507b,中继设备向第二传输装置发送所述第二音视频流。

508a,第一传输装置接收第二音视频流,从第二音视频流中过滤出KDP3-1。

509a,第一传输装置从KDP3-1获取Counter3-1和ECK3-1,并使用EKCK3-1从ECK3-1中解密得到CK3-1。

510a,第一传输装置使用CK3-1和Counter3-1对第二音视频流进行解密得到第一音视频流。

511a,第一传输装置从第一音视频流中解析得到音视频数据并输出。比如将视频数据渲染到显示屏,经音频数据渲染到扬声器。

508b,第二传输装置接收第二音视频流,从第二音视频流中过滤出KDP3-2。

509b,第二传输装置从KDP3-2获取Counter3-1和ECK3-2,并使用EKCK3-2从ECK3-2中解密得到CK3-1。

510b,第二传输装置使用CK3-1和Counter3-1对第二音视频流进行解密得到第一音视频流。

511b,第二传输装置从第一音视频流中解析得到音视频数据并输出。比如将视频数据渲染到显示屏,经音频数据渲染到扬声器。

通过上述方案,由源端装置对宿端装置身份认证以及密钥协商,无需对不需要进行音视频流输出或者转换处理的其它设备进行认证和密钥协商,比如无需对中继设备进行身份认证也不需要与其进行密钥协商,在音视频流传输时,仅需为宿端装置生成用于解密经过加密的音视频流的密钥分发报文,从而传输路径上的中继设备无法获知密钥,无法解密音视频流,在接收到加密的音视频流后,仅需进行中继转发。可以提高音视频流的传输安全性。

第四种可能的场景:

菊花链场景,该场景中包括菊花链装置。以源端装置、第一传输装置以及第二传输装置采用菊花链拓扑结构。第一传输装置为菊花链装置。应理解的是,菊花链场景可以包括一个或者多个菊花链装置,还可以包括其它的传输装置,比如音视频处理装置、中继设备等等。

参见图6所示,为应用于第四种可能的场景中的数据传输方法流程示意图。源端装置与第一传输装置相连,第一传输装置连接第二传输装置。此处所说的连接,可以是有线连接或者也可以是无线连接。图6中,以源端装置向第一传输装置和第二传输装置发送不同的音视频数据。源端装置在向第二传输装置发送音视频数据时,需要第一传输装置转发。为了便于区分,将向第一传输装置发送的音视频数据称为音视频数据1,将向第二传输装置发送的音视频数据称为音视频数据2。

601a,源端装置对第一传输装置进行身份认证,并与第一传输装置协商加密密钥。

601b,源端装置对第二传输装置进行身份认证,并与第二传输装置协商加密密钥。

为了便于区分,此处将源端装置与第一传输装置协商的加密密钥称为第一加密密钥, 通过CKEK4-1表示;将源端装置与第二传输装置协商的加密密钥称为第二加密密钥,通过CKEK4-2表示。

在传输路径上包括路由设备,由于路由设备不参与加密和解密,因此可以不对路由设备执行身份认证,以及不需要与路由设备协商加密密钥。

源端装置还对传输路径上的菊花链装置以及宿端装置进行授权控制,可以参见步骤203中的相关描述,此处不再赘述。需要说明的是,源端装置到宿端装置的传输路径上包括哪些传输装置可以根据音视频数据对应的路由表来确定。

602,源端装置生成CK4-1和CK4-2。

示例性地,可以采用StreamId4-1用于标识源端装置与第一传输装置之间传输的内容,采用StreamId4-2用于标识源端装置与第二传输装置之间传输的内容。

603,源端装置产生KDP4-1和KDP4-2。

源端装置使用CKEK4-1对CK4-1进行加密得到ECK4-1。源端装置使用CKEK4-2对CK4-2进行加密得到ECK4-2。此处以KDP4-1中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId4-1、设备标识DeviceId4-1(第二传输装置的设备标识)、加密的内容密钥ECK4-1、Counter4-1为例进行说明。此处以KDP4-2中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId4-2、设备标识DeviceId4-2(第二传输装置的设备标识)、加密的内容密钥ECK4-2、Counter4-2为例进行说明。

源端装置可以产生待发送给第一传输装置的音视频数据1或者从内容分发网络接收音视频数据1等。对音视频数据1进行封装获得音视频报文1。为了便于区别,此处将音视频数据封装获得的音视频报文1所属的数据流称为音视频流1-1。进而源端装置对音视频流1进行处理音视频流1-2。处理可以包括加密和添加KDP4-1。

源端装置可以产生待发送给第二传输装置的音视频数据2或者从内容分发网络接收音视频数据2等。对音视频数据2进行封装获得音视频报文2。为了便于区别,此处将音视频数据封装获得的音视频报文2所属的数据流称为音视频流2-1。进而源端装置对音视频流2-1进行处理音视频流2-2。处理可以包括加密和添加KDP4-2。

604a,源端装置使用CK4-1对属于音视频流1-1的音视频报文进行加密。可选地,为了进一步提高音视频数据传输的安全性,可以使用CK4-1和Counter4-1对属于音视频流1-1的音视频报文进行加密。

604b,源端装置使用CK4-2对属于音视频流2-1的音视频报文进行加密。可选地,为了进一步提高音视频数据传输的安全性,可以使用CK4-2和Counter4-2对属于音视频流2-1的音视频报文进行加密。

605a,源端装置在加密后的音视频流1-1中插入KDP4-1得到音视频流1-2。

作为一种举例,可以每间隔一定数量的音视频报文插入KDP4-1。作为另一种举例,可以在音视频流的开始阶段插入设定数量的KDP4-1,后续每间隔一定数量的音视频报文插入KDP4-1。

605b,源端装置在加密后的音视频流2-1中插入KDP4-2得到音视频流2-2。

606a,源端装置向第一传输装置发送所述音视频流1-2,从而第一传输装置接收来自源端装置的音视频流1-2。比如,源端装置还可以通过一个或者多个路由设备将第一传输装置发送所述音视频流1-2。路由设备仅对音视频流1-2进行转发,并不对音视频流1-2进行加解密处理,可以提高音视频数据传输的安全性。

606b,源端装置还向第一传输装置发送所述音视频流2-2,从而第一传输装置接收来自源端装置的音视频流2-2。

可选地,在音视频流2-1和音视频流2-2的发送时间存在重叠时,源端装置可以将音视频流2-1和音视频流2-2复用为一路音视频流发送给第一传输装置。

607,第一传输装置从所述音视频流1-2中过滤出KDP4-1,并且确定音视频流2-2的接收端并非第一传输装置而是第二传输装置,从而向第二传输装置转发该音视频流2-2。

例如,可以根据KDP4-1包括的设备标识DeviceId4-1,确定该KDP4-1供第一传输装置使用。再例如,可以通过StreamId确定KDP4-1用于对源端装置的音视频流1-2进行解密。

608,第一传输装置从KDP4-1获取Counter4-1和EKCK4-1,并使用EKCK4-1从ECK4-1中解密得到CK4-1。

609,第一传输装置使用CK4-1和Counte4-1从音视频流1-2中解密得到音视频流1-1。

610,第一传输装置从音视频流2-1中解析得到音视频数据1并输出。比如将视频数据渲染到显示屏,经音频数据渲染到扬声器。

611,第二传输装置接收音视频流2-2,并从音视频流2-2中过滤出KDP4-2。

612,第二传输装置从KDP4-2获取Counter4-2和ECK4-2,并使用EKCK4-2从ECK4-2中解密得到CK4-2。

613,第二传输装置使用CK4-2和Counter4-2对音视频流2-2进行解密得到音视频流2-1。

614,第二传输装置从音视频流2-1中解析得到音视频数据2并输出。比如将视频数据渲染到显示屏,经音频数据渲染到扬声器。

通过上述方案,由源端装置对菊花链装置和宿端装置进行身份认证以及密钥协商,无需对不需要进行音视频流输出或者转换处理的其它设备进行认证和密钥协商,在音视频流传输时,仅需为宿端装置(和菊花链装置)生成用于解密经过加密的音视频流的密钥分发报文,从而传输路径上不需要输出的设备和进行转换处理的设备无法获知密钥,无法解密音视频流。从而菊花链装置在接收到加密的音视频流后,对于无需输出的音视频流仅执行转发处理。可以提高音视频流的传输安全性以及传输性能。

第五种可能的场景:

回传场景,宿端装置需要将音视频数据回传到上游传输装置,比如源端装置或者转换器,由上游传输装置输出回传的音视频数据。回传的音视频数据可以是由宿端装置转换后的音视频数据。比如,上游传输装置支持音频播放,而宿端装置不支持音频播放,宿端装置可以将数据回传到传输装置进行播放。

下面以第一传输装置为宿端装置,第二传输装置为上游传输装置为例。第一传输装置既可以作为普通的接收器输出音视频数据,还可以作为转换器,将音视频数据转发到上游传输装置。示例性地,第一传输装置内置有接收及转换器证书。

参见图7所示,为应用于第五种可能的场景中的数据传输方法流程示意图。源端装置与第二传输装置相连,第二传输装置连接第一传输装置。此处所说的连接,可以是有线连接或者可以是无线连接。源端装置与第二传输装置之间的传输路径上还可以包括其它的转发设备,比如路由设备。其它的转发设备不对数据流进行加密和解密。在源端装置的音视 频数据传输到第二传输装置的路径上,第一传输装置可以作为一个转发设备,不执行加解密处理。第二传输装置在接收到来自源端装置的音视频数据后,针对音视频数据加密向第一传输装置回传。在回传路径上,第一传输装置接收到来自第二传输装置的加密数据后,执行解密操作,并输出音视频数据。

701a,源端装置对第一传输装置(上游的接收设备)进行身份认证,并与第一传输装置协商加密密钥。

701b,源端装置对第二传输装置(宿端装置)进行身份认证,并与第二传输装置协商加密密钥。

为了便于区分,此处将源端装置与第二传输装置协商的加密密钥采用CKEK5-1表示;将源端装置与第一传输装置协商的加密密钥采用CKEK5-2表示。

在传输路径上包括路由设备,由于路由设备不参与加密和解密,因此可以不对路由设备执行身份认证,以及不需要与路由设备协商加密密钥。

源端装置还对传输路径上的上游接收设备以及宿端装置进行授权控制,可以参见步骤203中的相关描述,此处不再赘述。需要说明的是,源端装置到宿端装置的传输路径上包括哪些传输装置可以根据音视频数据对应的路由表来确定。

702,源端装置生成用于源端装置与第一传输装置之间的内容使用的内容密钥和用于第一传输装置与第二传输装置之间传输的内容使用(包括加密或者解密)的内容密钥。为了便于区分,将用于源端装置与第二传输装置之间传输的内容使用的内容密钥采用CK5-1表示。针对用于第二传输装置与第一传输装置之间传输的内容使用的内容密钥采用CK5-2表示。

示例性地,可以采用StreamId5-1用于标识源端装置与第二传输装置之间传输的内容,采用StreamId5-2用于标识第二传输装置与第一传输装置之间传输的内容。

703,源端装置产生供所述第二传输装置解密来自所述源端装置的内容时使用的密钥分发报文,此处采用KDP5-1表示。还产生供所述第二传输装置回传音视频数据使用的密钥分发报文,此处采用KDP5-2表示。还产生供第一传输装置解密第二传输装置回传的音视频数据使用的密钥分发报文,此处采用KDP5-3表示。

源端装置使用CKEK5-1对CK5-1进行加密得到加密的内容密钥,此处采用ECK5-1表示。源端装置使用CKEK5-1对CK5-2进行加密得到加密的内容密钥,此处采用ECK5-2表示。源端装置使用CKEK5-2对CK5-2进行加密得到加密的内容密钥,此处采用ECK5-3表示。此处以KDP5-2中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId5-1(原始的音视频数据的流标识)、设备标识DeviceId5-1(第二传输装置的设备标识)、加密的内容密钥ECK5-1、Counte5-1为例进行说明。此处以KDP5-2中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId5-2(回传的音视频数据的流标识)、设备标识DeviceId5-1(第二传输装置的设备标识)、加密的内容密钥ECK5-2、Counter5-2为例进行说明。此处以KDP5-3中包括版本号Version(KDP版本号)、音视频数据的流标识StreamId5-2(回传的音视频数据的流标识)、设备标识DeviceId5-2(第一传输装置的设备标识)、加密的内容密钥ECK5-3、Counter5-2为例进行说明。

源端装置可以产生音视频数据或者从内容分发网络接收音视频数据等。对音视频数据进行封装获得音视频报文。为了便于区别,此处将音视频数据封装获得的音视频报文所属的数据流称为第一音视频流。进而源端装置对第一音视频流进行处理得到第二音视频流。 处理可以包括加密和添加KDP5-1、KDP5-2和KDP5-3。

704,源端装置使用CK5-1对属于第一音视频流的音视频报文进行加密。可选地,为了进一步提高音视频数据传输的安全性,可以使用CK5-1和Counter5-1对属于第一音视频流的音视频报文进行加密。

705,源端装置在加密后的第一音视频流中插入KDP5-1、KDP5-2和KDP5-3得到第二音视频流。

作为一种举例,可以每间隔一定数量的音视频报文在垂直消隐区或者视频区或者水平消隐区插入KDP5-1、KDP5-2和KDP5-3。作为另一种举例,可以在音视频流的开始阶段在垂直消隐区插入设定数量的KDP5-1、KDP5-2和KDP5-3,后续每间隔一定数量的音视频报文在垂直消隐区或者视频区或者水平消隐区插入KDP5-1、KDP5-2和KDP5-3。

706,源端装置通过第一传输装置向第二传输装置发送所述第二音视频流,从而第二传输装置接收来自源端装置的第二音视频流。比如,源端装置还可以通过一个或者多个路由设备向第二传输装置发送所述第二音视频流。路由设备仅对第二音视频流进行转发,并不对第二音视频流进行加解密处理,可以提高音视频数据传输的安全性。

707,第二传输装置从所述第二音视频流中过滤出KDP5-1和KDP5-2。

例如,可以根据KDP5-1和KDP5-2包括的设备标识DeviceId5-1,确定该两个密钥分发报文供第二传输装置使用。根据KDP5-1包括的流标识StreamId5-1确定该KDP5-1供第二传输装置解密使用。

708,第二传输装置从KDP5-1获取Counter5-1,并使用EKCK5-1从ECK5-1中解密得到CK5-1。

709,第二传输装置使用CK5-1和Counter5-1从第二音视频流中解密得到第一音视频流。

710,第二传输装置从第一音视频流中解析得到音视频数据并输出。

711,第二传输装置从KDP5-2获取Counter5-2和ECK5-2,并使用EKCK5-1从ECK5-2中解密得到CK5-2。

712,第二传输装置使用CK5-2和Counter5-2对第一音视频流进行加密。

一些实施例中,在第一音视频流进行加密之前,对第一音视频流进行转换处理后再执行加密。

713,第二传输装置在加密的第一音视频流中添加KDP5-3得到第三音视频流。

714,第二传输装置向第一传输装置发送所述第三音视频流。

715,第一传输装置接收第三音视频流,并从第三音视频流中过滤出KDP5-3。

716,第一传输装置从KDP5-3获取Counter5-2和ECK5-3,并使用EKCK5-2从ECK5-3中解密得到CK5-2。

717,第一传输装置使用CK5-2和Counter5-2对第三音视频流进行解密得到第一音视频流。

718,第一传输装置从第一音视频流中解析得到音视频数据并输出。比如将视频数据渲染到显示屏和/或经音频数据渲染到扬声器。

通过上述方案,由源端装置对宿端装置以及回传的上游接收设备进行身份认证以及密钥协商,无需对不需要进行音视频流输出或者转换处理的其它设备进行认证和密钥协商,在音视频流传输时,为宿端装置生成用于解密经过加密的音视频流的密钥分发报文以及生 成用于加密回传音视频流的密钥分发报文,以及为回传音视频流的接收设备生成用于解密的密钥分发报文,从而传输路径上不需要输出的设备和进行转换处理的设备无法获知密钥,无法解密音视频流。从而宿端装置在接收到加密的音视频流后,可以执行输出操作,还可以对需要向上游接收设备发送的音视频流执行转换处理。不仅支持回传场景,还可以提高音视频流的传输安全性以及传输性能。

下面结合附图对本申请实施例中涉及的各个设备的结构进行说明。可以理解的是,为了实现上述方法实施例中功能,各个设备包括了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的模块及方法步骤,本申请能够以硬件或硬件和计算机软件相结合的形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用场景和设计约束条件。

源端装置:

源端装置100中内置发送器。参见8A所示为一种可能的发送器的结构示意图。发送器110中可以包括加密模块111、授权模块112、认证模块113。

发送器110中认证模块113负责认证下游所有接收端(包括宿端装置、菊花链装置、音视频处理装置等具备视音频转换或输出功能的设备)。认证模块113还用于与下游所有的接收端协商加密密钥。授权模块112用于从内容授权系统接收授权控制信息,根据授权控制信息对宿端装置、菊花链装置、音视频处理装置等进行授权控制。加密模块111,用于生成内容密钥、生成密钥分发报文,完成待传输的音视频数据的加密。

参见8B所示,源端装置100中,除了包括发送器110外,还可以包括音视频发送适配器120,音视频发送适配器120用于将接收到的音频数据、视频数据封装为音视频报文,发送到发送器。作为一种举例,源端装置100中还可以包括复用器130和通道分配器140,复用器130用于将多路音视频流进行复用合并为一路下行音视频流发送给通道分配器140。通道分配器140用于在多个下行主链路通道中为传输该一路下行音视频流分配一个或者多个通道,并通过分配的通道对应的端口向下游传输装置发送该音视频流。

在一些实施例中,发送器110可以包括多个加密模块,从而用于对多路音视频流进行加密。参见图8C所示,以源端装置包括两路音视频信号源为例,发送器110包括两个加密模块,分别为加密模块111a和加密模块111b。源端装置100包括两个与两路音视频流对应的两个音视频发送适配器120,为了便于区分,分别称为音视频发送适配器120a和音视频发送适配器120b。

在一些实施例中,源端装置100还可以具备视频输出功能,比如回传场景中,作为宿端装置的上游接收设备。进一地,参见图8D所示,发送器110中还可以包括解密模块114,用于接收到的经过加密的音视频数据进行解密。源端装置100还可以包括通道解分配器150、解复用器160、音视频接收适配器170。应理解的是,图8B-8D仅作为示例,源端装置100可以包括更多或者更少的组件。通道解分配器150用于对从一个或者多个主链路通道接收的属于一路音视频流的音视频报文进行合并。解复用器160用于对接收的一路视频流中属于不同的音视频流解复用为不同的音视频流。音视频接收适配器170用于从音视频流的音视频报文中解析得到音视频数据并输出。

一些实施例中,源端装置100还可以包括管理控制适配器180,用于为发送器与宿端 装置的身份认证和密钥协商建立辅助链路。需要说明的是,本申请中,辅助链路支持路由,可以理解,源端装置与宿端装置之间可以跨设备协商,比如源端装置与宿端装置之间包括多个路由,可以通过路由器建立辅助链路,实现源端装置对宿端装置进行身份认证和与宿端装置进行密钥协商。比如,参见图8E所示的源端装置100。

宿端装置:

宿端装置200中内置接收器。参见9A所示为一种可能的接收器的结构示意图。接收器210中可以包括解密模块211、认证模块212。接收器210的解密模块211可以包括一个或者多个。

接收器210中认证模块212用于接受源端装置的身份认证,并与源端装置协商加密密钥。解密模块211,用于对接收到的经过加密的音视频流进行解密。

参见9B所示,宿端装置200中,除了包括接收器210外,还可以包括音视频接收适配器220,音视频接收适配器220用于从接收器210解密的音视频流中解析获得音视频数据,以向音视频信号输出装置输出音视频数据。

作为一种举例,宿端装置200中还可以包括解复用器230和通道解分配器240。通道解分配器240,用于对从一个或者多个主链路通道接收的多路音视频流合并为一路下行音视频流。解复用器230用于对接收的一路下行音视频流中属于不同的音视频流解复用为不同的音视频流。

在一些实施例中,接收器210包括多个解密模块,从而支持对多路音视频流进行解密。参见图9C所示,以宿端装置输出两路音视频信号源为例,接收器210包括两个解密模块,为了便于区分,分别称为解密模块211a和解密模块211b。宿端装置200包括两个与两路音视频流对应的两个音视频接收适配器220,为了便于区分,将两个音视频接收适配器分别称为音视频接收适配器220a和音视频接收适配器220b。

在一些实施例中,宿端装置200还可以具备向上游接收设备回传功能。进一地,参见图9D所示,接收器210中还可以包括加密模块213,用于接收到的经过加密的音视频数据进行解密。宿端装置200还可以包括通道分配器270、复用器260、音视频发送适配器250。复用器260用于将多路音视频流进行复用合并为一路上行音视频流发送给通道分配器270。通道分配器270用于在多个上行主链路通道中为传输该上行音视频流分配一个或多个上行主链路通道,并通过端口向下游传输装置发送该音视频流。应理解的是,图9B或者图9C或者图9D仅作为一种示例,宿端装置200可以包括更多或者更少的组件。

一些实施例中,宿端装置200还可以包括管理控制适配器280,用于与源端装置100的密钥协商建立辅助链路。需要说明的是,本申请中,辅助链路支持路由,可以理解,源端装置与宿端装置之间可以跨设备协商,比如源端装置与宿端装置之间包括多个路由,可以通过路由器建立辅助链路,实现宿端装置与源端装置进行密钥协商。比如,参见图9E所示的宿端装置200。

音视频处理装置:

音视频处理装置300用于音视频流的处理和转发。参见图10所示,音视频处理装置300中内置转换器310和视频处理器311。转换器310中包括认证模块312、解密模块313和加密模块314。认证模块312用于接受源端装置的认证,并与源端装置协商加密密钥。解密模块313用于对接收到的经过加密的音视频流进行解密。加密模块313用于对向下游 接收设备发送音视频流进行解密。视频处理器,用于对解密模块312解密后的音视频流进行音视频转换处理,并发送给加密模块314进行加密处理。

在一些实施例中,音视频处理装置300还可以包括通道解分配器320、解复用器330、复用器340和通道分配器350。在一些实施例中,音视频处理装置300还可以包括一个或者用于接收音视频流的端口(可以简称为接收端口),一个或者多个用于发送音视频数据的端口(可以简称为发送端口)。应理解的是,图10仅作为一种示例,音视频处理装置300可以包括更多或者更少的组件。

一些实施例中,音视频处理装置还可以包括管理控制适配器(图10中未示出),用于与源端装置100的密钥协商建立辅助链路。需要说明的是,本申请中,辅助链路支持路由,可以理解,源端装置与音视频处理装置之间可以跨设备协商,比如源端装置与宿端装置之间包括多个路由,可以通过路由器建立辅助链路,实现音视频处理装置进与源端装置进行密钥协商。

菊花链装置:

菊花链装置可以认为是一种特殊的宿端装置,不仅仅用于音视频流的输出,还可以用于音视频流的转发。菊花链装置可以内置接收器证书。菊花链装置接受源端设备的认证,并与源端设备协商加密密钥。一种可能的示例中,菊花链装置还可以具备视频转换处理功能,在该情况下,菊花链装置可以内置接收及转换器类型证书。

菊花链装置400包括接收器。接收器的结构可以参见图9A所示。参见图11所示,菊花链装置400还可以包括通道解分配器420、解复用器430、交换器440、复用器450、通道分配器460、音视频接收适配器470。交换器440,用于对解复用后的音视频流进行交换处理,确定音视频流的下一跳传输设备。应理解的是,图11仅作为一种示例,菊花链装置400可以包括更多或者更少的组件。

一些实施例中,菊花链装置还可以包括管理控制适配器(图10中未示出),用于与源端装置100的密钥协商建立辅助链路。需要说明的是,本申请中,辅助链路支持路由,可以理解,源端装置与菊花链装置之间可以跨设备协商,比如源端装置与宿端装置之间包括多个路由,可以通过路由器建立辅助链路,实现菊花链装置进与源端装置进行密钥协商。

中继装置:

中继装置用于音视频流的分发,不需要音视频流的加密和解密功能以及视频处理功能。参见图12所示,为一种可能的中继装置的结构示意图。参见图12所示,中继装置500可以包括通道解分配器520、解复用器530、交换器540、复用器550a、复用器550b、通道分配器560a、通道分配器560b。交换器540,用于对解复用后的音视频流进行交换处理,确定音视频流需要发送哪几个传输设备。应理解的是,图12仅作为一种示例,中继装置500可以包括更多或者更少的组件。

下面结合上述介绍的各个装置的结构以及上述各个应用场景的描述对本申请实施例提供的方案进行详细描述。

参见图13A所示,对本申请实施例提供的第一种可能的场景进行描述。源端装置向宿端装置发送音视频数据。源端装置的结构参见图8B所示。

认证模块113对宿端装置进行身份认证,并与宿端装置协商加密密钥CKEK1-1。示例性地,认证模块113可以通过源端装置与宿端装置包括的管理控制适配器建立的辅助链路来对宿端装置进行身份认证,并与宿端装置进行密钥协商。授权模块112执行授权控制, 以确定是否向宿端装置发送待发送的音视频数据。音视频发送适配器120用于对输入的音视频数据进行封装为音视频报文。将音视频报文组成的音视频流采用S1表示。输入到发送器110中。发送器110中的加密模块对S1中的各个音视频报文进行加密处理以及插入密钥分发报文处理,输出加密的音视频流S1’。示例性地,加密模块111生成内容密钥CK1-1,使用CKEK1-1对CK1-1进行加密处理得到加密的内容密钥ECK1-1。使用CK1-1和Counter1-1对属于S1的音视频报文进行加密,然后在加密的S1中插入密钥分发报文KDP1-1得到S1’。密钥分发报文KDP1-1中包括ECK1-1和Counter1-1。音视频流S1’分别经过复用器130和通道分配器140处理后,通过端口发送给宿端装置200。宿端装置200中的通道解分配器240和解复用器230对来自源端设备100的音视频流处理得到S1’,然后经过解密模块211进行解密处理得到音视频流S1。示例性地,解密模块211从音视频流S1’中过滤出KDP1-1。解密模块211从KDP1-1中获取ECK1-1和Counter1-1。解密模块211使用CKEK1-1从ECK1-1解密得到CK1-1,然后使用CK1-1和Counter1-1从S1’中解密得到音视频流S1。音视频流S1经过音视频接收适配器220解析处理得到音视频数据,输出到音视频信号输出装置进行输出。

参见图13B所示,对本申请实施例提供的第二种可能的场景进行描述。源端装置100通过音视频处理装置300向宿端装置200发送音视频数据。示例性地,源端装置100的结构可以参见图8B所示。

认证模块113对宿端装置200和音视频处理装置300进行身份认证,并与音视频处理装置300协商加密密钥CKEK2-1,以及与宿端装置200协商加密密钥CKEK2-2。示例性地,认证模块113可以通过源端装置与宿端装置包括的管理控制适配器建立的辅助链路来对宿端装置进行身份认证,并与宿端装置进行密钥协商。该辅助链路通过音视频处理装置300。协商的消息可以通过音视频处理装置进行转发。授权模块112对宿端装置200和音视频处理装置300执行授权控制,以确定是否向音视频处理装置300和宿端装置200发送待发送的音视频数据。音视频发送适配器120用于对输入的音视频数据进行封装为音视频报文。将音视频报文组成的音视频流采用S1表示。S1输入到发送器110中。发送器110中的加密模块对S1中的各个音视频报文进行加密处理以及插入密钥分发报文处理,输出加密的音视频流S1’。示例性地,加密模块111生成内容密钥CK2-1和CK2-2,使用CKEK2-1对CK2-1进行加密处理得到加密的内容密钥ECK2-1,使用CKEK2-1对CK2-2进行加密处理得到加密的内容密钥ECK2-2,使用CKEK2-2对CK2-2进行加密处理得到加密的内容密钥ECK2-3。使用CK2-1和Counter2-1对属于S1的音视频报文进行加密,然后在加密的S1中插入密钥分发报文KDP2-1、KDP2-2和KDP2-3得到S1’。密钥分发报文KDP2-1中包括ECK2-1和Counter2-1。密钥分发报文KDP2-2中包括ECK2-2和Counter2-2。密钥分发报文KDP2-3中包括ECK2-3和Counter2-2。

音视频流S1’分别经过复用器130和通道分配器140处理后,通过端口发送给音视频处理装置300。音视频处理装置300中的通道解分配器320、解复用器330对来自源端设备100的音视频流处理得到S1’。然后经过解密模块313进行解密处理得到音视频流S1。示例性地,解密模块313从音视频流S1’中过滤出KDP2-1。解密模块313从KDP2-1中获取ECK2-1和Counter2-1。解密模块313使用CKEK2-1从ECK2-1解密得到CK2-1,然后使用CK2-1和Counter2-1从S1’中解密得到音视频流S1,输出到视频处理器311,经过视频处理器处理后得到音视频流S2,输出到加密模块314。加密模块314从音视频流S2 中过滤出KDP2-2,从KDP2-2中获取ECK2-2和Counter2-2。加密模块314使用CKEK2-1从ECK2-2解密得到CK2-2,然后使用CK2-2和Counter2-2对S2加密得到音视频流S2’。音视频流S2’插入有KDP2-3。音视频流S1’分别经过复用器340和通道分配器350处理后,通过端口发送给宿端装置200。

宿端装置200中的通道解分配器240和解复用器230对来自源端设备100的音视频流处理得到S2’,然后经过解密模块211进行解密处理得到音视频流S2。示例性地,解密模块211从音视频流S2’中过滤出KDP2-3。解密模块211从KDP2-3中获取ECK2-3和Counter2-2。解密模块211使用CKEK2-2从ECK2-3解密得到CK2-2,然后使用CK2-2和Counter2-2从S2’中解密得到音视频流S2。音视频流S2经过音视频接收适配器220解析处理得到音视频数据,输出到音视频信号输出装置进行输出。

参见图13C所示,对本申请实施例提供的第三种可能的场景进行描述。源端装置100通过中继装置500向两个宿端装置200发送音视频数据。为了便于区分两个宿端装置200,将两个宿端装置200分别称为宿端装置200a和宿端装置200b。示例性地,源端装置100的结构可以参见图8B所示。宿端装置200a和宿端装置200b的结构可以参见图9B所示。中继装置500的结构可以参见图12所示。

认证模块113对宿端装置200a和宿端装置200b进行身份认证,并与宿端装置200a协商加密密钥CKEK3-1,以及与宿端装置200b协商加密密钥CKEK3-2。示例性地,认证模块113可以通过源端装置与宿端装置包括的管理控制适配器建立的辅助链路来对宿端装置进行身份认证,并与宿端装置进行密钥协商。该辅助链路通过中继装置500。协商的消息可以通过中继装置200进行转发。授权模块112对宿端装置200a和宿端装置200b执行授权控制,以确定是否向宿端装置200a和宿端装置200b发送待发送的音视频数据。中继装置500用于对输入的音视频数据进行封装为音视频报文。将音视频报文组成的音视频流采用S1表示。S1输入到发送器110中。发送器110中的加密模块对S1中的各个音视频报文进行加密处理以及插入密钥分发报文处理,输出加密的音视频流S1’。示例性地,加密模块111生成内容密钥CK3-1,使用CKEK3-1对CK3-1进行加密处理得到加密的内容密钥ECK3-1,使用CKEK3-2对CK3-1进行加密处理得到加密的内容密钥ECK3-2。使用CK3-1和Counter3-1对属于S1的音视频报文进行加密,然后在加密的S1中插入密钥分发报文KDP3-1、KDP3-2得到S1’。密钥分发报文KDP3-1中包括ECK3-1和Counter3-1。密钥分发报文KDP3-2中包括ECK3-2和Counter3-1。

音视频流S1’分别经过复用器130和通道分配器140处理后,通过端口发送给中继装置500。中继装置500中的通道解分配器520、解复用530对来自源端设备100的音视频流处理。然后经过交换器540确定需要将音视频流S1’发送给宿端装置200a和宿端装置200b时,通过复用器550a、通道分配器560a处理后通过端口发送给宿端装置200a。并经过复用器550b、通道分配器560b处理后通过端口发送给宿端装置200b。

宿端装置200a中的通道解分配器240和解复用器230对来自源端设备100的音视频流处理得到S1’,然后经过解密模块211进行解密处理得到音视频流S1。示例性地,解密模块211从音视频流S1’中过滤出KDP3-1。解密模块211从KDP3-1中获取ECK3-1和Counter3-1。解密模块211使用CKEK3-1从ECK3-1解密得到CK3-1,然后使用CK3-1和Counter3-1从S1’中解密得到音视频流S1。音视频流S1经过音视频接收适配器220解析处 理得到音视频数据,输出到音视频信号输出装置进行输出。

宿端装置200b中的通道解分配器240和解复用器230对来自源端设备100的音视频流处理得到S1’,然后经过解密模块211进行解密处理得到音视频流S1。示例性地,解密模块211从音视频流S1’中过滤出KDP3-2。解密模块211从KDP3-2中获取ECK3-2和Counter3-1。解密模块211使用CKEK3-2从ECK3-2解密得到CK3-1,然后使用CK3-1和Counter3-1从S1’中解密得到音视频流S1。音视频流S1经过音视频接收适配器220解析处理得到音视频数据,输出到音视频信号输出装置进行输出。

参见图13D所示,对本申请实施例提供的第四种可能的场景进行描述。源端装置100连接菊花链装置400,菊花链装置400连接宿端装置200。源端装置100菊花链装置400发送音视频数据1,并通过菊花链装置向宿端装置200发送音视频数据2。示例性地,源端装置100的结构可以参见图8C所示。

认证模块113对宿端装置200和菊花链装置400进行身份认证,并与菊花链装置400协商加密密钥CKEK4-1,以及与宿端装置200协商加密密钥CKEK4-2。授权模块112对宿端装置200和菊花链装置400执行授权控制,以确定是否向菊花链装置400和宿端装置200发送音视频数据。示例性地,认证模块113可以通过源端装置与宿端装置包括的管理控制适配器建立的辅助链路来对宿端装置进行身份认证,并与宿端装置进行密钥协商。该辅助链路通过菊花链装置。协商的消息可以通过菊花链装置进行转发。音视频发送适配器120a用于对输入的音视频数据1进行封装为音视频报文1。将音视频报文1组成的音视频流采用S1表示。输入到发送器110中。发送器110中的加密模块111a对S1中的各个音视频报文进行加密处理以及插入密钥分发报文处理,输出加密的音视频流S1’。示例性地,加密模块111a生成内容密钥CK4-1,使用CKEK4-1对CK4-1进行加密处理得到加密的内容密钥ECK4-1。加密模块111a使用CK4-1和Counter4-1对属于S1的音视频报文进行加密,然后在加密的S1中插入密钥分发报文KDP4-1得到S1’。密钥分发报文KDP4-1中包括ECK4-1和Counter4-1。音视频发送适配器120b用于对输入的音视频数据2进行封装为音视频报文2。将音视频报文2组成的音视频流采用S2表示。S2输入到发送器110中。发送器110中的加密模块111b对S2中的各个音视频报文进行加密处理以及插入密钥分发报文处理,输出加密的音视频流S2’。示例性地,加密模块111b生成内容密钥CK4-2,使用CKEK4-2对CK4-2进行加密处理得到加密的内容密钥ECK4-2。加密模块111b使用CK4-2和Counter4-2对属于S2的音视频报文进行加密,然后在加密的S2中插入密钥分发报文KDP4-2得到S2’。密钥分发报文KDP4-2中包括ECK4-2和Counter4-2。

音视频流S1’和S2’经过复用器130合并为一个音视频流,并通过通道分配器140处理后,通过端口发送给音视频处理装置300。音视频处理装置300中的通道解分配器320、解复用330对来自源端设备100的一个音视频流处理得到音视频流S1’和音视频流S2’。然后音视频流S1’经过解密模块211进行解密处理得到音视频流S1。示例性地,解密模块211从音视频流S1’中过滤出KDP4-1。解密模块211从KDP4-1中获取ECK4-1和Counter4-1。解密模块211使用CKEK4-1从ECK4-1解密得到CK4-1,然后使用CK4-1和Counter4-1从S1’中解密得到音视频流S1,输出到音视频接口适配器470,经过视音视频接口适配器470处理后输出到音视频信号输出装置。音视频流S2’经过交换器440确定需要发送给宿端装置200。通过复用器450和通道分配器460处理后,通过端口发送到宿端 装置200。

宿端装置200中的通道解分配器240和解复用器230对来自源端设备100的音视频流处理得到S2’,然后经过解密模块211进行解密处理得到音视频流S2。示例性地,解密模块211从音视频流S2’中过滤出KDP4-2。解密模块211从KDP4-2中获取ECK4-2和Counter4-2。解密模块211使用CKEK4-2从ECK4-2解密得到CK4-2,然后使用CK4-2和Counter4-2从S2’中解密得到音视频流S2。音视频流S2经过音视频接收适配器220解析处理得到音视频数据,输出到音视频信号输出装置进行输出。

参见图13E所示,对本申请实施例提供的第五种可能的场景进行描述。源端装置100连接宿端装置200。以回传的装置为源端装置100为例。示例性地,源端装置100的结构可以参见图8D所示。宿端装置200的结构可以参见9C所示。

一种可能的示例中,回传的音视频数据可以是由源端装置100产生的音视频数据。然后音视频数据发送给宿端装置200后,再回传到上游的接收设备,上游接收设备为源端装置100。回传的数据可以包括音频数据,或者包括视频数据,或者包括音视频数据。

在该示例中,源端装置100的认证模块113对宿端装置200以及上游的接收设备(此处以上游的接收设备为源端装置100为例)进行身份认证,并与宿端装置200协商加密密钥CKEK5-1。授权模块112对宿端装置200执行授权控制。音视频发送适配器120a用于对输入的音视频数据1进行封装为音视频报文1。将音视频报文1组成的音视频流采用S1表示。输入到发送器110中。发送器110中的加密模块111对S1中的各个音视频报文进行加密处理以及插入密钥分发报文处理,输出加密的音视频流S1’。示例性地,加密模块111生成内容密钥CK5-1、Counter5-1和CK5-2、Counter5-2,CK5-1用于宿端装置200解密音视频流S1’时使用。CK5-2用于宿端装置200对回传的音视频流加密时使用。使用CKEK5-1对CK5-1进行加密处理得到加密的内容密钥ECK5-1。加密模块111使用CK5-1和Counter5-1对属于S1的音视频报文进行加密。加密模块11使用CKEK5-1对CK5-2进行加密处理得到加密的内容密钥ECK5-2。然后在加密的S1中插入密钥分发报文KDP5-1和KDP5-2得到S1’。密钥分发报文KDP5-1中包括ECK5-1和Counter5-1。密钥分发报文KDP5-2中包括ECK5-2和Counter5-2。

音视频流S1’经过复用器130和通道分配器140处理后,通过端口发送给宿端装置200。宿端装置200中的通道解分配器240和解复用器230对来自源端设备100的音视频流处理得到S1’,然后经过解密模块211进行解密处理得到音视频流S1。示例性地,解密模块211从音视频流S1’中过滤出KDP5-1和KDP5-2。解密模块211从KDP5-1中获取ECK5-1和Counter5-1。解密模块211使用CKEK5-1从ECK5-1解密得到CK5-1,然后使用CK5-1和Counter5-1从S1’中解密得到音视频流S1。音视频流S1经过音视频接收适配器220解析处理得到音视频数据,输出到音视频信号输出装置进行输出。

然后,音视频接收适配器220可以将输出的音频信号或者视频信号或者音视频信号发送给音视频发送适配器250,以实现回传视频信号给源端装置100为例。比如宿端装置200不具备显示屏。源端装置具备显示屏。音视频数据发送适配器250将视频信号封装为视频报文发送给加密模块213。然后加密模块213从KDP5-2获得ECK5-2和Counter5-1,使用CKEK5-1从ECK5-2解密得到CK5-2,使用CK5-2和Counter5-2对属于S2的视频报文进行加密得到S2’。S2’经过复用器260和通道分配器270后通过接口发送到源端装置100。 源端装置100对接收到宿端装置200的音视频流经过通道解分配150和解复用器160处理得到S2’,然后解密模块114对S2’进行解密处理得到S2。然后通过音视频接收适配器170进行解析处理后输出到音视频信号输出装置。

在一些实施例中,在宿端装置200确定需要将音视频流转发到上游接收设备输出时,比如上游接收设备为源端装置100,则解密模块211解密S1’得到S1后,将S1发送给加密模块213进行加密处理。

在一些实施例中,宿端装置200还可以具备音视频处理器,在向源端装置100回传视频信号或者音视频信号之前,对视频信号或者音视频进行转换处理。例如,音视频处理器可以部署于音视频接收适配器220和音视频发送适配器250之间。

下面对本申请实施例中涉及的源端装置对各个接收音视频流的接收端进行认证的流程进行说明。具体可以是源端装置中的发送器,比如发送器中的认证模块对各个接收音视频流的接收端进行身份认证。

应理解的是,源端装置对接收端进行身份认证,可以对接收端的证书链进行认证,以确定接收端的身份。一种示例中,源端装置与接收端等基于公钥基础设施(public key infrastructure,PKI)签发的设备证书建立信任关系,基于此信任关系进行彼此之间的安全通信。PKI系统可以用于签发和管理证书。一般情况下,PKI系统是通过认证中心(certificate authority,CA)来签发证书的。源端装置和接收端等都向认证中心(certificate authority,CA)申请获得一个数字证书,作为自己身份的凭证。源端装置和接收端的设备内置有设备证书及其信任链,从而通过设备证书及其信任链来实现对设备的认证。

举例来说,信任链由根CA(Root CA)、设备子CA(Device CA)、撤销列表子CA、设备证书(包括接收器证书、转换器证书、接收及转换器证书)以及撤销列表组成,如图14A所示。例如,证书格式可以采用X.509v3标准,支持sm3SM2国密签名算法,还可以支持sha256X25519国际算法。根CA(Root CA):自签名根证书。设备子CA(Device CA):由根CA签名,用于签名设备证书。设备证书:由设备子CA签名的设备证书,携带证书类型(接收器、转换器、接收及转换器,接收及转换器既可以转换后转发也可以输出)、设备唯一标识、安全级别等。撤销列表子CA:由根CA签发,用于签名撤销列表。撤销列表:采用X.509v2 CRL标准。一些实施例中,在出厂前,发送器中会分别保存国密算法和国际算法根CA证书、撤销列表子CA、最新的撤销列表(用于认证转换器和接收器等)。一些实施例中,转换器、接收器均保存有设备子CA证书、设备私钥及其对应的设备证书。

例如,设备私钥应存储到安全存储,无法修改或替换,且无法被系统以外的其他软件或者硬件读取;设备证书、设备子CA证书应存储到安全存储,无法修改或替换。根CA证书可硬编码或存储到安全存储,无法修改或替换。撤销列表可存储到安全存储或外部非易失性存储中,在使用时可以验证来源的合法性及完整性。示例性地,设备上均部署有安全存储空间,以用于存储设备私钥和设备证书、设备子CA证书以及根CA证书、撤销列表或其完整性校验值,例如,安全存储空间的大小不少于20KB。

作为一种举例,参见表4所示,示例性地描述一种可能的根证书格式定义。

表4

作为一种举例,参见表5所示,示例性地描述一种可能的设备子CA证书格式定义。

表5

作为一种举例,参见表6所示,示例性地描述一种可能的设备证书格式定义。

表6

作为一种举例,参见表7所示,示例性地描述一种可能的撤销列表子CA证书格式定义。

表7

作为一种举例,参见表8所示,示例性地描述一种可能的撤销列表格式定义。

表8

如下结合附图对本申请实施例涉及源端装置对接收端执行身份认证的流程进行描述。接收端可以包括菊花链装置、宿端装置或者音视频处理装置。参见图14B所示,为一种可能的身份认证的流程示意图。

1401,源端装置产生随机数x。x用于确定xG0或xG1。比如根据x、ECDH技术来确定xG0或者xG1。

1402,源端装置发送认证密钥交换(AKE_AUTHKEY_EXCHANGE)消息,该AKE_AUTHKEY_EXCHANGE消息包含源端装置唯一标识txId、源端装置支持的版本号列表(可以采用supportedVersions表示)、源端装置使用支持的算法计算的椭圆曲线迪菲-赫尔曼秘钥交换(Elliptic Curve Diffie–Hellman key Exchange,ECDH)密钥协商参数[xG0||xG1]以及快速认证标志(采用enableFastAuth表示),其中国密算法密钥协商参数为xG0,国际算法密钥协商参数为xG1;txId可以是随机产生的,可以保存到本地非易失性存储。示例性地,enableFastAuth默认为0,如果当前接收端是重新连接,则enableFastAuth初始为1,如果快速认证失败后也设置为0。

作为一种举例,参见表9所示,示例性地描述一种AKE_AUTHKEY_EXCHANGE消息格式定义。

表9

1403,接收端接收AKE_AUTHKEY_EXCHANGE消息,从源端装置支持的版本号列表中选择支持的最高版本号version,如果版本都不支持,返回版本号不支持的错误消息ERROR_ACK。

作为一种举例,参见表10所示,示例性地描述一种ERROR_ACK的消息格式定义。

表10

1404,如果enableFastAuth为1,接收端判断是否缓存了txId及对应的认证密钥authKey,如果缓存了authKey,则进入快速认证流程;如果没有缓存authKey,接收端产生随机数y,根据设备证书采用的签名算法(国密或者国际算法)选择支持的算法类型,计算ECDH密钥协商参数yG、判断[xG0||xG1]并选择xG(比如,选择xG0或者xG1),确定authKey=y(xG)(表示y与xG通过标量乘算法获得authKey)、hmacAuth=HMAC(yG||xG||txId||version,authKey),使用接收端私钥计算签名signAuth=S(hmacAuth,rxPriKey),rxPriKey为接收端私钥;如果算法不支持,则返回算法不支持的错误消息ERROR_ACK。S()表示签名算法。

HMAC认证码(hmacAuth)计算时,采用密钥相关的哈希运算消息认证码(hash-based message authentication code,HMAC)技术来实现。

1405,接收端发送认证密钥交换确认AKE_AUTHKEY_EXCHANGE_ACK消息,该消息包含接收端支持的协议版本号version、接收端的设备子CA证书caCert、设备证书rxCert、yG、signAuth、hmacAuth。

作为一种举例,参见表11,示例性地描述一种AKE_AUTHKEY_EXCHANGE_ACK消息格式定义。

表11

1406,源端装置接收AKE_AUTHKEY_EXCHANGE_ACK消息,验证协议版本号,判断是否支持接收端的协议版本号,如果支持,则执行下一步1407,否则记录认证状态为协议版本错误,终止认证流程。

1407,源端装置解析设备证书使用的算法(国际或国密)作为接收端支持的算法类型, 校验接收端证书链,如果校验证书链成功,则执行下一步1408;否则记录认证状态为证书校验失败,终止认证流程。

1408,源端装置进行证书验证,判断caCert和rxCert序列号是否处于撤销列表中,如果不存在,则执行下一步1409;否则,记录认证状态为证书撤销,终止认证流程。

1409,源端装置计算authKey=x(yG)、然后计算HMAC(yG||xG||txId||version,authKey)和hmacAuth比较,若相等,则执行下一步1410,否则,记录认证状态为HMAC验证失败,终止认证流程。

1410,源端装置使用接收端证书中的公钥rxPubKey验证signAuth,如果验签通过,则继续下一步1411,否则,记录认证状态为验签失败,终止认证流程;

1411,源端装置计算用于接收端确认的验证码hmacAuthConfirm=HMAC(yG||xG||rxId,authKey),rxId为接收端的证书中的设备的唯一标识。作为一种举例,该rxID可以在音视频流传输中作为接收端的DeviceId使用。

1412,源端装置发送AKE_AUTHKEY_CONFIRM消息,该消息包含hmacAuthConfirm。

作为一种举例,参见表12所示,示例性地描述一种AKE_AUTHKEY_CONFIRM消息格式定义。

表12

1413,接收端接收AKE_AUTHKEY_CONFIRM消息,计算HMAC(yG||xG||rxId,authKey)和hmacAuthConfirm比较,如相等,则执行下一步1414,否则发送认证密钥校验失败消息,终止认证流程。

1414,源端装置缓存认证信息,包括rxId、authKey、version,缓存证书,包括caCert、rxCert,设置接收端的认证状态为成功。

1415,接收端缓存认证密钥txId、authKey、version。

一些实施例中,针对HMAC和验签(包括证书验签)错误,源端装置可重试8次。

在一种可能的实施方式中,在源端装置和接收端完成了一次单向认证密钥交换之后,双方缓存authKey,在下一次重新认证时,源端装置通过比较hmacAuth来判断接收端是否缓存了authKey,如已经缓存,则跳过后续认证步骤,实现单向快速认证。参见图15所示,为另一种可能的身份认证的流程示意图。

1501,源端装置产生随机数x。

1502,源端装置发送认证密钥交换AKE_AUTHKEY_EXCHANGE消息,该消息包含源端装置唯一标识txId、源端装置支持的版本号列表supportedVersions、源端装置使用支持的算法计算的ECDH密钥协商参数列表[xG0||xG1]以及快速认证标志enableFastAuth,其中国密算法密钥协商参数为xG0,国际算法密钥协商参数为xG1;源端装置的txId可以是随机产生的,可以保存到本地非易失性存储;enableFastAuth设置为1。例如,AKE_AUTHKEY_EXCHANGE消息格式定义可以参见表9所示。

1503,接收端接收AKE_AUTHKEY_EXCHANGE消息,从源端装置支持的版本号列表中选择支持的最高版本号version,如果版本不支持,返回版本号不支持的错误消息ERROR_ACK。例如,ERROR_ACK的消息格式定义可以参见表10所示。

1504,如果enableFastAuth为1,接收端判断是否缓存了对应的txId及认证密钥authKey,如果已经缓存authKey,则计算hmacFastAuth=HMAC(txId||version,authKey)。

1505,接收端发送AKE_FAST_AUTH消息,该AKE_FAST_AUTH消息包含接收端支持的协议版本号version、接收端的设备子CA证书caCert、设备证书rxCert、hmacFastAuth。

作为一种举例,参见表13所示,示例性地描述一种AKE_FAST_AUTH消息格式定义。

表13

1506,源端装置接收AKE_FAST_AUTH,验证协议版本号,判断是否支持接收端的协议版本号,如果支持,则执行下一步1507,否则记录认证状态为协议版本错误,终止认证流程。

1507,源端装置校验接收端证书链,缓存中的caCert和rxCert与AKE_FAST_AUTH消息中的caCert和rxCert一致,则执行下一步1508;否则记录认证状态为证书校验失败,终止认证流程。

1508,源端装置判断caCert和rxCert序列号是否处于撤销列表中,如果不存在,则执行下一步1509;否则,记录认证状态为证书撤销,停止认证流程。

1509,源端装置计算HMAC(txId||version,authKey)和接收到的hmacFastAuth作比较,如比较成功,则快速认证成功,如失败,终止认证流程。终止认证流程后,源端装置设置enableFastAuth为0,关闭快速认证模式,重新启动认证密钥交互流程。

源端装置对各个接收端进行身份认证结束后,可以与接收端进行密钥协商,比如包括协商内容密钥加密密钥CKEK和位置检查HMAC密钥IcMacKey。作为一种举例,源端装置中的发送器与接收端进行密钥协商时,可以采用密钥派生算法(password-based derived key derivation function)PDKDF2。派生密钥derivedKey可以通过如下方式确定:

derivedKey=PDKDF2(HASH算法,password,salt,count,keyLen)。

其中,HASH算法由接收端设备证书的签名算法确定,比如签名算法为国密算法时,使用数据摘要算法SM3,如签名算法为国际算法,使用数据摘要算法SHA256;Password表示派生参数;Salt表示盐值;count表示迭代次数;keyLen表示派生密钥的长度。

作为一种举例,源端装置和接收端均可以采用如下方式确定内容密钥加密密钥CKEK:

CKEK=PDKDF2(HASH算法,authKey||全局认证常量||”content key encryption key”,yG||xG,1,16)。Salt采用yG||xG,password使用authKey、全局认证常量和字符串”content key encryption key”。“||”表示连接符。迭代次数为1次,派生密钥的长度为16。全局认证常量用于密钥协商过程中的密钥派生,例如,全局认证常量的值可以是0x85AC702793BD614F。

作为一种举例,源端装置和接收端均可以采用如下方式确定位置检查HMAC密钥:

lcMacKey=PDKDF2(HASH算法,authKey||全局认证常量||“locality check hmac key”,yG||xG,1,16)。

如下针对本申请实施例涉及的位置检查的流程进行描述。在源端装置对接收端进行身份认证后,并完成协商密钥后,源端装置中的发送器可以对接收端的位置进行检查,以进一步验证接收端,防止接收端超范围或者接收端超距离接收。参见图16所示,为一种可能的接收端位置检查流程示意图。

1601,源端装置中的发送器计算m=HMAC(seqNum,lcMacKey),m的低128位为m(0-127),m的高128位为m(128-255),身份认证及密钥协商后seqNum初始化为1。

1602,发送器开始计时t0,发送位置检查LC_CHECK,该消息包含seqNum、m(0-127)。

作为一种举例,参见表14所示,示例性地描述一种LC_CHECK消息格式定义。

表14

1603,接收端接收LC_CHECK消息,计算m2=HMAC(seqNum,lcMacKey),并比较m2低128位m2(0-127)和m(0-127)是否相等:若相等,则执行下一步1604;否则,发送位置检查错误消息。

1604,接收端发送LC_CHECK_ACK消息,该消息包含seqNum和m2高128位m2(128-255)。

作为一种举例,参见表15所示,示例性地描述一种LC_CHECK_ACK消息格式定义。

表15

1605,发送器接收LC_CHECK_ACK消息并计时t1,比较t1-t0是否小于位置检查时间,如成功则继续,如失败则重新启动位置检查;比较m2(128-255)和m(128-255)是否相等:如果相等,则位置检查成功,否则,重新启动位置检查。发送器最多可重试8次,如 仍失败,则位置检查失败,终止流程。

如位置检查失败并在重试次数范围内,可以先将seqNum加1,然后再重新启动位置检查。为尽可能的确保位置检查不受HMAC计算性能影响,接收端可以先预先计算m值。

通过上述实施例的描述,针对本申请实施例中涉及的密钥进行总结性描述。例如,参见表16所示。

表16

图17为本申请实施例的一种可能的数据传输装置的结构示意图。如图17所示,装置1700包括处理器1710和存储器1720。应当理解,当装置1700为芯片产品时,装置1700可以只包括处理器1710,存储器1720可以认为是装置1700之外的存储器芯片。该装置1700还可以包括通信接口1730,通信接口1730用于与其它装置通信,在实现过程中,处理流程的各步骤可以通过处理器1710中的硬件的集成逻辑电路或软件形式的指令完成图 2A-图16中涉及的方法,比如完成源端装置涉及的方法,宿端装置涉及的方法,菊花链装置涉及的方法,中继装置涉及的方法,路由装置涉及的方法。本申请实施例中通信接口1730可以是电路、总线等可以用于进行信息交互的硬件接口。

本申请实施例中处理器1710可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或其他可编程逻辑器件、分立门或晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或用处理器中的硬件及软件单元组合执行完成。处理器1710用于实现上述方法所执行的程序代码可以存储在存储器1720中。存储器1720和处理器1710耦合。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器1710可能和存储器1720协同操作。存储器1720可以是非易失性存储器,比如硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)等。存储器1720是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1720还用于关联存储数字证书、私钥和标识信息,和关联存储标识信息和通行密钥。

本申请实施例中不限定上述通信接口1730、处理器1710以及存储器1720之间的具体连接介质。本申请实施例在图17中以通信接口1730、处理器1710以及存储器1720之间通过总线连接。总线在图17中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图17中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

基于同一发明构思,本申请实施例提供了一种计算机程序产品,包括计算机程序,该计算机程序在某一计算机上执行时,将会使所述计算机实现上述任一证书管理方法实施例中所涉及的功能。

基于同一发明构思,本申请实施例提供了一种计算机程序,该计算机程序在某一计算机上执行时,将会使所述计算机实现上述任一证书管理方法实施例中所涉及的功能。

基于同一发明构思,本申请实施例提供了一种计算机可读存储介质,用于存储程序、指令,这些程序、指令在计算机中被调用执行时,可以使得计算机执行上述任一证书管理方法实施例中所涉及的功能。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

技术分类

06120116501752