本發(fā)明涉及數(shù)字版權(quán)保護(hù)技術(shù)領(lǐng)域,尤其涉及一種在線流媒體播放方法、流媒體下載和離線播放方法。
背景技術(shù):
隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,移動(dòng)流媒體的應(yīng)用(Android和IOS平臺(tái)的APP)越來(lái)越多,對(duì)流媒體內(nèi)容版權(quán)保護(hù)方面,目前行業(yè)內(nèi)有常見(jiàn)的技術(shù)方案包括:
1.采用在線鑒權(quán),本地加密的方式
播放器在請(qǐng)求在線流媒體時(shí),服務(wù)端對(duì)請(qǐng)求進(jìn)行鑒權(quán),確定其合法性。鑒權(quán)不通過(guò)則不支持下載到本地(手機(jī)端),鑒權(quán)通過(guò)則允許下載到本地(手機(jī)端)?;诒镜赜布?duì)本地的流媒體內(nèi)容進(jìn)行加密。本地播放前,先臨時(shí)解密到沙箱,然后在播放。
這種方式的缺點(diǎn)在于:網(wǎng)絡(luò)傳輸中數(shù)據(jù)并沒(méi)有版權(quán)保護(hù),容易被非法從網(wǎng)絡(luò)端截取。已經(jīng)下載到本地的數(shù)據(jù),其版權(quán)保護(hù)也存在巨大漏洞,本地?cái)?shù)據(jù)的版權(quán)保護(hù)依賴操作系統(tǒng)對(duì)沙箱的保護(hù),這使得播放時(shí),容易通過(guò)漏洞進(jìn)行非法獲取。
2.開(kāi)發(fā)播放器的方式
針對(duì)上述方案里網(wǎng)絡(luò)傳輸和本地播放中的漏洞,開(kāi)發(fā)播放器的方式是將網(wǎng)絡(luò)傳輸?shù)牧髅襟w內(nèi)容經(jīng)過(guò)服務(wù)端加密處理,通過(guò)開(kāi)發(fā)播放器對(duì)接收到的內(nèi)容進(jìn)行解密。由于沒(méi)有相應(yīng)的標(biāo)準(zhǔn)協(xié)議的支持,加解密沒(méi)有協(xié)商機(jī)制,更多是兩邊共同約定的形式。這種方式無(wú)需先解密到沙箱,而是由播放器直接負(fù)責(zé)解密;然而自主開(kāi)發(fā)播放器,容易受手機(jī)操作系統(tǒng)版本、手機(jī)硬件的較大影響,想要實(shí)現(xiàn)比較好的兼容性很困難。
3.HTTP LIVE STREAM(HLS)方案
采用蘋果的HTTP LIVE STREAM方案,流媒體需要根據(jù)蘋果的方案進(jìn)行切片處理,不適用現(xiàn)有系統(tǒng)的改造。另外HLS對(duì)下載到本地內(nèi)容的保護(hù)有不足,其鑒權(quán)依賴聯(lián)網(wǎng)鑒權(quán),否則會(huì)存在漏洞。此外,Android較早版本的系統(tǒng),其播放器對(duì)HLS不支持或者支持不好,使得HLS方案的適應(yīng)范圍不廣。
綜上所述,上述方案存在明顯缺失,且沒(méi)有通用性的較完美的行業(yè)標(biāo)準(zhǔn)支持。因此,有必要提供一種實(shí)現(xiàn)DRM(Digital Rights Management,數(shù)字版權(quán)管理)的移動(dòng)流媒體播放及下載方法,以解決現(xiàn)有技術(shù)不能得到不同系統(tǒng)(Android系統(tǒng)和IOS系統(tǒng))的支持、不能同時(shí)實(shí)現(xiàn)在線和下載后保護(hù)的問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
鑒于上述的分析,本發(fā)明旨在提供一種在線流媒體播放方法、流媒體下載和離線播放方法,用以解決現(xiàn)有技術(shù)不能實(shí)現(xiàn)跨平臺(tái)、不能同時(shí)實(shí)現(xiàn)在線和下載后保護(hù)的問(wèn)題。
本發(fā)明的目的主要是通過(guò)以下技術(shù)方案實(shí)現(xiàn)的:
提供了一種實(shí)現(xiàn)DRM的在線流媒體播放方法,包括步驟:
步驟S1.客戶端的移動(dòng)應(yīng)用向Proxy代理端發(fā)送播放請(qǐng)求;
步驟S2.Proxy代理端接收并解析播放請(qǐng)求,將播放請(qǐng)求與目標(biāo)流媒體服務(wù)器地址進(jìn)行內(nèi)容重新組合后,發(fā)送到目標(biāo)流媒體服務(wù)器;
步驟S3.流媒體服務(wù)器接收到重新組合后的播放請(qǐng)求,對(duì)客戶端請(qǐng)求的數(shù)據(jù)進(jìn)行加密后,發(fā)送給Proxy代理端;
步驟S4.Proxy代理端接收加密數(shù)據(jù),對(duì)加密數(shù)據(jù)進(jìn)行解密,并判斷解密是否成功,在解密成功的情況下,將用戶請(qǐng)求的數(shù)據(jù)發(fā)送給移動(dòng)應(yīng)用,以提供給播放器進(jìn)行播放。
其中,所述客戶端是IOS或者Android移動(dòng)設(shè)備。
所述移動(dòng)應(yīng)用向Proxy代理端發(fā)送的播放請(qǐng)求包括本地URL。
所述內(nèi)容重新組合,包括:從移動(dòng)應(yīng)用獲取流媒體服務(wù)器IP地址、文件路徑和請(qǐng)求文件的數(shù)據(jù)范圍,將播放請(qǐng)求中的本地地址替換為流媒體服務(wù)器IP地址,再重新組裝成HTTP播放請(qǐng)求。
步驟S3中,流媒體服務(wù)器對(duì)數(shù)據(jù)進(jìn)行加密,包括:采用預(yù)先制定好的加解密規(guī)則在程序流程中動(dòng)態(tài)生成密鑰。
步驟S4中,在解密失敗的情況下,Proxy代理端返回解碼失敗不能播放的信息給移動(dòng)應(yīng)用。
本發(fā)明還提供了一種在線流媒體通過(guò)內(nèi)容分發(fā)網(wǎng)絡(luò)請(qǐng)求播放的方法,包括以下步驟:
步驟S1.客戶端的移動(dòng)應(yīng)用向Proxy代理端發(fā)送播放請(qǐng)求;
步驟S2.Proxy代理端接收并解析播放請(qǐng)求,將播放請(qǐng)求進(jìn)行內(nèi)容重新組合,并發(fā)送到目標(biāo)CDN服務(wù)器;
步驟S3.CDN服務(wù)器接收到播放請(qǐng)求之后,檢測(cè)所請(qǐng)求的數(shù)據(jù)是否存在;
如果存在,則直接發(fā)送包含所請(qǐng)求的數(shù)據(jù)的加密數(shù)據(jù)到Proxy代理端;
如果數(shù)據(jù)不存在,則CDN服務(wù)器返回響應(yīng)給Proxy代理端,Proxy代理端解析響應(yīng),進(jìn)而向數(shù)據(jù)源站發(fā)送數(shù)據(jù)請(qǐng)求,數(shù)據(jù)源站將所請(qǐng)求的數(shù)據(jù)發(fā)送給CDN服務(wù)器,CDN服務(wù)器對(duì)數(shù)據(jù)加密,并發(fā)送給Proxy代理端;
步驟S4.Proxy代理端接收并解密加密數(shù)據(jù),判斷解密是否成功;在解密成功的情況下,將用戶請(qǐng)求的數(shù)據(jù)發(fā)送給移動(dòng)應(yīng)用。
本發(fā)明還提供了一種實(shí)現(xiàn)DRM的流媒體下載和離線播放方法,包括數(shù)據(jù)下載和離線播放兩個(gè)過(guò)程。
數(shù)據(jù)下載過(guò)程包括以下步驟:
客戶端的移動(dòng)應(yīng)用向媒體服務(wù)器端發(fā)送下載請(qǐng)求;
媒體服務(wù)器端接收請(qǐng)求后,加密所請(qǐng)求下載的數(shù)據(jù),并將加密數(shù)據(jù)發(fā)送給客戶端;
Proxy代理端對(duì)收到的加密數(shù)據(jù)進(jìn)行解密,然后通過(guò)客戶端移動(dòng)應(yīng)用中與媒體服務(wù)器端的加解密規(guī)則不同的加解密規(guī)則生成一個(gè)私鑰,利用私鑰對(duì)解密后的數(shù)據(jù)再次進(jìn)行加密,并將重新加密后的文件保存到本地中,完成數(shù)據(jù)下載;
數(shù)據(jù)的離線播放過(guò)程包括以下步驟:
客戶端的移動(dòng)應(yīng)用向Proxy代理端發(fā)送數(shù)據(jù)獲取和播放請(qǐng)求;
Proxy代理端讀取保存在本地設(shè)備中的加密數(shù)據(jù);
Proxy代理端根據(jù)客戶端提供的私鑰,將加密數(shù)據(jù)解密,并發(fā)送到移動(dòng)應(yīng)用進(jìn)行離線播放。
優(yōu)選的,將重新加密后的文件保存到本地設(shè)備的同時(shí),Proxy代理端還可以將私鑰保存到本地。
本發(fā)明有益效果如下:
本發(fā)明可以實(shí)現(xiàn)跨平臺(tái),能夠完美的在Android系統(tǒng)和IOS系統(tǒng)下運(yùn)行;采用個(gè)性化加密方案定制,同時(shí)將DRM功能模塊和播放器捆綁,能保證加密的流媒體數(shù)據(jù)必須通過(guò)使用帶有DRM功能模塊的配套播放器才能播放,同時(shí)不會(huì)受個(gè)別運(yùn)營(yíng)商的限制;此外,能夠?qū)崿F(xiàn)在線保護(hù)和下載后保護(hù)的問(wèn)題。
本發(fā)明的其他特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書中闡述,并且,部分的從說(shuō)明書中變得顯而易見(jiàn),或者通過(guò)實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過(guò)在所寫的說(shuō)明書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。
附圖說(shuō)明
附圖僅用于示出具體實(shí)施例的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制,在整個(gè)附圖中,相同的參考符號(hào)表示相同的部件。
圖1為一種在線流媒體播放方法的示意圖;
圖2為一種在線流媒體通過(guò)CDN請(qǐng)求播放方法的流程圖;
圖3為一種流媒體的下載和離線播放方法的流程圖;
圖4為一種流媒體的下載和離線播放方法的流程圖。
具體實(shí)施方式
下面結(jié)合附圖來(lái)具體描述本發(fā)明的優(yōu)選實(shí)施例,其中,附圖構(gòu)成本申請(qǐng)一部分,并與本發(fā)明的實(shí)施例一起用于闡釋本發(fā)明的原理。
根據(jù)本發(fā)明的具體實(shí)施例一,公開(kāi)了一種實(shí)現(xiàn)DRM的在線流媒體播放方法,如圖1所示,包括以下步驟:
步驟S1.客戶端的移動(dòng)應(yīng)用向內(nèi)嵌的Proxy代理端發(fā)送播放請(qǐng)求。
所述客戶端是IOS或者Android移動(dòng)設(shè)備,客戶端的移動(dòng)應(yīng)用中內(nèi)嵌Proxy代理端。
所述播放請(qǐng)求的內(nèi)容包括URL。
具體地,由移動(dòng)應(yīng)用開(kāi)啟線程打開(kāi)Proxy代理端的代理程序,由代理程序開(kāi)始監(jiān)聽(tīng)移動(dòng)應(yīng)用的內(nèi)部請(qǐng)求。
步驟S2.Proxy代理端接收并解析播放請(qǐng)求,將播放請(qǐng)求與目標(biāo)流媒體服務(wù)器地址進(jìn)行內(nèi)容重新組合,并將重新組合的播放請(qǐng)求發(fā)送到目標(biāo)流媒體服務(wù)器。
具體地,當(dāng)監(jiān)聽(tīng)到移動(dòng)應(yīng)用的播放請(qǐng)求后,Proxy代理端將播放請(qǐng)求進(jìn)行重新組合,并發(fā)送到指定的流媒體服務(wù)器。
所述播放請(qǐng)求的內(nèi)容重新組合,包括:Proxy代理端從移動(dòng)應(yīng)用獲取流媒體服務(wù)器IP地址、文件路徑和請(qǐng)求文件的數(shù)據(jù)范圍(以視頻文件為例可以請(qǐng)求1分鐘到8分鐘的數(shù)據(jù)片段)等,將播放請(qǐng)求中的本地地址替換為流媒體服務(wù)器IP地址,再結(jié)合文件路徑和請(qǐng)求文件的數(shù)據(jù)范圍等信息,重新組裝成HTTP播放請(qǐng)求。
具體說(shuō)明如下:假設(shè)移動(dòng)應(yīng)用發(fā)送的播放請(qǐng)求為本地127.0.0.1:11211的URL地址,11211作為代理程序的監(jiān)聽(tīng)端口,Proxy代理端接收到移動(dòng)應(yīng)用請(qǐng)求后,重新將127.0.0.1的本地地址替換為遠(yuǎn)端服務(wù)器的IP地址,再通過(guò)重新組裝HTTP請(qǐng)求向遠(yuǎn)端服務(wù)器發(fā)送出去。遠(yuǎn)端服務(wù)器接收到之后將會(huì)將文件大小內(nèi)容等信息以服務(wù)器響應(yīng)的形式返回。
步驟S3.流媒體服務(wù)器接收到播放請(qǐng)求,根據(jù)約定好的密鑰生成規(guī)則,對(duì)客戶端請(qǐng)求的數(shù)據(jù)進(jìn)行加密,將加密好的數(shù)據(jù)發(fā)送給Proxy代理端。這個(gè)過(guò)程中,由預(yù)先制定好的加解密規(guī)則在程序流程中動(dòng)態(tài)生成密鑰,不需要將密鑰打包成許可證在線鑒權(quán)。將加密好的數(shù)據(jù)發(fā)送給Proxy代理端可以采用服務(wù)器響應(yīng)的形式進(jìn)行。
步驟S4.Proxy代理端接收加密數(shù)據(jù),根據(jù)約定好的加解密規(guī)則對(duì)加密數(shù)據(jù)進(jìn)行解密,并判斷解密是否成功;在解密成功的情況下,將用戶請(qǐng)求的數(shù)據(jù)發(fā)送給移動(dòng)應(yīng)用,以提供給播放器正常播放;在解密失敗的情況下,則Proxy代理端返回解碼失敗不能播放的信息。
本實(shí)施例所述方法不需要將密鑰單獨(dú)存儲(chǔ),只需要根據(jù)服務(wù)器和內(nèi)嵌有DRM模塊的移動(dòng)設(shè)備約定好的加密規(guī)則動(dòng)態(tài)生成密鑰進(jìn)行加密,從而達(dá)到流媒體在線數(shù)據(jù)保護(hù)的目的。
本發(fā)明的具體實(shí)施例二,公開(kāi)了一種實(shí)現(xiàn)DRM的在線流媒體通過(guò)CDN(Content Delivery Network,內(nèi)容分發(fā)網(wǎng)絡(luò))請(qǐng)求播放的方法,如圖2所示,包括以下步驟:
步驟S1.客戶端的移動(dòng)應(yīng)用向內(nèi)嵌的Proxy代理端發(fā)送播放請(qǐng)求。其中,客戶端是IOS或者Android移動(dòng)設(shè)備,播放請(qǐng)求包括URL。
步驟S2.Proxy代理端接收并解析播放請(qǐng)求,將播放請(qǐng)求進(jìn)行內(nèi)容重新組合,并發(fā)送到目標(biāo)CDN服務(wù)器。所述CDN服務(wù)器是指CDN專用DNS服務(wù)器。
其中,
所述播放請(qǐng)求的內(nèi)容重新組合,包括:Proxy代理端從移動(dòng)應(yīng)用獲取CDN服務(wù)器IP地址、文件路徑和請(qǐng)求文件的數(shù)據(jù)范圍(以視頻文件為例可以請(qǐng)求1分鐘到8分鐘的數(shù)據(jù)片段)等,將播放請(qǐng)求中的本地地址替換為CDN服務(wù)器IP地址,再結(jié)合文件路徑和請(qǐng)求文件的數(shù)據(jù)范圍等信息,重新組裝成播放請(qǐng)求。重新組合的播放請(qǐng)求是一種HTTP請(qǐng)求,將該請(qǐng)求向目標(biāo)CDN服務(wù)器發(fā)送。
步驟S3.服務(wù)器接收到播放請(qǐng)求之后,檢測(cè)客戶端所請(qǐng)求的數(shù)據(jù)是否存在;如果存在,則直接發(fā)送200響應(yīng)值的加密數(shù)據(jù)(包括所請(qǐng)求的數(shù)據(jù))到Proxy代理端;如果客戶端所請(qǐng)求的數(shù)據(jù)不存在,則CDN服務(wù)器返回302響應(yīng)給Proxy代理端,Proxy代理端解析響應(yīng),進(jìn)而向數(shù)據(jù)源站發(fā)送數(shù)據(jù)請(qǐng)求,數(shù)據(jù)源站將所請(qǐng)求的數(shù)據(jù)發(fā)送給CDN服務(wù)器,CDN服務(wù)器對(duì)數(shù)據(jù)加密,并發(fā)送給Proxy代理端。
進(jìn)一步的,CDN服務(wù)器對(duì)從數(shù)據(jù)源站獲取的數(shù)據(jù)進(jìn)行緩存,以供下次客戶端發(fā)起相同請(qǐng)求的時(shí)候,直接從CDN服務(wù)器獲取文件。
步驟S4.Proxy代理端接收加密數(shù)據(jù),對(duì)加密數(shù)據(jù)進(jìn)行解密,并判斷解密是否成功;在解密成功的情況下,將用戶請(qǐng)求的數(shù)據(jù)發(fā)送給移動(dòng)應(yīng)用;在解密失敗的情況下,則Proxy代理端向移動(dòng)應(yīng)用返回解碼失敗不能播放的信息給移動(dòng)應(yīng)用。
具體地,CDN的DNS服務(wù)器將CDN的全局負(fù)載均衡設(shè)備IP地址返回Proxy代理端。
Proxy代理端向CDN的全局負(fù)載均衡設(shè)備發(fā)起內(nèi)容URL訪問(wèn)請(qǐng)求。
CDN全局負(fù)載均衡設(shè)備根據(jù)客戶端IP地址,以及內(nèi)容URL,選擇客戶端所屬區(qū)域的區(qū)域負(fù)載均衡設(shè)備,通知Proxy代理端向這臺(tái)區(qū)域負(fù)載均衡設(shè)備發(fā)起請(qǐng)求。
區(qū)域負(fù)載均衡設(shè)備為Proxy代理端選擇緩存服務(wù)器提供服務(wù),選擇的依據(jù)包括:根據(jù)客戶端IP地址,判斷哪一臺(tái)緩存服務(wù)器距客戶端最近;根據(jù)客戶端所請(qǐng)求的URL中攜帶的內(nèi)容名稱,判斷哪一臺(tái)緩存服務(wù)器上有客戶端所需內(nèi)容。
如果緩存服務(wù)器上并沒(méi)有客戶端想要的內(nèi)容或已過(guò)期,則全局負(fù)載均衡設(shè)備返回302響應(yīng)給Proxy代理端,同時(shí)這臺(tái)緩存服務(wù)器就要向它的上一級(jí)緩存服務(wù)器請(qǐng)求內(nèi)容,直至追溯到源站請(qǐng)求最新的文件進(jìn)行緩存,當(dāng)下次客戶端發(fā)起相同請(qǐng)求的時(shí)候直接從緩存服務(wù)器獲取最新的緩存文件。
如果緩存服務(wù)器上有客戶端想要的內(nèi)容,則區(qū)域負(fù)載均衡設(shè)備或全局負(fù)載均衡設(shè)備會(huì)查詢各個(gè)緩存服務(wù)器當(dāng)前的負(fù)載情況,判斷哪一臺(tái)緩存服務(wù)器尚有服務(wù)能力。基于以上這些條件的綜合分析之后,全局負(fù)載均衡設(shè)備把一臺(tái)緩存服務(wù)器的IP地址返回給Proxy代理端。
Proxy代理端向緩存服務(wù)器發(fā)起請(qǐng)求,緩存服務(wù)器響應(yīng)請(qǐng)求,將200響應(yīng)值的加密數(shù)據(jù)傳送到Proxy代理端。
Proxy代理端收到響應(yīng)后會(huì)做如下處理:
a)如果接收到的是200響應(yīng)值的加密數(shù)據(jù)。Proxy代理端根據(jù)約定好的加解密規(guī)則對(duì)數(shù)據(jù)進(jìn)行解密,解密成功則可以提供給播放器正常播放,解密失敗則會(huì)造成播放器解碼失敗不能播放。
b)如果接收到的是302響應(yīng),Proxy代理端會(huì)在內(nèi)部解析該響應(yīng),即將302響應(yīng)的Header中的Location段的HTTP URL取出來(lái),自動(dòng)向源站發(fā)起數(shù)據(jù)請(qǐng)求,進(jìn)而不需要等待CDN緩存服務(wù)器緩存之后再獲取數(shù)據(jù),提高了獲取數(shù)據(jù)的速度,提升用戶體驗(yàn),當(dāng)下一次請(qǐng)求該數(shù)據(jù)時(shí)即可從CDN緩存服務(wù)器快速獲取。
根據(jù)本發(fā)明的具體實(shí)施例三,公開(kāi)了一種流媒體的下載和離線播放方法,
數(shù)據(jù)的下載過(guò)程如圖3所示,包括以下步驟:
客戶端的移動(dòng)應(yīng)用向媒體服務(wù)器端發(fā)送下載請(qǐng)求;
所述客戶端是IOS或者Android移動(dòng)設(shè)備,客戶端的移動(dòng)應(yīng)用中內(nèi)嵌Proxy代理端。
媒體服務(wù)器端接收請(qǐng)求后利用預(yù)先設(shè)定好的加解密規(guī)則加密所請(qǐng)求下載的數(shù)據(jù),并將加密數(shù)據(jù)發(fā)送給客戶端;
客戶端移動(dòng)應(yīng)用的Proxy代理端利用與服務(wù)器約定好的加解密規(guī)則,對(duì)收到的加密數(shù)據(jù)進(jìn)行解密;然后,客戶端的移動(dòng)應(yīng)用通過(guò)自身的加解密規(guī)則(移動(dòng)應(yīng)用自身的加解密規(guī)則與媒體服務(wù)器端的加解密規(guī)則不同)生成一個(gè)私鑰,Proxy代理端利用私鑰對(duì)解密后的數(shù)據(jù)再次進(jìn)行加密,并將重新加密后的文件保存到本地設(shè)備中,完成數(shù)據(jù)下載過(guò)程。
本實(shí)施例通過(guò)在客戶端進(jìn)行再次加密,可以保證保存在本地設(shè)備中的數(shù)據(jù)即使被非法復(fù)制,也不能被使用。
數(shù)據(jù)的離線播放過(guò)程如圖4所示,包括以下步驟:
客戶端的移動(dòng)應(yīng)用向Proxy代理端發(fā)送數(shù)據(jù)獲取和播放請(qǐng)求;
所述客戶端是IOS或者Android移動(dòng)設(shè)備,客戶端的移動(dòng)應(yīng)用中內(nèi)嵌Proxy代理端。Proxy代理端讀取保存在本地設(shè)備中的加密數(shù)據(jù);
Proxy代理端根據(jù)客戶端的移動(dòng)應(yīng)用提供的私鑰,將保存在本地設(shè)備中的加密數(shù)據(jù)解密,并發(fā)送到移動(dòng)應(yīng)用進(jìn)行離線播放。
上述實(shí)施例1-3中,在線播放使用和服務(wù)器約定好的加解密規(guī)則解密,離線播放使用本地產(chǎn)生的密鑰解密。
根據(jù)本發(fā)明的具體實(shí)施例四,公開(kāi)了另一種流媒體的下載和離線播放方法,具體包括步驟:
客戶端的移動(dòng)應(yīng)用發(fā)送下載流媒體文件請(qǐng)求;
流媒體服務(wù)器接收請(qǐng)求后,按照約定的加密規(guī)則加密數(shù)據(jù),并發(fā)送給移動(dòng)應(yīng)用;
移動(dòng)應(yīng)用接收到加密數(shù)據(jù)后,通過(guò)Proxy代理端進(jìn)行解密;
Proxy代理端對(duì)下載的數(shù)據(jù)進(jìn)行解密之后,移動(dòng)應(yīng)用需要調(diào)用Proxy代理端自己提供的加密方法,并且使用自己產(chǎn)生的密鑰對(duì)數(shù)據(jù)重新進(jìn)行加密,同時(shí)這個(gè)密鑰也會(huì)保存到本地;
當(dāng)進(jìn)行離線播放的時(shí)候,移動(dòng)應(yīng)用會(huì)使用Proxy代理端的解密密鑰將本地文件解密處理后再播放。
綜上所述,本發(fā)明實(shí)施例提供了一種流媒體的在線和離線播放方法,可以跨平臺(tái)的基于C語(yǔ)言開(kāi)發(fā),能夠完美的在Android系統(tǒng)和IOS系統(tǒng)下運(yùn)行;采用個(gè)性化加密方案定制,同時(shí)DRM功能模塊和播放器捆綁,能保證加密的流媒體數(shù)據(jù)必須通過(guò)使用帶有DRM功能模塊的配套播放器才能播放,同時(shí)不會(huì)受個(gè)別運(yùn)營(yíng)商的限制。
本領(lǐng)域技術(shù)人員可以理解,實(shí)現(xiàn)上述實(shí)施例方法的全部或部分流程,可以通過(guò)計(jì)算機(jī)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可存儲(chǔ)于計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中。其中,所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)為磁盤、光盤、只讀存儲(chǔ)記憶體或隨機(jī)存儲(chǔ)記憶體等。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。