本發(fā)明涉及一種數(shù)據(jù)獲取方法及其系統(tǒng),尤其涉及一種基于授權認證的數(shù)據(jù)獲取方法及其系統(tǒng)。
背景技術:
現(xiàn)有技術中,請求獲取數(shù)據(jù)的數(shù)據(jù)獲取端一般是直接訪問存儲數(shù)據(jù)的數(shù)據(jù)中心來獲取數(shù)據(jù),這在獲取量大的時候,容易導致網(wǎng)絡擁堵甚至癱瘓,而且由于直接訪問,并沒有對訪問者的身份進行驗證,這樣會存在安全隱患,如此,既減緩了數(shù)據(jù)獲取速度又不能保證數(shù)據(jù)安全。
技術實現(xiàn)要素:
針對上述技術問題,本發(fā)明提供一種能夠保證安全高效獲取數(shù)據(jù)的基于授權認證的數(shù)據(jù)獲取方法及其系統(tǒng)。
本發(fā)明采用的技術方案為:
本發(fā)明的一實施例提供一種基于授權認證的數(shù)據(jù)獲取方法,包括以下步驟:S101:數(shù)據(jù)獲取端向授權終端發(fā)送自己的身份信息;S102:所述授權終端接收所述身份信息并提取授權證書,向所述數(shù)據(jù)獲取端發(fā)送使用與所述數(shù)據(jù)獲取端共享的第一共享加密密鑰加密的授權令牌;S103:所述數(shù)據(jù)獲取端接收所述授權令牌,使用第一共享加密密鑰加密包含請求獲取數(shù)據(jù)的數(shù)據(jù)請求信息和授權令牌的數(shù)據(jù)獲取驗證請求,并將所述數(shù)據(jù)獲取驗證請求發(fā)送給所述授權終端;S104:所述授權終端接收所述數(shù)據(jù)獲取驗證請求并進行匹配,如果匹配通過則生成數(shù)據(jù)密鑰和數(shù)據(jù)令牌,使用與所述授權代理端共享的第二共享加密密鑰對所述數(shù)據(jù)令牌進行加密和使用第一共享加密密鑰加密所述數(shù)據(jù)密鑰,并將加密后的數(shù)據(jù)令牌和數(shù)據(jù)密鑰發(fā)送給所述數(shù)據(jù)獲取端;S105:所述數(shù)據(jù)獲取端將加密后的數(shù)據(jù)令牌發(fā)送給所述授權代理端,并將自己的身份信息的使用所述數(shù)據(jù)密鑰加密后發(fā)送給所述授權代理端;S106:所述授權代理端使用所述數(shù)據(jù)密鑰解密所述數(shù)據(jù)令牌,提取數(shù)據(jù)令牌信息,并使用所述數(shù)據(jù)密鑰解密加密的身份信息,以及進行身份合法性驗證,并將驗證結果返回給所述數(shù)據(jù)獲取端;S107:所述數(shù)據(jù)獲取端基于所述驗證結果向所述授權代理端發(fā)送獲取數(shù)據(jù)的數(shù)據(jù)請求;S108:所述授權代理端接收所述數(shù)據(jù)獲取端發(fā)送的數(shù)據(jù)請求,并判斷是否存在對應于所述數(shù)據(jù)請求的數(shù)據(jù),如果有,則將相應的數(shù)據(jù)發(fā)送給所述數(shù)據(jù)獲取端,如果沒有,則執(zhí)行步驟S109;S109:所述授權代理端向數(shù)據(jù)中心發(fā)送獲取對應于所述數(shù)據(jù)請求的數(shù)據(jù)獲取請求;S110:所述數(shù)據(jù)中心基于所述數(shù)據(jù)獲取請求將對應于所述數(shù)據(jù)請求的原始數(shù)據(jù)發(fā)送給所述授權代理端,所述授權代理端檢查所述原始數(shù)據(jù)的標簽屬性來獲得緩沖信息,并使用會話密鑰加密所述原始數(shù)據(jù),并將加密的原始數(shù)據(jù)發(fā)送給所述數(shù)據(jù)獲取端。
本發(fā)明的另一實施例提供一種基于授權認證的數(shù)據(jù)獲取系統(tǒng),包括授權終端、數(shù)據(jù)獲取端、授權代理端和數(shù)據(jù)中心,所述數(shù)據(jù)獲取端通過向所述授權代理端發(fā)送經(jīng)所述授權終端授權的數(shù)據(jù)請求來獲取所述數(shù)據(jù)中心的數(shù)據(jù),所述授權代理端包括下載應用中心、更新應用中心和高速緩沖存儲器,所述授權終端與所述數(shù)據(jù)獲取端共享第一共享加密密鑰,所述授權終端與所述授權代理端共享第二共享加密密鑰;其中,向所述授權代理端發(fā)送經(jīng)所述授權終端授權的數(shù)據(jù)請求包括:數(shù)據(jù)獲取端向授權終端發(fā)送自己的身份信息;所述授權終端接收所述身份信息并提取授權證書,向所述數(shù)據(jù)獲取端發(fā)送使用第一共享加密密鑰加密的授權令牌;所述數(shù)據(jù)獲取端接收所述授權令牌,使用第一共享加密密鑰加密包含請求獲取數(shù)據(jù)的數(shù)據(jù)請求信息和授權令牌的數(shù)據(jù)獲取驗證請求,并將所述數(shù)據(jù)獲取驗證請求發(fā)送給所述授權終端;所述授權終端接收所述數(shù)據(jù)獲取驗證請求并進行匹配,如果匹配通過則生成數(shù)據(jù)密鑰和數(shù)據(jù)令牌,使用第二共享加密密鑰對所述數(shù)據(jù)令牌進行加密和使用第一共享加密密鑰加密所述數(shù)據(jù)密鑰,并將加密后的數(shù)據(jù)令牌和數(shù)據(jù)密鑰發(fā)送給所述數(shù)據(jù)獲取端;所述數(shù)據(jù)獲取端將加密后的數(shù)據(jù)令牌發(fā)送給所述授權代理端,并將自己的身份信息的使用所述數(shù)據(jù)密鑰加密后發(fā)送給所述授權代理端;所述授權代理端使用所述數(shù)據(jù)密鑰解密所述數(shù)據(jù)令牌,提取令牌信息,并使用所述數(shù)據(jù)密鑰解密加密的身份信息,以及進行身份驗證,并將驗證結果返回給所述數(shù)據(jù)獲取端;所述數(shù)據(jù)獲取端基于所述驗證結果向所述授權代理端發(fā)送獲取數(shù)據(jù)的數(shù)據(jù)請求;
所述數(shù)據(jù)獲取端基于所述驗證的數(shù)據(jù)請求獲取數(shù)據(jù)包括:所述授權代理端接收所述數(shù)據(jù)獲取端發(fā)送的數(shù)據(jù)請求,并通過其中的下載應用中心檢索高速緩沖存儲器中是否有響應于所述數(shù)據(jù)請求的數(shù)據(jù),如果有,則將相應的數(shù)據(jù)發(fā)送給所述數(shù)據(jù)獲取端,如果沒有,則通知所述授權代理端中的更新應用中心向數(shù)據(jù)中心獲取原始數(shù)據(jù),并將獲取的原始數(shù)據(jù)發(fā)送給所述下載應用中心;所述下載應用中心接收所述原始數(shù)據(jù),檢查所述原始數(shù)據(jù)的標簽屬性來獲得緩沖信息,并使用會話密鑰加密所述原始數(shù)據(jù),并將加密的原始數(shù)據(jù)發(fā)送給所述數(shù)據(jù)獲取端。
本發(fā)明提供了一種數(shù)據(jù)獲取方法及其系統(tǒng),在使用本發(fā)明獲取數(shù)據(jù)前,需要通過位于數(shù)據(jù)中心的前端的授權代理端來獲取數(shù)據(jù)中心的數(shù)據(jù),而無法直接向數(shù)據(jù)中心請求數(shù)據(jù),從而使得授權代理端可以透明的對數(shù)據(jù)進行加密。為了保證提升處理性能,授權代理端對加密結果進行了高速緩存,避免重復加密的資源消耗。
附圖說明
圖1為本發(fā)明實施例提供的數(shù)據(jù)獲取方法的流程示意圖;
圖2為本發(fā)明實施例提供的數(shù)據(jù)獲取系統(tǒng)的結構示意圖。
具體實施方式
以下,結合附圖,對本發(fā)明的基于授權認證的數(shù)據(jù)獲取方法及其系統(tǒng)進行介紹。
圖1為本發(fā)明實施例提供的數(shù)據(jù)獲取方法的流程示意圖;圖2為本發(fā)明實施例提供的數(shù)據(jù)獲取系統(tǒng)的結構示意圖。
【實施例1】
首先結合圖2對本發(fā)明的基于授權認證的數(shù)據(jù)獲取系統(tǒng)進行介紹。如圖2所示,本發(fā)明的基于授權認證的數(shù)據(jù)獲取系統(tǒng)包括授權終端、數(shù)據(jù)獲取端、授權代理端和數(shù)據(jù)中心,所述數(shù)據(jù)獲取端通過向所述授權代理端發(fā)送經(jīng)所述授權終端授權的數(shù)據(jù)請求來獲取所述數(shù)據(jù)中心的數(shù)據(jù),在數(shù)據(jù)獲取端發(fā)送授權請求和數(shù)據(jù)請求之前,所述授權終端就已經(jīng)與所述數(shù)據(jù)獲取端共享第一共享加密密鑰k1,所述授權終端就已經(jīng)與所述授權代理端共享第二共享加密密鑰k2。此外,數(shù)據(jù)獲取端與授權代理端之間的加密密鑰ks(數(shù)據(jù)密鑰)由授權終端動態(tài)生成,該加密密鑰ks具有時效性,即超過一定時間后時效。數(shù)據(jù)獲取端在獲取數(shù)據(jù)前,必須向授權終端申請授權,然后使用獲得的授權向授權代理端請求數(shù)據(jù),授權代理端使用加密密鑰ks加密數(shù)據(jù)并返回給數(shù)據(jù)獲取端。授權代理端位于數(shù)據(jù)中心的前端,設置有下載應用中心、更新應用中心和高速緩沖存儲器,可通過CDN節(jié)點訪問數(shù)據(jù)中心。數(shù)據(jù)獲取端無法直接向CDN節(jié)點請求數(shù)據(jù),數(shù)據(jù)獲取端只能通過授權代理端來獲取CDN中的數(shù)據(jù),從而使得授權代理可以透明的對數(shù)據(jù)進行加密。為了保證提升處理性能,授權代理對加密結果進行了高速緩存,避免重復加密的資源消耗。
具體地,數(shù)據(jù)獲取端獲取數(shù)據(jù)的過程如下:
(1)所述數(shù)據(jù)獲取端向授權終端發(fā)送自己的身份信息;
(2)所述授權終端接收所述身份信息并提取授權證書(包含第一共享加密密鑰k1),向所述數(shù)據(jù)獲取端發(fā)送使用第一共享加密密鑰k1加密的授權令牌;同時將授權令牌實踐存入到授權日志數(shù)據(jù)庫中。
(3)所述數(shù)據(jù)獲取端接收所述授權令牌,使用第一共享加密密鑰k1加密包含請求獲取數(shù)據(jù)的數(shù)據(jù)請求信息和授權令牌的數(shù)據(jù)獲取驗證請求,并將所述數(shù)據(jù)獲取驗證請求發(fā)送給所述授權終端。
(4)所述授權終端接收所述數(shù)據(jù)獲取驗證請求并進行匹配,如果匹配通過則生成數(shù)據(jù)密鑰ks和數(shù)據(jù)令牌,使用第二共享加密密鑰對所述數(shù)據(jù)令牌進行加密和使用第一共享加密密鑰k2加密所述數(shù)據(jù)密鑰ks,并將加密后的數(shù)據(jù)令牌和數(shù)據(jù)密鑰發(fā)送給所述數(shù)據(jù)獲取端,其中數(shù)據(jù)令牌包含包關于數(shù)據(jù)獲取端的身份信息、數(shù)據(jù)請求信息、數(shù)據(jù)密鑰、數(shù)據(jù)令牌時間戳、數(shù)據(jù)令牌生命期的信息;同時將數(shù)據(jù)令牌實踐存入到授權日志數(shù)據(jù)庫中。
(5)所述數(shù)據(jù)獲取端將加密后的數(shù)據(jù)令牌發(fā)送給所述授權代理端,并將自己的身份信息的使用所述數(shù)據(jù)密鑰加密后發(fā)送給所述授權代理端。
(6)所述授權代理端使用所述數(shù)據(jù)密鑰解密所述數(shù)據(jù)令牌,提取令牌信息,并使用所述數(shù)據(jù)密鑰解密加密的身份信息,以及進行身份驗證,并將驗證結果返回給所述數(shù)據(jù)獲取端;同時把身份驗證信息存入到授權訪問日志數(shù)據(jù)庫中。
(7)所述數(shù)據(jù)獲取端基于所述驗證結果向所述授權代理端發(fā)送獲取數(shù)據(jù)的數(shù)據(jù)請求。
(8)所述授權代理端接收所述數(shù)據(jù)獲取端發(fā)送的數(shù)據(jù)請求,并判斷是否存在對應于所述數(shù)據(jù)請求的數(shù)據(jù),具體可通過所述下載應用中心檢索所述高速緩沖存儲器中是否存在對應于所述數(shù)據(jù)請求的數(shù)據(jù)。如果有,則將相應的數(shù)據(jù)發(fā)送給所述數(shù)據(jù)獲取端,如果沒有,則向數(shù)據(jù)中心發(fā)送獲取對應于所述數(shù)據(jù)請求的數(shù)據(jù)獲取請求。
(9)所述數(shù)據(jù)中心基于所述數(shù)據(jù)獲取請求將對應于所述數(shù)據(jù)請求的原始數(shù)據(jù)發(fā)送給所述授權代理端,具體可通過所述下載應用中心請求所述更新應用中心向所述數(shù)據(jù)中心發(fā)送獲取對應于所述數(shù)據(jù)請求的數(shù)據(jù)的數(shù)據(jù)獲取請求,所述下載應用中心接收所述原始數(shù)據(jù)并檢查所述原始數(shù)據(jù)的標簽屬性來獲得可緩沖信息,例如,數(shù)據(jù)的生效期和數(shù)據(jù)的生命期等,并使用會話密鑰加密所述原始數(shù)據(jù),并將加密的原始數(shù)據(jù)發(fā)送給所述數(shù)據(jù)獲取端,如果加密后的原始數(shù)據(jù)可緩存,則所述下載應用中心將加密后的原始數(shù)據(jù)存入所述高速緩沖存儲器中,并建立緩存索引。同時下載應用中心將數(shù)據(jù)請求存入到授權訪問日志數(shù)據(jù)庫中。
CDN節(jié)點的授權代理端會周期性將授權訪問日志庫推送到授權終端的授權日志庫,授權終端的在線監(jiān)測系統(tǒng)會對授權日志庫進行分析,監(jiān)測授權證書的使用情況:比如證書對應終端安裝量、數(shù)據(jù)請求量、數(shù)據(jù)請求頻率等。
【實施例2】
接著,參考圖1使用實施例1中的基于授權認證的數(shù)據(jù)獲取系統(tǒng)獲取數(shù)據(jù)的方法進行描述。如圖1所示,本發(fā)明的基于授權認證的數(shù)據(jù)獲取方法包括以下步驟:
S101:發(fā)送身份信息
具體地,數(shù)據(jù)獲取端向授權終端發(fā)送自己的身份信息。
S102:驗證身份信息和發(fā)送授權令牌
具體地,所述授權終端接收所述身份信息并提取授權證書(包含第一共享加密密鑰k1),向所述數(shù)據(jù)獲取端發(fā)送使用與所述數(shù)據(jù)獲取端共享的第一共享加密密鑰加密的授權令牌;同時將授權令牌實踐存入到授權日志數(shù)據(jù)庫中。
S103:發(fā)送數(shù)據(jù)獲取驗證請求
具體地,所述數(shù)據(jù)獲取端接收所述授權令牌,使用第一共享加密密鑰k1加密包含請求獲取數(shù)據(jù)的數(shù)據(jù)請求信息和授權令牌的數(shù)據(jù)獲取驗證請求,并將所述數(shù)據(jù)獲取驗證請求發(fā)送給所述授權終端。
S104:發(fā)送數(shù)據(jù)令牌和數(shù)據(jù)密鑰
具體地,所述授權終端接收所述數(shù)據(jù)獲取驗證請求并進行匹配,如果匹配通過則生成數(shù)據(jù)密鑰ks和數(shù)據(jù)令牌,使用第二共享加密密鑰對所述數(shù)據(jù)令牌進行加密和使用第一共享加密密鑰k2加密所述數(shù)據(jù)密鑰ks,并將加密后的數(shù)據(jù)令牌和數(shù)據(jù)密鑰發(fā)送給所述數(shù)據(jù)獲取端,其中數(shù)據(jù)令牌包含包關于數(shù)據(jù)獲取端的身份信息、數(shù)據(jù)請求信息、數(shù)據(jù)密鑰、數(shù)據(jù)令牌時間戳、數(shù)據(jù)令牌生命期的信息;同時將數(shù)據(jù)令牌實踐存入到授權日志數(shù)據(jù)庫中。
S105:發(fā)送加密的數(shù)據(jù)令牌和身份信息
具體地,所述數(shù)據(jù)獲取端將加密后的數(shù)據(jù)令牌發(fā)送給所述授權代理端,并將自己的身份信息的使用所述數(shù)據(jù)密鑰加密后發(fā)送給所述授權代理端。
S106:發(fā)送驗證結果
具體地,所述授權代理端使用所述數(shù)據(jù)密鑰解密所述數(shù)據(jù)令牌,提取數(shù)據(jù)令牌信息,并使用所述數(shù)據(jù)密鑰解密加密的身份信息,以及進行身份合法性驗證,并將驗證結果返回給所述數(shù)據(jù)獲取端;同時把身份驗證信息存入到授權訪問日志數(shù)據(jù)庫中。
S107:發(fā)送數(shù)據(jù)請求
具體地,所述數(shù)據(jù)獲取端基于所述驗證結果向所述授權代理端發(fā)送獲取數(shù)據(jù)的數(shù)據(jù)請求;
S108:判斷是否存在相應的數(shù)據(jù),如果存在,則發(fā)送相應的數(shù)據(jù)
具體地,所述授權代理端接收所述數(shù)據(jù)獲取端發(fā)送的數(shù)據(jù)請求,并判斷是否存在對應于所述數(shù)據(jù)請求的數(shù)據(jù),具體可通過所述下載應用中心檢索所述高速緩沖存儲器中是否存在對應于所述數(shù)據(jù)請求的數(shù)據(jù)。如果有,則將相應的數(shù)據(jù)發(fā)送給所述數(shù)據(jù)獲取端,如果沒有,則執(zhí)行步驟S109;
S109:請求獲取相應的數(shù)據(jù)
具體地,所述授權代理端向數(shù)據(jù)中心發(fā)送獲取對應于所述數(shù)據(jù)請求的數(shù)據(jù)獲取請求。
S110:發(fā)送獲取的相應的數(shù)據(jù)
具體地,所述數(shù)據(jù)中心基于所述數(shù)據(jù)獲取請求將對應于所述數(shù)據(jù)請求的原始數(shù)據(jù)發(fā)送給所述授權代理端,具體可通過所述下載應用中心請求所述更新應用中心向所述數(shù)據(jù)中心發(fā)送獲取對應于所述數(shù)據(jù)請求的數(shù)據(jù)的數(shù)據(jù)獲取請求,所述下載應用中心接收所述原始數(shù)據(jù)并檢查所述原始數(shù)據(jù)的標簽屬性來獲得可緩沖信息,例如,數(shù)據(jù)的生效期和數(shù)據(jù)的生命期等,并使用會話密鑰加密所述原始數(shù)據(jù),并將加密的原始數(shù)據(jù)發(fā)送給所述數(shù)據(jù)獲取端,如果加密后的原始數(shù)據(jù)可緩存,則所述下載應用中心將加密后的原始數(shù)據(jù)存入所述高速緩沖存儲器中,并建立緩存索引。同時下載應用中心將數(shù)據(jù)請求存入到授權訪問日志數(shù)據(jù)庫中。
CDN節(jié)點的授權代理端會周期性將授權訪問日志庫推送到授權終端的授權日志庫,授權終端的在線監(jiān)測系統(tǒng)會對授權日志庫進行分析,監(jiān)測授權證書的使用情況:比如證書對應終端安裝量、數(shù)據(jù)請求量、數(shù)據(jù)請求頻率等。
本領域內(nèi)的技術人員應明白,本申請的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本申請可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。