CN111093097A - 流媒体数据加密、解密方法、装置、电子设备及存储介质 - Google Patents

流媒体数据加密、解密方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN111093097A
CN111093097A CN201911326520.0A CN201911326520A CN111093097A CN 111093097 A CN111093097 A CN 111093097A CN 201911326520 A CN201911326520 A CN 201911326520A CN 111093097 A CN111093097 A CN 111093097A
Authority
CN
China
Prior art keywords
media data
streaming media
encrypted
key
encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911326520.0A
Other languages
English (en)
Inventor
余东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Yunxiang Zhisheng Technology Co Ltd
Original Assignee
Beijing Yunxiang Zhisheng Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Yunxiang Zhisheng Technology Co Ltd filed Critical Beijing Yunxiang Zhisheng Technology Co Ltd
Priority to CN201911326520.0A priority Critical patent/CN111093097A/zh
Publication of CN111093097A publication Critical patent/CN111093097A/zh
Priority to PCT/CN2020/122443 priority patent/WO2021120831A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving video stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]

Abstract

本发明实施例提供了一种流媒体数据加密、解密方法、装置及电子设备。加密方法包括:获取待加密流媒体数据、与待加密流媒体数据对应的加密信息和加密密钥的密钥标识,其中,加密信息包括:加密级别,加密级别用于表示对待加密流媒体数据的加密方式;根据密钥标识获取加密密钥;基于加密密钥按照加密信息对待加密流媒体数据进行加密,得到加密后流媒体数据,其中,加密后流媒体数据为经过流媒体协议封装后的加密的流媒体数据,传输加密后流媒体数据。采用本发明实施例提供的技术方案对待加密流媒体数据进行加密后,所传输的是加密后的流媒体数据,从而可以提高基于流媒体协议传输的流媒体数据的安全性。

Description

