專利名稱:基于標識的應用服務網絡訪問方法及系統的制作方法
技術領域:
本發明涉及數字信息網絡技術領域,尤其涉及一種基于標識的應用服務網絡訪問方法及系統。
背景技術:
隨著網絡技術的日新月異,發展出越來越多類型的應用服務,而且這樣的應用服務還在不斷地高速增長。應用服務器作為網絡中的一種實體,根據用戶端的業務需求,提供可訪問的途徑,使用戶能享受到相應的應用服務,即用戶端可以通過應用服務器,訪問存放 在各種系統中的各種類型的信息以及享受相關的服務,例如應用服務器可以用于多媒體新聞發布、在線直播、網絡廣告、電子商務、視頻點播、遠程教育、遠程醫療、網絡電臺、實時視頻會議等網絡應用服務的方方面面。隨著網絡規模和復雜度的不斷提高,網絡逐漸具有更大的開放性,其安全問題也日益引起廣大使用者的高度重視。雖然應用服務器只給通過認證的用戶端提供訪問權限,但是對于用戶端來說,大多數情況下并沒有提供一個驗證應用服務器的合法性的途徑。這將導致一個問題,容易偽造應用服務器的身份來欺騙用戶端接入,實現騙取用戶端的資費、泄露用戶端信息和提供低劣服務等非法目的,從而嚴重影響應用服務器服務提供商的形象和聲譽,導致市場占用率的下降。為解決這個問題,目前普遍采用管理機構對應用服務器和用戶端的身份進行認證,使非法的應用服務器和非法的用戶端即使接入了應用服務網絡,也無法在網絡中進行業務數據的交互和傳輸。目前,網絡的認證和鑒別等操作都是基于PKI (Public Key Infrastructure,公鑰基礎設施)技術的,其存在以下缺點在網絡中,必然存在各種不同應用服務器服務提供商建立的不同的應用服務網絡,對于用戶端來說,每次接入到一個不同的應用服務網絡都需要進行用戶端信息的注冊和身份的驗證等工作。而且有些服務提供商自己構建CA(Certificate Authority,認證中心)為用戶端頒發數字證書,對于用戶端來說,面對著數量越來越龐大的應用服務器服務提供商,必須持有一大堆的證書才能獲得相應的應用服務,這對于用戶端來說是非常不便的。
發明內容
本發明實施例提出一種基于標識的應用服務網絡訪問方法及系統,在大規模應用服務網絡中對應用服務器和用戶端進行統一認證,使用戶端能夠以同一身份標識訪問不同應用服務器,為用戶帶來很大的便利。本發明實施例提供的基于標識的應用服務網絡訪問方法,包括
在用戶端接入應用服務器的過程中,鑒別服務器根據所述用戶端和所述應用服務器的身份標識,獲取所述用戶端和所述應用服務器的證書,對所述用戶端和所述應用服務器的身份進行驗證,且在所述用戶端和所述應用服務器的身份驗證通過后,所述用戶端和所述應用服務器協商獲得消息鑒別密鑰;所述用戶端和所述應用服務器根據所述消息鑒別密鑰,進行應用服務數據的保密傳輸。本發明實施例提供的應用服務器系統,包括用戶端、應用服務器和鑒別服務器;
在所述用戶端接入所述應用服務器的過程中,所述鑒別服務器根據所述用戶端和所述
應用服務器的身份標識,獲取所述用戶端和所述應用服務器的證書,對所述用戶端和所述應用服務器的身份進行驗證,且在所述用戶端和所述應用服務器的身份驗證通過后,所述用戶端和所述應用服務器協商獲得消息鑒別密鑰;
所述用戶端和所述應用服務器根據所述消息鑒別密鑰,進行應用服務數據的保密傳輸。本發明實施例提供的基于標識的應用服務網絡訪問方法及系統,適用于大規模應用服務網絡,鑒別服務器為接入應用服務網絡中的每個用戶端和每個應用服務器頒發證書,并保存證書、注冊信息和身份標識的對應關系。在用戶端接入應用服務器的過程中,鑒別服務器根據用戶端和應用服務器的身份標識,獲取用戶端和應用服務器的證書,對應用服務器和用戶端進行統一認證,使用戶端能夠以同一身份標識訪問不同應用服務器,為用戶帶來很大的便利。而且,在用戶端接入應用服務器的過程中,使用身份標識代替證書描述各個角色的身份信息,減少了接入過程中傳遞消息的報文長度,可以降低通信負荷,極大地提高通信效率。
圖I是本發明提供的基于標識的應用服務網絡訪問方法的一個實施例的流程示意 圖2是本發明提供的應用服務器系統的一個實施例的結構示意圖。
具體實施例方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。參見圖1,是本發明提供的基于標識的應用服務網絡訪問方法的一個實施例的流程不意圖。本實施例提供的基于標識的應用服務網絡訪問方法,包括
在用戶端接入應用服務器的過程中,鑒別服務器根據所述用戶端和所述應用服務器的身份標識,獲取所述用戶端和所述應用服務器的證書,對所述用戶端和所述應用服務器的身份進行驗證,且在所述用戶端和所述應用服務器的身份驗證通過后,所述用戶端和所述應用服務器協商獲得消息鑒別密鑰;
所述用戶端和所述應用服務器根據所述消息鑒別密鑰,進行應用服務數據的保密傳輸。其中,在所述用戶端接入所述應用服務器之前,還包括
所述鑒別服務器對所述用戶端和所述應用服務器進行注冊,發放證書和對應的私鑰。
所述鑒別服務器綁定并維護所述用戶端的證書、注冊信息和身份標識的對應關系,以及所述應用服務器的證書、注冊信息和身份標識的對應關系。所述鑒別 服務器在本地保存所述鑒別服務器的證書、對應的私鑰和身份標識,所述用戶端的證書、注冊信息和身份標識,以及所述應用服務器的證書、注冊信息和身份標識。所述應用服務器在本地保存所述應用服務器的證書、對應的私鑰和身份標識,所述鑒別服務器的證書和身份標識,以及所述用戶端的證書和身份標識。所述用戶端在本地保存所述用戶端的證書、對應的私鑰和身份標識,所述鑒別服務器的證書和身份標識,以及所述應用服務器的證書和身份標識。具體實施時,當一個應用服務器接入到應用服務器系統中時,需要向鑒別服務器申請頒發一個應用服務器證書和對應的私鑰,并綁定身份標識。此外,應用服務器在本地緩存鑒別服務器證書及其身份標識。同理,當用戶端接入到應用服務器系統中時,同樣需要鑒別服務器頒發一個用戶端證書和對應的私鑰,并綁定身份標識。此外,用戶端在本地緩存鑒別服務器證書及其身份標識。其中,用戶端的身份標識、應用服務器的身份標識和鑒別服務器的身份標識是唯一的,分別用于描述用戶端、應用服務器和鑒別服務器的身份。所述身份標識可以是從證書中提取出的證書持有者、證書頒發者和證書序列號等信息,或者是對上述信息進行組合后獲得的信息,或者其他可以描述其唯一性的信息。如圖I所示,在用戶端接入應用服務器的過程中,所述用戶端和所述應用服務器通過鑒別服務器驗證雙方的身份標識,并獲得消息鑒別密鑰,具體包括以下步驟sfse
Si、所述用戶端接入應用服務器時,構建接入請求消息,使用用戶端證書私鑰對所述接入請求消息進行簽名后,發送給應用服務器;所述接入請求消息包含用戶端身份標識和第一隨機數。具體的,用戶端接入應用服務器系統時,產生一個用戶端隨機數,即第一隨機數。然后根據用戶端信息、用戶端證書公鑰(從證書中提取)、用戶端身份標識、第一隨機數等字段構建接入請求消息,并使用用戶端證書私鑰對所述接入請求消息進行簽名后,發送給應用服務器。S2、所述應用服務器接收所述接入請求消息,使用用戶端證書公鑰驗證所述接入請求消息的簽名的有效性;在簽名驗證通過后,保存所述接入請求消息中的用戶端身份標識和第一隨機數,且構建鑒別請求消息,使用應用服務器證書私鑰對所述鑒別請求消息進行簽名后,發送給鑒別服務器;所述鑒別請求消息包含用戶端身份標識、第一隨機數、應用服務器身份標識和第二隨機數。具體的,應用服務器接收到所述接入請求消息后,進行如下處理
5201、從應用服務器的本地存儲器中讀取用戶端證書,使用用戶端證書公鑰驗證所述接入請求消息的簽名的有效性,若簽名驗證失敗,則接入過程失敗;若簽名驗證通過,則執行 S202 S204 ;
5202、根據所述接入請求消息中的用戶端信息,確定用戶端的業務權限和服務規則;
5203、確定用戶端相關信息有效后,在應用服務器本地保存所述接入請求消息中的用戶端身份標識和第一隨機數;并且,產生應用服務器隨機數,即第二隨機數,在應用服務器本地保存所述第二隨機數;
S204、根據用戶端身份標識、應用服務器身份標識、第一隨機數和第二隨機數構建鑒別請求消息,并使用應用服務器證書私鑰對所述鑒別請求消息進行簽名后,發送給鑒別服務器。S3、所述鑒別服務器接收所述鑒別請求消息,根據所述鑒別請求消息中的用戶端身份標識和應用服務器身份標識,獲取對應的用戶端證書和應用服務器證書;使用所述應用服務器證書公鑰驗證所述鑒別請求消息的簽名的有效性,以及驗證所述用戶端證書和所述應用服務器證書的有效性,獲得身份驗證結果;構建鑒別響應消息,使用鑒別服務器證書私鑰對所述鑒別響應消息進行簽名后,發送給所述應用服務器;所述鑒別響應消息包含身份驗證結果、第一隨機數、第二隨機數、用戶端身份標識和應用服務器身份標識。具體的,鑒別服務器接收到所述鑒別請求消息后,進行如下處理
5301、根據所述鑒別請求消息中的用戶端身份標識和應用服務器身份標識,查詢到與所述身份標識綁定的證書信息,進而從鑒別服務器的本地存儲器中讀取對應的用戶端證書和應用服務器證書,并執行S302飛303 ;若無法查詢或無法獲取證書,則接入過程失敗;
5302、提取應用服務器證書公鑰,使用所述應用服務器證書公鑰驗證所述鑒別請求消息的簽名的有效性,并驗證應用服務器證書和用戶端證書的有效期、吊銷信息和策略等信息,判斷證書的有效性,獲得應用服務器和用戶端的身份驗證結果;
5303、根據身份驗證結果、第一隨機數、第二隨機數、用戶端身份標識和應用服務器身份標識構建鑒別響應消息,使用鑒別服務器證書私鑰對所述鑒別響應消息進行簽名后,發送給所述應用服務器。S4、所述應用服務器接收所述鑒別響應消息,使用鑒別服務器證書公鑰驗證所述鑒別響應消息的簽名的有效性;在簽名驗證通過后,判斷所述鑒別響應消息中的身份驗證結果、隨機數和身份標識是否有效,若任意一項無效,則接入失敗;若每一項都有效,則產生業務密鑰,使用用戶端證書公鑰對所業務密鑰進行加密,獲得業務密鑰密文,且構建接入響應消息,使用應用服務器證書私鑰對所述接入響應消息進行簽名后,發送給所述用戶端;所述接入響應消息包含所述鑒別響應消息、第一隨機數、第二隨機數、用戶端身份標識、應用服務器身份標識和業務密鑰密文。具體的,應用服務器接收到所述鑒別響應消息后,進行如下處理
5401、從應用服務器的本地存儲器中讀取鑒別服務器證書,使用鑒別服務器證書公鑰驗證所述鑒別響應消息的簽名,判斷簽名是否有效;
5402、根據所述鑒別響應消息中的身份驗證結果,判斷所述應用服務器和所述用戶端的身份是否有效;
5403、從應用服務器的本地存儲器中讀取第一隨機數和第二隨機數,分別對應地與所述鑒別響應消息中的第一隨機數和第二隨機數進行比較,判斷隨機數是否一致;
5404、從應用服務器的本地存儲器中讀取應用服務器身份標識和用戶端身份標識,分別對應地與所述鑒別響應消息中的應用服務器身份標識和用戶端身份標識進行比較,判斷身份標識是否一致;
如果上述S401 S404任意一項的判斷結果為否,則接入失敗;如果上述S401 S404的判斷結果全部為是,則執行S405 S406 ;5405、實時產生或者預先產生業務密鑰(例如隨機數業務密鑰),并保存所述業務密鑰;使用用戶端證書公鑰對所述業務密鑰進行加密,獲得業務密鑰密文;同時將所述業務密鑰綁定到業務密鑰信息中;其中,所述業務密鑰信息除了包含業務密鑰,還包含業務密鑰的索引等信息;
5406、根據所述鑒別響應消息、第一隨機數、第二隨機數、用戶端身份標識、應用服務器身份標識、業務密鑰密文和業務密鑰信息構建接入響應消息,使用應用服務器證書私鑰對所述接入響應消息進行簽名后,發送給所述用戶端。S5、所述用戶端接收所述接入響應消息,使用應用服務器證書公鑰驗證所述接入響應消息的簽名的有效性,使用鑒別服務器證書公鑰驗證所述接入響應消息中的鑒別響應消息的簽名;在簽名驗證通過后,判斷所述接入響應消息中的身份驗證結果、隨機數和身份標識是否有效,若任意一項無效,則接入失敗;若每一項都有效,則使用用戶端證書私鑰解密所述接入響應消息中的業務密鑰密文,獲得業務密鑰;根據所述業務密鑰、第一隨機數和第二隨機數計算出消息鑒別密鑰和消息鑒別碼,且構建接入確認消息,發送給所述應用服務器;所述接入確認消息包含第一隨機數、第二隨機數、用戶端身份標識、應用服務器身份 標識、業務密鑰和消息鑒別碼。具體的,用戶端接收到所述接入響應消息后,進行如下處理
5501、從用戶端的本地存儲器中讀取應用服務器證書和鑒別服務器證書,使用應用服務器證書公鑰驗證所述接入響應消息的簽名,使用鑒別服務器證書公鑰驗證所述接入響應消息中的鑒別響應消息的簽名,判斷簽名是否有效;
5502、根據所述鑒別響應消息中的身份驗證結果,判斷所述應用服務器和所述用戶端的身份驗證是否有效;
5503、從用戶端的本地存儲器中讀取第一隨機數和第二隨機數,分別對應地與所述接入響應消息中的第一隨機數和第二隨機數進行比較,判斷隨機數是否一致;
5504、從用戶端的本地存儲器中讀取應用服務器身份標識和用戶端身份標識,分別對應地與所述接入響應消息中的應用服務器身份標識和用戶端身份標識進行比較,判斷身份標識是否一致;
如果上述S501 S504任意一項的判斷結果為否,則接入失敗;如果上述3501飛504的判斷結果全部為是,則執行S505 S507 ;
5505、從用戶端的本地存儲器中讀取用戶端證書私鑰,使用所述用戶端證書私鑰解密所述接入響應消息中的業務密鑰密文,獲得業務密鑰,并在本地保存所述業務密鑰以及所述接入響應消息中的業務密鑰信息;
5506、根據所述業務密鑰、第一隨機數和第二隨機數推導出消息鑒別密鑰,并在本地保存所述消息鑒別密鑰;
5507、根據第一隨機數、第二隨機數、用戶端身份標識、應用服務器身份標識和業務密鑰信息構建接入確認消息,使用消息鑒別密鑰計算得到消息鑒別碼,將該消息鑒別碼附在所述接入確認消息中,然后發送給所述應用服務器。S6、所述應用服務器接收所述接入確認消息,根據本地保存的業務密鑰、第一隨機數和第二隨機數計算消息鑒別密鑰和消息鑒別碼,當計算出的消息鑒別碼與所述接入確認消息的消息鑒別碼相同時,判斷所述接入確認消息中的隨機數、身份標識和業務密鑰是否有效,若任意一項無效,則接入失敗;若每一項都有效,則保存所述消息鑒別密鑰,并打開應用服務資源平臺。具體的,應用服務器接收到所述接入確認消息后,進行如下處理
5601、根據應用服務器本地保存的業務密鑰、第一隨機數和第二隨機數計算消息鑒別密鑰,并根據所述消息鑒別密鑰計算出消息鑒別碼,判斷計算出來的消息鑒別碼與所述接入確認消息的消息鑒別碼是否相同;若相同,則保存所述消息鑒別密鑰,并執行S602 S604 ;若不同,則接入失敗;
5602、從應用服務器的本地存儲器中讀取第一隨機數和第二隨機數,分別對應地與所述接入確認消息中的第一隨機數和第二隨機數進行比較,判斷隨機數是否一致;
5603、從應用服務器的本地存儲器中讀取應用服務器身份標識和用戶端身份標識,分別對應地與所述接入確認消息中的應用服務器身份標識和用戶端身份標識進行比較,判斷身份標識是否一致;
5604、從應用服務器的本地存儲器中讀取業務密鑰信息,與所述接入確認消息中的業務密鑰信息進行比較,判斷是否一致;
如果上述S602 S604任意一項的判斷結果為否,則接入失敗;如果上述S602 S604的判斷結果全部為是,則執行S605;
5605、保存所述消息鑒別密鑰,并打開應用服務資源平臺。至此,用戶端成功接入應用服務器,完成了基于身份標識的雙向身份鑒別,同時完成用戶端和應用服務器間消息鑒別密鑰的同步。用戶端和應用服務器執行上述步驟Sf S6,完成相互的身份驗證和消息鑒別密鑰同步后,即可進行應用服務數據的保密傳輸。如圖I所示,用戶端和應用服務器之間的數據傳輸,具體包括以下步驟S7飛10
S7、所述用戶端根據業務使用需求,生成含有用戶端身份標識的業務請求消息,并發送
給所述應用服務器。S8、所述應用服務器接收到所述業務請求消息后,根據所述業務請求消息中的用戶端身份標識,判斷所述用戶端是否通過身份驗證。S9、所述應用服務器在所述用戶端通過身份驗證時,根據所述業務請求消息從存儲器中讀取對應的應用服務數據,在所述應用服務數據中綁定應用服務器標識,使用消息鑒別密鑰對設有身份標識的應用服務數據進行加密,生成應用服務數據包,并發送給所述用戶端;若所述用戶端未通過身份驗證,則不向所述用戶端提供應用服務數據。S10、所述用戶端接收所述應用服務數據包,使用消息鑒別密鑰對所述應用服務數據包進行解密,獲得應用服務數據和應用服務器身份標識;根據所述應用服務器身份標識判斷所述應用服務器是否通過身份驗證,若通過身份驗證,則將所述應用服務數據提供給用戶使用;若未通過身份驗證,則丟棄所述應用服務數據。此外,所述應用服務器還保存應用服務資源,以及接入過程中的隨機數、業務密鑰和消息鑒別密鑰。所述用戶端還保存接收到的應用服務數據,以及接入過程中的隨機數、業務密鑰和消息鑒別密鑰。本發明實施例提供的基于標識的應用服務網絡訪問方法,適用于大規模應用服務網絡,鑒別服務器為接入應用服務網絡中的每個用戶端和每個應用服務器頒發證書,并保存證書、注冊信息和身份標識的對應關系。在用戶端接入應用服務器的過程中,鑒別服務器根據用戶端和應用服務器的身份標識,獲取用戶端和應用服務器的證書,對應用服務器和用戶端進行統一認證,使用戶端能夠以同一身份標識訪問不同應用服務器,為用戶帶來很大的便利。而且,在用戶端接入應用服務器的過程中,使用身份標識代替證書描述各個角色的身份信息,減少了接入過程中傳遞消息的報文長度,可以降低通信負荷,極大地提高通信效率。本發明實施例還提供一種應用服務器系統,能夠實現上述的基于標識的應用服務網絡訪問方法的所有處理流程。 參見圖2,是本發明提供的應用服務器系統的一個實施例的結構示意圖。本實施例提供的應用服務器系統,包括用戶端3、應用服務器2和鑒別服務器I。在用戶端3接入所述應用服務器2的過程中,鑒別服務器I根據用戶端3和應用服務器2的身份標識,獲取用戶端3和應用服務器2的證書,對用戶端3和應用服務器2的身份進行驗證,且在用戶端3和應用服務器2的身份驗證通過后,用戶端3和應用服務器2協商獲得消息鑒別密鑰。用戶端3和應用服務器2根據所述消息鑒別密鑰,進行應用服務數據的保密傳輸。具體的,所述應用服務器2包括第一接入處理單元21,所述用戶端3包括第二接入處理單元31,所述鑒別服務器I包括有效性驗證單元11。所述用戶端的第二接入處理單元,用于在所述用戶端接入應用服務器時構建接入請求消息,使用用戶端證書私鑰對所述接入請求消息進行簽名后,發送給應用服務器;所述接入請求消息包含用戶端身份標識和第一隨機數。所述應用服務器的第一接入處理單元,用于接收所述接入請求消息,使用用戶端證書公鑰驗證所述接入請求消息的簽名的有效性;在簽名驗證通過后,保存所述接入請求消息中的用戶端身份標識和第一隨機數,且構建鑒別請求消息,使用應用服務器證書私鑰對所述鑒別請求消息進行簽名后,發送給鑒別服務器;所述鑒別請求消息包含用戶端身份標識、第一隨機數、應用服務器身份標識和第二隨機數。所述鑒別服務器的有效性驗證單元,用于接收所述鑒別請求消息,根據所述鑒別請求消息中的用戶端身份標識和應用服務器身份標識,獲取對應的用戶端證書和應用服務器證書;使用所述應用服務器證書公鑰驗證所述鑒別請求消息的簽名的有效性,以及驗證所述用戶端證書和所述應用服務器證書的有效性,獲得身份驗證結果;構建鑒別響應消息,使用鑒別服務器證書私鑰對所述鑒別響應消息進行簽名后,發送給所述應用服務器;所述鑒別響應消息包含身份驗證結果、第一隨機數、第二隨機數、用戶端身份標識和應用服務器身份標識。所述應用服務器的第一接入處理單元,還用于接收所述鑒別響應消息,使用鑒別服務器證書公鑰驗證所述鑒別響應消息的簽名的有效性;在簽名驗證通過后,判斷所述鑒別響應消息中的身份驗證結果、隨機數和身份標識是否有效,若任意一項無效,則接入失敗;若每一項都有效,則產生業務密鑰,使用用戶端證書公鑰對所業務密鑰進行加密,獲得業務密鑰密文,且構建接入響應消息,使用應用服務器證書私鑰對所述接入響應消息進行簽名后,發送給所述用戶端;所述接入響應消息包含所述鑒別響應消息、第一隨機數、第二隨機數、用戶端身份標識、應用服務器身份標識和業務密鑰密文。所述用戶端的第二接入處理單元,還用于接收所述接入響應消息,使用應用服務器證書公鑰驗證所述接入響應消息的簽名的有效性,使用鑒別服務器證書公鑰驗證所述接入響應消息中的鑒別響應消息的簽名;在簽名驗證通過后,判斷所述接入響應消息中的身份驗證結果、隨機數和身份標識是否有效,若任意一項無效,則接入失敗;若每一項都有效,則使用用戶端證書私鑰解密所述接入響應消息中的業務密鑰密文,獲得業務密鑰;根據所述業務密鑰、第一隨機數和第二隨機數計算出消息鑒別密鑰和消息鑒別碼,且構建接入確認消息,發送給所述應用服務器;所述接入確認消息包含第一隨機數、第二隨機數、用戶端身份標識、應用服務器身份標識、業務密鑰和消息鑒別碼。所述應用服務器的第一接入處理模塊,還用于接收所述接入確認消息,根據本地保存的業務密鑰、第一隨機數和第二隨機數計算消息鑒別密鑰和消息鑒別碼,當計算出的消息鑒別碼與所述接入確認消息的消息鑒別碼相同時,判斷所述接入確認消息中的隨機數、身份標識和業務密鑰是否有效,若任意一項無效,則接入失敗;若每一項都有效,則保存所述消息鑒別密鑰,并打開應用服務資源平臺。 進一步的,所述鑒別服務器I還包括注冊單元12、身份標識管理單元13和第一存儲單元14。所述注冊單元12,用于對所述用戶端和所述應用服務器進行注冊,發放證書和對應的私鑰。所述身份標識管理單元13,用于綁定并維護所述用戶端的證書、注冊信息和身份標識的對應關系,以及所述應用服務器的證書、注冊信息和身份標識的對應關系。所述第一存儲單元14,用于保存所述鑒別服務器的證書、對應的私鑰和身份標識,所述用戶端的證書、注冊信息和身份標識,以及所述應用服務器的證書、注冊信息和身份標識。所述應用服務器2還包括第二存儲單元22,用于保存所述應用服務器的證書、對應的私鑰和身份標識,所述鑒別服務器的證書和身份標識,以及所述用戶端的證書和身份標識。所述用戶端還包括第三存儲單元32,用于保存所述用戶端的證書、對應的私鑰和身份標識,所述鑒別服務器的證書和身份標識,以及所述應用服務器的證書和身份標識。再進一步的,所述應用服務器2還包括第一應用管理單元23和第一數據傳輸單元24 ;所述用戶端3還包括第二應用管理單元33和第二數據傳輸單元34。所述用戶端3的第二應用管理單元33,用于根據業務使用需求,生成含有用戶端身份標識的業務請求消息,并發送給所述應用服務器。所述應用服務器2的第一應用管理單元23,用于接收到所述業務請求消息后,根據所述業務請求消息中的用戶端身份標識,判斷所述用戶端是否通過身份驗證。所述應用服務器2的第一數據傳輸單元24,用于在所述用戶端通過身份驗證時,根據所述業務請求消息從存儲器中讀取對應的應用服務數據,在所述應用服務數據中綁定應用服務器標識,使用消息鑒別密鑰對設有身份標識的應用服務數據進行加密,生成應用服務數據包,并發送給所述用戶端;若所述用戶端未通過身份驗證,則不向所述用戶端提供應用服務數據。
所述用戶端3的第二數據傳輸單元34,用于接收所述應用服務數據包,使用消息鑒別密鑰對所述應用服務數據包進行解密,獲得應用服務數據和應用服務器身份標識;根據所述應用服務器身份標識判斷所述應用服務器是否通過身份驗證,若通過身份驗證,則將所述應用服務數據提供給用戶使用;若未通過身份驗證,則丟棄所述應用服務數據。此外,所述第二存儲單元22還用于保存應用服務資源,以及接入過程中的隨機數、業務密鑰和消息鑒別密鑰。所述第三存儲單元32還用于保存接收到的應用服務數據,以及接入過程中的隨機數、業務密鑰和消息鑒別密鑰。本發明實施例提供的基于標識的應用服務網絡訪問方法及系統,具有如下有益效果
(I)、鑒別服務器為接入應用服務網絡中的每個用戶端和每個應用服務器頒發證書,并 保存證書、注冊信息和身份標識的對應關系;在用戶端接入應用服務器的過程中,鑒別服務器根據用戶端和應用服務器的身份標識,獲取用戶端和應用服務器的證書,對應用服務器和用戶端進行統一認證,使用戶端能夠以同一身份標識訪問不同應用服務器。(2)、在用戶端接入應用服務器的過程中,使用身份標識代替證書描述各個角色的身份信息,減少了接入過程中傳遞消息的報文長度,可以降低通信負荷,極大地提高通信效率。( 3 )、用戶端和應用服務器通過鑒別服務器驗證雙方的身份標識后,應用服務器向用戶端分發消息鑒別密鑰,用于進行視頻數據的保密傳輸,避免了網絡非法入侵者截獲數據并使用。(4)、本發明賦予應用服務器以獨立的身份標識,基于應用服務器身份標識的可區分性,方便監管,同時用戶端、應用服務器以及鑒別服務器之間在接入過程中的通信無需經過額外的安全信道,節約了使用成本。本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質中,該程序在執行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機存儲記憶體(Random AccessMemory, RAM)等。以上所述是本發明的優選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也視為本發明的保護范圍。
權利要求
1.一種基于標識的應用服務網絡訪問方法,其特征在于,包括 在用戶端接入應用服務器的過程中,鑒別服務器根據所述用戶端和所述應用服務器的身份標識,獲取所述用戶端和所述應用服務器的證書,對所述用戶端和所述應用服務器的身份進行驗證,且在所述用戶端和所述應用服務器的身份驗證通過后,所述用戶端和所述應用服務器協商獲得消息鑒別密鑰; 所述用戶端和所述應用服務器根據所述消息鑒別密鑰,進行應用服務數據的保密傳 輸。
2.如權利要求I所述的基于標識的應用服務網絡訪問方法,其特征在于,所述在用戶端接入應用服務器的過程中,鑒別服務器根據所述用戶端和所述應用服務器的身份標識,獲取所述用戶端和所述應用服務器的證書,對所述用戶端和所述應用服務器的身份進行驗證,且在所述用戶端和所述應用服務器的身份驗證通過后,所述用戶端和所述應用服務器協商獲得消息鑒別密鑰,包括 ·51、所述用戶端接入應用服務器時,構建接入請求消息,使用用戶端證書私鑰對所述接入請求消息進行簽名后,發送給應用服務器;所述接入請求消息包含用戶端身份標識和第一隨機數; ·52、所述應用服務器接收所述接入請求消息,使用用戶端證書公鑰驗證所述接入請求消息的簽名的有效性;在簽名驗證通過后,保存所述接入請求消息中的用戶端身份標識和第一隨機數,且構建鑒別請求消息,使用應用服務器證書私鑰對所述鑒別請求消息進行簽名后,發送給鑒別服務器;所述鑒別請求消息包含用戶端身份標識、第一隨機數、應用服務器身份標識和第二隨機數; · 53、所述鑒別服務器接收所述鑒別請求消息,根據所述鑒別請求消息中的用戶端身份標識和應用服務器身份標識,獲取對應的用戶端證書和應用服務器證書;使用所述應用服務器證書公鑰驗證所述鑒別請求消息的簽名的有效性,以及驗證所述用戶端證書和所述應用服務器證書的有效性,獲得身份驗證結果;構建鑒別響應消息,使用鑒別服務器證書私鑰對所述鑒別響應消息進行簽名后,發送給所述應用服務器;所述鑒別響應消息包含身份驗證結果、第一隨機數、第二隨機數、用戶端身份標識和應用服務器身份標識; · 54、所述應用服務器接收所述鑒別響應消息,使用鑒別服務器證書公鑰驗證所述鑒別響應消息的簽名的有效性;在簽名驗證通過后,判斷所述鑒別響應消息中的身份驗證結果、隨機數和身份標識是否有效,若任意一項無效,則接入失敗;若每一項都有效,則產生業務密鑰,使用用戶端證書公鑰對所業務密鑰進行加密,獲得業務密鑰密文,且構建接入響應消息,使用應用服務器證書私鑰對所述接入響應消息進行簽名后,發送給所述用戶端;所述接入響應消息包含所述鑒別響應消息、第一隨機數、第二隨機數、用戶端身份標識、應用服務器身份標識和業務密鑰密文; ·55、所述用戶端接收所述接入響應消息,使用應用服務器證書公鑰驗證所述接入響應消息的簽名的有效性,使用鑒別服務器證書公鑰驗證所述接入響應消息中的鑒別響應消息的簽名;在簽名驗證通過后,判斷所述接入響應消息中的身份驗證結果、隨機數和身份標識是否有效,若任意一項無效,則接入失敗;若每一項都有效,則使用用戶端證書私鑰解密所述接入響應消息中的業務密鑰密文,獲得業務密鑰;根據所述業務密鑰、第一隨機數和第二隨機數計算出消息鑒別密鑰和消息鑒別碼,且構建接入確認消息,發送給所述應用服務器;所述接入確認消息包含第一隨機數、第二隨機數、用戶端身份標識、應用服務器身份標識、業務密鑰和消息鑒別碼; S6、所述應用服務器接收所述接入確認消息,根據本地保存的業務密鑰、第一隨機數和第二隨機數計算消息鑒別密鑰和消息鑒別碼,當計算出的消息鑒別碼與所述接入確認消息的消息鑒別碼相同時,判斷所述接入確認消息中的隨機數、身份標識和業務密鑰是否有效,若任意一項無效,則接入失敗;若每一項都有效,則保存所述消息鑒別密鑰,并打開應用服務資源平臺。
3.如權利要求2所述的基于標識的應用服務網絡訪問方法,其特征在于,在所述用戶端接入所述應用服務器之前,還包括 所述鑒別服務器對所述用戶端和所述應用服務器進行注冊,發放證書和對應的私鑰; 所述鑒別服務器綁定并維護所述用戶端的證書、注冊信息和身份標識的對應關系,以及所述應用服務器的證書、注冊信息和身份標識的對應關系; 所述鑒別服務器在本地保存所述鑒別服務器的證書、對應的私鑰和身份標識,所述用戶端的證書、注冊信息和身份標識,以及所述應用服務器的證書、注冊信息和身份標識; 所述應用服務器在本地保存所述應用服務器的證書、對應的私鑰和身份標識,所述鑒別服務器的證書和身份標識,以及所述用戶端的證書和身份標識; 所述用戶端在本地保存所述用戶端的證書、對應的私鑰和身份標識,所述鑒別服務器的證書和身份標識,以及所述應用服務器的證書和身份標識。
4.如權利要求r3任一項所述的基于標識的應用服務網絡訪問方法,其特征在于,所述用戶端和所述應用服務器根據所述消息鑒別密鑰,進行應用服務數據的保密傳輸,包括 所述用戶端根據業務使用需求,生成含有用戶端身份標識的業務請求消息,并發送給所述應用服務器; 所述應用服務器接收到所述業務請求消息后,根據所述業務請求消息中的用戶端身份標識,判斷所述用戶端是否通過身份驗證; 所述應用服務器在所述用戶端通過身份驗證時,根據所述業務請求消息從存儲器中讀取對應的應用服務數據,在所述應用服務數據中綁定應用服務器標識,使用消息鑒別密鑰對設有身份標識的應用服務數據進行加密,生成應用服務數據包,并發送給所述用戶端;若所述用戶端未通過身份驗證,則不向所述用戶端提供應用服務數據; 所述用戶端接收所述應用服務數據包,使用消息鑒別密鑰對所述應用服務數據包進行解密,獲得應用服務數據和應用服務器身份標識;根據所述應用服務器身份標識判斷所述應用服務器是否通過身份驗證,若通過身份驗證,則將所述應用服務數據提供給用戶使用;若未通過身份驗證,則丟棄所述應用服務數據。
5.如權利要求4所述的基于標識的應用服務網絡訪問方法,其特征在于,所述應用服務器還保存應用服務資源,以及接入過程中的隨機數、業務密鑰和消息鑒別密鑰; 所述用戶端還保存接收到的應用服務數據,以及接入過程中的隨機數、業務密鑰和消息鑒別S鑰。
6.一種應用服務器系統,其特征在于,包括用戶端、應用服務器和鑒別服務器; 在所述用戶端接入所述應用服務器的過程中,所述鑒別服務器根據所述用戶端和所述應用服務器的身份標識,獲取所述用戶端和所述應用服務器的證書,對所述用戶端和所述應用服務器的身份進行驗證,且在所述用戶端和所述應用服務器的身份驗證通過后,所述用戶端和所述應用服務器協商獲得消息鑒別密鑰; 所述用戶端和所述應用服務器根據所述消息鑒別密鑰,進行應用服務數據的保密傳輸。
7.如權利要求6所述的應用服務器系統,其特征在于,所述應用服務器包括第一接入處理單元,所述用戶端包括第二接入處理單元,所述鑒別服務器包括有效性驗證單元; 所述用戶端的第二接入處理單元,用于在所述用戶端接入應用服務器時構建接入請求消息,使用用戶端證書私鑰對所述接入請求消息進行簽名后,發送給應用服務器;所述接入請求消息包含用戶端身份標識和第一隨機數;· 所述應用服務器的第一接入處理單元,用于接收所述接入請求消息,使用用戶端證書公鑰驗證所述接入請求消息的簽名的有效性;在簽名驗證通過后,保存所述接入請求消息中的用戶端身份標識和第一隨機數,且構建鑒別請求消息,使用應用服務器證書私鑰對所述鑒別請求消息進行簽名后,發送給鑒別服務器;所述鑒別請求消息包含用戶端身份標識、第一隨機數、應用服務器身份標識和第二隨機數; 所述鑒別服務器的有效性驗證單元,用于接收所述鑒別請求消息,根據所述鑒別請求消息中的用戶端身份標識和應用服務器身份標識,獲取對應的用戶端證書和應用服務器證書;使用所述應用服務器證書公鑰驗證所述鑒別請求消息的簽名的有效性,以及驗證所述用戶端證書和所述應用服務器證書的有效性,獲得身份驗證結果;構建鑒別響應消息,使用鑒別服務器證書私鑰對所述鑒別響應消息進行簽名后,發送給所述應用服務器;所述鑒別響應消息包含身份驗證結果、第一隨機數、第二隨機數、用戶端身份標識和應用服務器身份標識; 所述應用服務器的第一接入處理單元,還用于接收所述鑒別響應消息,使用鑒別服務器證書公鑰驗證所述鑒別響應消息的簽名的有效性;在簽名驗證通過后,判斷所述鑒別響應消息中的身份驗證結果、隨機數和身份標識是否有效,若任意一項無效,則接入失敗;若每一項都有效,則產生業務密鑰,使用用戶端證書公鑰對所業務密鑰進行加密,獲得業務密鑰密文,且構建接入響應消息,使用應用服務器證書私鑰對所述接入響應消息進行簽名后,發送給所述用戶端;所述接入響應消息包含所述鑒別響應消息、第一隨機數、第二隨機數、用戶端身份標識、應用服務器身份標識和業務密鑰密文; 所述用戶端的第二接入處理單元,還用于接收所述接入響應消息,使用應用服務器證書公鑰驗證所述接入響應消息的簽名的有效性,使用鑒別服務器證書公鑰驗證所述接入響應消息中的鑒別響應消息的簽名;在簽名驗證通過后,判斷所述接入響應消息中的身份驗證結果、隨機數和身份標識是否有效,若任意一項無效,則接入失敗;若每一項都有效,則使用用戶端證書私鑰解密所述接入響應消息中的業務密鑰密文,獲得業務密鑰;根據所述業務密鑰、第一隨機數和第二隨機數計算出消息鑒別密鑰和消息鑒別碼,且構建接入確認消息,發送給所述應用服務器;所述接入確認消息包含第一隨機數、第二隨機數、用戶端身份標識、應用服務器身份標識、業務密鑰和消息鑒別碼; 所述應用服務器的第一接入處理模塊,還用于接收所述接入確認消息,根據本地保存的業務密鑰、第一隨機數和第二隨機數計算消息鑒別密鑰和消息鑒別碼,當計算出的消息鑒別碼與所述接入確認消息的消息鑒別碼相同時,判斷所述接入確認消息中的隨機數、身份標識和業務密鑰是否有效,若任意一項無效,則接入失敗;若每一項都有效,則保存所述消息鑒別密鑰,并打開應用服務資源平臺。
8.如權利要求7所述的應用服務器系統,其特征在于,所述鑒別服務器還包括注冊單元、身份標識管理單元和第一存儲單元; 所述注冊單元,用于對所述用戶端和所述應用服務器進行注冊,發放證書和對應的私 鑰; 所述身份標識管理單元,用于綁定并維護所述用戶端的證書、注冊信息和身份標識的對應關系,以及所述應用服務器的證書、注冊信息和身份標識的對應關系; 所述第一存儲單元,用于保存所述鑒別服務器的證書、對應的私鑰和身份標識,所述用戶端的證書、注冊信息和身份標識,以及所述應用服務器的證書、注冊信息和身份標識; 所述應用服務器還包括第二存儲單元,用于保存所述應用服務器的證書、對應的私鑰和身份標識,所述鑒別服務器的證書和身份標識,以及所述用戶端的證書和身份標識; 所述用戶端還包括第三存儲單元,用于保存所述用戶端的證書、對應的私鑰和身份標識,所述鑒別服務器的證書和身份標識,以及所述應用服務器的證書和身份標識。
9.如權利要求61任一項所述的應用服務器系統,其特征在于,所述應用服務器還包括第一應用管理單元和第一數據傳輸單元;所述用戶端還包括第二應用管理單元和第二數據傳輸單兀; 所述用戶端的第二應用管理單元,用于根據業務使用需求,生成含有用戶端身份標識的業務請求消息,并發送給所述應用服務器; 所述應用服務器的第一應用管理單元,用于接收到所述業務請求消息后,根據所述業務請求消息中的用戶端身份標識,判斷所述用戶端是否通過身份驗證; 所述應用服務器的第一數據傳輸單元,用于在所述用戶端通過身份驗證時,根據所述業務請求消息從存儲器中讀取對應的應用服務數據,在所述應用服務數據中綁定應用服務器標識,使用消息鑒別密鑰對設有身份標識的應用服務數據進行加密,生成應用服務數據包,并發送給所述用戶端;若所述用戶端未通過身份驗證,則不向所述用戶端提供應用服務數據; 所述用戶端的第二數據傳輸單元,用于接收所述應用服務數據包,使用消息鑒別密鑰對所述應用服務數據包進行解密,獲得應用服務數據和應用服務器身份標識;根據所述應用服務器身份標識判斷所述應用服務器是否通過身份驗證,若通過身份驗證,則將所述應用服務數據提供給用戶使用;若未通過身份驗證,則丟棄所述應用服務數據。
10.如權利要求9所述的應用服務器系統,其特征在于,所述第二存儲單元還用于保存應用服務資源,以及接入過程中的隨機數、業務密鑰和消息鑒別密鑰; 所述第三存儲單元還用于保存接收到的應用服務數據,以及接入過程中的隨機數、業務密鑰和消息鑒別密鑰。
全文摘要
本發明公開了一種基于標識的應用服務網絡訪問方法,該方法包括在用戶端接入應用服務器的過程中,鑒別服務器根據所述用戶端和所述應用服務器的身份標識,獲取所述用戶端和所述應用服務器的證書,對所述用戶端和所述應用服務器的身份進行驗證,且在所述用戶端和所述應用服務器的身份驗證通過后,所述用戶端和所述應用服務器協商獲得消息鑒別密鑰;所述用戶端和所述應用服務器根據所述消息鑒別密鑰,進行應用服務數據的保密傳輸。本發明還公開一種應用服務器系統。本發明實施例在大規模應用服務網絡中對應用服務器和用戶端進行統一認證,使用戶端能夠以同一身份標識訪問不同應用服務器,為用戶帶來很大的便利。
文檔編號H04L9/32GK102739687SQ201210235358
公開日2012年10月17日 申請日期2012年7月9日 優先權日2012年7月9日
發明者杜文元, 林凡, 黃建青 申請人:廣州杰賽科技股份有限公司