的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0071]本發(fā)明實施例中,針對終端發(fā)送的數(shù)據(jù)下載請求,下載服務(wù)器采用預設(shè)的隨機算法生成隨機種子序列及相應(yīng)的隨機密碼流,并采用隨機密碼流對所請求的目標數(shù)據(jù)進行加密處理,然后將隨機種子序列和加密目標數(shù)據(jù)返回給終端,由于目標數(shù)據(jù)采用隨機的、高安全性的流式密碼加密傳輸,既可保證目標數(shù)據(jù)在傳輸過程中的安全性,同時,即使目標數(shù)據(jù)在傳輸過程中被惡意截獲也可避免數(shù)據(jù)內(nèi)容的泄漏,從而保證目標數(shù)據(jù)的安全性。
[0072]基于上述原理,本發(fā)明實施例提供了一種數(shù)據(jù)下載系統(tǒng),請參見圖1,該系統(tǒng)可包括:下載服務(wù)器、接入服務(wù)器及至少一個終端。其中,終端可以為筆記本電腦、手機、PAD(平板電腦)、車載終端、智能可穿戴設(shè)備等設(shè)備。終端中可以運行至少一種類型的應(yīng)用程序,包括但不限于:社交應(yīng)用程序(如即時通信應(yīng)用程序、SNS(Social Networking Services,社會性網(wǎng)絡(luò)服務(wù))應(yīng)用程序等)、游戲應(yīng)用程序、電商應(yīng)用程序等等。下載服務(wù)器可以是互聯(lián)網(wǎng)中的一個獨立服務(wù)設(shè)備,或者是由互聯(lián)網(wǎng)中的多個獨立服務(wù)設(shè)備共同構(gòu)成的集群服務(wù)設(shè)備,用于為終端提供數(shù)據(jù)下載服務(wù),此處的數(shù)據(jù)可包括但不限于:文本、圖片、音視頻等等。接入服務(wù)器可以是互聯(lián)網(wǎng)中的一個獨立服務(wù)設(shè)備,或者是由互聯(lián)網(wǎng)中的多個獨立服務(wù)設(shè)備共同構(gòu)成的集群服務(wù)設(shè)備,用于為終端提供互聯(lián)網(wǎng)接入服務(wù)。
[0073]實際應(yīng)用中,圖1所示的數(shù)據(jù)下載系統(tǒng)可以被應(yīng)用于許多互聯(lián)網(wǎng)場景中,例如:音視頻應(yīng)用場景中,下載服務(wù)器可以為互聯(lián)網(wǎng)中的音視頻應(yīng)用后臺服務(wù)器,終端可從下載服務(wù)器請求下載音頻數(shù)據(jù)。再如:社交應(yīng)用場景中,下載服務(wù)器可以為社交應(yīng)用后臺服務(wù)器,下載服務(wù)器存儲發(fā)送終端上傳的圖片、音視頻等數(shù)據(jù),接收終端則從下載服務(wù)器請求下載發(fā)送終端所上傳的這些數(shù)據(jù)?;诖?,本發(fā)明實施例中,終端可以是互聯(lián)網(wǎng)應(yīng)用程序的用戶所使用的終端設(shè)備,下載服務(wù)器可以指互聯(lián)網(wǎng)應(yīng)用程序的后臺服務(wù)器,而接入服務(wù)器可以為sso (Single Sign 0]1,單點登錄)/(301111((3011116(31:;[011,連接)(此處880/conn統(tǒng)稱為接入層)集群服務(wù)設(shè)備,多個互聯(lián)網(wǎng)應(yīng)用程序在sso/conn集群服務(wù)設(shè)備集成后,終端只需要在sso/conn集群服務(wù)設(shè)備進行一次賬號密碼登錄,sso/conn集群服務(wù)設(shè)備即可以將終端接入至多個互聯(lián)網(wǎng)應(yīng)用程序的后臺服務(wù)器中,從而使終端能夠享受互聯(lián)網(wǎng)應(yīng)用程序的后臺服務(wù)器所提供的數(shù)據(jù)下載等服務(wù)。
[0074]基于上述描述,本發(fā)明實施例提供了一種數(shù)據(jù)下載方法,該方法可應(yīng)用于圖1所示的系統(tǒng)中。請參見圖2,該方法可包括以下步驟S101-步驟S109,其中步驟S10US107-S109可以由圖1所示的任一個終端所執(zhí)行,其中步驟S102-S106可以由圖1所示的下載服務(wù)器所執(zhí)行。具體如下:
[0075]S101,終端向下載服務(wù)器發(fā)送數(shù)據(jù)下載請求,所述數(shù)據(jù)下載請求包括所請求的目標數(shù)據(jù)的下載地址及攜帶預設(shè)密鑰的鑒權(quán)票據(jù),所述下載地址包含采用所述預設(shè)密鑰加密形成的加密下載路徑。
[0076]所述目標數(shù)據(jù)可以包括但不限于:文本、圖片、音視頻等數(shù)據(jù)。所述下載地址可以為URL(Uniform Resoure Locator,統(tǒng)一資源定位符),URL可由協(xié)議部分和下載路徑部分構(gòu)成,其中協(xié)議部分定義所述目標數(shù)據(jù)的傳輸協(xié)議,此傳輸協(xié)議可包括但不限于:http (hypertext transfer protocol,超文本傳輸協(xié)議)、https(hyper text transfer protocolover secure socket layer,網(wǎng)絡(luò)協(xié)議)、ftp(f ile transfer protocol,文件傳輸協(xié)議)、file(本地文件傳輸協(xié)議)等等。下載路徑部分定義所述目標數(shù)據(jù)的所在位置,可包括:所述目標數(shù)據(jù)所屬服務(wù)器的名稱、IPdnternet Protocol,網(wǎng)絡(luò)間互連的協(xié)議)等屬性信息,以及所述目標數(shù)據(jù)的名稱、大小及在所屬服務(wù)器內(nèi)的路徑等屬性信息。鑒權(quán)票據(jù)是用于唯一標識終端用戶身份的憑證。具體地,終端在執(zhí)行步驟S101時具體執(zhí)行如下步驟sll-sl5:
[0077]sll,從接入服務(wù)器拉取所述預設(shè)密鑰以及攜帶所述預設(shè)密鑰的鑒權(quán)票據(jù)。
[0078]本發(fā)明實施例中,接入服務(wù)器可以為sso/conn集群服務(wù)設(shè)備,在此架構(gòu)中,終端通過輸入賬號密碼在sso/conn集群服務(wù)設(shè)備成功登錄后,sso/conn集群服務(wù)設(shè)備會為每一個終端用戶生成一個預設(shè)密鑰SKey,并生成用于唯一標識終端用戶身份的鑒權(quán)票據(jù)ST,該鑒權(quán)票據(jù)ST中攜帶預設(shè)密鑰SKey;之后,終端從sso/conn集群服務(wù)設(shè)備拉取該鑒權(quán)票據(jù)ST和預設(shè)密鑰SKey,并采用鑒權(quán)票據(jù)ST和預設(shè)密鑰SKey與互聯(lián)網(wǎng)應(yīng)用程序的后臺服務(wù)器(即下載服務(wù)器)進行交互而無需再輸入賬號密碼。需要說明的是,鑒權(quán)票據(jù)ST具有一定的時效,在時效規(guī)定的合法期限內(nèi)S T可以重復使用。在時效規(guī)定的合法期限之內(nèi)終端可以向s s ο /conn集群服務(wù)設(shè)備請求延長鑒權(quán)票據(jù)ST的時效(稱為“續(xù)票”),或請求更換新的鑒權(quán)票據(jù)ST(稱為“換票”)。
[0079]本步驟sll中,終端可以定期向接入服務(wù)器(sso/conn集群服務(wù)設(shè)備)請求拉取預設(shè)密鑰SKey及攜帶預設(shè)密鑰SKey的鑒權(quán)票據(jù)ST,接入服務(wù)器(sso/conn集群服務(wù)設(shè)備)向終端返回鑒權(quán)票據(jù)ST和預設(shè)密鑰SKey。需要說明的是,終端通常不具備針對鑒權(quán)票據(jù)ST的解析能力,無法通過解析鑒權(quán)票據(jù)ST來獲得其所攜帶的預設(shè)密鑰SKey,因此,本發(fā)明實施例中接入服務(wù)器(sso/conn集群服務(wù)設(shè)備)在向終端返回鑒權(quán)票ST的同時會返回預設(shè)密鑰SKey。
[0080]sl2,從所請求的目標數(shù)據(jù)的下載地址中提取下載路徑。終端可以按照URL的結(jié)構(gòu)對目標數(shù)據(jù)的URL進行解析,從中提取下載路徑部分。
[0081]sl3,采用所述預設(shè)密鑰對所述下載路徑進行加密處理形成加密下載路徑。終端采用SKey對所提取的下載路徑進行加密處理形成加密下載路徑。
[0082]sl4,生成數(shù)據(jù)下載請求,并在所述數(shù)據(jù)下載請求中攜帶包含所述加密下載路徑的下載地址以及所述鑒權(quán)票據(jù)。
[0083]sl5,將所述數(shù)據(jù)下載請求發(fā)送至下載服務(wù)器。
[0084]步驟sl2_sl5中,假設(shè)目標數(shù)據(jù)的下載地址表示為:http: //gchat.gpic.cn/resid/0,終端提取下載路徑為resid,并采用SKey將resid加密處理為Ks_tea(resid);那么形成新的下載地址表示為:http://gchat.gpic.cn/Ks_tea(resid)/0。終端可按照與下載服務(wù)器之間的通信協(xié)議進行消息封裝,生成數(shù)據(jù)下載請求,并且在該數(shù)據(jù)下載請求中攜帶上述所形成的新的下載地址http://gchat.gpic.cn/Ks_tea(resid)/0以及鑒權(quán)票據(jù)ST,并基于與下載服務(wù)器之間的通信協(xié)議將該數(shù)據(jù)下載請求傳輸至下載服務(wù)器。
[0085]S102,下載服務(wù)器接收終端發(fā)送的數(shù)據(jù)下載請求。下載服務(wù)器可基于與終端之間的通信協(xié)議接收終端發(fā)送的數(shù)據(jù)下載請求,由上述例子可知,該數(shù)據(jù)下載請求包括所請求的目標數(shù)據(jù)的下載地址http://gchat.gpic.cn/Ks_tea(resid)/0及攜帶預設(shè)密鑰SKey的鑒權(quán)票據(jù)ST。
[0086]S103,下載服務(wù)器根據(jù)所述數(shù)據(jù)下載請求獲取所述目標數(shù)據(jù)。
[0087]下載服務(wù)器在執(zhí)行步驟S103時具體執(zhí)行如下步驟s21-s24:
[0088]s21,判斷所述鑒權(quán)票據(jù)是否為合法票據(jù),若是,從所述鑒權(quán)票據(jù)中解析出所述預設(shè)密鑰。
[0089]如前述,鑒權(quán)票據(jù)ST可以唯一標識終端用戶身份,因此下載服務(wù)器利用該鑒權(quán)票據(jù)ST可以對終端用戶進行身份驗證。然而,鑒權(quán)票據(jù)ST具備時效性,因此在對終端用戶進行身份驗證之前,首先需要驗證該鑒權(quán)票據(jù)ST的合法性。本步驟s21中,下載服務(wù)器判斷鑒權(quán)票據(jù)ST是否在時效規(guī)定的合法期限內(nèi),如果是則確認鑒權(quán)票據(jù)ST為合法票據(jù),否則確認鑒權(quán)票據(jù)ST不合法,拒絕與終端建立通信連接。本發(fā)明實施例中,下載服務(wù)器(互聯(lián)網(wǎng)應(yīng)用程序的后臺服務(wù)器)通常具備針對鑒權(quán)票據(jù)ST的解析能力,因此,如果確認鑒權(quán)票據(jù)ST合法,那么,下載服務(wù)器可以對該鑒權(quán)票據(jù)ST進行解析獲得其所攜帶的預設(shè)密鑰SKey。
[0090]s22,采用所述預設(shè)密鑰對所述加密下載路徑進行解密處理。
[0091]s23,若成功解密獲得下載路徑,根據(jù)所述下載路徑獲取所述目標數(shù)據(jù)。
[0092]s24,與所述終端建立安全通道。
[0093]步驟s22-s24中,下載服務(wù)器采用SKey對下載地址中的加密下載路徑進行解密處理,按照上述例子,即采用SKey對Ks_tea(resid)進行解密處理,如果能夠成功還原為resid,表明數(shù)據(jù)下載請求在傳輸過程中未被惡意篡改,同時表明發(fā)出該數(shù)據(jù)下載請求的終端為合法終端,其終端用戶身份驗證成功。進一步,下載服務(wù)器可以根據(jù)還原出來的下載路徑resid獲取目標數(shù)據(jù),并與終端建立安全通道,以方便后續(xù)利用安全通道將目標數(shù)據(jù)反饋至終端。此處,安全通道是指終端與下載服務(wù)器之間所建立的、用于安全地進行數(shù)據(jù)傳輸?shù)男诺馈?br>[0094]S104,下載服務(wù)器采用預設(shè)的隨機算法生成隨機種子序列,并根據(jù)所述隨機種子序列生成