專利名稱:端對端地保護移動終端和因特網服務器之間在應用層上的事務的制作方法
技術領域:
本發明涉及用于端對端地保護移動終端和因特網服務器之間在應用層上的事務的一種方法和一種適合于此的服務器。本發明尤其涉及如下的端對端地保護移動終端和因特網服務器之間在應用層上的事務的方法和相應的代理服務器,其中所述的因特網服務器包括至少一個因特網服務器應用程序,該應用程序把事務標識文檔傳輸給事務對方應用程序以明確地識別一個應用事務,并且還接收從所述事務對方應用程序發回給該因特網服務器應用程序的、用于明確地識別應用事務的事務標識文檔。
在因特網服務器(或網絡服務器)和用戶終端(譬如個人計算機)或該終端上的應用程序(譬如瀏覽器)之間,采用事務標識文檔來識別事務和會話是公知的。用于交換事務標識文檔的工具主要是以名稱“曲奇(Cookie)”而為大家所知的,其已被Netscape公司運用,以便更好地控制應用層上的位于網絡服務器和瀏覽器之間的交互作用,因為位于其下的超文本傳輸協議(HTTP)是一種無連接的請求/應答協議(因此沒有狀態管理)。當用戶利用瀏覽器譬如第一次接觸網絡服務器時,所述能被用來傳輸事務標識文檔的曲奇被從網絡服務器傳輸給瀏覽器。典型地,被接收的曲奇通常由瀏覽器存儲到終端的固定存儲盤上。至瀏覽器的用于存儲曲奇的指令譬如為Set CookieName=“Wert”;Expires=“Datum”;Path=“Pfad”;Domain=“Domain-Name”;Secure。在成功地存儲曲奇之后,如果用戶命令瀏覽器去獲得一個URL地址-其域名和路徑與所述給曲奇所設置的值相一致-,則由瀏覽器把所述曲奇的值以HTTP請求數據附件的形式傳送給有關的網絡服務器。如果設置了所述的選項“Secure”,則這只有在經可靠的連接、譬如經加密套接字協議層(SSL)的預定會話進行傳輸時才實行。于是,借助所述的曲奇可以較長時間地-譬如幾分鐘或幾年-和在多個請求/應答周期中通過網絡服務器的應用程序而在瀏覽器的用戶和網絡服務器之間控制交互作用,其中,各個用戶的會話和事務可以是不同的。
借助在因特網內所使用的加密套接字協議層的機制,原則上可以在瀏覽器運行時所在的客戶終端和有關的網絡服務器之間建立一種“加密管道”,由其確保所交換的數據的機密性,也即防止對所交換的數據進行非法訪問,并且可以對參與的事務對方(客戶或服務器)進行鑒權檢驗,譬如通過借助用戶名、用戶口令字、一次性用戶口令字(譬如擦除單或安全ID)或其它已知的機制對用戶進行注冊。
尤其是安全緊要的應用,譬如家庭銀行事務和在因特網上實現的電子商務,它們對數據的機密性、所參與的事務對方的鑒權、數據的完整性等方面提出了很高的安全要求,以及在促使數據交換的數據源或事務的可靠性方面也有很高的要求。必要的安全性優選地通過端對端地保護事務對方之間在應用層上的事務來實現,也就是說通過應用的機制而不是通過下面的協議層的機制來實現。在這方面,一種基于SSL的解決方案的問題在于,能在所述SSL層和應用層之間進入系統的非法入侵者可以在應用事務中插入錯誤的請求,這尤其對安全緊急的應用是會產生問題的。此外,SSL層上的會話過程中的故障可能導致把請求或應答錯誤地分配給錯誤的應用事務,這同樣會帶來不利的影響。
為了克服上述問題,如此來使用開頭所述的曲奇機制,使得每次通過結合一個曲奇(和包含在其中的事務標識文檔)而把請求傳輸給服務器,以便明確地識別應用層上的事務。為了避免上述非法入侵者通過在SSL層和應用層之間向應用事務插入錯誤的請求而造成入侵,給所述的事務標識文檔(在曲奇中)分別設立一些密碼元素。如果這些加密的事務標識文檔需要有高度的安全性要求,則它們典型地會變得相當長,譬如對于一個具有1024比特的數字簽名而需要一個160字節長的曲奇(其中含有事務標識文檔)。
盡管利用從現有技術推導出的方法可以基于加密的、在曲奇中傳輸的事務標識文檔來對終端設備和因特網服務器之間的應用層上的事務進行端對端地保護,由此消除上述錯誤請求的問題,但該方法不是用于移動終端的,譬如移動無線電話或具有移動通信能力的計算機,膝上型計算機、掌上電腦或PDA(個人數字助理)等等,一方面,這是因為可用的移動終端沒有裝配支持曲奇的通信協議(譬如,在移動終端中被用來訪問因特網的無線應用協議WAP不支持曲奇),另一方面,因為所需的加密事務標識文檔的長度對移動通信不太有效。
本發明的任務是建議一種新型和改進的方法和對此合適的裝置,它們能端對端地保護移動終端和因特網服務器之間應用層上的事務。
根據本發明,該目的尤其通過獨立權利要求的技術要點來解決。進一步的優選方案由從屬權利要求和說明書給出。
該目的通過本發明以如下方式來解決,即在一個事務標識文檔代理服務器內針對移動終端而存儲指向該移動終端內事務對方應用程序的加密事務標識文檔(譬如包括在曲奇中);通過所述的代理服務器分別把存儲的有關事務標識文檔的文檔標識和一個由所述代理服務器從存儲的有關事務標識文檔中計算出來的文檔代理傳輸給所述的移動終端;由所述的代理服務器從所述由移動終端指向因特網服務器應用程序的消息中分別取出一個文檔標識和一個文檔代理,并檢驗所取出的文檔代理和如下一個文檔代理的一致性,即該文檔代理是可以根據用所取出的文檔標識所確定的被存儲事務標識文檔而計算出來的;以及在一致的情況下,把所述用取出的文檔標識所確定的被存儲事務標識文檔傳輸到所述的因特網服務器應用程序。所述的代理服務器分別通過一個元組來傳輸一個指向移動終端的事務標識文檔,所述的元組由所存儲的有關事務標識文檔的文檔標識和一個從有關事務標識文檔計算出的文檔代理組成,這種代理服務器的優點尤其在于,由因特網服務器所使用的事務標識文檔(曲奇)機制可以被映射到不支持該機制的移動終端上,其中,通過從有關事務標識文檔計算出的、并且比該事務標識文檔短得多的加密文檔代理,可以繼續端對端地保護移動終端和因特網服務器之間的應用層。入侵者只可能假冒所述的文檔標識;但入侵者不可能假冒分別從有關事務標識文檔所計算出的文檔代理,因為所述的事務標識文檔可能隨每次事務而進行變換,并通過所述的代理服務器來檢驗所述元組的一致性。
優選地,在一個數據元素中傳輸所述需傳輸給移動終端的文檔標識和文檔代理,所述的數據元素分別通過移動終端中的事務對方應用程序被自動地插入到所述指向因特網服務器應用程序的消息中。該方案尤其具有以下優點,即也不必匹配所述的移動終端或該移動終端的軟件程序。
優選地,尤其借助單向散列函數從所存儲的事務標識文檔中計算出所述的文檔代理。采用單向散列函數從事務標識文檔中計算出文檔代理的優點在于,一方面從事務標識文檔中可以簡單地計算出所述的文檔代理,但在可能的情況下在反方向上從文檔代理中計算出事務標識文檔是非常困難的,另一方面,即便事務標識文檔的長度是變化的,但也能從事務標識文檔中計算出一個預定長度的文檔代理,其中,所述文檔代理的預定長度尤其要短于從其計算該文檔代理的事務標識文檔的長度。
在一種方案變型中,當在代理服務器中存儲所述的加密事務標識文檔時,通過所述移動終端的IP地址來實現至該移動終端的分配。如果通過所采用的通信協議在移動終端和因特網服務器之間不交換其它的、可能被用于識別所述移動終端的數據元素,則這是非常有利的。
根據一種實施方案變型,在所述的代理服務器中引入一個協議文件,在該協議文件中存儲關于由文檔代理替代事務標識文檔、或由事務標識文檔替代文檔代理的信息,關于該替代的時間點的信息,以及關于參與所述促使產生上述替代的事務的事務對方的信息。這種協議文件的優點尤其在于,它可以在稍后的時間點被用來指示移動終端和因特網服務器之間應用層上的事務過程已成功執行。
在一種可選的實施方案變型中,所述的代理服務器可插入到位于因特網服務器的應用程序和因特網服務器的安全傳輸層之間的通信鏈路中,并利用共用計算機上的因特網服務器來實現,或者,所述的代理服務器利用共用計算機上的、彼此連接移動無線網和因特網的網關來實現,并且可插入到位于移動無線網的安全傳輸層和因特網的安全傳輸層之間的通信鏈路中。
下面借助實施例來講述本發明的實施方案。該實施例通過以下附圖給出
圖1用框圖簡略地示出了經網關進行通信的移動終端和因特網服務器,所述的網關彼此連接了移動無線網和因特網。
圖2用框圖簡略地示出了經網關進行通信的移動終端和因特網服務器,所述的網關彼此連接了移動無線網安全管道和因特網安全管道。
圖3用層結構圖簡略地示出了移動終端、因特網服務器和網關的通信協議棧,其中移動終端和因特網服務器通過它彼此進行通信。
圖4結合時間圖和流圖簡略地示出了事務標識文檔或從這些事務標識文檔計算出的文檔代理的交換,以便端對端地保護位于移動終端和作為事務對方的因特網服務器之間的應用層事務。
圖5用框圖簡要地示出了一個代理服務器。
在圖1中,參考數字1涉及移動終端,譬如適用WAP的移動終端,該移動終端可以通過移動無線網2(譬如GSM或UMTS或其它的、譬如基于衛星的移動無線網)進行通信。如圖1簡略地所示,移動無線網2通過譬如為WAP網關的網關3與因特網4相連,而在因特網上連接了因特網服務器5。
在圖2中,針對移動終端1和因特網服務器5之間的安全傳輸層而示出了圖1的裝置,其中,以移動無線網安全管道7的形式抽象地示出了移動無線網2和所述移動終端1及網關3的通信協議,用于經移動無線網2和利用安全傳輸層-譬如遵照WTLS協議(安全無線傳輸層)-進行訪問和開展通信,而且,以因特網安全管道8的形式抽象地示出了因特網4和所述網關3及因特網服務器5的通信協議,用于經因特網4和利用安全傳輸層-譬如遵照SSL協議(加密套接字協議層)-進行訪問和開展通信。在圖2中,參考數字6是涉及一個事務標識文檔代理服務器,該服務器將在下文詳細講述,并被簡稱為代理服務器6。該代理服務器6被優選地實施為計算機上的編程軟件模塊。如圖2所示,代理服務器6可以利用網關3在一個共用的計算機上實現(具有實線的塊6),該服務器6在那兒被插入到位于因特網服務器5或因特網服務器應用程序和移動網安全管道7之間的通信鏈路中,或者所述的代理服務器6可以利用因特網服務器5在共用的計算機上實現(具有虛線的塊6),該服務器6在那兒被插入到位于因特網服務器5或因特網服務器應用程序和因特網安全管道8之間的通信鏈路中。
在圖3中用移動終端1、網關3和因特網服務器5的層模型示出了通信協議棧P和位于其上的應用層A。在該情形下,圖3只以層的形式突出了安全傳輸層S,其中,作為通過移動無線網2在移動終端1和網關3之間進行通信的安全傳輸層,譬如可以采用WTLS協議,而譬如可以采用SSL協議在網關3和因特網服務器5之間經因特網4進行通信。在移動終端1和網關3內,用于經移動無線網2進行通信的通信協議棧P譬如按照WAP(無線應用協議)來執行。另外如圖3所示,可以在應用層A上實施代理服務器6,正如上文所述那樣與網關3和因特網服務器5一起實施在一個計算機上。
在圖4中,參考符號91涉及通過因特網服務器5或通過因特網服務器5的因特網服務器應用程序傳輸一個指向移動終端1或指向移動終端1的應用程序的、加密事務標識文檔。被插入到因特網服務器5和移動終端1之間的通信鏈路中的代理服務器6借助圖5所示出的文檔存儲模塊61來接收所述的加密事務標識文檔,并在步驟92將其存儲到文檔映射存儲器66中。所述的事務標識文檔譬如包括一個作為密碼元素的數字簽名。通過分配給移動終端1而存儲加密的事務標識文檔,其中,給所存儲的加密事務標識文檔661分配一個移動終端標識662。作為移動終端標識662,譬如可以采用具有加密事務標識文檔的有關消息所指向的移動終端1的IP地址(因特網協議)。
在步驟93中,在代理服務器6內借助文檔代理模塊62從所存儲的事務標識文檔661中計算出一個明確的(唯一的)文檔代理。該文檔代理的計算是通過密碼函數621、譬如通過單向散列函數621(譬如按照MD5或SHA1的散列函數)來實現。如附圖中通過箭頭94所示的一樣,由文檔代理模塊62借助因特網服務器1或網關3-根據在哪里實現代理服務器6-的通信功能而將所計算的文檔代理同所存儲的事務標識文檔661的文檔標識一起傳輸到移動終端1。作為文檔標識,譬如可以采用移動終端標識662或由代理服務器6所產生的其它文檔標識663。所計算的文檔代理660也可以附加地被存儲在文檔映射存儲器66中。基于以前存儲的文檔代理660,所述的密碼函數621還可以確保新計算出的文檔代理的明確性(唯一性)。如果所述的密碼函數621確定出所計算的文檔代理與以前存儲的文檔代理669相一致,則由密碼函數621譬如借助來自于隨機發生器的數據值來產生所述的唯一性。但也可以由密碼函數621通過向所述按密碼計算出的代理文檔插入數據元素,譬如插入與時間有關的值或序號來實現所述的明確性(唯一性)。優選地,所述包含有文檔代理660和文檔標識662或663的元組在一個數據元素內傳輸,所述的數據元素分別通過移動終端1內的應用程序被自動地插入到所述指向因特網服務器5或因特網服務器應用程序的消息中。所述的元組譬如可以插入到設于每個對象上的URL地址(統一資源定位器)中,譬如HTML(超文本標記語言)或WML(無線標記語言)頁面,而所述的對象從因特網服務器5或因特網服務器應用程序被傳輸到所述的移動終端1或移動終端1的事務對方應用程序(譬如WAP瀏覽器)上,并且所述的URL地址分別從移動終端1的這些應用程序利用每次詢問(請求)被傳輸給所述的因特網服務器5或有關的因特網服務器應用程序。
通過移動終端1或通過移動終端1的應用程序而指向因特網服務器5或因特網服務器應用程序的消息傳輸在圖4中是通過箭頭95來表示的,其中所述的消息包含有所述具有所計算的文檔代理和文檔標識的元組。在代理服務器6中,該消息在步驟96中借助文檔代理校驗模塊63來取出所述帶有文檔代理和文檔標識的元組,并在步驟97中檢驗所取出的文檔代理與以下文檔代理的一致性,即該文檔代理可以根據用所取出的文檔標識所確定的被存儲事務標識文檔661而計算出來。在此,為了進行檢驗,根據用所取出的文檔標識所確定的被存儲事務標識文檔661來計算一個文檔代理,或者采用以前計算出和存儲的文檔代理660,由此可以節省計算時間。當在步驟98中為肯定的一致時,正如箭頭99所示,用所取出的文檔標識所確定的被存儲事務標識文檔661便借助所述的文檔傳輸模塊64-通過借助因特網服務器1的軟件接口或網關3的通信功能-并根據在何處實現所述代理服務器6而被傳輸給有關的因特網服務器應用程序。如果不一致,則譬如可以象箭頭97’所示的那樣把故障消息傳輸給移動終端1。
在一種實施方案變型中,在代理服務器6中通過協議文件測定模塊65來控制協議文件67,在該協議文件中存儲了與所述代理服務器所執行的步驟92、93、96、97和98有關的信息,連同執行該步驟的時間點的時間和/或日期數據。這些信息譬如包括如下方面的數據已由因特網服務器5接收和存儲哪些事務標識文檔,已由哪些文檔代理代替該事務標識文檔,已分別向哪個移動終端1傳輸所述的文檔代理,哪些文檔代理已在代理服務器6中被錯誤地保留,以及哪些事務標識文檔已被成功地發回到因特網服務器5或有關的因特網服務器應用程序。所述的協議文件測定模塊65譬如是一個可編程軟件模塊。所述的協議文件67被安排在一個文件或數據庫中,并被存儲在固定存儲盤上。
參考符號清單1 移動終端2 移動無線網3 網關4 因特網5 因特網服務器6 代理服務器7 移動網安全管道8 因特網安全管道61 文檔存儲模塊62 文檔代理模塊63 文檔代理校驗模塊64 文檔傳輸模塊65 協議文件測定模塊66 文檔映射存儲器67 協議文件91 步驟傳輸事務標識文檔92 步驟存儲事務標識文檔93 步驟計算文檔代理94,95 步驟傳輸文檔標識和文檔代理96 步驟接收文檔標識和文檔代理97 步驟檢驗文檔代理97’步驟故障消息98,99 步驟傳輸事務標識文檔621密碼函數(單向散列函數)660文檔代理661存儲的事務標識文檔662移動終端標識663文檔標識A 應用層P 通信協議棧S 傳輸安全層SSL 加密套接字協議層WTLS無線傳輸層安全性
權利要求
1.端對端地保護移動終端(1)和因特網服務器(5)之間在應用層上的事務的方法,在該方法中,由因特網服務器應用程序把事務標識文檔傳輸給事務對方應用程序以明確地識別一個應用事務,并且還接收從所述事務對方應用程序發回給該因特網服務器應用程序的、用于明確地識別應用事務的事務標識文檔,其特征在于在一個事務標識文檔代理服務器(6)內針對移動終端(1)而存儲指向該移動終端(1)內事務對方應用程序的加密事務標識文檔(661),通過所述的代理服務器(6)分別把存儲的有關事務標識文檔(661)的文檔標識(662,663)和一個由所述代理服務器(6)從存儲的有關事務標識文檔(661)中計算出來的文檔代理(660)傳輸給所述的移動終端(1),由所述的代理服務器(6)從所述由移動終端(1)指向因特網服務器應用程序的消息中分別取出一個文檔標識和一個文檔代理,并檢驗所取出的文檔代理和如下一個文檔代理(660)的一致性,即該文檔代理(660)是可以根據用所取出的文檔標識所確定的被存儲事務標識文檔(661)而計算出來的,以及在一致的情況下,把所述用取出的文檔標識所確定的被存儲事務標識文檔(661)傳輸到所述的因特網服務器應用程序。
2.按權利要求1的方法,其特征在于在一個數據元素中傳輸所述需傳輸給移動終端(1)的文檔標識(662,663)和文檔代理(660),所述的數據元素分別通過移動終端(1)中的事務對方應用程序被自動地插入到所述指向因特網服務器應用程序的消息中。
3.按上述權利要求1或2之一的方法,其特征在于借助單向散列函數(621)從所存儲的事務標識文檔(661)中計算出所述的文檔代理(660)。
4.按上述權利要求1-3之一的方法,其特征在于當在代理服務器(6)中存儲所述的加密事務標識文檔(661)時,通過所述移動終端(1)的IP地址(662)來實現至該移動終端(1)的分配。
5.按上述權利要求1-4之一的方法,其特征在于在所述的代理服務器(6)中檢驗一個協議文件(67),在該協議文件中存儲關于由文檔代理替代事務標識文檔、或由事務標識文檔替代文檔代理的信息,關于該替代的時間點的信息,以及關于參與所述促使產生上述替代的事務的事務對方的信息。
6.代理服務器(6),它被插入在位于移動終端(1)和因特網服務器(5)之間的通信鏈路中,所述的因特網服務器(5)包括至少一個因特網服務器應用程序,由該應用程序把事務標識文檔傳輸給事務對方應用程序以明確地識別一個應用事務,并且還接收從所述事務對方應用程序發回給該因特網服務器應用程序的、用于明確地識別應用事務的事務標識文檔,其特征在于所述的代理服務器(6)包括第一裝置,用于存儲指向該移動終端(1)內事務對方應用程序的加密事務標識文檔(661),其中該存儲是針對移動終端(1)而進行的,所述的代理服務器(6)包括第二裝置,用于從存儲的有關事務標識文檔(661)中計算出文檔代理(660),并把該文檔代理(660)和所存儲的有關事務標識文檔(661)的文檔標識(662,663)傳輸給所述的移動終端(1),所述的代理服務器(6)包括第三裝置,用于從所述由移動終端(1)指向因特網服務器應用程序的消息中取出一個文檔標識和一個文檔代理,并檢驗所取出的文檔代理和如下一個文檔代理(660)的一致性,即該文檔代理(660)是可以根據用所取出的文檔標識所確定的被存儲事務標識文檔(661)而計算出來的,以及所述的代理服務器(6)包括第四裝置,用于在一致的情況下把所述用取出的文檔標識所確定的被存儲事務標識文檔(661)傳輸到所述的因特網服務器應用程序。
7.按上述權利要求6的代理服務器(6),其特征在于所述的第二裝置被如此地設置,使得在一個數據元素中傳輸所述需傳輸給移動終端(1)的文檔標識(662,663)和文檔代理(660),所述的數據元素分別通過移動終端(1)中的事務對方應用程序被自動地插入到所述指向因特網服務器應用程序的消息中。
8.按權利要求6或7之一的代理服務器(6),其特征在于所述的第二裝置包括一種單向散列函數(621),用于從所存儲的事務標識文檔(661)中計算出所述的文檔代理(660)。
9.按上述權利要求6-8之一的代理服務器(6),其特征在于所述的第一裝置被如此地設置,使得當存儲所述的加密事務標識文檔(661)時,通過所述移動終端(1)的IP地址(662)來實現至該移動終端(1)的分配。
10.按上述權利要求6-9之一的代理服務器(6),其特征在于所述的代理服務器(6)包括另一用于控制協議文件(67)的裝置(65),在該協議文件中存儲關于由文檔代理替代事務標識文檔、或由事務標識文檔替代文檔代理的信息,關于該替代的時間點的信息,以及關于參與所述促使產生上述替代的事務的事務對方的信息.
11.按上述權利要求6-10之一的代理服務器(6),其特征在于所述的代理服務器(6)利用共用計算機上的因特網服務器(5)來實現,并且可插入到位于因特網服務器應用程序和因特網服務器()的安全傳輸層(SSL)之間的通信鏈路中。
12.按上述權利要求6-10之一的代理服務器(6),其特征在于所述的代理服務器(6)利用共用計算機上的、彼此連接移動無線網(2)和因特網(4)的網關(3)來實現,并且可插入到位于移動無線網(2)的安全傳輸層(WTLS)和因特網(4)的安全傳輸層(SSL)之間的通信鏈路中。
全文摘要
為了端對端地保護移動終端(1)和因特網服務器(5)之間在應用層上的事務,在一個代理服務器(6)內針對移動終端(1)而存儲(92)那些從因特網服務器應用程序指向該移動終端(1)內事務對方應用程序的加密事務標識文檔(91);通過所述的代理服務器(6)分別把存儲的事務標識文檔的文檔標識和一個由所述代理服務器(6)從存儲的有關事務標識文檔中計算出來的文檔代理傳輸(94)給所述的移動終端(1);由所述的代理服務器(6)從所述由移動終端(1)指向(95)因特網服務器應用程序的消息中分別取出一個文檔標識和一個文檔代理,并檢驗(97)所取出(96)的文檔代理和如下一個文檔代理的一致性,即該文檔代理是可以根據用所取出的文檔標識所確定的被存儲事務標識文檔而計算出來的;以及在一致的情況下(98),把所述用取出的文檔標識所確定的被存儲事務標識文檔傳輸(99)到所述的因特網服務器應用程序。
文檔編號H04L29/08GK1454424SQ00819688
公開日2003年11月5日 申請日期2000年6月26日 優先權日2000年6月26日
發明者P·-A·埃蒂奎, A·胡伯 申請人:瑞士電信流動電話公司