【揭秘】网易云视频点播加解密系统架构
畢偉
寧波大學碩士,2015年3月加入網易,負責網易云視頻服務Android,ios,windows端播放器和音視頻技術的相關開發,興趣領域在視頻編解碼和圖像處理。
隨著經濟及互聯網的快速發展,版權越來越受到大家的重視。而對于視頻來說,可以通過注入水印的方式來進行版權保護,但是并不能完全遏制其傳播,為了更好的保護視頻擁有者的權益,我們采用對視頻內容進行加密的方式,這樣即使視頻被人傳播盜用,也無法進行播放。
●●●
視頻加解密系統需滿足的條件
網易云為了保護用戶的點播視頻資源,開發了一套完整的加解密系統。對于一套加解密系統來說,需要滿足以下幾個條件
1、高安全性,保證加密后的視頻不被破解
2、低復雜性,加解密過程的復雜性要低,保證高效率
3、可操作性強,用戶易操作
4、容錯性強,算法魯棒性要強
5、壓縮比高,加密后不能增加視頻文件的大小
6、算法可升級,通過升級加解密算法進一步提高魯棒性
●●●?
視頻加密系統
針對上述要求,網易云自研了一套加密系統,用戶上傳視頻文件到網易云的分布式存儲平臺,執行加密任務。首先,企業應用服務器會發送加密任務到網易云視頻管理服務平臺,對于不符合格式的視頻,網易云在加密之前會對待加密的視頻進行轉碼;其次,網易云視頻管理服務平臺收到加密任務后,會從密鑰管理服務器獲取加密密鑰,然后對視頻進行加密;最后,將加密完成的視頻存儲到網易云的分布式存儲平臺上,并返回任務執行結果給用戶。
●●●?
視頻解密系統
要播放加密視頻,需要先對視頻進行解密,才能進行播放,網易云提供的播放器SDK能夠支持加密視頻的解密播放。為了保證解密過程的安全性,密鑰并不是以明文的方式進行獲取,而是由播放器SDK從網易云視頻點播服務器獲取,為了防止他人通過抓包等網絡攔截手段竊取密鑰,網易云對密鑰也進行了加密,這樣進一步保證了安全性。
(1) 用戶要播放加密視頻,首先需要從企業應用服務器獲取加密視頻的播放URL;
(2) 用戶根據appkey和secretkey從網易云視頻管理服務器獲取token,用于獲取密鑰;
(3)? 用戶將播放URL和token傳給播放器;
(4) 播放器SDK根據token從網易云視頻管理服務器獲取密鑰,網易云視頻管理服務器從密鑰管理服務器獲取密鑰并返回給播放器SDK,然后播放器SDK對密鑰進行解密,得到原始密鑰;
(5) 為了保證解密過程正確無誤,播放器SDK還設計了一套密鑰校驗機制,對密鑰的正確性進行校驗,校驗正確的才能進行解密播放;
(6) 對于校驗通過的密鑰,SDK會從CDN進行拉流解碼播放;
為了保證解密的過程不對播放造成延遲,網易云采用的是流式加密的方式,即可以邊解密邊播放,不需要下載整個文件再進行解密播放。
——【特別推薦】——
【內有網易黑豬肉券福利】網易MCTalk首秀
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的【揭秘】网易云视频点播加解密系统架构的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 【内有网易黑猪肉券福利】网易MCTalk
 - 下一篇: 【最后一天倒计时】你离¥399网易黑猪肉