CN113259718B - 视频流的加密方法、装置、通信设备及存储介质 - Google Patents
视频流的加密方法、装置、通信设备及存储介质 Download PDFInfo
- Publication number
- CN113259718B CN113259718B CN202110460904.2A CN202110460904A CN113259718B CN 113259718 B CN113259718 B CN 113259718B CN 202110460904 A CN202110460904 A CN 202110460904A CN 113259718 B CN113259718 B CN 113259718B
- Authority
- CN
- China
- Prior art keywords
- frame
- video stream
- encrypted data
- hash value
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2347—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2351—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving encryption of additional data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4408—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Power Engineering (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请适用于网络安全技术领域,提供了视频流的加密方法、装置、通信设备及存储介质。视频流的加密方法包括:获取视频流,采用第一加密算法对I帧的数据部分进行加密,得到第一加密数据,采用第二加密算法对第一加密数据的秘钥进行加密,得到第二加密数据,将第二加密数据存储至I帧的帧头,得到加密后的I帧。由于在得到I帧的数据部分的第一加密数据后,又采用第二加密算法对第一加密数据的秘钥进行加密,因此,提高了加密的安全性;而加密秘钥后得到的第二加密数据存储至I帧的帧头,可以提高视频加密的效率。
Description
技术领域
本申请属于网络安全技术领域,尤其涉及视频流的加密方法、装置、通信设备及存储介质。
背景技术
随着信息化技术的不断发展,网络安全得到越来越多的重视。为了防止视频流被恶意篡改,需要对传输的视频流进行加密。为了保证加密的安全性,现有的对视频流的加密方法的加密方法一般比较复杂,导致加密速度慢,不能同时兼顾加密的安全性和效率。
发明内容
有鉴于此,本申请实施例提供了视频流的加密方法、装置、通信设备及存储介质,可以在提高视频加密效率的同时提高加密的安全性。
本申请实施例的第一方面提供了一种视频流的加密方法,包括:获取视频流,所述视频流包括I帧;
采用第一加密算法对所述I帧的数据部分进行加密,得到第一加密数据;
采用第二加密算法对所述第一加密数据的秘钥进行加密,得到第二加密数据,将所述第二加密数据存储至所述I帧的帧头,得到加密后的I帧。
在一种可能的实现方式中,所述采用第一加密算法对所述I帧的数据部分进行加密,得到第一加密数据,包括:
采用第一加密算法对所述I帧的数据部分的预设位置的字节进行加密,得到第一加密数据。
在一种可能的实现方式中,所述视频流还包括位于所述I帧之后的P帧,在采用第二加密算法对所述第一加密数据的秘钥进行加密,得到第二加密数据,将所述第二加密数据存储至所述I帧的帧头,得到加密后的I帧之后,所述视频流的加密方法还包括:
对所述加密后的I帧进行哈希运算,得到第一哈希值;
将所述第一哈希值存储至所述P帧的帧头。
在一种可能的实现方式中,所述将所述第一哈希值存储至所述P帧的帧头,包括:
对所述第一哈希值进行加密,得到第三加密数据;
将所述第三加密数据存储至所述P帧的帧头。
在一种可能的实现方式中,所述P帧的数量为多个,多个所述P帧依次相邻,所述将所述第一哈希值存储至所述P帧的帧头,包括:
将所述第一哈希值存储至第一个P帧的帧头,以更新第一个P帧;
在所述将所述第一哈希值存储至第一个P帧的帧头,以更新第一个P帧之后,所述视频流的加密方法还包括循环执行下述步骤:
对更新后的P帧进行哈希运算,得到第二哈希值;
将所述第二哈希值存储至下一个P帧的帧头,以更新下一个P帧;
直到下一个P帧是最后一个P帧,对更新后的最后一个P帧进行哈希运算,得到第三哈希值。
在一种可能的实现方式中,所述将所述第二哈希值存储至下一个P帧的帧头,包括:
对所述第二哈希值进行加密,得到第四加密数据;
将所述第四加密数据存储至下一个P帧的帧头。
在一种可能的实现方式中,所述第一加密算法为高级加密标准加密算法。
本申请实施例的第二方面提高一种视频流的加密装置,包括:
获取模块,用于获取视频流,所述视频流包括I帧;
第一加密模块,用于采用第一加密算法对所述I帧的数据部分进行加密,得到第一加密数据;
第二加密模块,用于采用第二加密算法对所述第一加密数据的秘钥进行加密,得到第二加密数据,将所述第二加密数据存储至所述I帧的帧头,得到加密后的I帧。
在一种可能的实现方式中,所述第一加密模块具体用于:
采用第一加密算法对所述I帧的数据部分的预设位置的字节进行加密,得到第一加密数据。
在一种可能的实现方式中,所述视频流还包括位于所述I帧之后的P帧,所述视频流的加密装置还包括:
第三加密模块,用于对所述加密后的I帧进行哈希运算,得到第一哈希值;将所述第一哈希值存储至所述P帧的帧头。
在一种可能的实现方式中,所述第三加密模块具体用于:
对所述第一哈希值进行加密,得到第三加密数据;
将所述第三加密数据存储至所述P帧的帧头。
在一种可能的实现方式中,所述P帧的数量为多个,多个所述P帧依次相邻,所述第三加密模块具体用于:
将所述第一哈希值存储至第一个P帧的帧头,以更新第一个P帧;
循环执行下述步骤:
对更新后的P帧进行哈希运算,得到第二哈希值;
将所述第二哈希值存储至下一个P帧的帧头,以更新下一个P帧;
直到下一个P帧是最后一个P帧,对更新后的最后一个P帧进行哈希运算,得到第三哈希值。
在一种可能的实现方式中,所述第三加密模块具体还用于:
对所述第二哈希值进行加密,得到第四加密数据;
将所述第四加密数据存储至下一个P帧的帧头。
在一种可能的实现方式中,所述第一加密算法为高级加密标准加密算法。
本申请实施例的第三方面提供了一种通信设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的视频流的加密方法。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的视频流的加密方法。
本申请实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在通信设备上运行时,使得通信设备执行上述第一方面所述的视频流的加密方法。
本申请实施例与现有技术相比存在的有益效果是:通过获取视频流,采用第一加密算法对I帧的数据部分进行加密,得到第一加密数据,采用第二加密算法对第一加密数据的秘钥进行加密,得到第二加密数据,将第二加密数据存储至I帧的帧头,得到加密后的I帧。由于在得到I帧的数据部分的第一加密数据后,又采用第二加密算法对第一加密数据的秘钥进行加密,因此,提高了加密的安全性;而加密秘钥后得到的第二加密数据存储至I帧的帧头,可以提高视频加密的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本申请实施例提供的视频流的加密方法的实现流程示意图;
图2是一种应用场景中视频流的加密方法流程图;
图3是本申请实施例提供的视频流的加密装置的示意图;
图4是本申请实施例提供的通信设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
另外,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
现有的视频流的加密方法不能同时兼顾加密的安全性和效率,为此,本申请提供了视频流的加密方法,包括:获取视频流,采用第一加密算法对I帧的数据部分进行加密,得到第一加密数据,采用第二加密算法对第一加密数据的秘钥进行加密,得到第二加密数据,将第二加密数据存储至I帧的帧头,得到加密后的I帧。由于在得到I帧的数据部分的第一加密数据后,又采用第二加密算法对第一加密数据的秘钥进行加密,因此,提高了加密的安全性;而加密秘钥后得到的第二加密数据存储至I帧的帧头,可以提高视频加密的效率。
下面对本申请提供的视频流的加密方法进行示例性描述。
请参阅附图1,本申请一实施例提供的视频流的加密方法包括:
S101:获取视频流,所述视频流包括I帧。
其中,I帧是视频流中的关键帧,是视频流中一个画面组的第一帧,一个视频流可以包括一个画面组,也可以包括多个画面组。
S102:采用第一加密算法对所述I帧的数据部分进行加密,得到第一加密数据。
其中,可以对I帧的数据部分的所有字节进行加密,也可以对I帧的数据部分的预设位置的字节进行加密。例如,可以对I帧的前64个字节进行加密,也可以根据生成的随机数,对随机数对应位置的字节进行加密。对I帧的数据部分的预设位置的字节进行加密,在保证数据安全性的同时,降低了数据量,提高数据传输效率。
可以采用数据加密标准(Data Encryption Standard,DES)加密算法或者高级加密标准(Advanced Encryption Standard,AES)加密算法对I帧进行加密。在一种可能的实现方式中,通信设备开机时随机生成AES256秘钥,采用AES256的秘钥对I帧的前64个字节进行AES256加密,得到第一加密数据,将第一加密数据存储在I帧的前64个字节所在的位置。
S103:采用第二加密算法对所述第一加密数据的秘钥进行加密,得到第二加密数据,将所述第二加密数据存储至所述I帧的帧头,得到加密后的I帧。
其中,第二加密算法与第一加密算法可以相同,也可以不同,在一种可能的实现方式中,第二加密算法为RSA加密算法,RSA加密算法包括公钥和私钥,可以采用RSA2048的公钥对第一加密数据的秘钥进行加密,将得到的第二加密数据存储至I帧的帧头。由于AES加密算法为对称加密算法,RSA加密算法为非对称加密算法,第一加密数据的秘钥进行了再次加密,因此,提高了密码破解难度,进而提高了视频流传输的安全性。
若视频流包括一个I帧,在得到加密后的I帧后,即可进行视频流的传输。若视频流包括多个I帧,对每个I帧均进行上述处理,得到加密后的视频流,并进行视频流的传输。
接收方在接收到视频流后,先根据第二加密算法对应的私钥对第二加密数据进行解密,得到第一加密数据的秘钥,再根据第一加密数据的秘钥解密出第一加密数据,将解密出的第一加密数据存储至I帧的对应位置,即可得到I帧。
上述实施例中,通过获取视频流,采用第一加密算法对I帧的数据部分进行加密,得到第一加密数据,采用第二加密算法对第一加密数据的秘钥进行加密,得到第二加密数据,将第二加密数据存储至I帧的帧头,得到加密后的I帧。由于在得到I帧的数据部分的第一加密数据后,又采用第二加密算法对第一加密数据的秘钥进行加密,因此,提高了加密的安全性;加密秘钥后的第二加密数据存储至I帧的帧头,可以提高视频加密的效率。
在一种可能的实现方式中,视频流包括I帧以及位于I帧之后的P帧,P帧是差别帧,对I帧进行加密后,对加密后的I帧(包括帧头和数据部分)进行哈希运算,得到第一哈希值,将第一哈希值存储至P帧的帧头。在进行视频流解密时,在解密出I帧后,计算解密出的I帧的哈希值,若解密出的I帧的哈希值与第一哈希值相同,则证明解密出的I帧是完整数据,若解密出的I帧的哈希值与第一哈希值不同,则证明解密出的I帧不是完整数据,从而可以在解密时验证视频的完整性,防止视频流被篡改,提高视频流的安全性。且需要I帧以及I帧之后的P帧共两帧数据才可以进行视频流完整性的校验,进一步提高了视频流的安全性。
在一种可能的实现方式中,在得到第一哈希值后,对第一哈希值进行加密,得到第三加密数据,将第三加密数据存储至P帧的帧头。对应地,在进行视频流解密时,首先对第三加密数据进行解密,得到第一哈希值,再判断解密出的I帧的哈希值与第一哈希值是否相同,从而可以进一步提高视频流的安全性。
在其他可能的实现方式中,也可以仅对I帧的数据部分进行哈希运算,也可以仅对I帧的数据部分的预设位置的字节进行哈希运算,例如,对I帧的数据部分的前32个字节进行哈希运算,或者对I帧的奇数位置的字节进行哈希运算。
其中,对第一哈希值进行加密的加密算法可以是DES加密算法或者AES加密算法。采用AES加密算法可以提高密码破解难度,进而提高了视频流的安全性。
哈希运算可以是安全哈希算法(Secure Hash Algorithm,SHA)或者MD5信息摘要算法,在一种可能的实现方式中,采用SHA512或者MD5算法对I帧进行哈希运算,得到的第一哈希值即为I帧的摘要。采用新型摘要算法可以解决视频流的数字签名问题,在视频数据作为证据时,通过数字签名可以提供有效的法庭证据。
在一种可能的实现方式中,视频流包括I帧以及位于I帧之后的多个依次相邻的P帧,在对I帧进行哈希运算,得到第一哈希值,将第一哈希值存储至P帧的帧头即为将第一哈希值存储至第一个P帧的帧头,以更新第一个P帧。在将第一哈希值存储至第一个P帧的帧头,以更新第一个P帧之后,循环执行下述步骤:对更新后的P帧进行哈希运算,得到第二哈希值,将第二哈希值存储至下一个P帧的帧头,以更新下一个P帧;直到下一个P帧是最后一个P帧,对更新后的最后一个P帧进行哈希运算,得到第三哈希值,由于每一个更新后的P帧的哈希运算结果均存储于下一个P帧的帧头,因此,得到的第三哈希值与每一个P帧均相关,第三哈希值为链式的哈希值。对应地,在进行视频流验证时,需要计算解密出的视频流中每个P帧的哈希值,根据解密出的视频流中每个P帧的哈希值对每个P帧进行完整性校验,而计算每个P帧的哈希值均需与下一个P帧的帧头中的第二哈希值进行对比,因此,在进行视频完整性校验时,均需要两个P帧才能完成,从而增加了视频校验的难度,提高了视频流的安全性。
具体地,将第一哈希值存储至第一个P帧的帧头,得到更新后的第一个P帧,对更新后的第一个P帧进行哈希运算,得到第一个P帧的第二哈希值。将第一个P帧的第二哈希值存储至第二个P帧的帧头,得到更新后的第二个P帧,,对更新后的第二个P帧进行哈希运算,得到第二个P帧的第二哈希值。再将第二个P帧的第二哈希值存储至第三个P帧的帧头,得到更新后的第三个P帧,以此类推,直到得到更新后的最后一个P帧。每个更新后的P帧均包括帧头和数据部分。在得到更新后的最后一个P帧后,对更新后的最后一个P帧进行哈希运算,得到第三哈希值,第三哈希值即为链式的哈希值。
在一种可能的实现方式中,哈希运算为信息摘要算法,对应地,第三哈希值为更新后的最后一个P帧的摘要,该摘要即为摘要链。
在一种可能的实现方式中,在得到每个第二哈希值时,对第二哈希值进行加密,得到第四加密数据,将第四加密数据存储至下一个P帧的帧头,得到下一个更新后的P帧。具体地,将第一哈希值存储至第一个P帧的帧头,得到更新后的第一个P帧,对更新后的第一个P帧进行哈希运算,得到第一个P帧的第二哈希值。对第一个P帧的第二哈希值进行加密,得到第一个P帧的第四加密数据,将第一个P帧的第四加密数据存储至第二个P帧的帧头,得到更新后的第二个P帧,对更新后的第二个P帧进行哈希运算,得到第二个P帧的第二哈希值。对第二个P帧的第二哈希值进行加密,得到第二个P帧的第四加密数据,再将第二个P帧的第四加密数据存储至第三个P帧的帧头,得到更新后的第三个P帧。以此类推,直到将得到更新后的最后一个P帧的帧头,再对最后一个P帧进行哈希运算,得到第三哈希值,从而提高视频流的安全性。
在另一种可能的实现方式中,在得到第三哈希值后,也可以对第三哈希值进行加密,得到加密后视频流。对应地,在进行视频流的完整性校验时,首先解密出第三哈希值,再依次解密出每个第二哈希值,根据解密出的每个第二哈希值对解密出的视频流中的每个P帧进行视频完整性校验,提高了视频流的安全性。
在其他可能的实现方式中,在得到第一哈希值,将第一哈希值存储至第一个P帧的帧头后,可以对第一个P帧的帧头以及所有的P帧进行哈希运算,根据得到的哈希值进行视频完整性的校验。也可以对第一个P帧的帧头以及部分P帧进行哈希运算,根据得到的哈希值进行视频完整性的校验。也可以对每个P帧的帧头以及数据部分的预设位置的字节进行哈希运算,根据得到的哈希值进行视频完整性的校验。
在一种可能的实现方式中,视频流包括多个I帧,每两个I帧之间有多个P帧,采用上述实施例提供的视频流的加密方法对每个I帧以及每个P帧进行视频流加密后,得到加密后的视频流。
在一种可能的实现方式中,采用上述实施例提供的视频流的加密方法对第一个I帧以及第一个I帧之后的所有P帧进行视频流加密,得到第三哈希值(即为第一个第三哈希值)后,对第一个第三哈希值以及第二个I帧的第一加密数据的秘钥加密后存储至第二个I帧的帧头,得到加密后的第二个I帧。再对第二个I帧之后的P帧进行上述处理,得到第二个第三哈希值,再将第二个第三哈希值以及第三个I帧对应的第一加密数据的秘钥加密后存储至第三个I帧的帧头,得到加密后的第三个I帧,直到得到加密后的最后一个I帧,再对最后一个I帧之后的P帧进行上述处理,直到得到最后一个P帧的第三哈希值。
如图2所示,在一实施例中,视频流的加密方法具体为:通信设备开机随机生成AES256秘钥,采用AES256秘钥对第一个I帧的前64个字节进行加密,得到第一个I帧的第一加密数据。再采用RSA2048的公钥对第一个I帧的第一加密数据的秘钥进行加密,得到第二加密数据,将第二加密数据存储至第一个I帧的帧头,得到加密后的第一个I帧。对加密后的第一个I帧进行哈希运算,得到第一个I帧的第一哈希值,对第一个I帧的第一哈希值进行加密,得到第一个第三加密数据,将第一个第三加密数据存储至第一个P帧的帧头,得到更新后的第一个P帧,对更新后的第一个P帧进行哈希运算,得到第一个P帧的第二哈希值,对第一个P帧的第二哈希值进行加密,得到第一个P帧的第四加密数据,再将第一个P帧的第四加密数据存储至第二个P帧的帧头,得到更新后的第二个P帧,依次类推,直到得到更新后的第二个I帧之前的P帧。对更新后的第二个I帧之前的P帧进行哈希运算,得到第一个第三哈希值。采用与第一个I帧相同的方法对第二个I帧进行加密,得到第二个I帧的第一加密数据。对第二个I帧的第一加密数据的秘钥以及第一个第三哈希值加密后存储至第二个I帧的帧头。再采用上述P帧的加密方法对第二个I帧与第三I帧之间的P帧进行加密,得到第二个第三哈希值。依次类推,直到得到最后一个第三哈希值,即为链式的第三哈希值。在对视频流解密时,需要对解密出每个I帧以及每个P帧进行哈希运算,根据加密时对应的哈希值对视频流的完整性进行校验,从而提高了视频流的安全性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的视频流的加密方法,图3示出了本申请实施例提供的视频流的加密装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
如图3所示,视频流的加密装置包括,
获取模块10,用于获取视频流,所述视频流包括I帧;
第一加密模块20,用于采用第一加密算法对所述I帧的数据部分进行加密,得到第一加密数据;
第二加密模块30,用于采用第二加密算法对所述第一加密数据的秘钥进行加密,得到第二加密数据,将所述第二加密数据存储至所述I帧的帧头,得到加密后的I帧。
在一种可能的实现方式中,所述第一加密模块20具体用于:
采用第一加密算法对所述I帧的数据部分的预设位置的字节进行加密,得到第一加密数据。
在一种可能的实现方式中,所述视频流还包括位于所述I帧之后的P帧,所述视频流的加密装置还包括:
第三加密模块,用于对所述加密后的I帧进行哈希运算,得到第一哈希值;将所述第一哈希值存储至所述P帧的帧头。
在一种可能的实现方式中,所述第三加密模块具体用于:
对所述第一哈希值进行加密,得到第三加密数据;
将所述第三加密数据存储至所述P帧的帧头。
在一种可能的实现方式中,所述P帧的数量为多个,多个所述P帧依次相邻,所述第三加密模块具体用于:
将所述第一哈希值存储至第一个P帧的帧头,以更新第一个P帧;
循环执行下述步骤:
对更新后的P帧进行哈希运算,得到第二哈希值;
将所述第二哈希值存储至下一个P帧的帧头,以更新下一个P帧;
直到下一个P帧是最后一个P帧,对更新后的最后一个P帧进行哈希运算,得到第三哈希值。
在一种可能的实现方式中,所述第三加密模块具体还用于:
对所述第二哈希值进行加密,得到第四加密数据;
将所述第四加密数据存储至下一个P帧的帧头。
在一种可能的实现方式中,所述第一加密算法为高级加密标准加密算法。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
图4是本申请实施例提供的通信设备的示意图。如图4所示,该实施例的通信设备包括:处理器11、存储器12以及存储在所述存储器12中并可在所述处理器11上运行的计算机程序13。所述处理器11执行所述计算机程序13时实现上述视频流的加密方法实施例中的步骤,例如图1所示的步骤S101至S104。或者,所述处理器11执行所述计算机程序13时实现上述各装置实施例中各模块/单元的功能,例如图3所示获取模块10至第二加密模块30的功能。
示例性的,所述计算机程序13可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器11执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序13在所述通信设备中的执行过程。
所述通信设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。本领域技术人员可以理解,图4仅仅是通信设备的示例,并不构成对通信设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述通信设备还可以包括输入输出设备、网络接入设备、总线等。
所述处理器11可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器12可以是所述通信设备的内部存储单元,例如通信设备的硬盘或内存。所述存储器12也可以是所述通信设备的外部存储设备,例如所述通信设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器12还可以既包括所述通信设备的内部存储单元也包括外部存储设备。所述存储器12用于存储所述计算机程序以及所述通信设备所需的其他程序和数据。所述存储器12还可以用于暂时地存储已经输出或者将要输出的数据。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (9)
1.一种视频流的加密方法,其特征在于,包括:
获取视频流,所述视频流包括I帧;
采用第一加密算法对所述I帧的数据部分进行加密,得到第一加密数据;
采用第二加密算法对所述第一加密数据的秘钥进行加密,得到第二加密数据,将所述第二加密数据存储至所述I帧的帧头,得到加密后的I帧;
所述视频流还包括位于所述I帧之后的P帧,在所述采用第二加密算法对所述第一加密数据的秘钥进行加密,得到第二加密数据,将所述第二加密数据存储至所述I帧的帧头,得到加密后的I帧之后,所述视频流的加密方法还包括:
对所述加密后的I帧进行哈希运算,得到第一哈希值;
将所述第一哈希值存储至所述P帧的帧头;
其中,对所述加密后的I帧进行哈希运算,包括:对I帧的帧头和数据部分进行哈希运算、对I帧的数据部分进行哈希运算、或对I帧的数据部分的预设位置的字节进行哈希运算。
2.根据权利要求1所述的视频流的加密方法,其特征在于,所述采用第一加密算法对所述I帧的数据部分进行加密,得到第一加密数据,包括:
采用第一加密算法对所述I帧的数据部分的预设位置的字节进行加密,得到第一加密数据。
3.根据权利要求1所述的视频流的加密方法,其特征在于,所述将所述第一哈希值存储至所述P帧的帧头,包括:
对所述第一哈希值进行加密,得到第三加密数据;
将所述第三加密数据存储至所述P帧的帧头。
4.根据权利要求1所述的视频流的加密方法,其特征在于,所述P帧的数量为多个,多个所述P帧依次相邻,所述将所述第一哈希值存储至所述P帧的帧头,包括:
将所述第一哈希值存储至第一个P帧的帧头,以更新第一个P帧;
在所述将所述第一哈希值存储至第一个P帧的帧头,以更新第一个P帧之后,所述视频流的加密方法还包括循环执行下述步骤:
对更新后的P帧进行哈希运算,得到第二哈希值;
将所述第二哈希值存储至下一个P帧的帧头,以更新下一个P帧;
直到下一个P帧是最后一个P帧,对更新后的最后一个P帧进行哈希运算,得到第三哈希值。
5.根据权利要求4所述的视频流的加密方法,其特征在于,所述将所述第二哈希值存储至下一个P帧的帧头,包括:
对所述第二哈希值进行加密,得到第四加密数据;
将所述第四加密数据存储至下一个P帧的帧头。
6.根据权利要求1所述的视频流的加密方法,其特征在于,所述第一加密算法为高级加密标准加密算法。
7.一种视频流的加密装置,其特征在于,包括:
获取模块,用于获取视频流,所述视频流包括I帧;
第一加密模块,用于采用第一加密算法对所述I帧的数据部分进行加密,得到第一加密数据;
第二加密模块,用于采用第二加密算法对所述第一加密数据的秘钥进行加密,得到第二加密数据,将所述第二加密数据存储至所述I帧的帧头,得到加密后的I帧;
所述视频流还包括位于所述I帧之后的P帧,所述加密装置还包括:
第三加密模块,用于对所述加密后的I帧进行哈希运算,得到第一哈希值;将所述第一哈希值存储至所述P帧的帧头;
其中,对所述加密后的I帧进行哈希运算,包括:对I帧的帧头和数据部分进行哈希运算、对I帧的数据部分进行哈希运算、或对I帧的数据部分的预设位置的字节进行哈希运算。
8.一种通信设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的视频流的加密方法。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的视频流的加密方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110460904.2A CN113259718B (zh) | 2021-04-27 | 2021-04-27 | 视频流的加密方法、装置、通信设备及存储介质 |
US17/544,528 US12126711B2 (en) | 2021-04-27 | 2021-12-07 | Method and device for encryption of video stream, communication equipment, and storage medium |
EP21213103.1A EP4084484B1 (en) | 2021-04-27 | 2021-12-08 | Method and device for encryption of video stream, communication equipment, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110460904.2A CN113259718B (zh) | 2021-04-27 | 2021-04-27 | 视频流的加密方法、装置、通信设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113259718A CN113259718A (zh) | 2021-08-13 |
CN113259718B true CN113259718B (zh) | 2023-06-09 |
Family
ID=77221860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110460904.2A Active CN113259718B (zh) | 2021-04-27 | 2021-04-27 | 视频流的加密方法、装置、通信设备及存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US12126711B2 (zh) |
EP (1) | EP4084484B1 (zh) |
CN (1) | CN113259718B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114286131A (zh) * | 2021-12-27 | 2022-04-05 | 上海哔哩哔哩科技有限公司 | 直播连麦中主播形象模型文件的传输方法及装置 |
CN115426507B (zh) * | 2022-07-29 | 2023-12-05 | 宁波星巡智能科技有限公司 | 基于目标检测的隐私视频传输、播放方法、装置及设备 |
CN115914725A (zh) * | 2022-10-27 | 2023-04-04 | 深圳市闪剪智能科技有限公司 | 视频存储方法、装置、设备及存储介质 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1398902A4 (en) * | 2001-06-04 | 2007-02-28 | Matsushita Electric Ind Co Ltd | DEVICE AND METHOD FOR A FLEXIBLE AND COMMON IPMP SYSTEM FOR PROVIDING AND PROTECTING CONTENTS |
PL370774A1 (en) * | 2001-12-19 | 2005-05-30 | Irdeto Access B.V. | Digital content distribution system |
US7007170B2 (en) * | 2003-03-18 | 2006-02-28 | Widevine Technologies, Inc. | System, method, and apparatus for securely providing content viewable on a secure device |
US8005216B1 (en) * | 2007-08-21 | 2011-08-23 | Adobe Systems Incorporated | Method and apparatus providing confidentiality, integrity and authenticity for a video file |
CN106921827A (zh) * | 2015-12-25 | 2017-07-04 | 北京计算机技术及应用研究所 | 安全网络高清摄像机 |
KR101760092B1 (ko) * | 2016-05-09 | 2017-07-21 | 주식회사에스에이티 | 하드웨어 보안모듈을 이용한 cctv 보안강화 장치 및 그 방법 |
US11522710B2 (en) | 2018-08-06 | 2022-12-06 | Tyson York Winarski | Blockchained media stored in a material exchange format file |
CN109639691B (zh) | 2018-12-19 | 2021-11-12 | 世纪龙信息网络有限责任公司 | 监控数据加密的方法、装置、计算机设备及存储介质 |
JP2020182011A (ja) | 2019-04-23 | 2020-11-05 | セイコーエプソン株式会社 | 画像処理方法および画像処理装置 |
CN110363006B (zh) * | 2019-06-26 | 2020-12-18 | 中国科学院信息工程研究所 | 多链哈希栈结构及检测函数返回地址被篡改的方法 |
CN111277802B (zh) | 2020-03-03 | 2021-09-14 | 浙江宇视科技有限公司 | 视频码流的处理方法、装置、设备及存储介质 |
CN111586442B (zh) * | 2020-04-23 | 2022-05-20 | 深圳奇迹智慧网络有限公司 | 流媒体加密方法、装置、计算机设备和存储介质 |
CN112003859B (zh) * | 2020-08-21 | 2023-04-07 | 江苏徐工工程机械研究院有限公司 | 数据的加密方法、装置和解密方法、装置 |
-
2021
- 2021-04-27 CN CN202110460904.2A patent/CN113259718B/zh active Active
- 2021-12-07 US US17/544,528 patent/US12126711B2/en active Active
- 2021-12-08 EP EP21213103.1A patent/EP4084484B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP4084484A1 (en) | 2022-11-02 |
US20220345292A1 (en) | 2022-10-27 |
US12126711B2 (en) | 2024-10-22 |
EP4084484B1 (en) | 2024-04-17 |
CN113259718A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112751852B (zh) | 数据传输方法及相关设备 | |
CN113259718B (zh) | 视频流的加密方法、装置、通信设备及存储介质 | |
CN110830242A (zh) | 一种密钥生成、管理方法和服务器 | |
CN110598429B (zh) | 数据加密存储和读取的方法、终端设备及存储介质 | |
CN108197439B (zh) | 一种文件加密方法、装置及服务器 | |
WO2017052755A1 (en) | Secure data re-encryption | |
CN107733904A (zh) | 一种虚拟机数据加密和解密的方法、装置及平台 | |
CN108229192B (zh) | 一种文件解密方法、装置及客户端 | |
CN114221762A (zh) | 一种私钥存储方法、读取方法、管理装置、设备及介质 | |
CN112100696B (zh) | 存储器装置及其安全读取方法 | |
CN112346759A (zh) | 一种固件升级方法、装置及计算机可读存储介质 | |
WO2021217939A1 (zh) | 用于区块链数据处理的方法、装置及可读存储介质 | |
CN115150821A (zh) | 离线包的传输、存储方法及装置 | |
CN111404892B (zh) | 数据监管方法、装置和服务器 | |
CN102750479A (zh) | 一种分层软件版权保护方法和系统 | |
CN113542187A (zh) | 文件上传下载方法、装置、计算机装置及介质 | |
CN118740517A (zh) | 适用于视频数据的加密传输方法、装置、设备及介质 | |
CN113489589A (zh) | 数据加密、解密方法、装置及电子设备 | |
CN117828553A (zh) | 一种软件授权方法及设备 | |
CN108242997B (zh) | 安全通信的方法与设备 | |
CN113542224B (zh) | 培训数据的处理方法、装置、服务器及介质 | |
CN116992474B (zh) | 一种固件加密方法及装置 | |
CN118200049B (zh) | 一种金融数据的加密方法、加密装置、设备及介质 | |
CN117221878B (zh) | 一种基于无线网络设备的信息安全管控方法及装置 | |
CN111130788A (zh) | 数据处理方法和系统、数据读取方法和iSCSI服务器 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |