趙云輝
(北京江南天安科技有限公司,北京 100088)
隨著廣電行業(yè)信息化和網(wǎng)絡(luò)化的發(fā)展,過去的盤帶拍攝、制作以及播出已全面數(shù)字化,同時(shí)4K高清逐漸成為主流。伴隨著融合媒體和云計(jì)算的出現(xiàn),廣電行業(yè)全面進(jìn)入了數(shù)字時(shí)代,并由此對(duì)數(shù)字內(nèi)容的保護(hù)需求日益強(qiáng)烈。
移動(dòng)互聯(lián)網(wǎng)技術(shù)的迅猛發(fā)展,帶動(dòng)了智能終端設(shè)備快速更替,其中以終端設(shè)備為最大受眾群體的視頻產(chǎn)業(yè)得到了巨大發(fā)展?;ヂ?lián)網(wǎng)視頻、OTT 以及IPTV 等各類視頻推廣渠道在獲得大量流量進(jìn)入的同時(shí),也迎來了殘酷的競(jìng)爭(zhēng),促使視頻內(nèi)容成為獲取關(guān)注的唯一焦點(diǎn)。因此,針對(duì)視頻內(nèi)容的保護(hù)已迫在眉睫。
在國(guó)內(nèi),2019 年影視作品盜版監(jiān)測(cè)顯示侵權(quán)率100%。據(jù)統(tǒng)計(jì),2018 年網(wǎng)絡(luò)視頻盜版侵權(quán)帶來的會(huì)員費(fèi)及收視費(fèi)用的損失約300 億元。盜版對(duì)正版的品牌價(jià)值、廣告投入、版權(quán)付費(fèi)以及帶寬消耗4個(gè)方面造成了直接損害,嚴(yán)重影響視頻產(chǎn)業(yè)的健康發(fā)展。
版權(quán)保護(hù)是基于密碼技術(shù)為視頻內(nèi)容提供安全保障,保障傳播信息來源的真實(shí)性、內(nèi)容的完整性以及內(nèi)容傳播通道的安全,同時(shí)實(shí)現(xiàn)數(shù)字版權(quán)內(nèi)容在流通過程中的權(quán)益轉(zhuǎn)移。
數(shù)字版權(quán)管理(Digital Rights Management,DRM)是數(shù)字內(nèi)容生產(chǎn)方用來控制數(shù)字內(nèi)容使用權(quán)的保護(hù)技術(shù)。數(shù)字化內(nèi)容包括但不限于書籍、軟件、音樂以及影視劇等。保護(hù)技術(shù)包括但不限于使用專用硬件、密碼技術(shù)以及授權(quán)技術(shù)等。版權(quán)保護(hù)就是通過保護(hù)技術(shù)進(jìn)行控制和限制數(shù)字化媒體內(nèi)容在電子設(shè)備上的使用權(quán),目的是保護(hù)數(shù)字媒體的版權(quán),從技術(shù)上防止數(shù)字媒體的非法復(fù)制,或者在一定程度上增加復(fù)制的困難,使用戶必須得到授權(quán)才能使用數(shù)字媒體。
2018 年10 月,國(guó)家廣播電視總局頒布了中國(guó)的數(shù)字版權(quán)技術(shù)規(guī)范《視音頻內(nèi)容分發(fā)數(shù)字版權(quán)管理技術(shù)規(guī)范》。在這部標(biāo)準(zhǔn)中,基于數(shù)字內(nèi)容生產(chǎn)和運(yùn)營(yíng)過程,將版權(quán)保護(hù)分成3 個(gè)部分,即密鑰管理與內(nèi)容加密、密鑰分發(fā)和認(rèn)證授權(quán)以及視頻解密及播放,明確了采用SM2 算法、SM3 算法、SM4 算法并基于許可證機(jī)制進(jìn)行版權(quán)保護(hù)的模式。
這部標(biāo)準(zhǔn)中最大的亮點(diǎn)是將密鑰分發(fā)環(huán)節(jié)分為密鑰交換和內(nèi)容授權(quán)許可證兩部分來實(shí)現(xiàn),最大限度保護(hù)了數(shù)字內(nèi)容生產(chǎn)方的權(quán)益,同時(shí)極大地方便了運(yùn)營(yíng)方與眾多內(nèi)容生產(chǎn)商之間的業(yè)務(wù)對(duì)接。
視頻文件為適應(yīng)不同的傳輸方式產(chǎn)生了多種協(xié)議格式,因此DRM 體系中對(duì)視頻數(shù)據(jù)加密的方式也有多種,較多采用的是CENC 方式。通用加密格式CENC 是基于ISO/IEC 14496-12 的一種加密格式,在模式中定義了使用AES 算法進(jìn)行加密計(jì)算。實(shí)際應(yīng)用中,基于HTTP 協(xié)議的動(dòng)態(tài)自適應(yīng)流媒體DASH 和Apple 公司推出的動(dòng)態(tài)碼率自適應(yīng)技術(shù)HLS 都使用了AES 加密算法。目前,國(guó)際上比較流行的版權(quán)管理系統(tǒng)有widewine 和fairplay。在這些體系中,一般使用AES 算法進(jìn)行視頻加解密[1]。
《視音頻內(nèi)容分發(fā)數(shù)字版權(quán)管理技術(shù)規(guī)范》標(biāo)準(zhǔn)中規(guī)定了視頻數(shù)據(jù)加解密使用的算法是我國(guó)自主研發(fā)的對(duì)稱密碼算法SM4。
SM4 算法是國(guó)家密碼管理局于2012 年3 月21日發(fā)布的對(duì)稱密碼算法,算法公開,分組長(zhǎng)度與密鑰長(zhǎng)度均為128 bit。加密算法與密鑰擴(kuò)展算法都采用32 輪非線性迭代結(jié)構(gòu),S 盒為固定的8 bit 輸入和8 bit 輸出[2]。SM4 算法主要用于數(shù)據(jù)加解密應(yīng)用。SM4 算法的安全性很好,能夠抵抗針對(duì)分組密碼算法的各種攻擊方法,包括窮舉搜索攻擊、差分攻擊以及線性攻擊等。
對(duì)稱密碼算法因其便利性和高效性,廣泛應(yīng)用于數(shù)據(jù)加解密和身份認(rèn)證等領(lǐng)域。根據(jù)不同的特性分組密碼的工作模式,它可以分為加密模式、認(rèn)證模式和認(rèn)證加密模式等。對(duì)稱加密算法能夠提供的加密模式有ECB、CBC、OFB、CFB、CTR 和XTS 等,認(rèn)證模式有HMAC、CMAC 和GMAC 等。基于分組密碼加密和認(rèn)證特性,將其組合起來形成加密認(rèn)證模式,主要有CCM、GCM、CWC、EAX、IAPM 和OCB 等。這些算法模式有各自適應(yīng)的應(yīng)用領(lǐng)域,如ECB 模式強(qiáng)調(diào)加密性能快,CMAC 強(qiáng)調(diào)數(shù)據(jù)完整性等[3]。
在版權(quán)保護(hù)領(lǐng)域主要應(yīng)用了加密特性,因此國(guó)際版權(quán)保護(hù)體系常用AES-CBC 模式和AES-CTR 模式。
《視音頻內(nèi)容分發(fā)數(shù)字版權(quán)管理技術(shù)規(guī)范》標(biāo)準(zhǔn)中規(guī)定了視頻內(nèi)容加密使用SM4-CBC 模式,支持全部加密和樣本加密(10%加密)兩種形式。
CBC 模式的全稱是Cipher Block Chaining 模式(密文分組鏈接模式),因?yàn)槊芪姆纸M像鏈條一樣相互連接在一起。
在CBC 模式中,先使用初始化向量與明文分組進(jìn)行異或運(yùn)算,然后使用128 bit 的密鑰對(duì)其進(jìn)行加密運(yùn)算得到第一個(gè)密文分組,再將此密文分與第二個(gè)明文分組進(jìn)行異或運(yùn)算,使用128 bit 的密鑰對(duì)其進(jìn)行加密運(yùn)算得到第二個(gè)密文分組,并重復(fù)上述操作直到所有的明文分組完成運(yùn)算[4]。
CBC 模式加解密過程如圖1 所示。
圖1 CBC 模式運(yùn)算過程
CBC模式是最常用的加密運(yùn)算模式,安全性好,明文的排列情況不會(huì)反映在密文中。但是,CBC 模式也存在只能鏈?zhǔn)竭M(jìn)行而不能并行計(jì)算、有誤差傳導(dǎo)等缺點(diǎn)。
在進(jìn)行CBC 模式性能分析前介紹加密模式OFB。
OFB 模式的全稱是Output-Feedback 模式(輸出反饋模式)。在OFB 模式中,密碼算法的輸出會(huì)反饋到密碼算法的輸入中[5]。
OFB 模式不是通過密碼算法對(duì)明文直接加密,而是通過將明文分組和密碼算法的輸出進(jìn)行XOR來產(chǎn)生密文分組。OFB 運(yùn)算流程如圖2 所示。
圖2 OFB 模式運(yùn)算流程
不難看出,OFB 模式更接近流密碼運(yùn)算模式。流密碼(Stream Cipher)也稱為序列密碼,是對(duì)稱密碼算法的一種。流密碼具有實(shí)現(xiàn)簡(jiǎn)單、便于硬件實(shí)施、加解密處理速度快以及沒有或只有有限的誤差傳播等特點(diǎn),廣泛應(yīng)用于通信行業(yè)以及需要對(duì)連續(xù)數(shù)據(jù)加密的情形下。流密碼算法主要是RC4 和A5/1,國(guó)內(nèi)常用的是ZUC。流密碼算法使用前需要進(jìn)行調(diào)度過程?;趯?duì)算法的通用性及使用的便利性考慮,版權(quán)保護(hù)領(lǐng)域沒有采用流密碼算法。
在網(wǎng)絡(luò)上傳輸?shù)囊曨l內(nèi)容根據(jù)不同的視頻傳輸協(xié)議,會(huì)以流(流也是以塊的形式傳輸)或小塊文件的方式傳輸。因此,這種連續(xù)傳輸模式也很適合采用CTR/OFB 加密模式。CTR 模式相對(duì)于OFB 具有更好的隨機(jī)性和安全性,但運(yùn)算模式復(fù)雜,而OFB 模式更易于實(shí)現(xiàn)。下面采用同一硬件平臺(tái)、同一算法對(duì)CBC 和OFB 模式的加密性能進(jìn)行對(duì)比。
系統(tǒng)配置如下:CPU為intel(R) Core(TM) i5-8265U 1.6 GHz;內(nèi)存16 GB;硬盤為512 GB PLEXTOR PX-512M9PeGN。
分別對(duì)100 MB 長(zhǎng)度的數(shù)據(jù)進(jìn)行多次加密測(cè)試(此模式下加解密性能相同,本次測(cè)試性能僅代表所使用的軟算法在本機(jī)平臺(tái)的性能),將測(cè)得的兩種模式的計(jì)算耗時(shí)數(shù)據(jù)進(jìn)行比較,如圖3 所示。
圖3 OFB 與CBC 性能比較
通過圖3 可以明顯看出,OFB 模式性能全面優(yōu)于CBC 模式,在處理100 MB 的數(shù)據(jù)時(shí),OFB 模式平均耗時(shí)較CBC 模式少68.6 ms。
同一算法下OFB 模式的運(yùn)算性能更高,原因是OFB 的流式處理效率明顯高于CBC 模下的鏈?zhǔn)教幚?。OFB 模式可以預(yù)先生成密鑰流,對(duì)于流式數(shù)據(jù)可以采用并發(fā)形式同時(shí)生成密鑰流和對(duì)數(shù)據(jù)的加解密計(jì)算;而CBC 模式因加密過程使用的密鑰與前一段加密輸出結(jié)果相關(guān),所以無法形成并發(fā)處理,只能鏈?zhǔn)竭B續(xù)操作。因此,對(duì)同一段數(shù)據(jù)加密OFB模式的速度更快。
對(duì)于數(shù)字版權(quán)應(yīng)用中,視頻加解密算法通過使用SM4-OFB 模式可以明顯提升性能?;贠FB 模式的設(shè)計(jì)思想,還可以對(duì)CBC 模式進(jìn)行優(yōu)化設(shè)計(jì)。
根據(jù)所使用的傳輸協(xié)議不同,視頻數(shù)據(jù)在網(wǎng)絡(luò)中的傳輸可以以流式和分塊文件方式傳輸。例如:點(diǎn)播場(chǎng)景常用的HLS 協(xié)議就是將視頻文件分為5~10 s 一個(gè)文件,接收端最先獲取的是視頻的m3u8 文件,播放器根據(jù)m3u8 文件內(nèi)容及用戶的拖拉動(dòng)作,選擇指定時(shí)間點(diǎn)的視頻文件進(jìn)行拉?。恢辈?chǎng)景常用的DASH 協(xié)議通過對(duì)視頻流切片生成MPD 文件和視頻流文件(.m4s 或.mp4),是以流的方式進(jìn)行傳輸;客戶端加載視頻時(shí),按照當(dāng)前的網(wǎng)速和支持的編碼,加載相應(yīng)的視頻片段進(jìn)行播放[6]。因此,在視頻數(shù)據(jù)的加密處理上,基于視頻切片(或稱分塊)的大小采用降低鏈?zhǔn)教幚眍l度,增加并發(fā)處理從而提升CBC 模式加密性能,是一個(gè)比較易于實(shí)現(xiàn)的方式。
視頻數(shù)據(jù)本身是按數(shù)據(jù)幀格式組織的。4K 高清視頻碼率一般大于30 Mb/s,每幀(以25 幀標(biāo)準(zhǔn)計(jì)算)的數(shù)據(jù)量約為1.2 Mb,也就是說每幀數(shù)據(jù)要在40 ms 以內(nèi)完成解密、解碼才能保證視頻流暢的播出。HLS 方式傳輸時(shí)一般是10 s 為一個(gè)文件,即一個(gè)視頻切片文件是300 Mb(37.5 MB)。按DRM標(biāo)準(zhǔn)中全部加密方式改進(jìn)CBC 加密模式,按1 Mb(128 kB)進(jìn)行分塊,將10 s 的視頻文件分為300段,每段采用相同的計(jì)算參數(shù)進(jìn)行加密運(yùn)算,并將計(jì)算結(jié)果拼接在一起形成完整視頻,以并發(fā)的形式進(jìn)行加解密,可以同時(shí)處理1 s 或幾秒的視頻數(shù)據(jù),以降低視頻延遲。
由圖4 可以看出,對(duì)1 Mb 數(shù)據(jù)的加密運(yùn)算,OFB 的耗時(shí)小于CBC 模式。數(shù)據(jù)分塊越小,OFB與CBC 的處理速度越接近。
圖4 幀加密耗時(shí)情況
此視頻不做分段,以一個(gè)整體進(jìn)行CBC 模式計(jì)算,并與OFB 和CBC 分塊并發(fā)模式進(jìn)行對(duì)比,結(jié)果如圖5 所示。
圖5 10 s 視頻加解密耗時(shí)情況
由圖5 可以看出,CBC(并發(fā))較CBC(整段)可節(jié)省時(shí)間,雖然性能仍弱于OFB 模式,但已有了一定的改善。
由于目前視頻終端一般為嵌入式系統(tǒng),如果采用專用的密碼算法芯片(一般具備每秒SM4 吞吐量>80 Mb/s),那么事實(shí)上無論采用哪種算法模式都可滿足視頻解密流暢播放的需求。硬件上沒有集成專用算法芯片,只能使用軟算法的終端設(shè)備(目前市場(chǎng)上有數(shù)以億計(jì)的此類設(shè)備),采用CBC 分段加密,有效提高視頻播出的流暢性。
出于視頻播放中有時(shí)移的要求,每次移動(dòng)到一個(gè)新的時(shí)間點(diǎn),如果采用整段(10 s)CBC 處理,那么理想情況下需要增加有0.2 s 左右的延時(shí)(網(wǎng)絡(luò)下載及延遲不計(jì)),而采用CBC(并發(fā))方式,那么延時(shí)僅為解密一個(gè)分段的時(shí)間,按幀分段計(jì)算,時(shí)間不超過0.002 s 延時(shí)。
廣播電視一直以來都是人們獲取新聞資訊和進(jìn)行生活?yuàn)蕵返闹匾緩?。隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,互聯(lián)網(wǎng)視頻產(chǎn)業(yè)獲得了極大發(fā)展,尤其是短視頻產(chǎn)業(yè),隨之而來的盜版侵權(quán)問題越來越嚴(yán)重?;诿艽a技術(shù)的數(shù)字版權(quán)保護(hù)無疑是最安全的保護(hù)方式,同時(shí)能保護(hù)內(nèi)容生產(chǎn)商的利益,也能保證使用者的權(quán)益。版權(quán)保護(hù)的核心技術(shù)是對(duì)視頻數(shù)據(jù)的加密和對(duì)解密密鑰的安全分發(fā)。優(yōu)化的加解密技術(shù)能夠降低版權(quán)保護(hù)給視頻播放帶來的影響,提升用戶的觀看體驗(yàn),直到解密耗時(shí)對(duì)用戶無感,這將是數(shù)字版權(quán)保護(hù)最理想的發(fā)展目標(biāo)。