流媒体数据加密、解密方法、装置、电子设备及存储介质
技术领域
本发明涉及互联网技术领域,特别是涉及一种流媒体数据加密、解密方法、装置、电子设备及存储介质。
背景技术
近年来,流媒体技术已经广泛应用于视频直播、短视频、互动直播等行业中。在流媒体技术中,可以基于流媒体协议在互联网中传输流媒体数据,其中,上述流媒体数据包括音、视频数据。
现有技术中,基于流媒体协议传输流媒体数据时,流媒体数据以流媒体协议所定义的数据包格式、在数据发送端和数据接收端之间的通道上传输。
然而,由于现有的流媒体协议通常只定义了流媒体数据传输时的数据包格式,因此,基于现有的流媒体协议传输流媒体数据时,所传输的流媒体数据一旦被第三方获取,很容易被解析出来。可见,现有技术中基于流媒体协议传输的流媒体数据安全性较低。
发明内容
本发明实施例的目的在于提供一种流媒体数据加密、解密方法、装置、电子设备及存储介质,以提高基于流媒体协议传输的流媒体数据的安全性。具体技术方案如下:
第一方面,本发明实施例提供了一种流媒体数据加密方法,所述方法包括:
获取待加密流媒体数据、与所述待加密流媒体数据对应的加密信息和加密密钥的密钥标识,其中,所述加密信息包括:加密级别,所述加密级别用于表示对所述待加密流媒体数据的加密方式;
根据所述密钥标识获取所述加密密钥;
基于所述加密密钥按照所述加密信息对所述待加密流媒体数据进行加密,得到加密后流媒体数据,其中,所述加密后流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
传输所述加密后流媒体数据。
可选的,在所述根据所述密钥标识获取所述加密密钥之后,所述方法还包括:
将所述密钥标识、所述加密信息和用于指示所述待加密流媒体数据是否进行了加密的标识信息添加在所述加密后流媒体数据的元数据中。
可选的,所述加密信息还包括:加密模式和所述加密密钥的密钥长度。
可选的,在所述基于所述加密密钥按照所述加密信息对所述待加密流媒体数据进行加密,得到加密后流媒体数据之前,所述方法还包括:
确定需要加密的流媒体数据的数据类型,所述需要加密的流媒体数据的数据类型包括:视频数据类型与音频数据类型中的至少一种;
根据所述数据类型确定是否对所述待加密流媒体数据进行加密;
若为是,则执行所述基于所述加密密钥按照所述加密信息对所述待加密流媒体数据进行加密的步骤。
可选的,所述根据所述密钥标识获取所述加密密钥包括:
将所述密钥标识发送给密钥服务器,以使得所述密钥服务器确定与所述密钥标识不同的加密密钥;
从所述密钥服务器获取所述加密密钥。
可选的,所述加密级别包括以下至少一项:
第一加密级别,所述第一加密级别的加密方式为:对待加密流媒体数据的待加密流媒体数据段的待加密字节进行加密,其中,所述待加密流媒体数据段为:待加密流媒体数据中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段,待加密字节为:各所述待加密流媒体数据段中的前所述第一预设数量个字节;
第二加密级别,所述第二加密级别的加密方式为:对待加密流媒体数据的全部字节进行加密。
可选的,当所述待加密流媒体数据为视频数据类型的数据时,所述待加密流媒体数据段具体为:待加密流媒体数据的各即时解码刷新IDR帧中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段。
第二方面,本发明实施例还提供了一种流媒体数据解密方法,所述方法包括:
向内容分发网络CDN中的中心媒体服务器发送拉流请求;
接收所述中心媒体服务器响应所述拉流请求所发送的待解密流媒体数据;其中,所述待解密流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
解析所述待解密流媒体数据的元数据得到密钥标识和解密信息,所述解密信息包括:解密级别,所述解密级别用于表示对所述待解密流媒体数据的解密方式;
通过所述密钥标识获取所述待解密流媒体数据的解密密钥;
基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密。
可选的,在所述基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密之前,所述方法还包括:
解析所述待解密流媒体数据的元数据得到所述待解密流媒体数据是否为加密的流媒体数据;
若为是,则执行所述基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密的步骤。
可选的,所述通过所述密钥标识获取所述待解密流媒体数据的解密密钥,包括:
将所述密钥标识发送给所述密钥服务器,以使得所述密钥服务器确定与所述密钥标识相对应的解密密钥;
从所述密钥服务器获取所确定的解密密钥,作为所述待解密流媒体数据的解密密钥。
可选的,所述基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密,包括:
当解析出所述待解密流媒体数据的解密级别为第一解密级别时,对待解密流媒体数据的待解密数据段的待解密字节进行解密,其中,所述待解密数据段为:待解密流媒体数据中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段,待解密字节为:各所述待解密数据段中的前所述第一预设数量个字节;
当解析出所述待解密流媒体数据的解密级别为第二解密级别时,对待解密流媒体数据的全部字节进行解密。
第三方面,本发明实施例还提供了一种流媒体数据加密装置,所述装置包括:
第一数据获取单元,用于获取待加密流媒体数据、与所述待加密流媒体数据对应的加密信息和加密密钥的密钥标识,其中,所述加密信息包括:加密级别,所述加密级别用于表示对所述待加密流媒体数据的加密方式;
加密密钥获取单元,用于根据所述密钥标识获取所述加密密钥;
数据加密单元,用于基于所述加密密钥按照所述加密信息对所述待加密流媒体数据进行加密,得到加密后流媒体数据,其中,所述加密后流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
数据传输单元,用于传输所述加密后流媒体数据。
可选的,所述装置还包括:
数据添加单元,用于将所述密钥标识、所述加密信息和用于指示所述待加密流媒体数据是否进行了加密的标识信息添加在所述加密后流媒体数据的元数据中。
可选的,所述加密信息还包括:加密模式和所述加密密钥的密钥长度。
可选的,所述装置还包括:
类型确定单元,用于确定需要加密的流媒体数据的数据类型,所述需要加密的流媒体数据的数据类型包括:视频数据类型与音频数据类型中的至少一种;
加密确定单元,用于根据所述数据类型确定是否对所述待加密流媒体数据进行加密,若确定对所述待加密流媒体数据进行加密,则触发所述数据加密单元进行进行操作。
可选的,所述加密密钥获取单元,包括:
第一标识发送子单元,用于将所述密钥标识发送给密钥服务器,以使得所述密钥服务器确定与所述密钥标识不同的加密密钥;
第一密钥获取子单元,用于从所述密钥服务器获取所述加密密钥。
可选的,所述加密级别包括以下至少一项:
第一加密级别,所述第一加密级别的加密方式为:对待加密流媒体数据的待加密流媒体数据段的待加密字节进行加密,其中,所述待加密流媒体数据段为:待加密流媒体数据中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段,待加密字节为:各所述待加密流媒体数据段中的前所述第一预设数量个字节;
第二加密级别,所述第二加密级别的加密方式为:对待加密流媒体数据的全部字节进行加密。
可选的,当所述待加密流媒体数据为视频数据类型的数据时,所述待加密流媒体数据段具体为:待加密流媒体数据的即时解码刷新IDR帧中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段。
第四方面,本发明实施例还提供了一种流媒体数据解密装置,所述装置包括:
拉流请求发送单元,用于向内容分发网络CDN中的中心媒体服务器发送拉流请求;
数据接收单元,用于接收所述中心媒体服务器响应所述拉流请求所发送的待解密流媒体数据;其中,所述待解密流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
数据解析单元,用于解析所述待解密流媒体数据的元数据得到密钥标识和解密信息,所述解密信息包括:解密级别,所述解密级别用于表示对所述待解密流媒体数据的解密方式;
解密密钥获取单元,用于通过所述密钥标识获取所述待解密流媒体数据的解密密钥;
数据解密单元,用于基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密。
可选的,所述装置还包括:
是否加密解析单元,用于解析所述待解密流媒体数据的元数据得到所述待解密流媒体数据是否为加密的流媒体数据,若为加密的流媒体数据,则触发所述数据解密单元进行操作。
可选的,所述解密密钥获取单元,包括:
第二标识发送子单元,用于将所述密钥标识发送给所述密钥服务器,以使得所述密钥服务器确定与所述密钥标识相对应的解密密钥;
第二密钥获取子单元,用于从所述密钥服务器获取所确定的解密密钥,作为所述待解密流媒体数据的解密密钥。
可选的,所述数据解密单元,包括:
第一解密子单元,用于当解析出所述待解密流媒体数据的解密级别为第一解密级别时,对待解密流媒体数据的待解密数据段的待解密字节进行解密,其中,所述待解密数据段为:待解密流媒体数据中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段,待解密字节为:各所述待解密数据段中的前所述第一预设数量个字节;
第二解密子单元,用于当解析出所述待解密流媒体数据的解密级别为第二解密级别时,对待解密流媒体数据的全部字节进行解密。
第五方面,本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线;
其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信,
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现第一方面任一项所述的数据加密方法。
第六方面,本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线;
其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信,
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现第二方面任一项所述的数据解密方法。
第七方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一项所述的数据加密方法。
第八方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第二方面任一项所述的数据加密方法。
本发明实施例提供的技术方案在对流媒体数据进行加密时,获取了加密密钥的密钥标识和包括加密级别的加密信息以及根据密钥标识获取加密密钥后,其中,加密级别用于表示对所述待加密流媒体数据的加密方式,在对流媒体数据进行加密时,可以基于加密密钥对待加密流媒体数据进行加密,在得到经过流媒体协议封装后的加密的流媒体数据后,可以传输加密后流媒体数据。可见,本发明实施例提供的技术方案对待加密流媒体数据进行加密后,所传输的是加密后的流媒体数据,从而可以提高基于流媒体协议传输的流媒体数据的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的流媒体数据加密方法的一种流程示意图;
图2为本发明实施例提供的流媒体数据加密方法的另一种流程示意图;
图3为本发明实施例提供的流媒体数据解密方法的一种流程示意图;
图4为本发明实施例提供的流媒体数据解密方法的另一种流程示意图;
图5为本发明实施例提供的数据传输方法的一种流程示意图;
图6为本发明实施例提供的数据传输方法的另一种流程示意图;
图7为本发明实施例提供的流媒体数据加密装置的一种结构示意图;
图8为本发明实施例提供的流媒体数据解密装置的一种结构示意图;
图9为本发明实施例提供的电子设备的一种结构示意图;
图10为本发明实施例提供的电子设备的另一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了提高基于流媒体协议传输的流媒体数据的安全性,本发明实施例提供了一种流媒体数据加密、解密方法、装置、电子设备及存储介质。
本发明的一个实施例中,提供的流媒体数据加密方法包括以下步骤:
获取待加密流媒体数据、与待加密流媒体数据对应的加密信息和加密密钥的密钥标识,其中,加密信息包括:加密级别,加密级别用于表示对待加密流媒体数据的加密方式;
根据上述密钥标识获取上述加密密钥;
基于上述加密密钥按照上述加密信息对上述待加密流媒体数据进行加密,得到加密后流媒体数据,其中,上述加密后流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
传输上述加密后流媒体数据。
本发明实施例提供的技术方案在对流媒体数据进行加密时,获取了加密密钥的密钥标识和包括加密级别的加密信息以及根据密钥标识获取加密密钥后,其中,加密级别用于表示对所述待加密流媒体数据的加密方式,在对流媒体数据进行加密时,可以基于加密密钥对待加密流媒体数据进行加密,在得到经过流媒体协议封装后的加密的流媒体数据后,可以传输加密后流媒体数据。可见,本发明实施例提供的技术方案对待加密流媒体数据进行加密后,所传输的是加密后的流媒体数据,从而可以提高基于流媒体协议传输的流媒体数据的安全性。
与上述流媒体数据加密方法相对应,本发明的一个实施例中,提供的流媒体数据解密方法包括以下步骤:
向内容分发网络CDN中的中心媒体服务器发送拉流请求;
接收所述中心媒体服务器响应所述拉流请求所发送的待解密流媒体数据;其中,所述待解密流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
解析所述待解密流媒体数据的元数据得到密钥标识和解密信息,所述解密信息包括:解密级别,所述解密级别用于表示对所述待解密流媒体数据的解密方式;
通过所述密钥标识获取所述待解密流媒体数据的解密密钥;
基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密。
本发明实施例提供的技术方案,解密端向内容分发网络CDN中的中心媒体服务器发送拉流请求后,可以接收到中心媒体服务器响应该拉流请求所发送的待解密流媒体数据,其中,待解密流媒体数据为经过流媒体协议封装后的加密的流媒体数据,解析待解密流媒体数据的元数据后可以得到密钥标识和解密信息,解密信息包括:解密级别,通过密钥标识获取待解密流媒体数据的解密密钥后,可以基于解密密钥按照解密信息对待解密流媒体数据进行解密。
可见,本发明实施例提供的技术方案对待加密流媒体数据进行加密后,所传输的是加密后的流媒体数据,从而可以提高基于流媒体协议传输的流媒体数据的安全性,且使用本发明实施例提供的方案可以对待解密流媒体数据进行解密,得到解密后的流媒体数据。
下面首先对本发明实施例所提供的流媒体数据加密方法进行介绍。
需要说明的是,本发明实施例所提供的流媒体数据加密方法可以应用于流媒体技术行业,例如,应用于互联网中流媒体数据的传输。
本发明实施例提供的流媒体数据加密方法的执行主体可以是推流端,也可以是转发推流端发送的流媒体数据的服务器。例如,本发明实施例提供的流媒体数据加密方法的执行主体可以是CDN网络中的推流端,也可以是CDN网络中的中心媒体服务器。
如图1所示,本发明实施例提供的流媒体数据加密方法包括以下步骤S110~S140。
S110:获取待加密流媒体数据、与待加密流媒体数据对应的加密信息和加密密钥的密钥标识。
其中,加密信息包括:加密级别,加密级别用于表示对待加密流媒体数据的加密方式。
上述密钥标识可以为随机确定的标识,也可以为预设的标识。
在一种实施方式中,上述加密级别可以包括以下至少一项:
第一加密级别,第一加密级别的加密方式为:对待加密流媒体数据的待加密流媒体数据段的待加密字节进行加密,其中,待加密流媒体数据段为:待加密流媒体数据中除前第一预设数量个字节外、以第一预设数量的第一预设倍数的数量个字节为一段的各数据段,待加密字节为:各待加密流媒体数据段中的前第一预设数量个字节;当待加密流媒体数据段的字节数少于第一预设数量的第一预设倍数的数量个字节时,不对待加密流媒体数据段进行加密处理;
第二加密级别,第二加密级别的加密方式为:对待加密流媒体数据的全部字节进行加密。
为了便于编码,上述第一预设数量的大小可以等于上述加密密钥的长度大小。例如,当加密密钥长度为16个字节时,第一预设数量可以为16。上述第一预设倍数可以为5~15中的任一倍数,也可以为其他具体倍数。当第一预设倍数较小时,需要加密的字节数较多,数据的安全性更高,当第一预设倍数较大时,需要加密的字节数较少,加密效率更高。
电子设备可以将接收到的用户输入的级别确定为加密级别。
本实施方式中,可以根据用户的需要选择不同的加密级别对待加密流媒体数据进行加密,从而可以更灵活地用不同的加密方式对流媒体数据进行加密。当加密级别为第一加密级别时,可以仅对流媒体数据中的部分字节进行加密,这样,既可以提高基于流媒体协议传输的流媒体数据的安全性,也可以减少需要加密的数据的数量,提高了加密的效率。当加密级别为第二加密级别时,可以对流媒体数据的全部字节进行加密,这样,可以使得基于流媒体协议传输的流媒体数据的安全性更高。
在一种具体实施方式中,当待加密流媒体数据为视频数据类型的数据时,待加密流媒体数据段具体可以为:待加密流媒体数据的各即时解码刷新(InstantaneousDecoding Refresh,简称IDR)帧中除前第一预设数量个字节外、以第一预设数量的第一预设倍数的数量个字节为一段的各数据段。通过本具体实施方式,可以通过仅对各IDR帧中的部分字节进行加密来实现对流媒体数据的加密,加密效率更高。且由于IDR帧为视频数据类型的数据的关键帧,当将IDR帧加密后,视频数据类型的流媒体数据通常无法正常播放,因此,仅对各IDR帧中的部分字节进行加密,也可以保证基于流媒体协议传输的流媒体数据的安全性。
在一个具体实施例中,例如,第一预设数量为16,第一预设倍数为10,待加密流媒体数据为视频数据类型的数据,那么,当加密级别为第一加密级别时,可以对待加密流媒体数据的各IDR帧的除前16个字节外的数据中,以16*10个字节为一段的各数据段的前16个字节进行加密。
S120:根据上述密钥标识获取加密密钥。
在一种实施方式中,步骤S120,可以按以下步骤A~B实现:
步骤A:将密钥标识发送给加密密钥服务器,以使密钥服务器确定与密钥标识不同的加密密钥。
在一种具体实施方式中,密钥服务器中可以存储有预设的密钥信息表,该密钥信息表可以包括:密钥和密钥标识的映射关系,相应的,电子设备中可以存储有密钥标识表,该密钥标识表中可以包括多个密钥标识,密钥标识表中的密钥标识与密钥信息表中的密钥标识相同。这种情况下,步骤S110中获取加密密钥的密钥标识可以按以下步骤实现:从密钥标识表中获取任一个密钥标识作为加密密钥的密钥标识,步骤A中,密钥服务器可以按以下方式确定加密密钥:从密钥信息表中确定与密钥标识对应的密钥,作为加密密钥。
在另一种具体实施方式中,密钥服务器可以在确定了与密钥标识不同的加密密钥以后,建立所确定的加密密钥与密钥标识的对应关系。
步骤B:从密钥服务器获取密钥服务器所确定的加密密钥。
本实施方式从密钥服务器获取加密密钥,可以通过密钥服务器来对密钥进行管理,这样,更便于对密钥进行管理,密钥管理的安全性也较高。
在另一种实施方式中,步骤S110中获取加密密钥的密钥标识可以按以下步骤C实现:
步骤C:从预设的密钥信息表中选择密钥标识;
步骤S120,可以按以下步骤D实现:
步骤D:从预设的密钥信息表中获取与所选择密钥标识相对应的加密密钥。
其中,上述密钥信息表包括:密钥和密钥标识的映射关系。上述预设的密钥信息表可以存储在加密端的存储空间中。
本实施方式从密钥信息表中选择密钥标识并获取加密密钥,也可以更快地获取到加密密钥和密钥标识。
S130:基于加密密钥按照加密信息对待加密流媒体数据进行加密,得到加密后流媒体数据。
其中,加密后流媒体数据为经过流媒体协议封装后的加密的流媒体数据。
上述流媒体传输协议可以是实时消息传输协议(Real Time MessagingProtocol,简称RTMP)。也可以是其他流媒体传输协议。
在一种实施方式中,步骤S130,可以按以下步骤F~G实现:
步骤F:获得加密模式。
步骤G:基于加密密钥、按照加密信息以获得的加密模式对待加密流媒体数据进行加密。
在一个具体实施例中,上述加密模式可以为高级加密标准(Advanced EncryptionStandard,简称AES),当上述加密模式为AES时,上述加密模式具体可以为以下任一项:
高级加密标准-电码本模式AES-ECB;
高级加密标准-密码分组链接模式AES-CBC;
高级加密标准-计算器模式AES-CTR
高级加密标准-密码反馈模式AES-CFB;
高级加密标准-输出反馈模式AES-OFB。
在其他具体实施例中,上述加密模式也可以为RSA算法或数据加密算法(DataEncryption Algorithm,简称DEA),上述加密模式还可以是其他加密模式,本发明实施例不限定具体的加密模式。
在本实施方式中,电子设备可以将接收到的用户输入的模式确定为加密模式。当电子设备未接收到用户输入的模式时,可以将预设的模式确定为加密模式。预设的模式例如可以为AES-ECB、AES-CBC、AES-CTR、AES-CFB、AES-OFB中的任一种。
本实施方式以加密模式对待加密流媒体数据进行加密,可以更便捷地完成对流媒体数据的加密处理。
S140:传输加密后流媒体数据。
在一种实施方式中,当本发明实施例提供的加密方法的执行主体是推流端时,步骤S140可以按以下步骤实现:对加密后流媒体数据进行推流。当执行主体是中心媒体服务器时,步骤S140可以按以下步骤实现:响应于解密端发送的拉流请求,将加密后流媒体数据发送给解密端。
本发明实施例提供的加密方法在对流媒体数据进行加密时,获取了加密密钥的密钥标识和包括加密级别的加密信息以及根据密钥标识获取加密密钥后,其中,加密级别用于表示对所述待加密流媒体数据的加密方式,在对流媒体数据进行加密时,可以基于加密密钥对待加密流媒体数据进行加密,在得到经过流媒体协议封装后的加密的流媒体数据后,可以传输加密后流媒体数据。可见,本发明实施例提供的技术方案对待加密流媒体数据进行加密后,所传输的是加密后的流媒体数据,从而可以提高基于流媒体协议传输的流媒体数据的安全性。
在一种实施方式中,在步骤S120之后,上述方法还可以包括以下步骤:
将密钥标识、加密信息和用于指示待加密流媒体数据是否进行了加密的标识信息添加在加密后流媒体数据的元数据中。
上述元数据是用于描述数据属性的数据。例如,可以在加密后的流媒体数据的onMetaData字段中添加上述密钥标识、加密信息和用于指示待加密流媒体数据是否进行了加密的标识信息。其中,onMetaData字段为流媒体数据中用于记录流媒体数据属性的字段。本实施方式通过在onMetaData字段中增加密钥标识、加密信息和用于指示待加密流媒体数据是否进行了加密的标识信息等字段信息,便于解密端获取该密钥标识、加密信息和加密流媒体数据是否进行了加密。
需要说明的是,onMetaData语法结构的mediaencrypt字段可以标识加密的数据类型,比如0:标识音视频未加密,1:表示视频加密,2:表示音频加密,3:表示音视频均加密;
onMetaData语法结构的encryptconfig字段可以标识加密方式和加密参数:
encryptconfig字段结构如下:
{
EncryptionMode:加密级别
EncryptionAlgorithm:加密模式;
EncryptionKeyLenth:密钥长度;
EncryptionKeyInfo:密钥标识;
EncryptionIV:加密使用的初始化IV信息;
}
比如,加密级别可以是第一加密级别,第二加密级别,比如用0标识第一加密级别,用1表示第二加密级别;加密模式可以AES的模式,比如AES-ECB、AES-CBC、AES-CTR、AES-CFB、AES-OFB等,但并不限于此;密钥长度可以是16字符串等并不限定,密钥标识可以是用于标识加密密码的,其可以是数字,可以是字母,也可以是数字或字母的组合等等,但并不限于此。
在其他实施方式中,也可以将密钥标识、加密信息和用于指示待加密流媒体数据是否进行了加密的标识信息添加在加密后的流媒体数据的其他未加密过的数据中。
在一种实施方式中,加密信息还可以包括:加密模式和加密密钥的密钥长度。当加密信息包括加密模式时,可以按照该加密模式对待加密流媒体数据进行加密。
在一种实施方式中,如图2所示,在步骤S130之前,上述方法还可以包括以下步骤S150~S160。
S150:确定需要加密的流媒体数据的数据类型,需要加密的流媒体数据的数据类型包括:视频数据类型与音频数据类型中的至少一种。
S160:根据需要加密的流媒体数据的数据类型确定是否对待加密流媒体数据进行加密,若为是,则执行步骤S130。
在一个具体实施例中,步骤S160可以按以下步骤实现:当所确定的需要加密的流媒体数据的数据类型包括待加密流媒体数据的数据类型时,确定对待加密流媒体数据进行加密。
例如,当步骤S150确定的需要加密的流媒体数据的数据类型为视频数据类型时,当待加密流媒体数据的数据类型为视频数据类型时,确定对待加密流媒体数据进行加密,当待加密流媒体数据的数据类型为音频数据类型时,确定不对待加密流媒体数据进行加密;当步骤S150确定的需要加密的流媒体数据的数据类型为视频数据类型和音频数据类型时,当待加密流媒体数据的数据类型为视频数据类型时,确定对待加密流媒体数据进行加密,当待加密流媒体数据的数据类型为音频数据类型时,确定对待加密流媒体数据进行加密。
本发明实施例还提供了一种流媒体数据解密方法,如图3所示,该方法包括以下步骤S310~S350:
S310:向内容分发网络CDN中的中心媒体服务器发送拉流请求。
S320:接收中心媒体服务器响应拉流请求所发送的待解密流媒体数据。
其中,待解密流媒体数据为经过流媒体协议封装后的加密的流媒体数据。
上述流媒体传输协议可以是RTMP,也可以是其他流媒体传输协议。
S330:解析待解密流媒体数据的元数据得到密钥标识和解密信息。
解密信息包括:解密级别,解密级别用于表示对待解密流媒体数据的解密方式。
在一种实施方式中,可以通过以下方式得到密钥标识和解密信息:从待解密流媒体数据的onMetaData字段中获取密钥标识和解密信息。
S340:通过上述密钥标识获取上述待解密流媒体数据的解密密钥。
在一种实施方式中,当待解密流媒体数据的加密端是通过上述步骤A~B来获取加密密钥时,步骤S340可以按以下步骤J~K实现:
步骤J:将密钥标识发送给密钥服务器,以使得密钥服务器确定与该密钥标识相对应的解密密钥;
步骤K:从密钥服务器获取所确定的解密密钥,将获取到的解密密钥作为待解密流媒体数据的解密密钥。
在另一种实施方式中,当待解密流媒体数据的加密端是通过上述步骤D来获取加密密钥时,步骤S340可以按以下步骤N实现:
步骤N:从预设的密钥信息表中查询与密钥标识相对应的密钥作为待解密流媒体数据的解密密钥。
其中,上述预设的密钥信息表包括:密钥和密钥标识的映射关系。
上述预设的密钥信息表可以存储在解密端的存储空间中。解密端存储的预设的密钥信息表与加密端存储的预设的密钥信息表相同。
S350:基于上述解密密钥按照上述解密信息对上述待解密流媒体数据进行解密。
在一种实施方式中,在步骤S350之前,上述方法还可以包括以下步骤:
解析待解密流媒体数据的元数据得到待解密流媒体数据是否为加密的流媒体数据,若为是,则执行步骤S350。
在本实施方式中,当将用于指示待加密流媒体数据是否进行了加密的标识信息添加在加密后流媒体数据的元数据中后,可以解析待解密流媒体数据的元数据得到待解密流媒体数据是否为加密的流媒体数据。
在一种实施方式中,如图4所示,步骤S350,可以按以下步骤S351~S352实现:
S351:当解析出待解密流媒体数据的解密级别为第一解密级别时,对待解密流媒体数据的待解密数据段的待解密字节进行解密。
其中,待解密数据段为:待解密流媒体数据中除前第一预设数量个字节外、以第一预设数量的第一预设倍数的数量个字节为一段的各数据段,待解密字节为:各待解密数据段中的前第一预设数量个字节。
S352:当解析出待解密流媒体数据的解密级别为第二解密级别时,对待解密流媒体数据的全部字节进行解密。
在一种实施方式中,步骤S350可以按以下步骤O~P实现:
步骤O:解析待解密流媒体数据的元数据得到待解密流媒体数据的加密模式;
步骤P:基于上述解密密钥按照上述解密信息以与上述加密模式相对应的解密模式对上述待解密流媒体数据进行解密。
步骤O中,解密端可以从待解密流媒体数据的onMetaData字段中获取待解密流媒体数据的加密模式。
本发明实施例提供的解密方法,解密端向内容分发网络CDN中的中心媒体服务器发送拉流请求后,可以接收到中心媒体服务器响应该拉流请求所发送的待解密流媒体数据,其中,待解密流媒体数据为经过流媒体协议封装后的加密的流媒体数据,解析待解密流媒体数据的元数据后可以得到密钥标识和解密信息,解密信息包括:解密级别,通过密钥标识获取待解密流媒体数据的解密密钥后,可以基于解密密钥按照解密信息对待解密流媒体数据进行解密。使用本发明实施例提供的方案可以对待解密流媒体数据进行解密,得到解密后的流媒体数据。
如图5所示,当上述加密方法的执行主体是中心媒体服务器时,CDN中数据传输的过程可以为:推流端将待加密流媒体数据通过CDN节点服务器基于RTMP协议发送给中心媒体服务器(推流端发送待加密流媒体数据的过程也可以称为推送清流的过程),中心媒体服务器基于配置信息根据上述任一项加密方法对待加密流媒体数据进行加密处理,并修改对应的元数据,当中心媒体服务器接收到解密端通过CDN节点服务器基于RTMP协议发送的拉流请求后,基于RTMP协议将加密后流媒体数据发送给解密端,解密端再根据上述任一项解密方法对待解密流媒体数据进行解密。
需要说明的是,中心媒体服务器中存储有配置信息,该配置信息中描述了推流端是否是该中心媒体服务器所在的CDN服务商的客户,推流端是否定制了特殊服务比如是否需要对流媒体数据进行加密,以及如果需要加密的话,加密信息、密钥标识等等。
如图6所示,当上述加密方法的执行主体是推流端时,CDN中数据传输的过程可以为:推流端根据上述任一项加密方法对待加密流媒体数据进行加密处理,基于RTMP协议将加密后流媒体数据进行推流,通过CDN节点服务器将加密后流媒体数据发送给中心媒体服务器(推流端发送加密后流媒体数据的过程可以称为推送加密流的过程),当中心媒体服务器接收到解密端通过CDN节点服务器发送的拉流请求后,将加密后流媒体数据发送给解密端,解密端再根据上述任一项解密方法对待解密流媒体数据进行解密。
图5和图6实施例中数据传输过程中的区别是:图5实施例推流端推送的是未加密的流媒体数据,由中心媒体服务器对待加密流媒体数据进行加密处理,图6实施例推流端推送的是已加密的流媒体数据,由推流端对待加密流媒体数据进行加密处理。
如图5和图6所示,数据传输的过程中,中心媒体服务器或推流端可以从密钥服务器获取加密密钥,解密端也可以从密钥服务器获取解密密钥。
本发明实施例还提供了一种流媒体数据加密装置,如图7所示,所述装置包括:
第一数据获取单元710,用于获取待加密流媒体数据、与所述待加密流媒体数据对应的加密信息和加密密钥的密钥标识,其中,所述加密信息包括:加密级别,所述加密级别用于表示对所述待加密流媒体数据的加密方式;
加密密钥获取单元720,用于根据所述密钥标识获取所述加密密钥;
数据加密单元730,用于基于所述加密密钥按照所述加密信息对所述待加密流媒体数据进行加密,得到加密后流媒体数据,其中,所述加密后流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
数据传输单元740,用于传输所述加密后流媒体数据。
本发明实施例提供的加密装置在对流媒体数据进行加密时,获取了加密密钥的密钥标识和包括加密级别的加密信息以及根据密钥标识获取加密密钥后,其中,加密级别用于表示对所述待加密流媒体数据的加密方式,在对流媒体数据进行加密时,可以基于加密密钥对待加密流媒体数据进行加密,在得到经过流媒体协议封装后的加密的流媒体数据后,可以传输加密后流媒体数据。可见,本发明实施例提供的技术方案对待加密流媒体数据进行加密后,所传输的是加密后的流媒体数据,从而可以提高基于流媒体协议传输的流媒体数据的安全性。
在一种实施方式中,所述装置还可以包括:
数据添加单元,用于将所述密钥标识、所述加密信息和用于指示所述待加密流媒体数据是否进行了加密的标识信息添加在所述加密后流媒体数据的元数据中。
在一种实施方式中,所述加密信息还可以包括:加密模式和所述加密密钥的密钥长度。
在一种实施方式中,所述装置还可以包括:
类型确定单元,用于确定需要加密的流媒体数据的数据类型,所述需要加密的流媒体数据的数据类型包括:视频数据类型与音频数据类型中的至少一种;
加密确定单元,用于根据所述数据类型确定是否对所述待加密流媒体数据进行加密,若确定对所述待加密流媒体数据进行加密,则触发所述数据加密单元进行进行操作。
在一种实施方式中,所述加密密钥获取单元,可以包括:
第一标识发送子单元,用于将所述密钥标识发送给密钥服务器,以使得所述密钥服务器确定与所述密钥标识不同的加密密钥;
第一密钥获取子单元,用于从所述密钥服务器获取所述加密密钥。
在一种实施方式中,所述加密级别可以包括以下至少一项:
第一加密级别,所述第一加密级别的加密方式为:对待加密流媒体数据的待加密流媒体数据段的待加密字节进行加密,其中,所述待加密流媒体数据段为:待加密流媒体数据中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段,待加密字节为:各所述待加密流媒体数据段中的前所述第一预设数量个字节;
第二加密级别,所述第二加密级别的加密方式为:对待加密流媒体数据的全部字节进行加密。
在一种实施方式中,当所述待加密流媒体数据为视频数据类型的数据时,所述待加密流媒体数据段具体为:待加密流媒体数据的即时解码刷新IDR帧中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段。
本发明实施例还提供了一种流媒体数据解密装置,如图8所示,所述装置包括:
拉流请求发送单元810,用于向内容分发网络CDN中的中心媒体服务器发送拉流请求;
数据接收单元820,用于接收所述中心媒体服务器响应所述拉流请求所发送的待解密流媒体数据;其中,所述待解密流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
数据解析单元830,用于解析所述待解密流媒体数据的元数据得到密钥标识和解密信息,所述解密信息包括:解密级别,所述解密级别用于表示对所述待解密流媒体数据的解密方式;
解密密钥获取单元840,用于通过所述密钥标识获取所述待解密流媒体数据的解密密钥;
数据解密单元850,用于基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密。
本发明实施例提供的解密方法,解密端向内容分发网络CDN中的中心媒体服务器发送拉流请求后,可以接收到中心媒体服务器响应该拉流请求所发送的待解密流媒体数据,其中,待解密流媒体数据为经过流媒体协议封装后的加密的流媒体数据,解析待解密流媒体数据的元数据后可以得到密钥标识和解密信息,解密信息包括:解密级别,通过密钥标识获取待解密流媒体数据的解密密钥后,可以基于解密密钥按照解密信息对待解密流媒体数据进行解密。使用本发明实施例提供的方案可以对待解密流媒体数据进行解密,得到解密后的流媒体数据。
在一种实施方式中,所述装置还可以包括:
是否加密解析单元,用于解析所述待解密流媒体数据的元数据得到所述待解密流媒体数据是否为加密的流媒体数据,若为加密的流媒体数据,则触发所述数据解密单元进行操作。
在一种实施方式中,所述解密密钥获取单元840,可以包括:
第二标识发送子单元,用于将所述密钥标识发送给所述密钥服务器,以使得所述密钥服务器确定与所述密钥标识相对应的解密密钥;
第二密钥获取子单元,用于从所述密钥服务器获取所确定的解密密钥,作为所述待解密流媒体数据的解密密钥。
在一种实施方式中,所述数据解密单元830,可以包括:
第一解密子单元,用于当解析出所述待解密流媒体数据的解密级别为第一解密级别时,对待解密流媒体数据的待解密数据段的待解密字节进行解密,其中,所述待解密数据段为:待解密流媒体数据中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段,待解密字节为:各所述待解密数据段中的前所述第一预设数量个字节;
第二解密子单元,用于当解析出所述待解密流媒体数据的解密级别为第二解密级别时,对待解密流媒体数据的全部字节进行解密。
本发明实施例还提供了一种电子设备,如图9所示,包括处理器901、通信接口902、存储器903和通信总线904,其中,处理器901、通信接口902、存储器903通过通信总线904完成相互间的通信,
存储器903,用于存放计算机程序;
处理器901,用于执行存储器903上所存放的程序时,实现上述任一项提供的流媒体数据加密方法。
本发明实施例还提供了一种电子设备,如图10所示,包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001、通信接口1002、存储器1003通过通信总线1004完成相互间的通信,
存储器1003,用于存放计算机程序;
处理器1001,用于执行存储器1003上所存放的程序时,实现上述任一项提供的流媒体数据解密方法。
上述电子设备中提到的通信总线可以是外设部件互连标准(PeripheralComponent Interconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项提供的流媒体数据加密方法。
本发明实施例提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项提供的流媒体数据解密方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一项提供的流媒体数据加密方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一项提供的流媒体数据解密方法。
对于解密方法/装置/电子设备/存储介质/程序产品实施例而言,由于其基本相似于加密方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (17)

1.一种流媒体数据加密方法,其特征在于,所述方法包括:
获取待加密流媒体数据、与所述待加密流媒体数据对应的加密信息和加密密钥的密钥标识,其中,所述加密信息包括:加密级别,所述加密级别用于表示对所述待加密流媒体数据的加密方式;
根据所述密钥标识获取所述加密密钥;
基于所述加密密钥按照所述加密信息对所述待加密流媒体数据进行加密,得到加密后流媒体数据,其中,所述加密后流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
传输所述加密后流媒体数据。
2.根据权利要求1所述的方法,其特征在于,在所述根据所述密钥标识获取所述加密密钥之后,所述方法还包括:
将所述密钥标识、所述加密信息和用于指示所述待加密流媒体数据是否进行了加密的标识信息添加在所述加密后流媒体数据的元数据中。
3.根据权利要求1或2所述的方法,其特征在于,所述加密信息还包括:加密模式和所述加密密钥的密钥长度。
4.根据权利要求1或2所述的方法,其特征在于,在所述基于所述加密密钥按照所述加密信息对所述待加密流媒体数据进行加密,得到加密后流媒体数据之前,所述方法还包括:
确定需要加密的流媒体数据的数据类型,所述需要加密的流媒体数据的数据类型包括:视频数据类型与音频数据类型中的至少一种;
根据所述数据类型确定是否对所述待加密流媒体数据进行加密;
若为是,则执行所述基于所述加密密钥按照所述加密信息对所述待加密流媒体数据进行加密的步骤。
5.根据权利要求1或2所述的方法,其特征在于,所述根据所述密钥标识获取所述加密密钥包括:
将所述密钥标识发送给密钥服务器,以使得所述密钥服务器确定与所述密钥标识不同的加密密钥;
从所述密钥服务器获取所述加密密钥。
6.根据权利要求1或2所述的方法,其特征在于,所述加密级别包括以下至少一项:
第一加密级别,所述第一加密级别的加密方式为:对待加密流媒体数据的待加密流媒体数据段的待加密字节进行加密,其中,所述待加密流媒体数据段为:待加密流媒体数据中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段,待加密字节为:各所述待加密流媒体数据段中的前所述第一预设数量个字节;
第二加密级别,所述第二加密级别的加密方式为:对待加密流媒体数据的全部字节进行加密。
7.根据权利要求6所述的方法,其特征在于,当所述待加密流媒体数据为视频数据类型的数据时,所述待加密流媒体数据段具体为:待加密流媒体数据的各即时解码刷新IDR帧中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段。
8.一种流媒体数据解密方法,其特征在于,所述方法包括:
向内容分发网络CDN中的中心媒体服务器发送拉流请求;
接收所述中心媒体服务器响应所述拉流请求所发送的待解密流媒体数据;其中,所述待解密流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
解析所述待解密流媒体数据的元数据得到密钥标识和解密信息,所述解密信息包括:解密级别,所述解密级别用于表示对所述待解密流媒体数据的解密方式;
通过所述密钥标识获取所述待解密流媒体数据的解密密钥;
基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密。
9.根据权利要求8所述的方法,其特征在于,在所述基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密之前,所述方法还包括:
解析所述待解密流媒体数据的元数据得到所述待解密流媒体数据是否为加密的流媒体数据;
若为是,则执行所述基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密的步骤。
10.根据权利要求8或9所述的方法,其特征在于,所述通过所述密钥标识获取所述待解密流媒体数据的解密密钥,包括:
将所述密钥标识发送给所述密钥服务器,以使得所述密钥服务器确定与所述密钥标识相对应的解密密钥;
从所述密钥服务器获取所确定的解密密钥,作为所述待解密流媒体数据的解密密钥。
11.根据权利要求8或9所述的方法,其特征在于,所述基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密,包括:
当解析出所述待解密流媒体数据的解密级别为第一解密级别时,对待解密流媒体数据的待解密数据段的待解密字节进行解密,其中,所述待解密数据段为:待解密流媒体数据中除前第一预设数量个字节外、以所述第一预设数量的第一预设倍数的数量个字节为一段的各数据段,待解密字节为:各所述待解密数据段中的前所述第一预设数量个字节;
当解析出所述待解密流媒体数据的解密级别为第二解密级别时,对待解密流媒体数据的全部字节进行解密。
12.一种流媒体数据加密装置,其特征在于,所述装置包括:
第一数据获取单元,用于获取待加密流媒体数据、与所述待加密流媒体数据对应的加密信息和加密密钥的密钥标识,其中,所述加密信息包括:加密级别,所述加密级别用于表示对所述待加密流媒体数据的加密方式;
加密密钥获取单元,用于根据所述密钥标识获取所述加密密钥;
数据加密单元,用于基于所述加密密钥按照所述加密信息对所述待加密流媒体数据进行加密,得到加密后流媒体数据,其中,所述加密后流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
数据传输单元,用于传输所述加密后流媒体数据。
13.一种流媒体数据解密装置,其特征在于,所述装置包括:
拉流请求发送单元,用于向内容分发网络CDN中的中心媒体服务器发送拉流请求;
数据接收单元,用于接收所述中心媒体服务器响应所述拉流请求所发送的待解密流媒体数据;其中,所述待解密流媒体数据为经过流媒体协议封装后的加密的流媒体数据;
数据解析单元,用于解析所述待解密流媒体数据的元数据得到密钥标识和解密信息,所述解密信息包括:解密级别,所述解密级别用于表示对所述待解密流媒体数据的解密方式;
解密密钥获取单元,用于通过所述密钥标识获取所述待解密流媒体数据的解密密钥;
数据解密单元,用于基于所述解密密钥按照所述解密信息对所述待解密流媒体数据进行解密。
14.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线;
其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信,
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1-7任一项所述的数据加密方法。
15.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线;
其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信,
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求8-11任一项所述的数据解密方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的数据加密方法。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求8-11任一项所述的数据解密方法。
CN201911326520.0A 2019-12-20 2019-12-20 流媒体数据加密、解密方法、装置、电子设备及存储介质 Pending CN111093097A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911326520.0A CN111093097A (zh) 2019-12-20 2019-12-20 流媒体数据加密、解密方法、装置、电子设备及存储介质
PCT/CN2020/122443 WO2021120831A1 (zh) 2019-12-20 2020-10-21 流媒体数据加密、解密方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911326520.0A CN111093097A (zh) 2019-12-20 2019-12-20 流媒体数据加密、解密方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN111093097A true CN111093097A (zh) 2020-05-01

Family

ID=70396226

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911326520.0A Pending CN111093097A (zh) 2019-12-20 2019-12-20 流媒体数据加密、解密方法、装置、电子设备及存储介质

Country Status (2)

Country Link
CN (1) CN111093097A (zh)
WO (1) WO2021120831A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111756767A (zh) * 2020-07-06 2020-10-09 成都卫士通信息产业股份有限公司 流媒体数据传输方法、装置、电子设备及计算机存储介质
CN112910891A (zh) * 2021-01-29 2021-06-04 南京十方网络科技有限公司 一种基于fpga高速加解密的网络安全互联系统
WO2021120831A1 (zh) * 2019-12-20 2021-06-24 北京云享智胜科技有限公司 流媒体数据加密、解密方法、装置、电子设备及存储介质
CN113438242A (zh) * 2021-06-25 2021-09-24 未鲲(上海)科技服务有限公司 服务鉴权方法、装置与存储介质
CN113542135A (zh) * 2021-08-04 2021-10-22 湖南快乐阳光互动娱乐传媒有限公司 一种cdn通信方法、系统、客户端和服务器
CN114142998A (zh) * 2021-11-26 2022-03-04 北京神经元网络技术有限公司 一种数据加密处理方法、装置、电子设备及存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114390317B (zh) * 2022-01-18 2024-03-19 山东点盾云网络科技有限公司 面向流式传输视频的加密方法及系统
CN114827671B (zh) * 2022-03-21 2023-04-25 慧之安信息技术股份有限公司 一种基于硬件指纹的流媒体加密传输方法
CN115002089B (zh) * 2022-06-30 2023-09-19 兰州乐智教育科技有限责任公司 流媒体传输方法、装置、电子设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102281261A (zh) * 2010-06-10 2011-12-14 杭州华三通信技术有限公司 一种数据传输方法、系统和装置
CN105471831A (zh) * 2014-09-15 2016-04-06 杭州海康威视数字技术股份有限公司 一种对实时传输协议数据包进行加密的方法和装置
CN105791243A (zh) * 2014-12-24 2016-07-20 北京奇虎科技有限公司 多媒体文件加密传输、解密播放方法和装置
CN105847238A (zh) * 2016-03-16 2016-08-10 杭州狮说教育科技有限公司 一种基于rtmp连接的数据安全传输方法
CN106209896A (zh) * 2016-07-29 2016-12-07 网宿科技股份有限公司 基于音视频格式的流媒体加密方法和模块
CN107222759A (zh) * 2017-06-28 2017-09-29 网易(杭州)网络有限公司 媒体文件加解密的方法、系统、设备和介质
CN108965302A (zh) * 2018-07-24 2018-12-07 苏州科达科技股份有限公司 媒体数据传输系统、方法、装置及存储介质
CN109120998A (zh) * 2018-08-28 2019-01-01 苏州科达科技股份有限公司 媒体数据传输方法、装置及存储介质
CN110557680A (zh) * 2019-07-30 2019-12-10 视联动力信息技术股份有限公司 一种音视频数据帧传输方法和系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL199486A0 (en) * 2009-06-22 2011-08-01 Nds Ltd Partial encryption using variable block-size parameters
CN109067814B (zh) * 2018-10-31 2021-04-20 苏州科达科技股份有限公司 媒体数据加密方法、系统、设备及存储介质
CN109495459B (zh) * 2018-10-31 2021-05-28 苏州科达科技股份有限公司 媒体数据加密方法、系统、设备及存储介质
CN111093097A (zh) * 2019-12-20 2020-05-01 北京云享智胜科技有限公司 流媒体数据加密、解密方法、装置、电子设备及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102281261A (zh) * 2010-06-10 2011-12-14 杭州华三通信技术有限公司 一种数据传输方法、系统和装置
CN105471831A (zh) * 2014-09-15 2016-04-06 杭州海康威视数字技术股份有限公司 一种对实时传输协议数据包进行加密的方法和装置
CN105791243A (zh) * 2014-12-24 2016-07-20 北京奇虎科技有限公司 多媒体文件加密传输、解密播放方法和装置
CN105847238A (zh) * 2016-03-16 2016-08-10 杭州狮说教育科技有限公司 一种基于rtmp连接的数据安全传输方法
CN106209896A (zh) * 2016-07-29 2016-12-07 网宿科技股份有限公司 基于音视频格式的流媒体加密方法和模块
CN107222759A (zh) * 2017-06-28 2017-09-29 网易(杭州)网络有限公司 媒体文件加解密的方法、系统、设备和介质
CN108965302A (zh) * 2018-07-24 2018-12-07 苏州科达科技股份有限公司 媒体数据传输系统、方法、装置及存储介质
CN109120998A (zh) * 2018-08-28 2019-01-01 苏州科达科技股份有限公司 媒体数据传输方法、装置及存储介质
CN110557680A (zh) * 2019-07-30 2019-12-10 视联动力信息技术股份有限公司 一种音视频数据帧传输方法和系统

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021120831A1 (zh) * 2019-12-20 2021-06-24 北京云享智胜科技有限公司 流媒体数据加密、解密方法、装置、电子设备及存储介质
CN111756767A (zh) * 2020-07-06 2020-10-09 成都卫士通信息产业股份有限公司 流媒体数据传输方法、装置、电子设备及计算机存储介质
CN112910891A (zh) * 2021-01-29 2021-06-04 南京十方网络科技有限公司 一种基于fpga高速加解密的网络安全互联系统
CN112910891B (zh) * 2021-01-29 2021-12-14 南京十方网络科技有限公司 一种基于fpga高速加解密的网络安全互联系统
CN113438242A (zh) * 2021-06-25 2021-09-24 未鲲(上海)科技服务有限公司 服务鉴权方法、装置与存储介质
CN113438242B (zh) * 2021-06-25 2023-08-29 广西三方大供应链技术服务有限公司 服务鉴权方法、装置与存储介质
CN113542135A (zh) * 2021-08-04 2021-10-22 湖南快乐阳光互动娱乐传媒有限公司 一种cdn通信方法、系统、客户端和服务器
CN114142998A (zh) * 2021-11-26 2022-03-04 北京神经元网络技术有限公司 一种数据加密处理方法、装置、电子设备及存储介质
CN114142998B (zh) * 2021-11-26 2024-03-15 北京神经元网络技术有限公司 一种数据加密处理方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
WO2021120831A1 (zh) 2021-06-24

Similar Documents

Publication Publication Date Title
CN111093097A (zh) 流媒体数据加密、解密方法、装置、电子设备及存储介质
US8949592B2 (en) System and methods for providing live streaming content using digital rights management-based key management
KR101603136B1 (ko) 템플릿 모드에서의 짧은 암호 사용기간의 지원
KR101633769B1 (ko) Iso 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법
KR100317394B1 (ko) 암호화된프로그램송신및수신방법,복호화방법및제조물품
KR101611848B1 (ko) 콘텐츠 전송 및 전달 시에 콘텐츠 암호화 및 권한 관리의 시그널링 및 취급
US8813246B2 (en) Method for playing digital contents protected with a DRM (digital right management) scheme and corresponding system
JP3631617B2 (ja) アクセスが制限された番組を送信する方法
US20120284370A1 (en) Method, system, or user device for adaptive bandwidth control of proxy multimedia server
US20140068264A1 (en) System and method for protecting digital contents with digital rights management (drm)
CN110401677B (zh) 数字版权密钥的获取方法、装置、存储介质及电子设备
US20080063195A1 (en) Method and system for encrypting or decrypting wmv streaming media
CN109120998B (zh) 媒体数据传输方法、装置及存储介质
JP2001036517A (ja) エンドユーザに対してアクセス制限することができるプログラムを送信する方法、暗号化されたプログラムをデコードする方法
WO2017096887A1 (zh) 防盗链的方法及装置
CN103081493B (zh) 用于保护隐私的广告选择的系统和方法
US11438660B2 (en) Inserting secondary content in primary content in IPTV
CN112104895B (zh) 视频加解密方法、服务器、机顶盒插件及视频播放系统
CN105245944A (zh) 基于dvb多终端节目播放方法及系统、机顶盒及移动终端
CN108924596B (zh) 媒体数据传输方法、装置及存储介质
CN109218837B (zh) 一种显示虚拟礼物特效的方法和设备
CN110912941A (zh) 组播数据的传输处理方法及装置
KR102481024B1 (ko) 데이터 암호화를 위해 수행되는 데이터 처리 방법, 장치, 시스템 및 컴퓨터 프로그램
CN100401285C (zh) 用于管理元数据的方法
CN109218757B (zh) 一种显示虚拟礼物特效的方法和设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200501

RJ01 Rejection of invention patent application after publication