訪問(wèn)限制和播放中心授權(quán):用法簡(jiǎn)單,安全登記較低,對(duì)于盜鏈有一定的防護(hù)作用,但是無(wú)法防止盜播。
業(yè)務(wù)方二次授權(quán):用法復(fù)雜,需要自己搭建鑒權(quán)中心,安全系數(shù)高,對(duì)盜鏈有很好的防護(hù)作用,但是無(wú)法防止盜播。
視頻加密
阿里云視頻加密:因阿里云有自己成熟的安全的體系,對(duì)于用戶來(lái)說(shuō)使用比較簡(jiǎn)單,但是也有使用限制,就是必須集成阿里云的播放器。
HLS標(biāo)準(zhǔn)加密:HLS標(biāo)準(zhǔn)加密可適配所有HLS播放場(chǎng)景,但是需要自建密鑰管理和令牌頒發(fā)服務(wù),而且需要使用支持HLS協(xié)議播放的播放器播放。
訪問(wèn)限制
訪問(wèn)限制是在云端配置視頻資源的訪問(wèn)策略,達(dá)到基本的保護(hù)目的,主要手段有:
- Referer訪問(wèn)限制:基于HTTP協(xié)議支持的Referer機(jī)制,通過(guò)Referer跟蹤來(lái)源,可配置拒絕訪問(wèn)的Referer黑名單,或僅允許訪問(wèn)的白名單,參考配置 Referer防盜鏈。可以通過(guò)破解合法的請(qǐng)求抓取Referer參數(shù),請(qǐng)求是通過(guò)偽造Referer達(dá)到獲取資源的目的
- User-Agent訪問(wèn)限制:基于HTTP協(xié)議支持的Usage-Agent請(qǐng)求頭跟蹤來(lái)源,可配置拒絕訪問(wèn)的User-Agent黑名單,或僅允許訪問(wèn)的白名單。破解方法同Referer
- IP訪問(wèn)限制:根據(jù)用戶請(qǐng)求的x-forwarded-for或真實(shí)建立連接的IP,可配置拒絕訪問(wèn)的IP黑名單,或只允許訪問(wèn)的白名單。支持IP列表和掩碼方式,參考配置 IP黑/白名單。
- 訪問(wèn)數(shù)限制:一定周期內(nèi),視頻URL的訪問(wèn)次數(shù)限制、獨(dú)立IP數(shù)限制
IP黑白名單機(jī)制和訪問(wèn)數(shù)限制,無(wú)法實(shí)現(xiàn)內(nèi)容分發(fā)給大量C端用戶,不適合廣泛的內(nèi)容消費(fèi)場(chǎng)景,且后者在閾值范圍內(nèi)也可能被非法訪問(wèn)
以上幾種方式使用比較簡(jiǎn)單但是安全系數(shù)較低,客戶端使用限制多且容易偽造,可以用于一些不重要的網(wǎng)頁(yè)圖片,視頻的防盜鏈
播放中心鑒權(quán)
播放地址若固定不變會(huì)帶來(lái)持久的非法擴(kuò)散傳播,且無(wú)法有效遏制,視頻點(diǎn)播提供的URL鑒權(quán)可通過(guò)生成動(dòng)態(tài)的加密URL(包含權(quán)限驗(yàn)證、過(guò)期時(shí)效等信息)來(lái)區(qū)分合法請(qǐng)求,以達(dá)到保護(hù)視頻資源的目的。
- 開(kāi)啟URL鑒權(quán)后,點(diǎn)播的播放器SDK、獲取播放地址的API/SDK都會(huì)自動(dòng)生成帶時(shí)效的播放URL;如需要自己生成鑒權(quán)的動(dòng)態(tài)URL,則可參考 URL鑒權(quán) 中的
鑒權(quán)方法
。 - 開(kāi)啟URL鑒權(quán)后,所有媒體資源,包括視頻、音頻、封面、截圖等地址都會(huì)進(jìn)行鑒權(quán)。
- 鑒權(quán)Key的設(shè)置是以域名為粒度,且存于服務(wù)端以確保安全;支持主、備Key平滑切換,若更換主Key,可使用備Key生成播放地址,以做為更換的橋接,實(shí)現(xiàn)交替更新。
使用方式參考 URL鑒權(quán)。
業(yè)務(wù)方二次鑒權(quán)
播放中心鑒權(quán)使用了阿里云的默認(rèn)鑒權(quán)中心,但由于沒(méi)有客戶業(yè)務(wù)請(qǐng)求信息的輸入,對(duì)盜鏈等非法請(qǐng)求的判斷還比較單一,使用二次鑒權(quán)會(huì)更加精準(zhǔn)。
- 二次鑒權(quán)是指點(diǎn)播CDN將用戶的請(qǐng)求透?jìng)鞯娇蛻舻蔫b權(quán)中心,由客戶自己判定該請(qǐng)求是否合法,CDN根據(jù)客戶的判斷結(jié)果執(zhí)行相應(yīng)動(dòng)作:允許或拒絕訪問(wèn)。
- 二次鑒權(quán)需要客戶自己開(kāi)發(fā)和部署鑒權(quán)中心,該鑒權(quán)中心的域名如果同時(shí)在 CDN上面加速,可以按照一定規(guī)則緩存客戶的鑒權(quán)結(jié)果,以減輕客戶鑒權(quán)中心的壓力。點(diǎn)播CDN會(huì)默認(rèn)把用戶請(qǐng)求的 headers 和 request_uri 透?jìng)鞯娇蛻糇远x的鑒權(quán)中心,并根據(jù)鑒權(quán)中心返回的結(jié)果執(zhí)行相應(yīng)的動(dòng)作。
如業(yè)務(wù)方可將其用戶的登錄Cookie或UUID等信息隱藏于播放請(qǐng)求中,進(jìn)而透?jìng)鞯阶约旱蔫b權(quán)中心以判定是否為合法用戶。
視頻URL+Token--->CDN或OSS------>鑒權(quán)中心
二次鑒權(quán)使用門(mén)檻較高,需要客戶自己開(kāi)發(fā)和部署鑒權(quán)中心,而且此業(yè)務(wù)需在阿里后臺(tái)另行開(kāi)通*
視頻加密
防盜鏈安全機(jī)制能有效保障用戶的合法訪問(wèn),但對(duì)于付費(fèi)觀看視頻的場(chǎng)景,用戶只需通過(guò)一次付費(fèi)行為拿到視頻合法的防盜鏈播放URL,將視頻下載到本地,進(jìn)而實(shí)現(xiàn)二次分發(fā)。因此,防盜鏈方案對(duì)于視頻版權(quán)保護(hù)是遠(yuǎn)遠(yuǎn)不夠的。視頻文件一旦泄露,會(huì)給付費(fèi)觀看模式造成十分嚴(yán)重的經(jīng)濟(jì)損失。
阿里云視頻加密是對(duì)視頻數(shù)據(jù)加密,即使下載到本地,視頻本身也是被加密的,無(wú)法惡意二次分發(fā),可有效防止視頻泄露和盜鏈問(wèn)題。
阿里云視頻加密
阿里云視頻加密采用私有的加密算法和安全傳輸機(jī)制,提供云端一體的視頻安全方案,核心部分包括 “加密轉(zhuǎn)碼” 和 “解密播放”。核心優(yōu)勢(shì):
- 每個(gè)媒體文件擁有獨(dú)立的加密鑰匙,能有效避免采用單一密鑰時(shí),一個(gè)密鑰的泄露引起大范圍的安全問(wèn)題。
- 提供信封加密機(jī)制“密文Key+明文Key”,僅密文Key入庫(kù),明文Key不落存儲(chǔ),所有過(guò)程只在內(nèi)存中,用完即銷毀。
- 提供安全的播放器內(nèi)核SDK,涵蓋iOS/Android/H5/Flash多平臺(tái),自動(dòng)對(duì)加密內(nèi)容進(jìn)行解密播放。
- 播放器和云端使用私有加密協(xié)議進(jìn)行密文傳輸,不傳輸明文Key,有效防止密鑰被竊取。
- 提供安全下載,緩存到本地的視頻會(huì)再次加密,在確保無(wú)網(wǎng)離線播放前提下,防止視頻被拷貝竊取。
注意:阿里云視頻加密僅支持輸出HLS格式,且只能使用阿里云播放器。
播放流程:用戶請(qǐng)求播放視頻---->業(yè)務(wù)端向阿里云請(qǐng)求播放憑證----->阿里播放器用播放憑證和媒體ID請(qǐng)求播放
使用方式參考 阿里云視頻加密。
HLS標(biāo)準(zhǔn)加密
HLS標(biāo)準(zhǔn)加密支持 HTTP Live Streaming 中規(guī)定的通用加密方案,使用AES-128對(duì)視頻內(nèi)容本身進(jìn)行加密,同時(shí)能支持所有的HLS播放器,用戶可選擇使用自研或開(kāi)源的播放器。相比私有加密方案,靈活性更好,但使用門(mén)檻更高、安全性更低:
- 用戶需搭建密鑰管理服務(wù),提供密鑰生成(用于轉(zhuǎn)碼時(shí)對(duì)視頻內(nèi)容進(jìn)行加密)和解密服務(wù)(用于播放時(shí)獲取解密密鑰),也可基于 阿里云KMS 進(jìn)行封裝。
- 用戶需提供令牌頒發(fā)服務(wù),用于驗(yàn)證播放端的身份,避免解密密鑰被非法獲取,此處為關(guān)鍵點(diǎn),處理不好會(huì)千里之堤潰于蟻穴。
- 播放器和云端傳輸明文Key,容易被竊取。
使用方式參考 HLS標(biāo)準(zhǔn)加密。
商業(yè)DRM
高端的視頻節(jié)目,需要滿足內(nèi)容提供商的安全要求,如好萊塢。阿里視頻云與獲得廣電和好萊塢雙認(rèn)證的ChinaDRM服務(wù)商合作,推出國(guó)內(nèi)首款云端DRM解決方案,即將開(kāi)始商用,敬請(qǐng)期待。如有需求,可聯(lián)系您的商務(wù)經(jīng)理,或提交工單、聯(lián)系售后咨詢。
視頻加密小結(jié)
- 視頻加密方案各有優(yōu)劣,一般來(lái)說(shuō),越是標(biāo)準(zhǔn)、通用,靈活性越高,但安全性越低,選擇哪種方案取決于自己的業(yè)務(wù)場(chǎng)景,有所取舍:
-
安全等級(jí):商業(yè)DRM ≈ 阿里云視頻加密 > HLS標(biāo)準(zhǔn)加密
阿里云視頻加密安全性接近商業(yè)DRM,二者都明顯高于HLS標(biāo)準(zhǔn)加密。
-
易用性:阿里云視頻加密 > HLS標(biāo)準(zhǔn)加密 > 商業(yè)DRM
阿里云視頻加密提供云端一體解決方案,只需簡(jiǎn)單配置并接入阿里云播放器即可無(wú)縫集成加密能力;HLS標(biāo)準(zhǔn)加密需自建密鑰管理和令牌頒發(fā)服務(wù);商業(yè)DRM需購(gòu)買(mǎi)License,集成特定SDK等。
-
通用性:HLS標(biāo)準(zhǔn)加密 > 商業(yè)DRM > 阿里云視頻加密
HLS標(biāo)準(zhǔn)加密可適配所有HLS播放場(chǎng)景;商業(yè)DRM只支持授權(quán)平臺(tái)(如Chrome/Safari/IE/Edge瀏覽器,Android/iOS等);阿里云視頻加密僅支持阿里云播放器(Android/iOS/H5/Flash)。
-
使用費(fèi)用:阿里云視頻加密 = HLS標(biāo)準(zhǔn)加密 << 商業(yè)DRM
阿里云視頻加密和HLS標(biāo)準(zhǔn)加密都可免費(fèi)使用,商業(yè)DRM需要支付額外的License費(fèi)用。
-
安全下載(緩存)
對(duì)于視頻類應(yīng)用,特別是在移動(dòng)端(Android/iOS),一般會(huì)有緩存、下載到本地的需求,并同時(shí)希望能進(jìn)行安全保護(hù)防止被拷貝后惡意播放或傳播。阿里云播放器推出的安全下載功能可以有效保護(hù)下載到本地的視頻內(nèi)容。
安全下載
是指將視頻文件通過(guò)私鑰進(jìn)行二次加密,下載后在播放器SDK內(nèi)部完成視頻解密,保障離線視頻僅能通過(guò)唯一應(yīng)用(安全下載中設(shè)定的bundleID或keystore)進(jìn)行安全播放的一種下載方式。主要優(yōu)點(diǎn):
- 下載后視頻再次播放不需要聯(lián)網(wǎng),可離線解密、播放,且只能由該應(yīng)用播放。
- 私鑰文件加密后存儲(chǔ),有效防止被竊取。
- 每個(gè)視頻文件在每個(gè)應(yīng)用上都有獨(dú)立的私鑰,即便單個(gè)泄露也不會(huì)影響其它視頻。
使用時(shí)請(qǐng)先在點(diǎn)播控制臺(tái)開(kāi)啟 安全下載,暫時(shí)只支持 Android端播放器,和 iOS端播放器。