本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種流數(shù)據(jù)的加密傳輸方法和一種流數(shù)據(jù)的加密傳輸裝置。
背景技術(shù):
對(duì)于一些直播流數(shù)據(jù),如私有流數(shù)據(jù)、有版權(quán)的流數(shù)據(jù),需要對(duì)流數(shù)據(jù)進(jìn)行加密處理,使得流數(shù)據(jù)只對(duì)具有特定權(quán)限的部分用戶播放。
目前,流數(shù)據(jù)的加解密過程在加解密服務(wù)器上進(jìn)行,具體地,客戶端將流數(shù)據(jù)推送至加解密服務(wù)器,加解密服務(wù)器從公共服務(wù)器獲取加密密鑰,使用獲取的加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密;解密流數(shù)據(jù)時(shí),加解密服務(wù)器從公共服務(wù)器獲取對(duì)應(yīng)的解密密鑰,使用解密密鑰對(duì)加密的流數(shù)據(jù)進(jìn)行解密處理,將解密后的流數(shù)據(jù)推送至客戶端。
雖然上述方法實(shí)現(xiàn)了流數(shù)據(jù)的加解密處理,但是仍存在以下問題:流數(shù)據(jù)的加解密過程在加解密服務(wù)器上進(jìn)行,由于數(shù)據(jù)加解密處理對(duì)服務(wù)器的性能耗費(fèi)較大,因此在服務(wù)器進(jìn)行的數(shù)據(jù)加解密處理降低了服務(wù)器的性能;由于加解密密鑰存儲(chǔ)在公共服務(wù)器上,因此加解密密鑰的安全性不高。
技術(shù)實(shí)現(xiàn)要素:
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的流數(shù)據(jù)的加密傳輸方法和相應(yīng)的流數(shù)據(jù)的加密傳輸裝置。
依據(jù)本發(fā)明的一個(gè)方面,提供了一種流數(shù)據(jù)的加密傳輸方法,包括:
從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰,并采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密;
按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)加密后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝;
按照設(shè)定的數(shù)據(jù)格式,對(duì)數(shù)據(jù)封裝后的流數(shù)據(jù)進(jìn)行格式封裝;
將格式封裝后的流數(shù)據(jù)通過流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端,由所述第二流數(shù)據(jù)客戶端進(jìn)行格式解封裝、數(shù)據(jù)解封裝以及解密后,獲得流數(shù)據(jù)。
可選地,所述從流數(shù)據(jù)播放客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰包括:
生成攜帶待加密流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器;
接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋的加密密鑰。
可選地,所述接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋的加密密鑰包括:
接收所述開發(fā)方服務(wù)器針對(duì)所述流數(shù)據(jù)標(biāo)識(shí)實(shí)時(shí)生成的加密密鑰;
或者,接收所述開發(fā)方服務(wù)器從預(yù)存的多對(duì)加密密鑰和解密密鑰中針對(duì)所述流數(shù)據(jù)標(biāo)識(shí)任選的加密密鑰。
可選地,在所述從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰之前,所述方法還包括:
向第一調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求;
接收所述第一調(diào)度服務(wù)器分配的流數(shù)據(jù)傳輸服務(wù)器和流數(shù)據(jù)標(biāo)識(shí)。
可選地,所述采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密包括:
采用加密密鑰對(duì)流數(shù)據(jù)的各幀數(shù)據(jù)逐個(gè)進(jìn)行加密。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種流數(shù)據(jù)的加密傳輸方法,包括:
獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù),所述流數(shù)據(jù)由第一流數(shù)據(jù)客戶端經(jīng)過加密、數(shù)據(jù)封裝以及格式封裝后獲得;
按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝;
按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)格式解封裝后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)解封裝;
采用從流數(shù)據(jù)播放客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取的解密密鑰,對(duì)數(shù)據(jù)解封裝后的流數(shù)據(jù)進(jìn)行解密,獲得解密后的流數(shù)據(jù)。
可選地,獲取的流數(shù)據(jù)攜帶流數(shù)據(jù)標(biāo)識(shí),在所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)之后,所述方法還包括:
生成攜帶所述流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器;
接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋查找的解密密鑰。
可選地,所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)包括:
訪問所述流數(shù)據(jù)的回放地址,從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,所述方法還包括:
從所述回放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
可選地,所述第一流數(shù)據(jù)客戶端上傳的流數(shù)據(jù)為直播流數(shù)據(jù),所述直播流數(shù)據(jù)傳輸至多個(gè)流數(shù)據(jù)傳輸服務(wù)器,所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)包括:
向第二調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求;
接收第二調(diào)度服務(wù)器從多個(gè)流數(shù)據(jù)傳輸服務(wù)器中分配的目標(biāo)流數(shù)據(jù)傳輸服務(wù)器生成的目標(biāo)直播地址;
通過訪問所述目標(biāo)直播地址從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,所述方法還包括:
從所述直播播放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種流數(shù)據(jù)的加密傳輸裝置,包括:
加密密鑰獲取模塊,用于從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰;
流數(shù)據(jù)加密模塊,用于采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密;
數(shù)據(jù)封裝模塊,用于按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)加密后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝;
格式封裝模塊,用于按照設(shè)定的數(shù)據(jù)格式,對(duì)數(shù)據(jù)封裝后的流數(shù)據(jù)進(jìn)行格式封裝;
流數(shù)據(jù)發(fā)送模塊,用于將格式封裝后的流數(shù)據(jù)通過流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端,由所述第二流數(shù)據(jù)客戶端進(jìn)行格式解封裝、數(shù)據(jù)解封裝以及解密后,獲得流數(shù)據(jù)。
可選地,所述加密密鑰獲取模塊包括:
密鑰獲取請(qǐng)求生成子模塊,用于生成攜帶待加密流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器;
加密密鑰接收子模塊,用于接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋的加密密鑰。
可選地,所述加密密鑰接收子模塊包括:
第一加密密鑰獲取單元,用于接收所述開發(fā)方服務(wù)器針對(duì)所述流數(shù)據(jù)標(biāo)識(shí)實(shí)時(shí)生成的加密密鑰;
或者,第二加密密鑰獲取單元,用于接收所述開發(fā)方服務(wù)器從預(yù)存的多對(duì)加密密鑰和解密密鑰中針對(duì)所述流數(shù)據(jù)標(biāo)識(shí)任選的加密密鑰。
可選地,所述裝置還包括:
調(diào)度請(qǐng)求發(fā)送模塊,用于在所述從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰之前,向第一調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求;
流數(shù)據(jù)標(biāo)識(shí)接收模塊,用于接收所述第一調(diào)度服務(wù)器分配的流數(shù)據(jù)傳輸服務(wù)器和流數(shù)據(jù)標(biāo)識(shí)。
可選地,所述流數(shù)據(jù)加密模塊,具體用于采用加密密鑰對(duì)流數(shù)據(jù)的各幀數(shù)據(jù)逐個(gè)進(jìn)行加密。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種流數(shù)據(jù)的加密傳輸裝置,包括:
流數(shù)據(jù)獲取模塊,用于獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù),所述流數(shù)據(jù)由第一流數(shù)據(jù)客戶端經(jīng)過加密、數(shù)據(jù)封裝以及格式封裝后獲得;
格式解封裝模塊,用于按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝;
數(shù)據(jù)解封裝模塊,用于按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)格式解封裝后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)解封裝;
解密密鑰獲取模塊,用于采用從流數(shù)據(jù)播放客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取的解密密鑰;
流數(shù)據(jù)解密模塊,用于對(duì)數(shù)據(jù)解封裝后的流數(shù)據(jù)進(jìn)行解密,獲得解密后的流數(shù)據(jù)。
可選地,所述裝置還包括:
請(qǐng)求生成模塊,用于在所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)之后,生成攜帶所述流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器,獲取的流數(shù)據(jù)攜帶流數(shù)據(jù)標(biāo)識(shí);
解密密鑰接收模塊,用于接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋查找的解密密鑰。
可選地,所述流數(shù)據(jù)獲取模塊,具體用于訪問所述流數(shù)據(jù)的回放地址,從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
所述裝置還包括:
第一數(shù)據(jù)格式提取模塊,用于在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,從所述回放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
可選地,所述流數(shù)據(jù)獲取模塊包括:
調(diào)度請(qǐng)求傳送子模塊,用于向第二調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求,所述第一流數(shù)據(jù)客戶端上傳的流數(shù)據(jù)為直播流數(shù)據(jù),所述直播流數(shù)據(jù)傳輸至多個(gè)流數(shù)據(jù)傳輸服務(wù)器;
目標(biāo)直播地址接收子模塊,用于接收第二調(diào)度服務(wù)器從多個(gè)流數(shù)據(jù)傳輸服務(wù)器中分配的目標(biāo)流數(shù)據(jù)傳輸服務(wù)器生成的目標(biāo)直播地址;
流數(shù)據(jù)得到子模塊,用于通過訪問所述目標(biāo)直播地址從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
所述裝置還包括:
第二數(shù)據(jù)格式提取模塊,用于在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,從所述直播播放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
依據(jù)本發(fā)明實(shí)施例,使用流數(shù)據(jù)客戶端對(duì)流數(shù)據(jù)進(jìn)行加解密處理,使用開發(fā)方服務(wù)器管理流數(shù)據(jù)的加解密密鑰,加密流數(shù)據(jù)時(shí)第一流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密處理,解密流數(shù)據(jù)時(shí)第二流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取解密密鑰對(duì)加密的流數(shù)據(jù)進(jìn)行解密處理,由于流數(shù)據(jù)的加解密處理在客戶端進(jìn)行,因此減輕了服務(wù)器的工作壓力,保證了服務(wù)器的性能。同時(shí),由于開發(fā)方服務(wù)器是私有服務(wù)器,因此相比于背景技術(shù)中使用公共服務(wù)器管理加解密密鑰,本發(fā)明實(shí)施例使用開發(fā)方服務(wù)器管理加密密鑰使得加解密密鑰更加安全。
上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式。
附圖說明
通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:
圖1示出了根據(jù)本發(fā)明實(shí)施例一的一種流數(shù)據(jù)的加密傳輸方法的步驟流程示意圖;
圖2示出了根據(jù)本發(fā)明實(shí)施例二的一種流數(shù)據(jù)的加密傳輸方法的步驟流程示意圖;
圖3示出了根據(jù)本發(fā)明實(shí)施例三的一種流數(shù)據(jù)的加密傳輸方法的步驟流程示意圖;
圖4示出了根據(jù)本發(fā)明實(shí)施例四的一種流數(shù)據(jù)的加密傳輸裝置的結(jié)構(gòu)框圖;
圖5示出了根據(jù)本發(fā)明實(shí)施例五的一種流數(shù)據(jù)的加密傳輸裝置的結(jié)構(gòu)框圖;
圖6示出了根據(jù)本發(fā)明實(shí)施例六的一種流數(shù)據(jù)的加密傳輸裝置的結(jié)構(gòu)框圖。
具體實(shí)施方式
下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
參照?qǐng)D1,示出了根據(jù)本發(fā)明實(shí)施例一的一種流數(shù)據(jù)的加密傳輸方法的步驟流程示意圖,具體可以包括如下步驟:
步驟101、從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰,并采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密。
本發(fā)明實(shí)施例所述的方法應(yīng)用于存在以流式傳輸方式傳輸?shù)牧鲾?shù)據(jù)的場(chǎng)景,如流數(shù)據(jù)直播場(chǎng)景、遠(yuǎn)程監(jiān)控場(chǎng)景、流數(shù)據(jù)回放場(chǎng)景等。
本發(fā)明實(shí)施例使用第一流數(shù)據(jù)客戶端即流數(shù)據(jù)的推送端加密流數(shù)據(jù),使用第二流數(shù)據(jù)客戶端即流數(shù)據(jù)的播放端解密流數(shù)據(jù),從而省去了服務(wù)器的加解密處理,保證了服務(wù)器的性能?;趹?yīng)用場(chǎng)景不同,第一流數(shù)據(jù)客戶端可以為多種形式,例如,在視頻直播場(chǎng)景中,第一流數(shù)據(jù)客戶端為主播端;在視頻回放場(chǎng)景中,第一流數(shù)據(jù)客戶端可以為視頻上傳端;在遠(yuǎn)程監(jiān)控場(chǎng)景中,第一流數(shù)據(jù)客戶端可以為遠(yuǎn)程攝像頭。
本發(fā)明實(shí)施例使用的開發(fā)方服務(wù)器是私有服務(wù)器,是針對(duì)第一流數(shù)據(jù)客戶端和第二流數(shù)據(jù)客戶端等能夠?qū)崿F(xiàn)本發(fā)明實(shí)施例所述方法的客戶端設(shè)置的,用于管理流數(shù)據(jù)的加解密密鑰,開發(fā)方服務(wù)器的使用有效保證了流數(shù)據(jù)的加解密密鑰的安全性。
第一流數(shù)據(jù)客戶端在將流數(shù)據(jù)推送至網(wǎng)絡(luò)之前,需要對(duì)流數(shù)據(jù)進(jìn)行加密處理。具體地,需要向開發(fā)方服務(wù)器發(fā)送獲取加密密鑰的請(qǐng)求,在接收到開發(fā)方服務(wù)器反饋的加密密鑰后,使用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密處理。
加解密密鑰可以是開發(fā)方服務(wù)器臨時(shí)生成的,也可以是從預(yù)先成對(duì)存儲(chǔ)的加解密密鑰中選取的,如從預(yù)先成對(duì)存儲(chǔ)的加解密密鑰中任選的,本發(fā)明實(shí)施例在此不做限制。
步驟102、按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)加密后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝。
數(shù)據(jù)封裝是把業(yè)務(wù)數(shù)據(jù)映射到某個(gè)封裝協(xié)議的凈荷中,然后填充對(duì)應(yīng)協(xié)議的包頭,形成封裝協(xié)議的數(shù)據(jù)包,并完成速率適配。在使用網(wǎng)絡(luò)傳輸數(shù)據(jù)之前,需要對(duì)數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝。
客戶端和流數(shù)據(jù)傳輸服務(wù)器之間預(yù)先規(guī)定了傳輸協(xié)議,使用規(guī)定的傳輸協(xié)議進(jìn)行數(shù)據(jù)傳輸。第一流數(shù)據(jù)客戶端完成對(duì)流數(shù)據(jù)的加密處理后,可以按照規(guī)定的傳輸協(xié)議對(duì)加密后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝,得到數(shù)據(jù)封裝后的流數(shù)據(jù)。
步驟103、按照設(shè)定的數(shù)據(jù)格式,對(duì)數(shù)據(jù)封裝后的流數(shù)據(jù)進(jìn)行格式封裝。
封裝格式是將已經(jīng)編碼壓縮完的視頻軌和音頻軌按照一定的格式放到一個(gè)文件中,封裝格式包括多種形式,如AVI封裝格式、TS封裝格式、MPEG封裝格式、MKV封裝格式等。通常在數(shù)據(jù)封裝完成后,使用封裝格式對(duì)數(shù)據(jù)進(jìn)行格式封裝。
本發(fā)明實(shí)施例中,第一流數(shù)據(jù)客戶端在完成對(duì)流數(shù)據(jù)的數(shù)據(jù)封裝后,對(duì)數(shù)據(jù)封裝后的流數(shù)據(jù)進(jìn)行格式封裝。具體地可以按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式封裝。
步驟104、將格式封裝后的流數(shù)據(jù)通過流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端,由所述第二流數(shù)據(jù)客戶端進(jìn)行格式解封裝、數(shù)據(jù)解封裝以及解密后,獲得流數(shù)據(jù)。
第一流數(shù)據(jù)客戶端在完成對(duì)流數(shù)據(jù)的格式封裝后,將格式封裝后的流數(shù)據(jù)通過傳輸服務(wù)器傳輸,流數(shù)據(jù)傳輸服務(wù)器接收到第二流數(shù)據(jù)客戶端發(fā)送的流數(shù)據(jù)請(qǐng)求后,將格式封裝后的流數(shù)據(jù)傳輸至第二流數(shù)據(jù)客戶端。流數(shù)據(jù)傳輸服務(wù)器可以為一個(gè)或多個(gè)。
第二流數(shù)據(jù)播放端可以在接收到格式封裝的流數(shù)據(jù)后,從開發(fā)方服務(wù)器獲取與發(fā)送至第一流數(shù)據(jù)客戶端的加密密鑰對(duì)應(yīng)設(shè)置的解密密鑰。第二流數(shù)據(jù)播放端對(duì)接收的流數(shù)據(jù)進(jìn)行格式解封裝、數(shù)據(jù)解封裝以及使用獲取的解密密鑰進(jìn)行解密處理,最終得到第一流數(shù)據(jù)客戶端發(fā)送的流數(shù)據(jù)。
依據(jù)本發(fā)明實(shí)施例,使用流數(shù)據(jù)客戶端對(duì)流數(shù)據(jù)進(jìn)行加解密處理,使用開發(fā)方服務(wù)器管理流數(shù)據(jù)的加解密密鑰,加密流數(shù)據(jù)時(shí)第一流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密處理,解密流數(shù)據(jù)時(shí)第二流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取解密密鑰對(duì)加密的流數(shù)據(jù)進(jìn)行解密處理,由于流數(shù)據(jù)的加解密處理在客戶端進(jìn)行,因此減輕了服務(wù)器的工作壓力,保證了服務(wù)器的性能。同時(shí),由于開發(fā)方服務(wù)器是私有服務(wù)器,因此相比于背景技術(shù)中使用公共服務(wù)器管理加解密密鑰,本發(fā)明實(shí)施例使用開發(fā)方服務(wù)器管理加密密鑰使得加解密密鑰更加安全。
參照?qǐng)D2,示出了根據(jù)本發(fā)明實(shí)施例二的一種流數(shù)據(jù)的加密傳輸方法的步驟流程示意圖,具體可以包括如下步驟:
步驟201、生成攜帶待加密流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器。
第一流數(shù)據(jù)客戶端在向第二流數(shù)據(jù)客戶端傳送流數(shù)據(jù)之前,先生成密鑰獲取請(qǐng)求,密鑰獲取請(qǐng)求中可以攜帶待加密流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)。流數(shù)據(jù)標(biāo)識(shí)可以是第一調(diào)度服務(wù)器分配的。具體地,在生成攜帶待加密流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求之前,可以向第一調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求,之后接收第一調(diào)度服務(wù)器分配的流數(shù)據(jù)傳輸服務(wù)器和流數(shù)據(jù)標(biāo)識(shí)。第一調(diào)度服務(wù)器可以根據(jù)第一流數(shù)據(jù)客戶端的地理位置信息、傳輸服務(wù)器的負(fù)載情況等因素對(duì)流數(shù)據(jù)傳輸服務(wù)器進(jìn)行選取。
第一流數(shù)據(jù)客戶端在生成密鑰獲取請(qǐng)求后,將該請(qǐng)求發(fā)送至開發(fā)服務(wù)器。
步驟202、接收開發(fā)方服務(wù)器根據(jù)流數(shù)據(jù)標(biāo)識(shí)反饋的加密密鑰,并采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密。
開發(fā)方服務(wù)器接收到密鑰獲取請(qǐng)求后,可以針對(duì)密鑰獲取請(qǐng)求攜帶的流數(shù)據(jù)標(biāo)識(shí)實(shí)時(shí)生成一加密密鑰,也可以從預(yù)存的多對(duì)加密密鑰和解密密鑰中針對(duì)攜帶的流數(shù)據(jù)標(biāo)識(shí)任選一加密密鑰,開發(fā)方服務(wù)器在確定加密密鑰后將其反饋至第一流數(shù)據(jù)客戶端。開發(fā)方服務(wù)器可以在本地記錄流數(shù)據(jù)標(biāo)識(shí)、加密密鑰和解密密鑰的對(duì)應(yīng)關(guān)系。
除上述密鑰獲取方式外,還可以通過其他方式獲取,例如在開發(fā)方服務(wù)器預(yù)先存儲(chǔ)客戶端標(biāo)識(shí)與加解密密鑰的對(duì)應(yīng)關(guān)系,在接收到第一流數(shù)據(jù)客戶端發(fā)送的密鑰獲取請(qǐng)求后,提取請(qǐng)求攜帶的客戶端標(biāo)識(shí),查找本地存儲(chǔ)的與客戶端標(biāo)識(shí)對(duì)應(yīng)的加密密鑰并將其反饋至第一流數(shù)據(jù)客戶端。
第一流數(shù)據(jù)客戶端接收到開發(fā)方服務(wù)器反饋的加密密鑰后,采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密處理。加密流數(shù)據(jù)時(shí)流數(shù)據(jù)的編碼方式不變,如保持流數(shù)據(jù)的H.264編碼方式不變,只對(duì)流數(shù)據(jù)的具體數(shù)據(jù)進(jìn)行加密。具體可以采用加密密鑰對(duì)流數(shù)據(jù)的各幀數(shù)據(jù)逐個(gè)進(jìn)行加密,加密后的流數(shù)據(jù)可以對(duì)I幀、P幀和B幀進(jìn)行區(qū)分。
步驟203、按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)加密后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝。
步驟204、按照設(shè)定的數(shù)據(jù)格式,對(duì)數(shù)據(jù)封裝后的流數(shù)據(jù)進(jìn)行格式封裝。
步驟205、將格式封裝后的流數(shù)據(jù)通過流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端,由所述第二流數(shù)據(jù)客戶端進(jìn)行格式解封裝、數(shù)據(jù)解封裝以及解密后,獲得流數(shù)據(jù)。
第一流數(shù)據(jù)客戶端可以將格式封裝后的處于加密的流數(shù)據(jù)及其流數(shù)據(jù)標(biāo)識(shí)一同推送至流數(shù)據(jù)傳輸服務(wù)器。流數(shù)據(jù)傳輸服務(wù)器可以將接收的加密流數(shù)據(jù)和流數(shù)據(jù)標(biāo)識(shí)對(duì)應(yīng)存儲(chǔ),流數(shù)據(jù)傳輸服務(wù)器接收到第二流數(shù)據(jù)客戶端發(fā)送的流數(shù)據(jù)請(qǐng)求后,可以將流數(shù)據(jù)和及其流數(shù)據(jù)標(biāo)識(shí)一同發(fā)送至第二流數(shù)據(jù)客戶端。
第二流數(shù)據(jù)客戶端向開發(fā)方服務(wù)器發(fā)送密鑰獲取請(qǐng)求時(shí),密鑰獲取請(qǐng)求可以攜帶與流數(shù)據(jù)一同獲取的流數(shù)據(jù)標(biāo)識(shí),開發(fā)方服務(wù)器識(shí)別到流數(shù)據(jù)標(biāo)識(shí)后,可以依據(jù)本地記錄的流數(shù)據(jù)標(biāo)識(shí)、加密密鑰和解密密鑰的對(duì)應(yīng)關(guān)系,將與流數(shù)據(jù)標(biāo)識(shí)對(duì)應(yīng)的解密密鑰,即與加密流數(shù)據(jù)時(shí)使用的加密密鑰對(duì)應(yīng)的解密密鑰發(fā)送給第二流數(shù)據(jù)客戶端。
流數(shù)據(jù)傳輸服務(wù)器可以對(duì)流數(shù)據(jù)進(jìn)行封裝協(xié)議轉(zhuǎn)碼,如上傳的流數(shù)據(jù)為私有流時(shí),流數(shù)據(jù)傳輸服務(wù)器可以對(duì)私有流進(jìn)行封裝協(xié)議轉(zhuǎn)碼,生成如flv、rtmp、hls等多種封裝格式的流。觀看端可以根據(jù)需求從調(diào)度服務(wù)器獲取相應(yīng)格式流的地址,根據(jù)地址獲取所需流數(shù)據(jù)。
依據(jù)本發(fā)明實(shí)施例,使用流數(shù)據(jù)客戶端對(duì)流數(shù)據(jù)進(jìn)行加解密處理,使用開發(fā)方服務(wù)器管理流數(shù)據(jù)的加解密密鑰,加密流數(shù)據(jù)時(shí)第一流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密處理,解密流數(shù)據(jù)時(shí)第二流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取解密密鑰對(duì)加密的流數(shù)據(jù)進(jìn)行解密處理,由于流數(shù)據(jù)的加解密處理在客戶端進(jìn)行,因此減輕了服務(wù)器的工作壓力,保證了服務(wù)器的性能。同時(shí),由于開發(fā)方服務(wù)器是私有服務(wù)器,因此相比于背景技術(shù)中使用公共服務(wù)器管理加解密密鑰,本發(fā)明實(shí)施例使用開發(fā)方服務(wù)器管理加密密鑰使得加解密密鑰更加安全。
參照?qǐng)D3,示出了根據(jù)本發(fā)明實(shí)施例三的一種流數(shù)據(jù)的加密傳輸方法的步驟流程示意圖,具體可以包括如下步驟:
步驟301、獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù),所述流數(shù)據(jù)由第一流數(shù)據(jù)客戶端經(jīng)過加密、數(shù)據(jù)封裝以及格式封裝后獲得。
本發(fā)明實(shí)施例中,第一流數(shù)據(jù)客戶端為流數(shù)據(jù)推送端,第二流數(shù)據(jù)客戶端為流數(shù)據(jù)播放端,流數(shù)據(jù)傳輸服務(wù)器用于接收并存儲(chǔ)第一流數(shù)據(jù)客戶端推送的加密后的流數(shù)據(jù),并在接收到第二流數(shù)據(jù)客戶端發(fā)送的流數(shù)據(jù)獲取請(qǐng)求后將加密的流數(shù)據(jù)傳輸至第二流數(shù)據(jù)客戶端。
第一流數(shù)據(jù)客戶端向流數(shù)據(jù)傳輸服務(wù)器推送流數(shù)據(jù)之前,需要對(duì)流數(shù)據(jù)加密、數(shù)據(jù)封裝和格式封裝處理。加密流數(shù)據(jù)時(shí)使用的加密密鑰是第一流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取的。
步驟302、按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝。
第二流數(shù)據(jù)客戶端接收到流數(shù)據(jù)后,對(duì)流數(shù)據(jù)進(jìn)行格式解封裝處理,具體地可以按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝處理。
具體地,第二流數(shù)據(jù)客戶端可以通過訪問流數(shù)據(jù)地址如回放地址、直播地址等獲取流數(shù)據(jù),通常流數(shù)據(jù)地址中包括格式封裝流數(shù)據(jù)時(shí)使用的封裝格式,第二流數(shù)據(jù)客戶端可以從流數(shù)據(jù)地址中提取封裝格式,并使用提取的封裝格式對(duì)接收的流數(shù)據(jù)進(jìn)行格式解封裝。
步驟303、按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)格式解封裝后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)解封裝。
第二流數(shù)據(jù)客戶端完成對(duì)流數(shù)據(jù)的格式解封裝處理后,可以按照規(guī)定的傳輸協(xié)議對(duì)流數(shù)據(jù)進(jìn)行數(shù)據(jù)解封裝處理。
步驟304、采用從流數(shù)據(jù)播放客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取的解密密鑰,對(duì)數(shù)據(jù)解封裝后的流數(shù)據(jù)進(jìn)行解密,獲得解密后的流數(shù)據(jù)。
開發(fā)方服務(wù)器內(nèi)的加密密鑰和解密密鑰對(duì)應(yīng)存儲(chǔ),第二流數(shù)據(jù)客戶端可以從開發(fā)方服務(wù)器獲取與加密該流數(shù)據(jù)時(shí)使用的加密密鑰對(duì)應(yīng)的解密密鑰,之后使用解密密鑰對(duì)流數(shù)據(jù)進(jìn)行解密處理,最終獲得所需的流數(shù)據(jù)。可以在第二流數(shù)據(jù)客戶端播放解密后的流數(shù)據(jù)供用戶查看。
本發(fā)明實(shí)施例中,優(yōu)選地,獲取的流數(shù)據(jù)攜帶流數(shù)據(jù)標(biāo)識(shí),在所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)之后,所述方法還包括:
生成攜帶所述流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器;
接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)查找的解密密鑰。
本發(fā)明實(shí)施例中,第一流數(shù)據(jù)客戶端推送至流數(shù)據(jù)傳輸服務(wù)器的加密的流數(shù)據(jù)攜帶流數(shù)據(jù)標(biāo)識(shí),流數(shù)據(jù)傳輸服務(wù)器和流數(shù)據(jù)標(biāo)識(shí)是第一流數(shù)據(jù)客戶請(qǐng)求調(diào)度服務(wù)器分配的,流數(shù)據(jù)傳輸服務(wù)器接收到第一流數(shù)據(jù)客戶端推送的流數(shù)據(jù)后本地記錄流數(shù)據(jù)和流數(shù)據(jù)標(biāo)識(shí)的對(duì)應(yīng)關(guān)系。
第一流數(shù)據(jù)客戶端加密流數(shù)據(jù)時(shí)使用的加密密碼是由開發(fā)方服務(wù)器反饋的,可以在開方法服務(wù)器本地記錄第一流數(shù)據(jù)客戶端發(fā)送的密碼獲取請(qǐng)求攜帶的流數(shù)據(jù)標(biāo)識(shí)、配置的加密密碼和配置的解密密碼的對(duì)應(yīng)關(guān)系。
流數(shù)據(jù)傳輸服務(wù)器接收到第二流數(shù)據(jù)客戶端發(fā)送的流數(shù)據(jù)獲取請(qǐng)求后,將流數(shù)據(jù)及流數(shù)據(jù)標(biāo)識(shí)一同發(fā)送至第二流數(shù)據(jù)客戶端。第二流數(shù)據(jù)客戶端生成密鑰獲取請(qǐng)求,密鑰獲取請(qǐng)求攜帶流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí),向開發(fā)服務(wù)器發(fā)送該密鑰獲取請(qǐng)求,開發(fā)服務(wù)器可以根據(jù)本地記錄的對(duì)應(yīng)關(guān)系查找與流數(shù)據(jù)標(biāo)識(shí)對(duì)應(yīng)記錄的解密密鑰并將其反饋至第二流數(shù)據(jù)客戶端,第二流數(shù)據(jù)客戶端根據(jù)接收的解密密鑰對(duì)流數(shù)據(jù)進(jìn)行解密處理。
本發(fā)明實(shí)施例中,優(yōu)選地,所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)包括:訪問所述流數(shù)據(jù)的回放地址,從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,所述方法還包括:從所述回放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
本發(fā)明實(shí)施例所述方法可以應(yīng)用于流數(shù)據(jù)回放場(chǎng)景。第一流數(shù)據(jù)客戶端對(duì)流數(shù)據(jù)進(jìn)行加密處理。
第一流數(shù)據(jù)客戶端上傳的流數(shù)據(jù)存儲(chǔ)在流數(shù)據(jù)傳輸服務(wù)器內(nèi),流數(shù)據(jù)傳輸服務(wù)器生成了流數(shù)據(jù)的回放地址。打開第二流數(shù)據(jù)客戶端安裝的視頻播放器后,大量流數(shù)據(jù)的回放地址顯示在視頻播放器界面的預(yù)設(shè)位置,可以通過訪問流數(shù)據(jù)的回放地址,從流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù)。
流數(shù)據(jù)的回放地址中包括數(shù)據(jù)格式,如MP4、AVI等,可以從回放地址中提取格式封裝流數(shù)據(jù)時(shí)采用的數(shù)據(jù)格式。之后使用從回放地址提取的數(shù)據(jù)格式對(duì)從流數(shù)據(jù)傳輸服務(wù)器獲取的流數(shù)據(jù)進(jìn)行格式解封裝。完成格式解封裝處理后,再進(jìn)行數(shù)據(jù)解封裝和數(shù)據(jù)解密處理,最終得到所需的流數(shù)據(jù)。
本發(fā)明實(shí)施例中,優(yōu)選地,所述第一流數(shù)據(jù)客戶端上傳的流數(shù)據(jù)為直播流數(shù)據(jù),所述直播流數(shù)據(jù)傳輸至多個(gè)流數(shù)據(jù)傳輸服務(wù)器,所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)包括:向第二調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求;接收第二調(diào)度服務(wù)器從多個(gè)流數(shù)據(jù)傳輸服務(wù)器中分配的目標(biāo)流數(shù)據(jù)傳輸服務(wù)器生成的目標(biāo)直播地址;通過訪問所述目標(biāo)直播地址從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,所述方法還包括:從所述直播播放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
本發(fā)明實(shí)施例所述方法可以應(yīng)用于流數(shù)據(jù)直播場(chǎng)景,如視頻直播場(chǎng)景,這時(shí)流數(shù)據(jù)為直播流數(shù)據(jù)。第一流數(shù)據(jù)客戶端對(duì)直播流數(shù)據(jù)進(jìn)行加密處理。
第一流數(shù)據(jù)客戶端將加密后的直播流數(shù)據(jù)上傳至源站,也就是本發(fā)明實(shí)施例所述的流數(shù)據(jù)傳輸服務(wù)器。為方便位于不同地理位置的第二流數(shù)據(jù)客戶端拉取直播流數(shù)據(jù)以及保證流數(shù)據(jù)傳輸服務(wù)器的正常運(yùn)行,可以預(yù)先設(shè)置多個(gè)流數(shù)據(jù)傳輸服務(wù)器,多個(gè)流數(shù)據(jù)傳輸服務(wù)器位于不同的地理位置。與第一流數(shù)據(jù)客戶端直接連接的流數(shù)據(jù)傳輸服務(wù)器在接收到第一流數(shù)據(jù)客戶端上傳的直播流數(shù)據(jù)后,可以將直播流數(shù)據(jù)推送至位于不同地理位置的其他流數(shù)據(jù)傳輸服務(wù)器,各流數(shù)據(jù)傳輸服務(wù)器接收到直播流數(shù)據(jù)后生成對(duì)應(yīng)的直播地址。
第二流數(shù)據(jù)客戶端拉取第一流數(shù)據(jù)客戶端直播的流數(shù)據(jù)時(shí),可以先向第二調(diào)度服務(wù)器發(fā)送獲取直播地址的請(qǐng)求,第二調(diào)度服務(wù)器在接收到請(qǐng)求后可以根據(jù)第二流數(shù)據(jù)客戶端的地理位置、各流數(shù)據(jù)傳輸服務(wù)器的負(fù)載情況等因素中一種或多種,從生成直播地址的多個(gè)流數(shù)據(jù)傳輸服務(wù)器中,為第二流數(shù)據(jù)客戶端分配一個(gè)目標(biāo)流數(shù)據(jù)傳輸服務(wù)器,并將目標(biāo)流數(shù)據(jù)傳輸服務(wù)器生成的直播地址反饋給第二流數(shù)據(jù)客戶端。第二流數(shù)據(jù)客戶端可以通過訪問直播流數(shù)據(jù)的直播地址,從流數(shù)據(jù)服務(wù)器獲取所需的直播流數(shù)據(jù)。
直播流數(shù)據(jù)的直播地址中包括數(shù)據(jù)格式,如MP4、AVI等,可以從直播地址中提取格式封裝直播流數(shù)據(jù)時(shí)采用的數(shù)據(jù)格式。之后使用從直播地址提取的數(shù)據(jù)格式對(duì)從目標(biāo)流數(shù)據(jù)傳輸服務(wù)器獲取的直播流數(shù)據(jù)進(jìn)行格式解封裝。完成格式解封裝處理后,再進(jìn)行數(shù)據(jù)解封裝和數(shù)據(jù)解密處理,最終得到所需的流數(shù)據(jù)。
在遠(yuǎn)程監(jiān)控場(chǎng)景中,使用遠(yuǎn)程采集端如遠(yuǎn)程攝像頭采集視頻流數(shù)據(jù)供用戶查看,遠(yuǎn)程攝像頭為第一流數(shù)據(jù)客戶端,用戶使用的終端為第二流數(shù)據(jù)客戶端。為實(shí)現(xiàn)本發(fā)明實(shí)施例所述方法,預(yù)先對(duì)遠(yuǎn)程攝像頭和用戶終端進(jìn)行了改進(jìn),使得遠(yuǎn)程客戶端具有向開發(fā)方服務(wù)器獲取加密密鑰以及對(duì)采集的流數(shù)據(jù)進(jìn)行加密處理的功能,使得用戶終端具有向開發(fā)方服務(wù)器獲取解密密鑰以及對(duì)接收的流數(shù)據(jù)進(jìn)行解密處理的功能。
遠(yuǎn)程攝像頭采集視頻流數(shù)據(jù),遠(yuǎn)程攝像頭可以向第一調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求,接收第一調(diào)度服務(wù)器分配的流數(shù)據(jù)傳輸服務(wù)器和流數(shù)據(jù)標(biāo)識(shí),遠(yuǎn)程攝像頭向開發(fā)方服務(wù)器發(fā)送攜帶流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,使用開發(fā)方服務(wù)器針對(duì)流數(shù)據(jù)標(biāo)識(shí)實(shí)時(shí)生成的加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密,并將加密后的流數(shù)據(jù)及流數(shù)據(jù)標(biāo)識(shí)推送至流數(shù)據(jù)傳輸服務(wù)器。開發(fā)方服務(wù)器本地記錄流數(shù)據(jù)標(biāo)識(shí)、加密密鑰和解密密鑰的對(duì)應(yīng)關(guān)系。流數(shù)據(jù)傳輸服務(wù)器本地記錄流數(shù)據(jù)和流數(shù)據(jù)標(biāo)識(shí)的對(duì)應(yīng)關(guān)系。
用戶終端可以先向第二調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求,通過訪問第二調(diào)度服務(wù)器反饋的直播地址獲取直播流數(shù)據(jù),可以根據(jù)獲取的直播流數(shù)據(jù)攜帶的流數(shù)據(jù)標(biāo)識(shí)從開發(fā)方服務(wù)器獲取與流數(shù)據(jù)標(biāo)識(shí)對(duì)應(yīng)設(shè)置的解密密鑰。用戶終端可以使用從直播地址中提取的數(shù)據(jù)格式對(duì)接收的直播流數(shù)據(jù)進(jìn)行格式解封裝、數(shù)據(jù)解封裝處理,以及使用從開發(fā)方服務(wù)器獲取的解密密鑰對(duì)直播流數(shù)據(jù)進(jìn)行解密處理,獲得所需的直播流數(shù)據(jù)。進(jìn)一步可以在終端播放該直播流數(shù)據(jù)供用戶查看。
依據(jù)本發(fā)明實(shí)施例,使用流數(shù)據(jù)客戶端對(duì)流數(shù)據(jù)進(jìn)行加解密處理,使用開發(fā)方服務(wù)器管理流數(shù)據(jù)的加解密密鑰,加密流數(shù)據(jù)時(shí)第一流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密處理,解密流數(shù)據(jù)時(shí)第二流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取解密密鑰對(duì)加密的流數(shù)據(jù)進(jìn)行解密處理,由于流數(shù)據(jù)的加解密處理在客戶端進(jìn)行,因此減輕了服務(wù)器的工作壓力,保證了服務(wù)器的性能。同時(shí),由于開發(fā)方服務(wù)器是私有服務(wù)器,因此相比于背景技術(shù)中使用公共服務(wù)器管理加解密密鑰,本發(fā)明實(shí)施例使用開發(fā)方服務(wù)器管理加密密鑰使得加解密密鑰更加安全。
圖4示出了根據(jù)本發(fā)明實(shí)施例四的一種流數(shù)據(jù)的加密傳輸裝置的結(jié)構(gòu)框圖。圖4中的流數(shù)據(jù)的加密傳輸裝置包括:
加密密鑰獲取模塊401,用于從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰。
流數(shù)據(jù)加密模塊402,用于采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密。
數(shù)據(jù)封裝模塊403,用于按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)加密后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝。
格式封裝模塊404,用于按照設(shè)定的數(shù)據(jù)格式,對(duì)數(shù)據(jù)封裝后的流數(shù)據(jù)進(jìn)行格式封裝;
流數(shù)據(jù)發(fā)送模塊405,用于將格式封裝后的流數(shù)據(jù)通過流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端,由所述第二流數(shù)據(jù)客戶端進(jìn)行格式解封裝、數(shù)據(jù)解封裝以及解密后,獲得流數(shù)據(jù)。
依據(jù)本發(fā)明實(shí)施例,使用流數(shù)據(jù)客戶端對(duì)流數(shù)據(jù)進(jìn)行加解密處理,使用開發(fā)方服務(wù)器管理流數(shù)據(jù)的加解密密鑰,加密流數(shù)據(jù)時(shí)第一流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密處理,解密流數(shù)據(jù)時(shí)第二流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取解密密鑰對(duì)加密的流數(shù)據(jù)進(jìn)行解密處理,由于流數(shù)據(jù)的加解密處理在客戶端進(jìn)行,因此減輕了服務(wù)器的工作壓力,保證了服務(wù)器的性能。同時(shí),由于開發(fā)方服務(wù)器是私有服務(wù)器,因此相比于背景技術(shù)中使用公共服務(wù)器管理加解密密鑰,本發(fā)明實(shí)施例使用開發(fā)方服務(wù)器管理加密密鑰使得加解密密鑰更加安全。
圖5示出了根據(jù)本發(fā)明實(shí)施例五的一種流數(shù)據(jù)的加密傳輸裝置的結(jié)構(gòu)框圖。圖5中的流數(shù)據(jù)的加密傳輸裝置包括:
加密密鑰獲取模塊501,用于從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰。
流數(shù)據(jù)加密模塊502,用于采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密。
數(shù)據(jù)封裝模塊503,用于按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)加密后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝。
格式封裝模塊504,用于按照設(shè)定的數(shù)據(jù)格式,對(duì)數(shù)據(jù)封裝后的流數(shù)據(jù)進(jìn)行格式封裝。
流數(shù)據(jù)發(fā)送模塊505,用于將格式封裝后的流數(shù)據(jù)通過流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端,由所述第二流數(shù)據(jù)客戶端進(jìn)行格式解封裝、數(shù)據(jù)解封裝以及解密后,獲得流數(shù)據(jù)。
所述加密密鑰獲取模塊501包括:
密鑰獲取請(qǐng)求生成子模塊501,用于生成攜帶待加密流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器。
加密密鑰接收子模塊502,用于接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋的加密密鑰。
本發(fā)明實(shí)施例中,優(yōu)選地,所述加密密鑰接收子模塊502包括:
第一加密密鑰獲取單元,用于接收所述開發(fā)方服務(wù)器針對(duì)所述流數(shù)據(jù)標(biāo)識(shí)實(shí)時(shí)生成的加密密鑰;
或者,第二加密密鑰獲取單元,用于接收所述開發(fā)方服務(wù)器從預(yù)存的多對(duì)加密密鑰和解密密鑰中針對(duì)所述流數(shù)據(jù)標(biāo)識(shí)任選的加密密鑰。
本發(fā)明實(shí)施例中,優(yōu)選地,所述裝置還包括:
調(diào)度請(qǐng)求發(fā)送模塊,用于在所述從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰之前,向第一調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求;
流數(shù)據(jù)標(biāo)識(shí)接收模塊,用于接收所述第一調(diào)度服務(wù)器分配的流數(shù)據(jù)傳輸服務(wù)器和流數(shù)據(jù)標(biāo)識(shí)。
本發(fā)明實(shí)施例中,優(yōu)選地,所述流數(shù)據(jù)加密模塊,具體用于采用加密密鑰對(duì)流數(shù)據(jù)的各幀數(shù)據(jù)逐個(gè)進(jìn)行加密。
依據(jù)本發(fā)明實(shí)施例,使用流數(shù)據(jù)客戶端對(duì)流數(shù)據(jù)進(jìn)行加解密處理,使用開發(fā)方服務(wù)器管理流數(shù)據(jù)的加解密密鑰,加密流數(shù)據(jù)時(shí)第一流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密處理,解密流數(shù)據(jù)時(shí)第二流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取解密密鑰對(duì)加密的流數(shù)據(jù)進(jìn)行解密處理,由于流數(shù)據(jù)的加解密處理在客戶端進(jìn)行,因此減輕了服務(wù)器的工作壓力,保證了服務(wù)器的性能。同時(shí),由于開發(fā)方服務(wù)器是私有服務(wù)器,因此相比于背景技術(shù)中使用公共服務(wù)器管理加解密密鑰,本發(fā)明實(shí)施例使用開發(fā)方服務(wù)器管理加密密鑰使得加解密密鑰更加安全。
圖6示出了根據(jù)本發(fā)明實(shí)施例六的一種流數(shù)據(jù)的加密傳輸裝置的結(jié)構(gòu)框圖。圖6中的流數(shù)據(jù)的加密傳輸裝置包括:
流數(shù)據(jù)獲取模塊601,用于獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù),所述流數(shù)據(jù)由第一流數(shù)據(jù)客戶端經(jīng)過加密、數(shù)據(jù)封裝以及格式封裝后獲得。
格式解封裝模塊602,用于按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝。
數(shù)據(jù)解封裝模塊603,用于按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)格式解封裝后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)解封裝。
解密密鑰獲取模塊604,用于采用從流數(shù)據(jù)播放客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取的解密密鑰。
流數(shù)據(jù)解密模塊605,用于對(duì)數(shù)據(jù)解封裝后的流數(shù)據(jù)進(jìn)行解密,獲得解密后的流數(shù)據(jù)。
本發(fā)明實(shí)施例中,優(yōu)選地,所述裝置還包括:
請(qǐng)求生成模塊,用于在所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)之后,生成攜帶所述流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器,獲取的流數(shù)據(jù)攜帶流數(shù)據(jù)標(biāo)識(shí);
解密密鑰接收模塊,用于接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋查找的解密密鑰。
本發(fā)明實(shí)施例中,優(yōu)選地,所述流數(shù)據(jù)獲取模塊,具體用于訪問所述流數(shù)據(jù)的回放地址,從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
所述裝置還包括:
第一數(shù)據(jù)格式提取模塊,用于在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,從所述回放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
本發(fā)明實(shí)施例中,優(yōu)選地,所述流數(shù)據(jù)獲取模塊包括:
調(diào)度請(qǐng)求傳送子模塊,用于向第二調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求,所述第一流數(shù)據(jù)客戶端上傳的流數(shù)據(jù)為直播流數(shù)據(jù),所述直播流數(shù)據(jù)傳輸至多個(gè)流數(shù)據(jù)傳輸服務(wù)器;
目標(biāo)直播地址接收子模塊,用于接收第二調(diào)度服務(wù)器從多個(gè)流數(shù)據(jù)傳輸服務(wù)器中分配的目標(biāo)流數(shù)據(jù)傳輸服務(wù)器生成的目標(biāo)直播地址;
流數(shù)據(jù)得到子模塊,用于通過訪問所述目標(biāo)直播地址從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
所述裝置還包括:
第二數(shù)據(jù)格式提取模塊,用于在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,從所述直播播放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
依據(jù)本發(fā)明實(shí)施例,使用流數(shù)據(jù)客戶端對(duì)流數(shù)據(jù)進(jìn)行加解密處理,使用開發(fā)方服務(wù)器管理流數(shù)據(jù)的加解密密鑰,加密流數(shù)據(jù)時(shí)第一流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密處理,解密流數(shù)據(jù)時(shí)第二流數(shù)據(jù)客戶端從開發(fā)方服務(wù)器獲取解密密鑰對(duì)加密的流數(shù)據(jù)進(jìn)行解密處理,由于流數(shù)據(jù)的加解密處理在客戶端進(jìn)行,因此減輕了服務(wù)器的工作壓力,保證了服務(wù)器的性能。同時(shí),由于開發(fā)方服務(wù)器是私有服務(wù)器,因此相比于背景技術(shù)中使用公共服務(wù)器管理加解密密鑰,本發(fā)明實(shí)施例使用開發(fā)方服務(wù)器管理加密密鑰使得加解密密鑰更加安全。
在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。
在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中。可以把實(shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的流數(shù)據(jù)的加密傳輸設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。
本發(fā)明公開了A1、一種流數(shù)據(jù)的加密傳輸方法,包括:
從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰,并采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密;
按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)加密后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝;
按照設(shè)定的數(shù)據(jù)格式,對(duì)數(shù)據(jù)封裝后的流數(shù)據(jù)進(jìn)行格式封裝;
將格式封裝后的流數(shù)據(jù)通過流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端,由所述第二流數(shù)據(jù)客戶端進(jìn)行格式解封裝、數(shù)據(jù)解封裝以及解密后,獲得流數(shù)據(jù)。
A2、根據(jù)A1所述的方法,其中,所述從流數(shù)據(jù)播放客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰包括:
生成攜帶待加密流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器;
接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋的加密密鑰。
A3、根據(jù)A2所述的方法,其中,所述接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋的加密密鑰包括:
接收所述開發(fā)方服務(wù)器針對(duì)所述流數(shù)據(jù)標(biāo)識(shí)實(shí)時(shí)生成的加密密鑰;
或者,接收所述開發(fā)方服務(wù)器從預(yù)存的多對(duì)加密密鑰和解密密鑰中針對(duì)所述流數(shù)據(jù)標(biāo)識(shí)任選的加密密鑰。
A4、根據(jù)A1所述的方法,其中,在所述從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰之前,所述方法還包括:
向第一調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求;
接收所述第一調(diào)度服務(wù)器分配的流數(shù)據(jù)傳輸服務(wù)器和流數(shù)據(jù)標(biāo)識(shí)。
A5、根據(jù)A1所述的方法,其中,所述采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密包括:
采用加密密鑰對(duì)流數(shù)據(jù)的各幀數(shù)據(jù)逐個(gè)進(jìn)行加密。
本發(fā)明還公開了B6、一種流數(shù)據(jù)的加密傳輸方法,包括:
獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù),所述流數(shù)據(jù)由第一流數(shù)據(jù)客戶端經(jīng)過加密、數(shù)據(jù)封裝以及格式封裝后獲得;
按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝;
按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)格式解封裝后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)解封裝;
采用從流數(shù)據(jù)播放客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取的解密密鑰,對(duì)數(shù)據(jù)解封裝后的流數(shù)據(jù)進(jìn)行解密,獲得解密后的流數(shù)據(jù)。
B7、根據(jù)B6所述的方法,其中,獲取的流數(shù)據(jù)攜帶流數(shù)據(jù)標(biāo)識(shí),在所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)之后,所述方法還包括:
生成攜帶所述流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器;
接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋查找的解密密鑰。
B8、根據(jù)B6所述的方法,其中,所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)包括:
訪問所述流數(shù)據(jù)的回放地址,從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,所述方法還包括:
從所述回放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
B9、根據(jù)B6所述的方法,其中,所述第一流數(shù)據(jù)客戶端上傳的流數(shù)據(jù)為直播流數(shù)據(jù),所述直播流數(shù)據(jù)傳輸至多個(gè)流數(shù)據(jù)傳輸服務(wù)器,所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)包括:
向第二調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求;
接收第二調(diào)度服務(wù)器從多個(gè)流數(shù)據(jù)傳輸服務(wù)器中分配的目標(biāo)流數(shù)據(jù)傳輸服務(wù)器生成的目標(biāo)直播地址;
通過訪問所述目標(biāo)直播地址從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,所述方法還包括:
從所述直播播放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
本發(fā)明還公開了C10、一種流數(shù)據(jù)的加密傳輸裝置,包括:
加密密鑰獲取模塊,用于從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰;
流數(shù)據(jù)加密模塊,用于采用加密密鑰對(duì)流數(shù)據(jù)進(jìn)行加密;
數(shù)據(jù)封裝模塊,用于按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)加密后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝;
格式封裝模塊,用于按照設(shè)定的數(shù)據(jù)格式,對(duì)數(shù)據(jù)封裝后的流數(shù)據(jù)進(jìn)行格式封裝;
流數(shù)據(jù)發(fā)送模塊,用于將格式封裝后的流數(shù)據(jù)通過流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端,由所述第二流數(shù)據(jù)客戶端進(jìn)行格式解封裝、數(shù)據(jù)解封裝以及解密后,獲得流數(shù)據(jù)。
C11、根據(jù)C10所述的裝置,其中,所述加密密鑰獲取模塊包括:
密鑰獲取請(qǐng)求生成子模塊,用于生成攜帶待加密流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器;
加密密鑰接收子模塊,用于接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋的加密密鑰。
C12、根據(jù)C11所述的裝置,其中,所述加密密鑰接收子模塊包括:
第一加密密鑰獲取單元,用于接收所述開發(fā)方服務(wù)器針對(duì)所述流數(shù)據(jù)標(biāo)識(shí)實(shí)時(shí)生成的加密密鑰;
或者,第二加密密鑰獲取單元,用于接收所述開發(fā)方服務(wù)器從預(yù)存的多對(duì)加密密鑰和解密密鑰中針對(duì)所述流數(shù)據(jù)標(biāo)識(shí)任選的加密密鑰。
C13、根據(jù)C10所述的裝置,其中,所述裝置還包括:
調(diào)度請(qǐng)求發(fā)送模塊,用于在所述從第一流數(shù)據(jù)客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取加密密鑰之前,向第一調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求;
流數(shù)據(jù)標(biāo)識(shí)接收模塊,用于接收所述第一調(diào)度服務(wù)器分配的流數(shù)據(jù)傳輸服務(wù)器和流數(shù)據(jù)標(biāo)識(shí)。
C14、根據(jù)C10所述的裝置,其中:
所述流數(shù)據(jù)加密模塊,具體用于采用加密密鑰對(duì)流數(shù)據(jù)的各幀數(shù)據(jù)逐個(gè)進(jìn)行加密。
本發(fā)明還公開了D15、一種流數(shù)據(jù)的加密傳輸裝置,包括:
流數(shù)據(jù)獲取模塊,用于獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù),所述流數(shù)據(jù)由第一流數(shù)據(jù)客戶端經(jīng)過加密、數(shù)據(jù)封裝以及格式封裝后獲得;
格式解封裝模塊,用于按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝;
數(shù)據(jù)解封裝模塊,用于按照流數(shù)據(jù)傳輸服務(wù)器對(duì)應(yīng)的傳輸協(xié)議,對(duì)格式解封裝后的流數(shù)據(jù)進(jìn)行數(shù)據(jù)解封裝;
解密密鑰獲取模塊,用于采用從流數(shù)據(jù)播放客戶端對(duì)應(yīng)的開發(fā)方服務(wù)器獲取的解密密鑰;
流數(shù)據(jù)解密模塊,用于對(duì)數(shù)據(jù)解封裝后的流數(shù)據(jù)進(jìn)行解密,獲得解密后的流數(shù)據(jù)。
D16、根據(jù)D15所述的裝置,其中,所述裝置還包括:
請(qǐng)求生成模塊,用于在所述獲取從第一流數(shù)據(jù)客戶端經(jīng)流數(shù)據(jù)傳輸服務(wù)器發(fā)送至第二流數(shù)據(jù)客戶端的流數(shù)據(jù)之后,生成攜帶所述流數(shù)據(jù)的流數(shù)據(jù)標(biāo)識(shí)的密鑰獲取請(qǐng)求,并發(fā)送至開發(fā)方服務(wù)器,獲取的流數(shù)據(jù)攜帶流數(shù)據(jù)標(biāo)識(shí);
解密密鑰接收模塊,用于接收所述開發(fā)方服務(wù)器根據(jù)所述流數(shù)據(jù)標(biāo)識(shí)反饋查找的解密密鑰。
D17、根據(jù)D15所述的裝置,其中:
所述流數(shù)據(jù)獲取模塊,具體用于訪問所述流數(shù)據(jù)的回放地址,從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
所述裝置還包括:
第一數(shù)據(jù)格式提取模塊,用于在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,從所述回放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。
D18、根據(jù)D15所述的裝置,其中,所述流數(shù)據(jù)獲取模塊包括:
調(diào)度請(qǐng)求傳送子模塊,用于向第二調(diào)度服務(wù)器發(fā)送調(diào)度請(qǐng)求,所述第一流數(shù)據(jù)客戶端上傳的流數(shù)據(jù)為直播流數(shù)據(jù),所述直播流數(shù)據(jù)傳輸至多個(gè)流數(shù)據(jù)傳輸服務(wù)器;
目標(biāo)直播地址接收子模塊,用于接收第二調(diào)度服務(wù)器從多個(gè)流數(shù)據(jù)傳輸服務(wù)器中分配的目標(biāo)流數(shù)據(jù)傳輸服務(wù)器生成的目標(biāo)直播地址;
流數(shù)據(jù)得到子模塊,用于通過訪問所述目標(biāo)直播地址從所述流數(shù)據(jù)傳輸服務(wù)器獲取所需的流數(shù)據(jù);
所述裝置還包括:
第二數(shù)據(jù)格式提取模塊,用于在所述按照設(shè)定的數(shù)據(jù)格式對(duì)流數(shù)據(jù)進(jìn)行格式解封裝之前,從所述直播播放地址中提取所述流數(shù)據(jù)所采用的數(shù)據(jù)格式。