CN114040229B - 一种视频加解密方法及装置 - Google Patents
一种视频加解密方法及装置 Download PDFInfo
- Publication number
- CN114040229B CN114040229B CN202111429245.2A CN202111429245A CN114040229B CN 114040229 B CN114040229 B CN 114040229B CN 202111429245 A CN202111429245 A CN 202111429245A CN 114040229 B CN114040229 B CN 114040229B
- Authority
- CN
- China
- Prior art keywords
- key
- encryption
- original
- permutation
- algorithm
- 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
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000006243 chemical reaction Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 4
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000013478 data encryption standard Methods 0.000 description 35
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 4
- 238000005336 cracking Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 206010044565 Tremor Diseases 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
-
- 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/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/26613—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
-
- 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/4405—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 decryption
-
- 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)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种视频加解密方法及装置,该视频加密方法包括如下步骤:步骤S1,随机生成原始密钥,并随机生成一个加密算法排列选择参数;步骤S2,对若干种加密算法进行排列组合并进行排序,并利用所述加密算法排列选择参数对排序组合方式进行选择,根据选择的排列组合方式依次对所述原始密钥进行加密,并将最终加密密钥发送至服务器;步骤S3,利用所述原始密钥对m3u8格式视频进行加密。
Description
技术领域
本发明涉及流媒体视频处理技术领域,特别是涉及一种基于HLS协议的流媒体视频的加解密方法及装置。
背景技术
基于互联网的快速传播,音视频类多媒体的应用日渐成为人们生活中不可或缺的部分。短视频直播软件比如抖音或者快手之类APP程序的火爆,大大扩展了音视频传输技术的使用场景。但是网络音视频盗版和盗链接的问题也随之而来。例如以在线视频培训为例,培训机构将线下原创版权课程迁移到在线平台中,但是同业竞争对手或者其他网络观众,利用下载、盗版、盗链接等多种方式和手段,很容易的获得视频内容,从而对原创者产生不利影响,因此,面临如何最大化的保护视频版权、防止未经版权方授权的破解、录播等侵权行为成为亟待解决的问题。
目前,解决上述问题普遍采用对传输的视频流进行加密的处理方法。针对流媒体的传输协议大体可以分为两类,一种基于UDP/TCP协议,另外一种基于HTTP协议。基于HTTP协议的技术由于其部署容易,可以自适应调整码流以及防火墙穿透性好等优点,被广泛的应用在各个商业的直播和点播网络中。其中,支持流媒体视频使用HTTP协议传输的技术有多种多样,而HLS协议是所有此类协议中使用最广泛的技术,目前基于HLS协议的视频流媒体传播通常使用M3U8格式(Unicode版本的M3U,用UTF-8编码;“M3U”和“M3U8”文件都是苹果公司使用的HTTP Live Streaming(HLS)协议格式的基础,这种协议格式可以在iPhone和Macbook等设备播放)来传输视频流,因此需要对目前基于HLS协议的M3U8格式的视频流进一步加密处理。
目前市面加密的方法多为视频水印、权限控制等方法,但这些方法都容易被破解,安全系数不高。
发明内容
为克服上述现有技术存在的不足,本发明之目的在于提供一种视频加解密方法及装置,以通过对m3u8格式视频流文件中的密钥(key)进行加密,从而增加破解成本,一定程度上可有效防止对视频的恶意破解和传播。
为达上述目的,本发明提出一种视频加密方法,包括如下步骤:
步骤S1,随机生成原始密钥(KEY原始),并随机生成一个加密算法排列选择参数;
步骤S2,对若干种加密算法进行排列组合并进行排序,并利用所述加密算法排列选择参数对排序组合方式进行选择,根据选择的排列组合方式依次对所述原始密钥(KEY原始)进行加密,并将最终加密密钥(KEY最终)发送至服务器;
步骤S3,利用所述原始密钥(KEY原始)对m3u8格式视频进行加密。
优选地,于步骤S1中,随机生成一个36进制16位字符串原始密钥(KEY原始),并随机生成一个4位数字的加密算法排列选择参数。
优选地,步骤S2进一步包括:
步骤S200,将AES算法、DES算法、RC4算法进行排列组合,并确定排列组合的顺序;
步骤S201,利用所述加密算法排列选择参数与排列组合的个数进行取模,根据取模结果得到唯一的排列组合方式;
步骤S202,根据步骤S201得到的排列组合方式生成混合加密算法函数,利用该混合加密算法函数对原始密钥(KEY原始)进行加密,得到加密秘钥(TEXT)。
优选地,步骤S202后,还包括如下步骤:
步骤S203,将得到的加密秘钥(TEXT)与所述加密算法排列选择参数拼接,并对拼接结果进行Base64编码转化,得到最终加密密钥(KEY最终);
步骤S204,通过m3u8格式的URI参数请求服务器地址,将得到的最终加密密钥(KEY最终)发送至服务器。
优选地,于步骤S201中,将加密算法排列选择参数与排列组合的个数取模,将取模结果与步骤S200的排列组合顺序对应,得到唯一的排列组合方式。
为达到上述目的,本发明还提供一种视频加密装置,包括:
原始密钥生成单元,用于随机生成原始密钥(KEY原始),并随机生成一个加密算法排列选择参数;
加密算法排列组合确定单元,用于对若干种加密算法进行排列组合并进行排序,并利用所述加密算法排列选择参数对排序组合方式进行选择,得到唯一的排列组合方式,并根据得到的排列组合方式依次对所述原始密钥(KEY原始)进行加密,并将最终加密密钥(KEY最终)发送至服务器;
视频加密单元,用于利用原始密钥(KEY原始)对m3u8格式视频进行加密。
优选地,所述原始密钥生成单元随机生成一个36进制16位字符串原始密钥(KEY原始),并随机生成一个四位数字的加密算法排列选择参数。
优选地,所述加密算法排列组合确定单元进一步包括:
加密算法排列组合模块,用于将AES算法、DES算法、RC4算法进行排列组合,并确定排列组合的顺序;
排列组合结果确定模块,用于利用所述加密算法排列选择参数与排列组合的个数进行取模,根据取模结果得到唯一的排列组合方式;
原始密钥加密模块,用于根据排列组合结果确定模块得到的排列组合方式生成混合加密算法函数,对原始密钥(KEY原始)进行加密,得到加密秘钥(TEXT);
最终加密密钥生成模块,用于将得到的加密秘钥(TEXT)与加密算法排列选择参数拼接,并进行Base64编码转化,得到最终加密密钥(KEY最终);
最终加密密钥存储模块,用于通过m3u8视频文件的URI参数请求服务器地址,将得到最终加密密钥(KEY最终)发送至服务器存储。
为达到上述目的,本发明还提供一种视频解密方法,包括如下步骤:
步骤S1,获取m3u8格式的视频流,通过m3u8文件的URI参数请求服务器地址,获得最终加密密钥(KEY最终);
步骤S2,对获得的最终加密密钥(KEY最终)进行Base64_解码转化,得到一拼接字符串,该拼接字符串则为加密秘钥(TEXT)与加密算法排列选择参数拼接后的字符串;
步骤S3,对所述拼接字符串截取出加密秘钥(TEXT)与加密算法排列选择参数,并对加密算法排列选择参数与加密算法的排列组合个数取模,根据取模结果获得加密算法的排列组合方式;
步骤S4,利用得到的排列组合方式,以与其相反顺序利用相应的解密算法依次对加密秘钥(TEXT)进行解密得到原始密钥;
步骤S5,利用得到的原始密钥(KEY原始)对m3u8视频文件进行解密。
为达到上述目的,本发明还提供一种视频解密装置,包括:
最终加密密钥获取单元,用于获取m3u8格式的视频流,通过m3u8文件的URI参数请求服务器地址,获得最终加密密钥(KEY最终);
解码转化单元,用于对获得的最终加密密钥(KEY最终)进行Base64_解码转化,得到一拼接字符串,该拼接字符串则为加密秘钥(TEXT)与加密算法排列选择参数拼接后的字符串;
排列组合确定单元,用于对所述拼接字符串截取出加密秘钥(TEXT)与加密算法排列选择参数,并对加密算法排列选择参数与加密算法的排列组合个数取模,根据取模结果获得加密算法的排列组合方式;
密钥解密单元,利用得到的排列组合方式,以与其相反顺序利用相应的解密算法依次对加密秘钥(TEXT)进行解密得到原始密钥(KEY原始);
视频解密单元,用于利用得到的原始密钥(KEY原始)对m3u8视频文件进行解密。
与现有技术相比,本发明一种视频加解密方法及装置,通过对m3u8格式视频流文件中的密钥(key)利用多种加密算法通过一定的排序组合进行加密封装,从而增加破解成本,一定程度上可有效防止对视频的恶意破解和传播。
附图说明
图1为本发明一种视频加密方法的步骤流程图;
图2为本发明一种视频加密装置的***结构图;
图3为本发明一种视频解密方法的步骤流程图;
图4为本发明一种视频解密装置的***结构图;
图5为本发明实施例中m3u8格式的示意图;
图6为图5中m3u8格式的参数说明;
图7为本发明实施例的加密过程示意图;
图8为本发明实施例的加密过程R到TEXT的流程图;
图9为本发明实施例的解密过程示意图。
具体实施方式
以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
在说明本发明具体内容之前,先介绍几个本发明涉及的概念:
AES加密算法:是一种高级加密标准,是美国联邦政府采用的一种区块加密标准,本发明采用其CBC模式,CBC加密原理:明文跟向量异或,再用KEY进行加密,结果作为下个BLOCK的初始化向量。解密原理:使用密钥先对密文解密,解密后再同初始向量异或得到明文。
DES加密算法:全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法。该算法的入口参数有三个:key、data、mode。key为加密解密使用的密钥,data为加密解密的数据,mode为其工作模式。当模式为加密模式时,明文按照64位进行分组,形成明文组,key用于对数据加密,当模式为解密模式时,key用于对数据解密。实际运用中,密钥只用到了64位中的56位,这样才具有高的安全性。
RC4(来自Rivest Cipher 4的缩写)加密算法:是一种流加密算法,密钥长度可变。它加解密使用相同的密钥,因此也属于对称加密算法。
图1为本发明一种视频加密方法的步骤流程图。如图1所示,本发明一种视频加密方法,包括如下步骤:
步骤S1,随机生成原始密钥KEY原始,并随机生成一个四位数的加密算法排列选择参数。
在本发明具体实施例中,随机生成一个36进制16位字符串原始密钥KEY(以下简称R),例如随机生成原始密钥KEY原始:D5I8IKJNSAHV4DOI,并随机生成一个4位数字的加密算法排列选择参数(以下简称N4)。
步骤S2,对若干种加密算法进行排列组合并进行排序,并利用所述加密算法排列选择参数对其进行选择,得到唯一的排列组合方式,并根据得到的排列组合方式依次对所述原始密钥KEY原始(R)进行加密。
具体地,步骤S2进一步包括:
步骤S200,将AES算法、DES算法、RC4算法进行排列组合,并确定排列组合的顺序。
在本发明具体实施例中,采用AES算法、DES算法、RC4算法三种加密算法,将AES、DES、RC4排列组合,得到6种排列组合方式,并将其固定排序:
([[AES,DES,RC4],[AES,RC4,DES],[DES,AES,RC4],[DES,RC4,AES],[RC4,AES,DES],[RC4,DES,AES]])。
步骤S201,利用所述加密算法排列选择参数与排列组合的个数进行取模,根据取模结果得到唯一的排列组合方式。
具体地,将加密算法排列选择参数N4与6(三种加密算法排列组合的个数为6)取模,共有0,1,2,3,4,5共6种结果,将其与上面的排列组合一一对应,可以得到唯一的排列组合方式。
步骤S202,根据步骤S201得到的排列组合方式生成混合加密算法函数(HENC),对原始密钥KEY原始(R)进行加密,得到加密秘钥(TEXT)。
具体地,根据得到的排列组合方式将三种对称加密算法AES、DES、RC4按排列组合顺序混合生成混合加密算法函数(HENC),然后利用混合加密算法函数(HENC)对原始密钥KEY原始(R)进行加密,得到加密秘钥(TEXT)。
优选地,于步骤S202后,还包括如下步骤:
步骤S203,将得到的加密秘钥(TEXT)与加密算法排列选择参数N4,进行Base64编码转化,得到最终加密密钥KEY最终。
具体地,得到的加密秘钥(TEXT)与加密算法排列选择参数N4拼接,然后再进行Base64编码转化,得到最终加密密钥KEY最终。
步骤S204,通过m3u8视频文件的EXT-X-KEY标签的URI参数请求服务器地址,将得到的最终加密密钥KEY最终发送至服务器。
步骤S3,利用原始密钥KEY原始(R)对m3u8格式视频进行加密。
也就是说,在本发明中,原始秘钥KEY原始(R)只负责加密m3u8格式文件,不负责网络传输(禁止明文传输),而利用最终加密密钥KEY最终用于服务器端和客户端传输的参数。
基于上述加密方法,本发明还提供一种视频加密装置,图2为本发明一种视频加密装置的结构示意图。如图2所示,本发明一种视频加密装置,包括:
原始密钥生成单元201,用于随机生成原始密钥KEY原始,并随机生成一个四位数的加密算法排列选择参数。
在本发明具体实施例中,原始密钥生成单元201随机生成一个36进制16位字符串原始密钥KEY原始(以下简称R),例如随机生成原始KEY:D5I8IKJNSAHV4DOI,并随机生成一个4位数字的加密算法排列选择参数(以下简称N4)。
加密算法排列组合确定单元202,用于对若干种加密算法进行排列组合并进行排序,并利用所述加密算法排列选择参数对其进行选择,得到唯一的排列组合方式,并根据得到的排列组合方式依次对所述原始密钥KEY原始(R)进行加密。
具体地,加密算法排列组合确定单元202进一步包括:
加密算法排列组合模块,用于将AES算法、DES算法、RC4算法进行排列组合,并确定排列组合的顺序。
在本发明具体实施例中,加密算法排列组合模块采用AES算法、DES算法、RC4算法三种加密算法,将AES、DES、RC4排列组合,得到6种排列组合方式,并将其固定排序:
([[AES,DES,RC4],[AES,RC4,DES],[DES,AES,RC4],[DES,RC4,AES],[RC4,AES,DES],[RC4,DES,AES]])。
排列组合结果确定模块,用于利用所述加密算法排列选择参数与排列组合的个数进行取模,根据取模结果得到唯一的排列组合方式。
具体地,将加密算法排列选择参数N4与6(三种加密算法排列组合的个数为6)取模,共有0,1,2,3,4,5共6种结果,将其与上面的排列组合一一对应,可以得到唯一的排列组合方式。
原始密钥加密模块,用于根据排列组合结果确定模块得到的排列组合方式生成混合加密算法函数(HENC),对原始密钥KEY(R)进行加密,得到加密秘钥(TEXT)。
具体地,根据得到的排列组合方式将三种对称加密算法AES、DES、RC4按排列组合顺序混合生成混合加密算法函数(HENC),利用混合加密算法函数(HENC)对原始密钥KEY原始(R)进行加密,得到加密秘钥(TEXT)。
优选地,加密算法排列组合确定单元202还包括:
最终加密密钥生成模块,用于将得到的加密秘钥(TEXT)与加密算法排列选择参数N4,并进行Base64编码转化,得到最终加密密钥KEY最终,
具体地,最终加密密钥生成模块得到的加密密钥KEY与加密算法排列选择参数N4拼接,然后再进行Base64编码转化,得到最终加密密钥KEY最终
最终加密密钥存储模块,用于通过m3u8视频文件的EXT-X-KEY标签的URI参数请求服务器地址,将得到的最终加密密钥KEY最终发送至服务器存储。
视频加密单元203,用于利用原始加密密钥R对m3u8格式视频进行加密。
图3为本发明一种视频解密方法的步骤流程图。如图3所示,本发明一种视频解密方法,包括如下步骤:
步骤S1,获取m3u8格式的视频流,通过m3u8文件的EXT-X-KEY标签的URI参数请求服务器地址,获得最终加密密钥KEY最终。
步骤S2,对获得的最终加密密钥KEY最终进行Base64_解码转化,得到一拼接字符串,该拼接字符串则为加密秘钥(TEXT)与加密算法排列选择参数N4拼接后的字符串。
步骤S3,对所述拼接字符串截取出加密秘钥(TEXT)与加密算法排列选择参数,并将加密算法排列选择参数与加密算法的排列组合个数取模,根据取模结果获得加密算法的排列组合方式。
在本发明具体实施例中,根据加密算法排列选择参数的位数对拼接字符串截取出加密算法排列选择参数,然后将其与6取模,根据取模结果确定加密时的排列组合方式。
步骤S4,利用得到的排列组合方式,以与其相反顺序利用相应的解密算法依次对加密秘钥(TEXT)进行解密得到原始密钥KEY原始(R)。
步骤S5,利用解密得到的原始密钥KEY原始(R)对m3u8视频文件进行解密。
基于上述视频解密方法,本发明还提供一种视频解密方法。图4为本发明一种视频解密装置的结构示意图。如图4所示,本发明一种视频解密装置,包括:
最终加密密钥获取单元401,用于获取m3u8格式的视频流,通过m3u8文件的EXT-X-KEY标签的URI参数请求服务器地址,获得最终加密密钥KEY最终。
解码转化单元402,用于对获得的最终加密密钥KEY最终进行Base64_解码转化,得到一拼接字符串,该拼接字符串则为加密秘钥(TEXT)与加密算法排列选择参数N4拼接后的字符串。
排列组合确定单元403,用于对所述拼接字符串截取出加密秘钥(TEXT)与加密算法排列选择参数,并加密算法排列选择参数与加密算法的排列组合个数取模,根据取模结果获得加密算法的排列组合方式。
在本发明具体实施例中,加密排列组合确定单元403根据加密算法排列选择参数的位数对拼接字符串截取出加密算法排列选择参数,然后将其与6取模,根据取模结果确定加密时的排列组合方式。
密钥解密单元404,利用得到的排列组合方式,以与其相反顺序利用相应的解密算法依次对加密秘钥(TEXT)进行解密得到原始密钥KEY原始(R)。
视频解密单元405,用于利用原始密钥KEY原始(R)对视频进行解密。
实施例
图5为本发明实施例中m3u8格式的示意图,图6为图5中m3u8格式的参数说明。图7为本发明实施例的加密过程示意图,图8为本发明实施例的加密过程R到TEXT的流程图。在本实施例中,加密过程如下:
步骤1:随机生成36进制16位字符串原始密钥KEY原始(简称R)(例如D5I8IKJNSAHV4DOI),再随机生成4位数字(简称N4)。
步骤2:将AES、DES、RC4排列组合,共有6种排列组合方式,将其固定排序:
([[AES,DES,RC4],[AES,RC4,DES],[DES,AES,RC4],[DES,RC4,AES],[RC4,AES,DES],[RC4,DES,AES]])
(简称L6)。
将N4与6取模,共有0,1,2,3,4,5共6种结果,将其于上面排列组合一一对应,可以得到唯一的排列组合方式。例如N4与6取模为3,则得到唯一的排列组合方式[DES,RC4,AES]。
步骤3:将步骤2得到的排列组合(例如DES、RC4、AES)用于加密R,得到加密秘钥(TEXT),然后拼接上N4,对拼接得到的拼接字符串进行Base64编码转化一下,得到最终的加密密钥KEY最终,并将得到的该最终加密密钥KEY最终发送至服务器端。
步骤4:最后用原始密钥R作为m3u8-key对m3u8格式视频进行加密。
图9为本发明实施例的解密过程示意图。在本发明实施例中,解密过程如下:
步骤1:通过m3u8文件的EXT-X-KEY标签的URI参数请求服务器地址获取步骤3获得的最终加密密钥KEY最终,并将其进行Base64_decode转化,得到加密秘钥(TEXT)+N4的字符串。
步骤2:截取出N4,取模运算得出结果,利用L6得到相应的加密排序方式(例如DES、RC4、AES)。
步骤3:根据加密排序方式相反的顺序依次解密得出原始密钥KEY原始(R),用原始密钥KEY原始(R)对视频进行解密。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。
Claims (10)
1.一种视频加密方法,包括如下步骤:
步骤S1,随机生成原始密钥(KEY 原始 ),并随机生成一个加密算法排列选择参数;
步骤S2,对若干种加密算法进行排列组合并进行排序,并利用所述加密算法排列选择参数对排序组合方式进行选择,根据选择的排列组合方式中的加密算法依次对所述原始密钥(KEY 原始 )进行加密,并将最终加密密钥(KEY 最终 )发送至服务器;
步骤S3,利用所述原始密钥(KEY 原始 )对m3u8格式视频进行加密。
2.如权利要求1所述的一种视频加密方法,其特征在于:于步骤S1中,随机生成一个36进制16位字符串原始密钥(KEY 原始 ),并随机生成一个4位数字的加密算法排列选择参数。
3.如权利要求1所述的一种视频加密方法,其特征在于,步骤S2进一步包括:
步骤S200,将AES算法、DES算法、RC4算法进行排列组合,并确定排列组合的顺序;
步骤S201,利用所述加密算法排列选择参数与排列组合的个数进行取模,根据取模结果得到唯一的排列组合方式;
步骤S202,根据步骤S201得到的排列组合方式生成混合加密算法函数,利用该混合加密算法函数对原始密钥(KEY 原始 )进行加密,得到加密秘钥(TEXT)。
4.如权利要求3所述的一种视频加密方法,其特征在于,步骤S202后,还包括如下步骤:
步骤S203,将得到的加密秘钥(TEXT)与所述加密算法排列选择参数拼接,并对拼接结果进行Base64编码转化,得到最终加密密钥(KEY 最终 );
步骤S204,通过m3u8格式的URI参数请求服务器地址,将得到的最终加密密钥(KEY 最终 )发送至服务器。
5.如权利要求3所述的一种视频加密方法,其特征在于,于步骤S201中,将加密算法排列选择参数与排列组合的个数取模,将取模结果与步骤S200的排列组合顺序对应,得到唯一的排列组合方式。
6.一种视频加密装置,包括:
原始密钥生成单元,用于随机生成原始密钥(KEY 原始 ),并随机生成一个加密算法排列选择参数;
加密算法排列组合确定单元,用于对若干种加密算法进行排列组合并进行排序,并利用所述加密算法排列选择参数对排序组合方式进行选择,得到唯一的排列组合方式,并根据得到的排列组合方式中的加密算法依次对所述原始密钥(KEY 原始 )进行加密,并将最终加密密钥(KEY 最终 )发送至服务器;
视频加密单元,用于利用原始密钥(KEY 原始 )对m3u8格式视频进行加密。
7.如权利要求6所述的一种视频加密装置,其特征在于:所述原始密钥生成单元随机生成一个36进制16位字符串原始密钥(KEY 原始 ),并随机生成一个四位数字的加密算法排列选择参数。
8.如权利要求6所述的一种视频加密装置,其特征在于:所述加密算法排列组合确定单元进一步包括:
加密算法排列组合模块,用于将AES算法、DES算法、RC4算法进行排列组合,并确定排列组合的顺序;
排列组合结果确定模块,用于利用所述加密算法排列选择参数与排列组合的个数进行取模,根据取模结果得到唯一的排列组合方式;
原始密钥加密模块,用于根据排列组合结果确定模块得到的排列组合方式生成混合加密算法函数,对原始密钥(KEY 原始 )进行加密,得到加密秘钥(TEXT);
最终加密密钥生成模块,用于将得到的加密秘钥(TEXT)与加密算法排列选择参数拼接,并进行Base64编码转化,得到最终加密密钥(KEY 最终 );
最终加密密钥存储模块,用于通过m3u8视频文件的URI参数请求服务器地址,将得到最终加密密钥(KEY 最终 )发送至服务器存储。
9.一种视频解密方法,包括如下步骤:
步骤S1,获取m3u8格式的视频流,通过m3u8文件的URI参数请求服务器地址,获得最终加密密钥(KEY 最终 );
步骤S2,对获得的最终加密密钥(KEY 最终 )进行Base64解码转化,得到一拼接字符串,该拼接字符串则为加密秘钥(TEXT)与加密算法排列选择参数拼接后的字符串;
步骤S3,对所述拼接字符串截取出加密秘钥(TEXT)与加密算法排列选择参数,并对加密算法排列选择参数与加密算法的排列组合个数取模,根据取模结果获得加密算法的排列组合方式;
步骤S4,利用得到的排列组合方式,以与其相反顺序利用相应的解密算法依次对加密秘钥(TEXT)进行解密得到原始密钥;
步骤S5,利用得到的原始密钥(KEY 原始 )对m3u8视频文件进行解密。
10.一种视频解密装置,包括:
最终加密密钥获取单元,用于获取m3u8格式的视频流,通过m3u8文件的URI参数请求服务器地址,获得最终加密密钥(KEY 最终 );
解码转化单元,用于对获得的最终加密密钥(KEY 最终 )进行Base64解码转化,得到一拼接字符串,该拼接字符串则为加密秘钥(TEXT)与加密算法排列选择参数拼接后的字符串;
排列组合确定单元,用于对所述拼接字符串截取出加密秘钥(TEXT)与加密算法排列选择参数,并对加密算法排列选择参数与加密算法的排列组合个数取模,根据取模结果获得加密算法的排列组合方式;
密钥解密单元,利用得到的排列组合方式,以与其相反顺序利用相应的解密算法依次对加密秘钥(TEXT)进行解密得到原始密钥(KEY 原始 );
视频解密单元,用于利用得到的原始密钥(KEY 原始 )对m3u8视频文件进行解密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111429245.2A CN114040229B (zh) | 2021-11-29 | 2021-11-29 | 一种视频加解密方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111429245.2A CN114040229B (zh) | 2021-11-29 | 2021-11-29 | 一种视频加解密方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114040229A CN114040229A (zh) | 2022-02-11 |
CN114040229B true CN114040229B (zh) | 2024-02-06 |
Family
ID=80139035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111429245.2A Active CN114040229B (zh) | 2021-11-29 | 2021-11-29 | 一种视频加解密方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114040229B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101882993A (zh) * | 2009-05-04 | 2010-11-10 | 联发科技(新加坡)私人有限公司 | 密码***及密码方法 |
CN104410616A (zh) * | 2014-11-20 | 2015-03-11 | 广州日滨科技发展有限公司 | 数据加密、解密、传输方法和*** |
CN105871827A (zh) * | 2016-03-28 | 2016-08-17 | 乐视控股(北京)有限公司 | 防盗链方法及*** |
CN109150867A (zh) * | 2018-08-09 | 2019-01-04 | 丹东瑞银科技有限公司 | 网络信息传输加/解密器及加/解密方法 |
CN109446757A (zh) * | 2018-10-25 | 2019-03-08 | 石生花微电子(南京)有限公司 | 一种用于通用mcu程序保护的方法 |
CN113301431A (zh) * | 2021-01-22 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 视频数据的加解密方法、装置、电子设备及*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NZ714230A (en) * | 2013-04-18 | 2016-06-24 | Risoftdev Inc | System and methods for encrypting data |
-
2021
- 2021-11-29 CN CN202111429245.2A patent/CN114040229B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101882993A (zh) * | 2009-05-04 | 2010-11-10 | 联发科技(新加坡)私人有限公司 | 密码***及密码方法 |
CN104410616A (zh) * | 2014-11-20 | 2015-03-11 | 广州日滨科技发展有限公司 | 数据加密、解密、传输方法和*** |
CN105871827A (zh) * | 2016-03-28 | 2016-08-17 | 乐视控股(北京)有限公司 | 防盗链方法及*** |
CN109150867A (zh) * | 2018-08-09 | 2019-01-04 | 丹东瑞银科技有限公司 | 网络信息传输加/解密器及加/解密方法 |
CN109446757A (zh) * | 2018-10-25 | 2019-03-08 | 石生花微电子(南京)有限公司 | 一种用于通用mcu程序保护的方法 |
CN113301431A (zh) * | 2021-01-22 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 视频数据的加解密方法、装置、电子设备及*** |
Also Published As
Publication number | Publication date |
---|---|
CN114040229A (zh) | 2022-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7260215B2 (en) | Method for encryption in an un-trusted environment | |
RU2427898C2 (ru) | Защита цифрового мультимедиа с различными типами содержимого | |
US9673976B2 (en) | Method and system for encryption of blocks of data | |
KR101203266B1 (ko) | 스트리밍을 위한 제어 프로토콜 및 전송 프로토콜을 사용한보호 콘텐츠 반송 | |
KR100957121B1 (ko) | 키 분배 방법 및 인증 서버 | |
TWI376131B (en) | Methods of broadcasting and receiving a scrambled multimedia programme, content,headend, terminal, receiver and security rpocessor for such methods | |
US20120063597A1 (en) | Apparatus and associated methodology for managing content control keys | |
CN108881205B (zh) | 一种hls流媒体的安全播放***及播放方法 | |
EP3476078B1 (en) | Systems and methods for authenticating communications using a single message exchange and symmetric key | |
JP2007133400A (ja) | データのユニットをスクランブル及びデスクランブルする方法 | |
CN101640785B (zh) | 交互式网络电视的加/解密***和加/解密方法 | |
JP4193380B2 (ja) | ストリーム転送における電子署名システム | |
US9219606B2 (en) | Method and device for digital data blocks encryption and decryption | |
JP2005244534A (ja) | 暗号通信装置および暗号通信方法 | |
EP2071801B1 (en) | Method and apparatus for securing content using client and session specific encryption with embedded key in content | |
CN114040229B (zh) | 一种视频加解密方法及装置 | |
JP2008124935A (ja) | 送信装置、受信装置、情報通信システム | |
CN101500146A (zh) | 一种基于双向网络的数字电视收视控制方法和装置 | |
KR101934899B1 (ko) | 인증 암호 장치 및 방법 | |
WO2012175021A1 (zh) | 流媒体内容的处理方法和设备 | |
CN101500147B (zh) | 一种基于双向网络的数字电视收视控制方法和装置 | |
Huang et al. | Research of H. 264 video transmission encryption technology based on blowfish algorithm | |
JP2001211159A (ja) | コンテンツ情報復号化方法、コンテンツ情報復号化装置 | |
CN115643459A (zh) | 一种视频处理方法、***、存储介质及电子设备 | |
CN117857852A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |