流媒體解密方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種流媒體解密方法及裝置。
【背景技術(shù)】
[0002]在互聯(lián)網(wǎng)技術(shù)越來越普及的今天,數(shù)字化信息已成為主流傳播載體,但數(shù)字化信息傳播的特點(diǎn),不利于版權(quán)人版權(quán)的保護(hù)。所以,必須要有一種技術(shù),可以將數(shù)字化的文字、音視頻文件進(jìn)行加密處理,針對符合條件的用戶,可以得到一個(gè)解密該文件的許可證。此種技術(shù)以目前微軟提供的DRM技術(shù)為主流技術(shù),但針對已加密媒體文件的解密方法有多種,各廠商有不同的方式,主要通過瀏覽器DRM插件狀態(tài)存在。播放器請求流媒體數(shù)據(jù)后,解析頭信息發(fā)現(xiàn)有加密,此時(shí),瀏覽器會調(diào)用DRM插件發(fā)送請求以獲取許可證,得到許可證后,DRM插件會對播放器后續(xù)下載的流媒體數(shù)據(jù)進(jìn)行相應(yīng)的解密處理,解密完成后,把解密后的流媒體數(shù)據(jù)發(fā)送給播放器進(jìn)行播放。由于流媒體數(shù)據(jù)從獲取到解密需要在瀏覽器、播放器以及DRM插件中流轉(zhuǎn),導(dǎo)致現(xiàn)有技術(shù)中解密流媒體的效率較低。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的主要目的在于提供一種流媒體解密方法及裝置,旨在提高解密流媒體的效率。
[0004]為實(shí)現(xiàn)上述目的,本發(fā)明將流媒體解密裝置內(nèi)嵌于瀏覽器運(yùn)行,所述流媒體解密方法包括以下步驟:
[0005]所述流媒體解密裝置在所述瀏覽器接收到播放指令時(shí),獲取相應(yīng)的流媒體數(shù)據(jù);
[0006]所述流媒體解密裝置分析所述流媒體數(shù)據(jù)是否被加密;
[0007]所述流媒體解密裝置在所述流媒體數(shù)據(jù)被加密時(shí),獲取相應(yīng)的許可證,以及內(nèi)置的加解密算法;
[0008]所述流媒體解密裝置基于獲取的所述許可證以及所述加解密算法,解密所述流媒體數(shù)據(jù),以供瀏覽器播放解密后的流媒體數(shù)據(jù)。
[0009]優(yōu)選地,所述流媒體解密裝置基于獲取的所述許可證和所述加解密算法,解密所述流媒體數(shù)據(jù),以供瀏覽器播放解密后的流媒體數(shù)據(jù)的步驟之后,所述流媒體解密方法,還包括:
[0010]所述流媒體解密裝置將解密后的流媒體數(shù)據(jù)發(fā)送至播放器進(jìn)行解碼處理,并通過瀏覽器加載呈現(xiàn)解碼后的流媒體數(shù)據(jù)。
[0011]優(yōu)選地,所述流媒體解密裝置基于獲取的所述許可證和所述加解密算法,解密所述流媒體數(shù)據(jù),以供瀏覽器播放解密后的流媒體數(shù)據(jù)的步驟之前,所述流媒體解密方法,還包括:
[0012]所述流媒體解密裝置分析獲取的所述許可證是否完整;
[0013]在所述許可證完整時(shí),執(zhí)行所述流媒體解密裝置基于獲取的所述許可證和所述加解密算法,解密所述流媒體數(shù)據(jù),以供瀏覽器播放解密后的流媒體數(shù)據(jù)的步驟。
[0014]優(yōu)選地,所述流媒體解密裝置分析獲取的所述許可證是否完整的步驟之后,所述流媒體解密方法,還包括:
[0015]在所述許可證不完整時(shí),所述流媒體解密裝置重新獲取相應(yīng)的許可證,直至獲取到完整的許可證。
[0016]優(yōu)選地,所述流媒體解密裝置在所述瀏覽器接收到播放指令時(shí),獲取相應(yīng)的流媒體數(shù)據(jù)的步驟之前,所述流媒體解密方法,還包括:
[0017]所述流媒體解密裝置在瀏覽器劃分?jǐn)?shù)據(jù)緩存區(qū),所述數(shù)據(jù)緩存區(qū)用于儲存流媒體數(shù)據(jù)、許可證以及解密后的流媒體數(shù)據(jù)。
[0018]此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提供一種流媒體解密裝置,所述流媒體解密裝置內(nèi)嵌于瀏覽器運(yùn)行,包括:
[0019]流媒體獲取模塊,用于在所述瀏覽器接收到播放指令時(shí),獲取相應(yīng)的流媒體數(shù)據(jù);
[0020]第一分析模塊,用于分析所述流媒體數(shù)據(jù)是否被加密;
[0021]加密信息獲取模塊,用于在所述流媒體數(shù)據(jù)被加密時(shí),獲取相應(yīng)的許可證,以及內(nèi)置的加解密算法;
[0022]解密模塊,用于基于獲取的所述許可證以及所述加解密算法,解密所述流媒體數(shù)據(jù),以供瀏覽器播放解密后的流媒體數(shù)據(jù)。
[0023]優(yōu)選地,所述流媒體解密裝置還包括播放模塊,用于將解密后的流媒體數(shù)據(jù)發(fā)送至播放器進(jìn)行解碼處理,并通過瀏覽器加載呈現(xiàn)解碼后的流媒體數(shù)據(jù)。
[0024]優(yōu)選地,所述流媒體解密裝置,還包括第二分析模塊,用于分析獲取的所述許可證是否完整;
[0025]所述解密模塊還用于在所述許可證完整時(shí),基于獲取的所述許可證以及所述加解密算法,解密所述流媒體數(shù)據(jù),以供瀏覽器播放解密后的流媒體數(shù)據(jù)。
[0026]優(yōu)選地,所述加密信息獲取模塊,還用于在所述許可證不完整時(shí),重新獲取相應(yīng)的許可證,直至獲取到完整的許可證。
[0027]優(yōu)選地,所述流媒體解密裝置,還包括緩存區(qū)劃分模塊,用于在瀏覽器劃分?jǐn)?shù)據(jù)緩存區(qū),所述數(shù)據(jù)緩存區(qū)用于儲存流媒體數(shù)據(jù)、許可證以及解密后的流媒體數(shù)據(jù)。
[0028]本發(fā)明通過將流媒體解密裝置內(nèi)嵌于瀏覽器,所述流媒體解密裝置在所述瀏覽器接收到播放指令時(shí),獲取相應(yīng)的流媒體數(shù)據(jù);分析所述流媒體數(shù)據(jù)是否被加密;在所述流媒體數(shù)據(jù)被加密時(shí),獲取相應(yīng)的許可證,以及內(nèi)置的加解密算法;基于獲取的所述許可證以及所述加解密算法,解密所述流媒體數(shù)據(jù),以供瀏覽器播放解密后的流媒體數(shù)據(jù)。相較于現(xiàn)有技術(shù),瀏覽器無需調(diào)用額外的DRM插件,避免了流媒體數(shù)據(jù)在瀏覽器以及DRM插件之間的重復(fù)流轉(zhuǎn),從而本發(fā)明能夠提高解密流媒體的效率。
【附圖說明】
[0029]圖1為本發(fā)明流媒體解密方法第一實(shí)施例的流程示意圖;
[0030]圖2為本發(fā)明流媒體解密方法第二實(shí)施例的流程示意圖;
[0031]圖3為本發(fā)明流媒體解密方法第三實(shí)施例的流程示意圖;
[0032]圖4為本發(fā)明流媒體解密裝置第一實(shí)施例的功能模塊示意圖;
[0033]圖5為本發(fā)明流媒體解密裝置第二實(shí)施例的功能模塊示意圖;
[0034]圖6為本發(fā)明流媒體解密裝置第三實(shí)施例的功能模塊示意圖。
[0035]本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說明。
【具體實(shí)施方式】
[0036]應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0037]本發(fā)明提供一種流媒體解密方法,流媒體解密裝置內(nèi)嵌于瀏覽器運(yùn)行,參照圖1,在本發(fā)明流媒體解密方法的第一實(shí)施例中,所述流媒體解密方法包括以下步驟:
[0038]S10,所述流媒體解密裝置在所述瀏覽器接收到播放指令時(shí),獲取相應(yīng)的流媒體數(shù)據(jù);
[0039]需要說明的是,本發(fā)明目的的實(shí)現(xiàn)在于將流媒體解密裝置內(nèi)嵌于瀏覽器,并通過流媒體解密裝置實(shí)現(xiàn)現(xiàn)有DRM插件的功能(如加密判讀、許可證獲取以及解密等)。內(nèi)置有流媒體解密裝置的瀏覽器無需額外加載DRM插件,自身即可完成從流媒體數(shù)據(jù)獲取到流媒體數(shù)據(jù)解密播放的整個(gè)過程。具體地,在軟件層面,將流媒體解密裝置代碼添加至瀏覽器內(nèi)核代碼中,以實(shí)現(xiàn)流媒體解密裝置的內(nèi)嵌。
[0040]本實(shí)施例中,所述流媒體解密裝置在所述瀏覽器接收到播放指令時(shí),解析所述播放指令以獲取流媒體內(nèi)容發(fā)布服務(wù)器信息(例如,流媒體內(nèi)容發(fā)布服務(wù)器的IP地址),并生成流媒體數(shù)據(jù)獲取請求;將生成的所述流媒體數(shù)據(jù)獲取請求發(fā)送至所述流媒體內(nèi)容發(fā)布服務(wù)器信息對應(yīng)的流媒體內(nèi)容發(fā)布服務(wù)器,以供流媒體內(nèi)容發(fā)布服務(wù)器根據(jù)接收到的流媒體數(shù)據(jù)獲取請求返回相應(yīng)的流媒體數(shù)據(jù);在接收到流媒體內(nèi)容發(fā)布服務(wù)器返回的流媒體數(shù)據(jù)后,將所述流媒體數(shù)據(jù)存儲至瀏覽器的數(shù)據(jù)緩存區(qū)中。
[0041]S20,所述流媒體解密裝置分析所述流媒體數(shù)據(jù)是否被加密;
[0042]所述流媒體解密裝置在獲取到流媒體數(shù)據(jù)后,分析所述流媒體數(shù)據(jù)是否被加密,具體地,解析所述流媒體數(shù)據(jù)的頭文件,在所述頭文件中攜帶有加密信息時(shí),識別所述流媒體數(shù)據(jù)被加密;在所述頭文件中未攜帶有加密信息時(shí),識別所述流媒體數(shù)據(jù)未被加密。其中,所述加密信息包括流媒體數(shù)據(jù)采用的加解密算法,以及許可證頒發(fā)服務(wù)器等信息。
[0043]S30,所述流媒體解密裝置在所述流媒體數(shù)據(jù)被加密時(shí),獲取相應(yīng)的許可證,以及內(nèi)置的加解密算法;
[0044]若所述流媒體數(shù)據(jù)被加密,則所述流媒體解密裝置從所述加密信息中解析出所述流媒體數(shù)據(jù)采用的加解密算法,以及許可證頒發(fā)服務(wù)器信息(例如,許可證頒發(fā)服務(wù)器的IP地址);根據(jù)所述許可證頒發(fā)服務(wù)器信息生成許可證獲取請求,并將生成的所述許可證獲取請求發(fā)送至所述許可證頒發(fā)服務(wù)器信息對應(yīng)的許可證頒發(fā)服務(wù)器,以供所述許可證頒發(fā)服務(wù)器返回相應(yīng)的許可證;在接收到所述許可證頒發(fā)服務(wù)器返回的許可證后,將所述許可證存儲至瀏覽器的數(shù)據(jù)緩存區(qū)中,并與前述流媒體數(shù)據(jù)關(guān)聯(lián)。
[0045]S40,所述流媒體解密裝置基于獲取的所述許可證以及所述加解密算法,解密所述流媒體數(shù)據(jù),以供瀏覽器播放解密后的流媒體數(shù)據(jù)。
[0046]在獲取到許可證以及內(nèi)置的加解密算法后,基于獲取的所述許可證以及所述加解密算法,解密與所述許可證關(guān)聯(lián)的流媒體數(shù)據(jù),以供瀏覽器播放解密后的流媒體數(shù)據(jù)。例如,所述流媒體解密裝置獲取到的加解密算法為DES