專利名稱:基于超文本傳輸協(xié)議的通信方法、服務(wù)器、終端的制作方法
技術(shù)領(lǐng)域:
本申請涉及網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,特別是涉及ー種基于超文本傳輸協(xié)議的通信方法、服務(wù)器、終端。
背景技術(shù):
目前隨著互聯(lián)網(wǎng)越來越深入地影響人們?nèi)粘9ぷ魃?,基于互?lián)網(wǎng)的數(shù)據(jù)通信的安全性就顯的尤為重要。在各種影響網(wǎng)絡(luò)通信安全的因素中,重放攻擊(Replay Attacks)是最為常見的攻擊方式之一。重放攻擊又稱重播攻擊、回放攻擊或新鮮性攻擊(Freshness Attacks),是指攻擊者利用網(wǎng)絡(luò)監(jiān)聽或者其他方式盜取認證憑據(jù),之后再把經(jīng)偽裝的數(shù)據(jù)包重新發(fā)給服務(wù)器,來達到欺騙系統(tǒng)的目的。其多用于身份認證過程,破壞認證的正確性。這種攻擊會不斷惡意或欺詐性地重復(fù)ー個有效的數(shù)據(jù)傳輸,重放攻擊可以由發(fā)起者,也可以由攔截并重發(fā)該數(shù)據(jù)的敵方進行。從這個解釋上理解,數(shù)據(jù)加密雖可以有效防止網(wǎng)絡(luò)請求信息被劫持或篡改,但由于重放攻擊是截取有效信息重新發(fā)送,因此即使數(shù)據(jù)加密也無法防止重放攻擊。目前的網(wǎng)絡(luò)通信技術(shù)架構(gòu)中,傳輸控制/互聯(lián)協(xié)議(TCP/IP, TransmissionControl Protocol/Internet Protocol)是整個互聯(lián)網(wǎng)通信的基礎(chǔ)。TCP/IP協(xié)議采用了 4層的層級結(jié)構(gòu)網(wǎng)絡(luò)接ロ層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層,其每ー層都呼叫它的下ー層所提供的網(wǎng)絡(luò)來完成自己的需求。其中,在應(yīng)用層,基于超文本傳送協(xié)議(HTTP,HypertextTransfer Protocol)的數(shù)據(jù)通信是當前諸多網(wǎng)絡(luò)應(yīng)用的主要通信方式,如大多數(shù)網(wǎng)站、論壇等。但由于HTTP協(xié)議是一個無連接、無狀態(tài)的協(xié)議,即服務(wù)器每處理完終端請求并收到應(yīng)答后即斷開連接,且該協(xié)議對事務(wù)處理無記憶能力,因此終端每次給服務(wù)器發(fā)出的HTTP網(wǎng)絡(luò)請求,前后之間是沒有聯(lián)系的。HTTP協(xié)議的無狀態(tài)性、無連接性在該協(xié)議設(shè)計之初就已經(jīng)決定。因為HTTP協(xié)議的目的在于支持超文本的數(shù)據(jù)傳輸,那么在終端瀏覽器向HTTP服務(wù)器發(fā)送請求,繼而HTTP服務(wù)器將相應(yīng)的資源發(fā)回給終端這樣ー個過程中,無論對于終端還是服務(wù)器,都沒有必要記錄這個過程,因為每一次請求和響應(yīng)都是相對獨立的。一般而言,一個統(tǒng)ー資源定位符(URL, Universal Resource Locator)對應(yīng)著卩隹一的超文本,而HTTP服務(wù)器對任意終端發(fā)送的請求,它都會根據(jù)接收到的URL請求返回相同的超文本。正是因為這樣的唯一性,使得記錄用戶的行為狀態(tài)變得毫無意義,所以,HTTP協(xié)議被設(shè)計為無狀態(tài)的連接協(xié)議?;谏鲜鲈颍坏┙K端與服務(wù)器在數(shù)據(jù)傳輸?shù)倪^程中請求信息被攔截,由于服務(wù)器沒有記錄任何有關(guān)請求的狀態(tài)等相關(guān)信息,因此也就無法識別該請求是否被攔截、重放,也就無法避免重放攻擊的發(fā)生??傊枰绢I(lǐng)域技術(shù)人員迫切解決的ー個技術(shù)問題就是如何防止現(xiàn)有網(wǎng)絡(luò)通 信技術(shù)中針對HTTP協(xié)議通信的重放攻擊。 發(fā)明內(nèi)容
本申請所要解決的技術(shù)問題是提供一種基于超文本傳輸協(xié)議的網(wǎng)絡(luò)通信方法、月艮務(wù)器、終端,以便有效防止因HTTP網(wǎng)絡(luò)請求被截取而造成的重放攻擊,提高了 HTTP網(wǎng)絡(luò)通信的安全性。為了解決上述問題,本申請公開了一種基于超文本傳輸協(xié)議的網(wǎng)絡(luò)通信方法,包括應(yīng)終端請求向終端發(fā)送第一時間戳;接收終端發(fā)送的網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文由終端根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成;按所述預(yù)置加密算法驗證所述時間戳密文是否有效,若無效,則所述網(wǎng)絡(luò)請求信 息為無效請求。優(yōu)選的,進ー步包括驗證所述網(wǎng)絡(luò)請求信息中的第一時間戳與當前時間的間隔是否在有效期內(nèi),若超出,則所述網(wǎng)絡(luò)請求信息無效。優(yōu)選的,所述預(yù)置加密算法為簽名加密算法,所述終端根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括終端根據(jù)所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第一數(shù)字簽名組成時間戳密文;所述驗證所述時間戳密文是否有效包括按所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第二數(shù)字簽名;驗證所述第二數(shù)字簽名與所述時間戳密文對應(yīng)的第一數(shù)字簽名是否一致,若不一致,則所述時間戳密文無效。優(yōu)選的,所述預(yù)置加密算法為對稱加密算法,所述終端根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括終端根據(jù)所述對稱加密算法使用對應(yīng)的密鑰對包含所述第一時間戳的算法因子加密生成間戳密文;所述驗證所述時間戳密文是否有效包括使用所述對稱加密算法對應(yīng)的密鑰對所述時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。優(yōu)選的,所述預(yù)置加密算法為非對稱加密算法,所述終端根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括終端根據(jù)所述非対稱加密算法使用對應(yīng)的公鑰對包含所述第一時間戳的算法因子加密生成間戳密文;所述驗證所述時間戳密文是否有效包括服務(wù)器使用與所述非對稱加密算法對應(yīng)的私鑰對所述時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。優(yōu)選的,所述終端發(fā)送的網(wǎng)絡(luò)請求信息中還包括由終端生成的憑證標識;且所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。優(yōu)選的,所述接收終端發(fā)送的網(wǎng)絡(luò)請求信息之前還包括收到終端的憑證請求信息;生成與所述憑證請求信息對應(yīng)的憑證標識;向所述終端發(fā)送所述憑證標識。優(yōu)選的,所述接收的網(wǎng)路請求信息中還包括所述憑證標識;所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。優(yōu)選的,所述憑證標識動態(tài)有效,所述方法還包括若所述終端發(fā)送的網(wǎng)絡(luò)請求信息中包括憑證標識,則服務(wù)器驗證該憑證標識是否有效,若無效,則所述網(wǎng)絡(luò)請求為無效請求。為解決上述問題,本申請還公開了ー種基于超文本傳輸協(xié)議的網(wǎng)絡(luò)通信方法,包括從服務(wù)器獲取第一時間戳;向服務(wù)器發(fā)送網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文是根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成。優(yōu)選的,所述預(yù)置加密算法為簽名加密算法,所述根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括根據(jù)所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第一數(shù)字簽名組成時間戳密文。優(yōu)選的,所述預(yù)置加密算法為對稱加密算法,所述根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括使用與所述對稱加密算法對應(yīng)的密鑰對包含所述第一時間戳的算法因子加密生成間戳密文。優(yōu)選的,所述預(yù)置加密算法為非對稱加密算法,所述根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括使用與所述非對稱加密算法對應(yīng)的公鑰對包含所述第一時間戳的算法因子加密生成間戳密文。優(yōu)選的,所述網(wǎng)絡(luò)請求信息中還包括憑證標識;且 所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。優(yōu)選的,所述向服務(wù)器發(fā)送網(wǎng)絡(luò)請求信息之前還包括向服務(wù)器發(fā)送憑證請求信息;接收服務(wù)器發(fā)送的憑證標識。為解決上述問題,本申請還公開了ー種基于超文本傳輸協(xié)議的服務(wù)器,包括接收模塊、發(fā)送模塊、時間戳生成模塊和密文校驗?zāi)K;
其中所述接收模塊包括第一接收單元,用于接收時間戳請求信息;第二接收單元,用于接收網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文是根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成;其中所述時間戳生成模塊,用于應(yīng)所述時間戳請求信息生成第一時間戳;其中所述發(fā)送模塊包括第一發(fā)送單兀,用于發(fā)送時間戳生成模塊所生成的第一時間戳;其中所述密文校驗?zāi)K,用于按所述預(yù)置加密算法驗證所述時間戳密文是否有效,若無效,則所述網(wǎng)絡(luò)請求信息為無效請求。優(yōu)選的,所述服務(wù)器還包括時間戳驗證模塊,用于驗證第二接收單元接收的網(wǎng)絡(luò)請求信息中的第一時間戳與當前時間的間隔是否在有效期內(nèi),若超出,則所述網(wǎng)絡(luò)請求信息無效。優(yōu)選的,所述預(yù)置加密算法為簽名加密算法,所述密文校驗?zāi)K還包括簽名生成単元,用于按所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第二簽名;第一校驗單元,用于驗證所述簽名生成単元所生成的第二數(shù)字簽名與第二接收單元所接收的時間戳密文對應(yīng)的第一數(shù)字簽名是否一致,若不一致,則所述時間戳密文無效。優(yōu)選的,所述預(yù)置加密算法為對稱加密算法,所述密文校驗?zāi)K還包括第二校驗單元,用于使用所述對稱加密算法對應(yīng)的密鑰對第二接收單元所接收的時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與第二接收單元所接收的網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。優(yōu)選的,所述預(yù)置加密算法為非對稱加密算法,所述密文校驗?zāi)K還包括第三校驗單元,用于使用與所述非對稱加密算法對應(yīng)的私鑰對第二接收單元所接收的時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。優(yōu)選的,所述接收模塊還包括第三接收單元,用于接收終端的憑證請求;
所述服務(wù)器還包括憑證標識生成単元,用于根據(jù)第三接收單元所接收的憑證請求生成憑證標識;所述發(fā)送模塊還包括第二發(fā)送單元,用于發(fā)送憑證標識生成単元所生成的憑證標識。優(yōu)選的,所述第二接收單元所接收的網(wǎng)絡(luò)請求信息中還包括憑證標識;所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。 優(yōu)選的,所述憑證標識動態(tài)有效;所述服務(wù)器還包括憑證校驗?zāi)K,用于驗證第二接收單元所接收的網(wǎng)絡(luò)請求信息中是否包括憑證標識,若包括且該憑證標識無效,則所述網(wǎng)絡(luò)請求信息無效。為解決上述問題,本申請還公開了ー種基于超文本傳輸協(xié)議的終端,包括發(fā)送模塊、接收模塊和密文模塊;其中所述發(fā)送模塊包括第一發(fā)送單元,用于發(fā)送第一時間戳獲取請求;第二發(fā)送單元,用于發(fā)送網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述接收模塊接收的第一時間戳,和對應(yīng)的由所述密文模塊生成的時間戳密文;其中所述接收模塊包括第一接收單元,用于接收第一時間戳;其中所述密文模塊用于根據(jù)預(yù)置加密算法對包含有所述接收的第一時間戳的算法因子加密生成時間戳密文。優(yōu)選的,所述預(yù)置加密算法為簽名加密算法;所述密文模塊還包括第一加密單元,用于對包含所述第一時間戳的算法因子加密生成第一數(shù)字簽名組成時間戳密文。優(yōu)選的,所述預(yù)置加密算法為對稱加密算法;所述密文模塊還包括第二加密單元,用于使用與所述對稱加密算法對應(yīng)的密鑰對包含所述第一時間戳的算法因子加密生成間戳密文。優(yōu)選的,所述預(yù)置加密算法為非對稱加密算法;所述密文模塊還包括第三加密單元,用于使用與所述非對稱加密算法對應(yīng)的公鑰對包含所述第一時間戳的算法因子加密生成間戳密文。優(yōu)選的,還包括憑證標識生成模塊,用于生成憑證標識;所述包含第一時間戳的算法因子還包括所述憑證標識模塊生成的憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。優(yōu)選的,所述發(fā)送單元還包括
第三發(fā)送單元,用于發(fā)送憑證請求信息;所述接收模塊還包括第二接收單元,用于接收憑證標識;所述第二發(fā)送單元所發(fā)送的網(wǎng)絡(luò)請求信息中還包括第三接收單元所接收的憑證標識;所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。與現(xiàn)有技術(shù)相比,本申請具有以下優(yōu)點考慮到現(xiàn)有基于HTTP協(xié)議的網(wǎng)絡(luò)通信存在無連接、無狀態(tài)的特性,請求信息被攔截重放后服務(wù)器無法識別這ー問題,我們提出在終端向服務(wù)器發(fā)送的請求信息中加入時間戳,服務(wù)器通過驗證網(wǎng)絡(luò)請求信息中的時間戳與當前時間的時間間隔是否在其有效期內(nèi),若所述時間間隔超出有效期,則認為當前網(wǎng)絡(luò)請求被攔截重放,是ー個無效請求,因此可以有效避免針對HTTP通信重放攻擊的發(fā)生。進ー步的,在本申請?zhí)峁┑姆桨钢?,終端從服務(wù)器獲取時間戳,并對包含該時間戳的字符串按約定的簽名算法規(guī)則生成數(shù)字簽名,并將該數(shù)字簽名放人向服務(wù)器發(fā)送的網(wǎng)絡(luò)請求信息中。服務(wù)器按照相同的簽名算法規(guī)則生成數(shù)字簽名,并驗證服務(wù)器生成的數(shù)字簽名與網(wǎng)絡(luò)請求信息中所帯數(shù)字簽名是否一致,若不一致,則認為當前網(wǎng)絡(luò)請求信息中包含時間戳的字符串被篡改,認為該網(wǎng)絡(luò)請求為無效請求。這樣ー來,避免了企圖通過篡改網(wǎng)絡(luò)請求信息中時間戳來偽裝有效信息欺騙服務(wù)器的可能,因而更進一歩避免了重放攻擊的發(fā)生。
圖I是本申請實施例一所述ー種基于HTTP協(xié)議的網(wǎng)絡(luò)通信方法的流程圖;圖2是申請實施例ニ所述ー種基于HTTP協(xié)議的網(wǎng)絡(luò)通信方法的流程圖;圖3是本申請實施例三所述ー種基于HTTP協(xié)議的網(wǎng)絡(luò)通信方法的流程圖;圖4是本申請實施例所述ー種基于超文本傳輸協(xié)議HTTP服務(wù)器的結(jié)構(gòu)示意圖;圖5是本申請實施例所述ー種基于超文本傳輸協(xié)議HTTP終端的結(jié)構(gòu)示意圖;圖6是本申請實施例所述ー種基于超文本傳輸協(xié)議HTTP網(wǎng)絡(luò)通信系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施例方式為使本申請的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本申請作進一步詳細的說明。參照圖1,示出了本申請?zhí)峁┑囊环N基于HTTP協(xié)議的通信方法實施例一的流程示意圖,本實施例的基于HTTP協(xié)議的通信方法包括以下步驟步驟101,終端向服務(wù)器發(fā)送時間戳請求。步驟102,服務(wù)器生成第一時間戳。服務(wù)器可按照國際標準規(guī)則獲取當前時間生成第一時間戳。 步驟103,服務(wù)器將第一時間戳發(fā)送至終端。
步驟104,服務(wù)器接收終端發(fā)送的網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文由終端根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成。步驟105,服務(wù)器按所述預(yù)置加密算法驗證所述時間戳密文是否有效,若無效,則所述網(wǎng)絡(luò)請求信息為無效請求。步驟106,服務(wù)器驗證所述網(wǎng)絡(luò)請求信息中的第一時間戳與當前時間的間隔是否在有效期內(nèi),若超出,則所述網(wǎng)絡(luò)請求信息無效。該步驟為可選步驟。對包含第一時間戳的算法因子加密生成時間戳密文,服務(wù)器按照與終端約定的加密算法驗證該密文是有效,若無效,則可認為時間戳密文在傳輸過程中可能被攔截或篡改, 因而可進ー步認定所述第一時間戳和對應(yīng)的網(wǎng)絡(luò)請求無效。為便于描述,本文將服務(wù)器應(yīng)終端請求生成的時間戳,以及在網(wǎng)絡(luò)請求信息中直接包含的時間戳稱為第一時間戳,將生成時間戳密文的算法因子中的時間戳稱為第二時間戳。由于時間戳由服務(wù)器統(tǒng)一生成,可保證該時間戳具有嚴格的準確性。服務(wù)器可根據(jù)不同終端所處的網(wǎng)絡(luò)應(yīng)用環(huán)境設(shè)置該終端對應(yīng)的時間戳的有效期。時間戳有效期通常是ー個時間長度,如O. 5秒,意思是終端從服務(wù)器獲取時間戳,以及將含有該時間戳的網(wǎng)絡(luò)請求發(fā)送至服務(wù)器這ー過程所耗時間應(yīng)在O. 5秒內(nèi),若超出,則認為該網(wǎng)絡(luò)請求在傳輸過程發(fā)生了延遲,可能被攔截或發(fā)生了重放攻擊,為無效的網(wǎng)絡(luò)請求。本領(lǐng)域技術(shù)人員容易理解,可根據(jù)終端所處的地域、應(yīng)用復(fù)雜度設(shè)置該類終端對應(yīng)的時間戳有效期。步驟107,服務(wù)器向終端返回網(wǎng)絡(luò)請求的應(yīng)答信息。若經(jīng)驗證網(wǎng)絡(luò)請求信息有效,則服務(wù)器向終端返回的應(yīng)答信息就應(yīng)包括該網(wǎng)絡(luò)請求對應(yīng)的有效信息,如網(wǎng)頁資源等,否則,所述應(yīng)答信息中就含有網(wǎng)絡(luò)請求失敗的通知信
ο參照圖2,示出了本申請?zhí)峁┑囊环N基于HTTP協(xié)議的通信方法實施例ニ的流程示意圖,本實施例的基于HTTP協(xié)議的通信方法包括以下步驟步驟201,終端生成憑證標識。終端可根據(jù)實際應(yīng)用選擇憑證標識的組成方式,如可獲取終端的IP地址和端ロ號、網(wǎng)卡標識和當前時間組成憑證標識等,只要保證不同終端的網(wǎng)絡(luò)請求或同一終端的多輪網(wǎng)絡(luò)請求所使用的憑證標識具有唯一性即可。步驟202,終端向服務(wù)器發(fā)送時間戳請求;所述時間戳請求信息中包含所述終端的憑證標識。由于現(xiàn)有基于HTTP協(xié)議的網(wǎng)絡(luò)通信是無連接、無狀態(tài)的通信,終端向服務(wù)器發(fā)送的多個請求之間沒有聯(lián)系。因此,我們在終端向服務(wù)器發(fā)送的多個網(wǎng)絡(luò)請求中加入統(tǒng)ー的憑證標識,即可將前后多個內(nèi)容上關(guān)聯(lián)的網(wǎng)絡(luò)請求通過該憑證標識建立起聯(lián)系,方便終端和服務(wù)器管理多個內(nèi)容關(guān)聯(lián)的網(wǎng)絡(luò)請求。步驟203,服務(wù)器生成第一時間戳;存儲配置信息,所述配置信息存儲有當前網(wǎng)絡(luò)請求信息對應(yīng)的憑證標識、第一時間戳和對應(yīng)的第一時間戳有效期。服務(wù)器每收到終端的時間戳獲取請求,就存儲當前憑證標識新的第二時間戳和有效期,同時也可以清空該憑證標識之前的第二時間戳有效期記錄。步驟204,服務(wù)器將第一時間戳發(fā)送至終端。步驟205,服務(wù)器接收終端發(fā)送的網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文由終端根據(jù)預(yù)置加密算法對包含所述第一時間戳和憑證標識的算法因子加密生成。
步驟206,服務(wù)器驗證時間戳密文是否有效,若無效,則所述網(wǎng)絡(luò)請求信息無效。步驟207,服務(wù)器驗證網(wǎng)絡(luò)請求中的第一時間戳是否有效,若無效,則所述網(wǎng)絡(luò)請求信息無效。服務(wù)器通過當前網(wǎng)絡(luò)請求中的憑證標識、第一時間戳從存儲的配置信息中獲取該第一時間戳對應(yīng)的有效周期,然后判斷當前網(wǎng)絡(luò)請求中的時間戳與服務(wù)器當前時間的時間間隔是否在其對應(yīng)的有效期內(nèi),若超出有效期,則認為當前網(wǎng)絡(luò)請求的時間戳失效,該網(wǎng)絡(luò)請求為非法請求。優(yōu)選的,所述憑證標識動態(tài)有效。服務(wù)器可根據(jù)一定條件判斷該憑證標識是否有效,例如該憑證標識對應(yīng)的終端是否已經(jīng)離線、斷線或長時間無應(yīng)答、超出有效周期等,若滿足無效條件,服務(wù)器可將該憑證標識置為無效狀態(tài),以及中斷當前網(wǎng)絡(luò)請求的后續(xù)處理并向終端返回請求失敗的應(yīng)答信息,這樣ー來即使該憑證標識被他人竊取或利用也無法合法通信,有效提高了通信過程的安全性。步驟208,服務(wù)器向終端返回應(yīng)答信息。在實施例一中,服務(wù)器只能對某ー類終端使用固定的有效期判斷其網(wǎng)絡(luò)請求時間戳是否有效,而在上述實施例ニ中,服務(wù)器通過配置信息存儲終端憑證標識對應(yīng)的時間戳和該時間戳的有效周期,由于憑證標識對不同終端或使用終端的不同用戶具有唯一性,因此,對時間戳有效期的配置和判斷可以具體到對各個終端和使用該終端的不同用戶,提高了服務(wù)器驗證時間戳有效性的精細度。參照圖3,示出了本申請?zhí)峁┑囊环N基于HTTP協(xié)議的通信方法實施例三的流程示意圖,本實施例的基于HTTP協(xié)議的通信方法包括以下步驟步驟301,終端向服務(wù)器發(fā)送憑證請求。步驟302,服務(wù)器響應(yīng)憑證請求,按規(guī)則生成憑證標識;將憑證標識發(fā)送至終端。憑證標識雖然可以由終端自行產(chǎn)生,但當終端數(shù)量、并發(fā)請求過多時,所生成的憑證標識無法保證絕對唯一。由服務(wù)器根據(jù)各個終端的憑證請求按預(yù)設(shè)規(guī)則統(tǒng)一生成憑證標識則有效地避免了上述問題,例如可按終端請求信息中包含的IP地址、端口號和時間生成該終端當前唯一的序列號作為憑證標識。步驟303,終端向服務(wù)器發(fā)送時間戳請求。步驟304,服務(wù)器生成第一時間戳。步驟305,服務(wù)器將第一時間戳發(fā)送至終端。步驟306,終端按預(yù)置加密算法對包含第一時間戳的算法因子加密生成時間戳密文。步驟307,服務(wù)器接收終端發(fā)送的網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述第一時間戳、憑證標識和對應(yīng)的時間戳密文。時間戳密文是按預(yù)置加密算法對包含第一時間戳、憑證標識的算法因子加密生成。優(yōu)選的,服務(wù)器驗證當前網(wǎng)絡(luò)請求信息中的憑證標識是否有效,若無效,執(zhí)行步驟308。若當前終端已離線、斷線或長時間處于非活動狀態(tài),該終端對應(yīng)的憑證標識可被服務(wù)器只為無效。步驟308,服務(wù)器按預(yù)置加密算法驗證所述時間戳密文是否有效,若無效,執(zhí)行步驟 310。所述預(yù)置加密算法是終端與服務(wù)器約定好的加密算法規(guī)則??蛇x的,所述加密算法是簽名加密算法。終端根據(jù)所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第一數(shù)字簽名組成時間戳密文;服務(wù)器按所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第二數(shù)字簽名;驗證所述第二數(shù)字簽名與所述時間戳密文對應(yīng)的第一數(shù)字簽名是否一致,若不一致,則所述時間戳密文無效。所述簽名加密算法規(guī)則可包括以下步驟首先按預(yù)置規(guī)則組織算法因子;然后對該算法因子按簽名算法計算得到數(shù)字簽名。例如,本例中算法因子的組織規(guī)則可以是‘時間戳+憑證標識+其它’,甚至可以將整個請求報文作為算法因子;所使用的簽名算法可以是消息摘要算法(MD5, Message Digest Algorithm5)或其他簽名算法。MD5算法是計算機安全領(lǐng)域廣泛使用的一種散列函數(shù),用以提供消息的完整性保護。該算法可以對任意文件或一段信息生成獨一無ニ的MD5信息摘要,即數(shù)字簽名。若任何人對文件或信息做了任何改動,其MD5值都會發(fā)生變化??蛇x的,所述預(yù)置加密算法是對稱加密算法;終端根據(jù)所述對稱加密算法使用對應(yīng)的密鑰對包含所述第一時間戳的算法因子加密生成間戳密文;服務(wù)器使用所述對稱加密算法對應(yīng)的密鑰對所述時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。與簽名算法是對算法因子的信息摘要進行加密獲得簽名不同,使用對稱加密算法是對整個算法因子字符串進行加密獲得時間戳密文;服務(wù)器使用相同的密鑰或相對應(yīng)的解密程序?qū)r間戳密文進行解密獲得算法因子原文。常用的算法如高級加密標準(AdvancedEncryption Standard, AES)加密算法??蛇x的,所述預(yù)置加密算法是非對稱加密算法;終端根據(jù)所述非対稱加密算法使用對應(yīng)的公鑰對包含所述第一時間戳的算法因子加密生成間戳密文;服務(wù)器使用與所述非對稱加密算法對應(yīng)的私鑰對所述時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。常用的非対稱加密算法如RSA加密算法。若經(jīng)驗證時間戳密文無效,則說明網(wǎng)絡(luò)請求信息中與算法因子對應(yīng)的字符串已被篡改,當前網(wǎng)絡(luò)請求不再被信任且為非法請求。優(yōu)選的,本申請按預(yù)設(shè)規(guī)則使用包含時間戳和憑證標識的字符串作為加密算法的算法因子。由于服務(wù)器為終端分配的憑證標識具有唯一性,因此由其組成的算法因子也就是唯一不重復(fù)的。由于HTTP請求消息中時間戳多為明碼,而憑證標識是服務(wù)器按預(yù)置規(guī)則生成,因此除非憑證標識產(chǎn)生規(guī)則泄露,那么該憑證標識被篡改的可能性很低;況且算法因、子的組成規(guī)則由終端和服務(wù)器約定,并不對外公開,即使知道算法因子中使用了時間戳和憑證標識,也很難獲知其出現(xiàn)的頻率和排列組合方式,因此若終端網(wǎng)絡(luò)請求信息中的時間戳密文無效,則可以認為該字符串中的時間戳被篡改,該請求為非法請求。本領(lǐng)域技術(shù)人員應(yīng)該理解,在實施本申請時,可根據(jù)具體情況決定時間戳和憑證標識組成算法因子的預(yù)設(shè)規(guī)則,以及時間戳和憑證標識在算法因子中出現(xiàn)的順序及次數(shù),例如可以是時間戳+憑證標識,也可以是憑證標識+時間戳+時間戳+憑證標識等。步驟309,服務(wù)器驗證網(wǎng)絡(luò)請求中的第一時間戳與當前時間的時間間隔是否在其有效周期內(nèi),若超出有效期,當前網(wǎng)絡(luò)請求為無效請求。 步驟310,服務(wù)器向終端返回應(yīng)答信息。上述實施例中,終端向服務(wù)器發(fā)送的網(wǎng)絡(luò)請求信息中包含由服務(wù)器統(tǒng)一分配的憑證標識,服務(wù)器對含有該憑證標識的網(wǎng)絡(luò)請求信息可先驗證該憑證標識是否有效,若憑證標識為無效狀態(tài),則服務(wù)器可中斷后續(xù)操作,直接返回終端無效請求,節(jié)約了服務(wù)器部分操作指令,因此一定程度節(jié)約了服務(wù)器資源,降低了服務(wù)器載荷。其次,在網(wǎng)絡(luò)請求信息加入數(shù)字簽名,可有效防止網(wǎng)絡(luò)請求信息被篡改,避免了重放攻擊的發(fā)生。尤其是,本申請使用由服務(wù)器統(tǒng)一分配的憑證標識和時間戳作為簽名算法因子,保證了簽名算法因子的唯一性,避免了不同終端產(chǎn)生相同簽名的可能性和時間戳被篡改的可能性,有效防止了網(wǎng)絡(luò)重放攻擊。以上結(jié)合幾個實施例對本申請?zhí)峁┑囊环N基于HTTP協(xié)議的通信方法做了描述。下面結(jié)合具體應(yīng)用環(huán)境對所述方法做進ー步描述在下面的實施例中,假設(shè)用戶通過一終端,使用自己的用戶名、密碼登錄ー個網(wǎng)站,若服務(wù)器對登錄請求驗證成功,服務(wù)器返回動態(tài)密碼Key給終端使用。該網(wǎng)站的服務(wù)器包括登錄服務(wù)器、加密服務(wù)器。步驟S01,用戶登錄,獲取憑證標識。在終端中,用戶輸入用戶名和密碼向登錄服務(wù)器發(fā)送登錄請求。若登錄成功,登錄服務(wù)器向該終端返回憑證標識。該憑證標識是登錄服務(wù)器根據(jù)該用戶的用戶名和其它相關(guān)信息生成的唯一認證信息串。步驟S02,終端從加密服務(wù)器獲取時間戳。終端調(diào)用PostDownloadTimeStamp方法向加密服務(wù)器發(fā)送ー個獲得時間戳請求,從加密服務(wù)器上獲取最新的時間戳,時間戳是加密服務(wù)器從全球時間同步服務(wù)器上獲取的當前的精準時間。步驟S03,終端生成第一簽名組成時間戳密文,并組織驗證請求數(shù)據(jù)包。若時間戳獲取成功,終端調(diào)用RequestHeader_Stamp方法生成簽名并組成驗證請求數(shù)據(jù)包。終端使用時間戳、憑證標識計算簽名組成時間戳密文,其具體算法為首先將時間戳+時間戳+憑證標識+時間戳組成算法因子字符串;然后對該算法因子字符串進行MD5生成ー個簽名字符串組成時間戳密文。步驟S04,終端使用HTTPS方式向加密服務(wù)器發(fā)送驗證請求終端使用PostDownloadTimeStamp方法將驗證請求發(fā)送到加密服務(wù)器上。步驟S05,加密服務(wù)器使用與終端相同的規(guī)則對時間戳、憑證標識生成第二簽名來驗證終端發(fā)送來的驗證請求,若第二簽名與時間戳密文對應(yīng)的第一簽名一致,則時間戳密文合法有效。步驟S06,驗證網(wǎng)絡(luò)請求信息中的第一時間戳與當前時間的時間間隔是否在對應(yīng)的有效期內(nèi),若超出,則所述網(wǎng)絡(luò)請求無效。步驟S07,加密服務(wù)器向終端返回應(yīng)答信息。若驗證通過,加密服務(wù)器返回正確的動態(tài)密碼key給終端,否則,向終端返回請求失敗的通知彳目息。終端所獲的動態(tài)密碼Key可用于該用戶的后續(xù)操作,如動態(tài)密碼輸入等。需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本申請并不受所描述的動作順序的限制,因為依據(jù)本申請,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作并不一定是本申請所必須的。參照圖4,是本申請實施例所述ー種基于超文本傳輸協(xié)議HTTP服務(wù)器的結(jié)構(gòu)示意圖。所述HTTP服務(wù)器具體包括接收模塊410、發(fā)送模塊420、時間戳生成模塊460和密文校驗?zāi)K430 ;其中所述接收模塊410包括第一接收單元411,用于接收時間戳請求信息;第二接收單元412,用于接收網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文是根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成;其中所述時間戳生成模塊460,用于應(yīng)所述時間戳請求信息生成第一時間戳;其中所述發(fā)送模塊420包括第一發(fā)送單元421,用于發(fā)送時間戳生成模塊所生成的第一時間戳;其中所述密文校驗?zāi)K430,用于按所述預(yù)置加密算法驗證所述時間戳密文是否有效,若無效,則所述網(wǎng)絡(luò)請求信息為無效請求。優(yōu)選的,所述服務(wù)器還包括時間戳驗證模塊470,用于驗證第二接收單元412接收的網(wǎng)絡(luò)請求信息中的第一時間戳與當前時間的間隔是否在有效期內(nèi),若超出,則所述網(wǎng)絡(luò)請求信息無效??蛇x的,所述預(yù)置加密算法為簽名加密算法, 所述密文校驗?zāi)K430還包括簽名生成単元431,用于按所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第二簽名;第一校驗單元432,用于驗證所述簽名生成単元431所生成的第二數(shù)字簽名與第ニ接收單元412所接收的時間戳密文對應(yīng)的第一數(shù)字簽名是否一致,若不一致,則所述時間戳密文無效??蛇x的,所述預(yù)置加密算法為對稱加密算法,
所述密文校驗?zāi)K430還包括第二校驗單元433,用于使用所述對稱加密算法對應(yīng)的密鑰對第二接收單元412所接收的時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與第二接收單元所接收的網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效??蛇x的,所述預(yù)置加密算法為非對稱加密算法,所述密文校驗?zāi)K430還包括第三校驗單元434,用于使用與所述非對稱加密算法對應(yīng)的私鑰對第二接收單412元所接收的時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第ニ時間戳與網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。進ー步的,所述接收模塊410還包括第三接收單元413,用于接收終端的憑證請求;所述服務(wù)器還包括憑證標識生成単元440,用于根據(jù)第三接收單元413所接收的憑證請求生成憑證標識;所述發(fā)送模塊420還包括第二發(fā)送單元422用于發(fā)送憑證標識生成単元440所生成的憑證標識。優(yōu)選的,所述第二接收單元412所接收的網(wǎng)絡(luò)請求信息中還包括憑證標識;所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。優(yōu)選的,所述憑證標識動態(tài)有效;所述服務(wù)器還包括憑證校驗?zāi)K450,用于驗證第二接收單元412所接收的網(wǎng)絡(luò)請求信息中是否包括憑證標識,若包括且該憑證標識無效,則所述網(wǎng)絡(luò)請求信息無效。參照圖5,是本申請實施例所述ー種基于超文本傳輸協(xié)議HTTP終端的結(jié)構(gòu)示意圖。所述HTTP終端包括發(fā)送模塊510、接收模塊520和密文模塊530 ;其中所述發(fā)送模塊510包括第一發(fā)送單元511,用于發(fā)送第一時間戳獲取請求;第二發(fā)送單元512,用于發(fā)送網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述接收模塊接收的第一時間戳,和對應(yīng)的由所述密文模塊生成的時間戳密文;其中所述接收模塊520包括第一接收單元521,用于接收第一時間戳;其中所述密文模塊用于根據(jù)預(yù)置加密算法對包含有所述接收的第一時間戳的算法因子加密生成時間戳密文??蛇x的,所述預(yù)置加密算法為簽名加密算法;所述密文模塊530還包括 第一加密單元531,用于對包含所述第一時間戳的算法因子加密生成第一數(shù)字簽名組成時間戳密文。可選的,所述預(yù)置加密算法為對稱加密算法;所述密文模塊530還包括第二加密單元532,用于使用與所述對稱加密算法對應(yīng)的密鑰對包含所述第一時間戳的算法因子加密生成間戳密文。 可選的,所述預(yù)置加密算法為非對稱加密算法; 所述密文模塊530還包括第三加密單元533,用于使用與所述非對稱加密算法對應(yīng)的公鑰對包含所述第一時間戳的算法因子加密生成間戳密文??蛇x的,所述終端還包括憑證標識生成模塊540,用于生成憑證標識;所述包含第一時間戳的算法因子還包括所述憑證標識模塊生成的憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。優(yōu)選的,所述發(fā)送単元510還包括第三發(fā)送單元513,用于發(fā)送憑證請求信息;所述接收模塊520還包括第二接收單元522,用于接收憑證標識;所述第二發(fā)送單元512所發(fā)送的網(wǎng)絡(luò)請求信息中還包括第二接收單元522所接收的憑證標識;所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。參照圖6,是本申請實施例所述ー種基于超文本傳輸協(xié)議HTTP的系統(tǒng)的結(jié)構(gòu)不意圖。具體的,所述系統(tǒng)包括HTTP終端6100、HTTP服務(wù)器6200 ;所述HTTP終端6100包括終端發(fā)送模塊6110、終端接收模塊6120和密文模塊6130 ;其中所述終端發(fā)送模塊6110包括第一發(fā)送單元6111,用于發(fā)送第一時間戳獲取請求;第二發(fā)送單元6112,用于發(fā)送網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述接收模塊接收的第一時間戳,和對應(yīng)的由所述密文模塊生成的時間戳密文;其中所述終端接收模塊6120包括第一接收單元6121,用于接收第一時間戳;其中所述密文模塊6130用于根據(jù)預(yù)置加密算法對包含有所述接收的第一時間戳的算法因子加密生成時間戳密文。所述HTTP服務(wù)器6200包括服務(wù)器接收模塊6210、服務(wù)器發(fā)送模塊6220、時間戳生成模塊6230和密文校驗?zāi)K 6240 ;其中所述服務(wù)器接收模塊6210包括
第一接收單元6211,用于接收時間戳請求信息; 第二接收單元6212,用于接收網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文是根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成;其中所述時間戳生成模塊6230用于應(yīng)所述時間戳請求信息生成第一時間戳;其中所述服務(wù)器發(fā)送模塊6220包括第一發(fā)送單元6221,用于發(fā)送時間戳生成模塊所生成的第一時間戳;其中所述密文校驗?zāi)K6240用于按所述預(yù)置加密算法驗證所述時間戳密文是否有效,若無效,則所述網(wǎng)絡(luò)請求信息為無效請求。上述系統(tǒng)的詳細結(jié)構(gòu)請參見以上HTTP終端、HTTP服務(wù)器,以及方法實施例相關(guān)部分的說明。本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。對于系統(tǒng)和/或裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另ー個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,上文中的“和/或”表示本文既包含了 “和”的關(guān)系,也包含了 “或”的關(guān)系,其中如果方案A與方案B是“和”的關(guān)系,則表示某實施例中可以同時包括方案A和方案B ;如果方案A與方案B是“或”的關(guān)系,則表示某實施例中可以單獨包括方案A,或者単獨包括方案B。以上對本申請所提供的一種基于超文本傳輸協(xié)議HTTP的網(wǎng)絡(luò)通信方法、服務(wù)器、終端,進行了詳細介紹,本文中應(yīng)用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本申請的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請的思想,在具體實施方式
及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本申請的限制。
權(quán)利要求
1.一種基于超文本傳輸協(xié)議的網(wǎng)絡(luò)通信方法,其特征在于,包括 應(yīng)終端請求向終端發(fā)送第一時間戳; 接收終端發(fā)送的網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文由終端根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成; 按所述預(yù)置加密算法驗證所述時間戳密文是否有效,若無效,則所述網(wǎng)絡(luò)請求信息為無效請求。
2.如權(quán)利要求I所述的方法,其特征在干,進ー步包括 驗證所述網(wǎng)絡(luò)請求信息中的第一時間戳與當前時間的間隔是否在有效期內(nèi),若超出,則所述網(wǎng)絡(luò)請求信息無效。
3.如權(quán)利要求I所述的方法,其特征在于,所述預(yù)置加密算法為簽名加密算法, 所述終端根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括 終端根據(jù)所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第一數(shù)字簽名組成時間戳密文; 所述驗證所述時間戳密文是否有效包括 按所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第二數(shù)字簽名; 驗證所述第二數(shù)字簽名與所述時間戳密文對應(yīng)的第一數(shù)字簽名是否一致,若不一致,則所述時間戳密文無效。
4.如權(quán)利要求I所述的方法,其特征在于,所述預(yù)置加密算法為對稱加密算法, 所述終端根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括 終端根據(jù)所述對稱加密算法使用對應(yīng)的密鑰對包含所述第一時間戳的算法因子加密生成間戳密文; 所述驗證所述時間戳密文是否有效包括 使用所述對稱加密算法對應(yīng)的密鑰對所述時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。
5.如權(quán)利要求I所述的方法,其特征在于,所述預(yù)置加密算法為非對稱加密算法, 所述終端根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括 終端根據(jù)所述非対稱加密算法使用對應(yīng)的公鑰對包含所述第一時間戳的算法因子加密生成間戳密文; 所述驗證所述時間戳密文是否有效包括 服務(wù)器使用與所述非對稱加密算法對應(yīng)的私鑰對所述時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。
6.如權(quán)利要求I所述的方法,其特征在于,所述終端發(fā)送的網(wǎng)絡(luò)請求信息中還包括由終端生成的憑證標識;且所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。
7.如權(quán)利要求I所述的方法,其特征在于,所述接收終端發(fā)送的網(wǎng)絡(luò)請求信息之前還包括 收到終端的憑證請求信息; 生成與所述憑證請求信息對應(yīng)的憑證標識; 向所述終端發(fā)送所述憑證標識。
8.如權(quán)利要求7所述的方法,其特征在干, 所述接收的網(wǎng)路請求信息中還包括所述憑證標識; 所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。
9.如權(quán)利要求6-8中任ー權(quán)利要求所述的方法,其特征在于,所述憑證標識動態(tài)有效,所述方法還包括 若所述終端發(fā)送的網(wǎng)絡(luò)請求信息中包括憑證標識,則服務(wù)器驗證該憑證標識是否有效,若無效,則所述網(wǎng)絡(luò)請求為無效請求。
10.一種基于超文本傳輸協(xié)議的網(wǎng)絡(luò)通信方法,其特征在于,包括 從服務(wù)器獲取第一時間戳; 向服務(wù)器發(fā)送網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文是根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成。
11.如權(quán)利要求10所述的方法,其特征在于,所述預(yù)置加密算法為簽名加密算法, 所述根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括 根據(jù)所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第一數(shù)字簽名組成時間戳密文。
12.如權(quán)利要求10所述的方法,其特征在于,所述預(yù)置加密算法為對稱加密算法, 所述根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括 使用與所述對稱加密算法對應(yīng)的密鑰對包含所述第一時間戳的算法因子加密生成間戳密文。
13.如權(quán)利要求10所述的方法,其特征在于,所述預(yù)置加密算法為非對稱加密算法, 所述根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成時間戳密文包括 使用與所述非對稱加密算法對應(yīng)的公鑰對包含所述第一時間戳的算法因子加密生成間戳密文。
14.如權(quán)利要求10所述的方法,其特征在于,所述網(wǎng)絡(luò)請求信息中還包括憑證標識;且 所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。
15.如權(quán)利要求10所述的方法,其特征在于,所述向服務(wù)器發(fā)送網(wǎng)絡(luò)請求信息之前還包括 向服務(wù)器發(fā)送憑證請求信息; 接收服務(wù)器發(fā)送的憑證標識。
16.—種基于超文本傳輸協(xié)議的服務(wù)器,其特征在于,包括接收模塊、發(fā)送模塊、時間戳生成模塊和密文校驗?zāi)K; 其中所述接收模塊包括 第一接收單元,用于接收時間戳請求信息; 第二接收單元,用于接收網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文是根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加 密生成; 其中所述時間戳生成模塊,用于應(yīng)所述時間戳請求信息生成第一時間戳; 其中所述發(fā)送模塊包括 第一發(fā)送單元,用于發(fā)送時間戳生成模塊所生成的第一時間戳; 其中所述密文校驗?zāi)K,用于按所述預(yù)置加密算法驗證所述時間戳密文是否有效,若無效,則所述網(wǎng)絡(luò)請求信息為無效請求。
17.如權(quán)利要求16所述的服務(wù)器,其特征在干, 所述服務(wù)器還包括 時間戳驗證模塊,用于驗證第二接收單元接收的網(wǎng)絡(luò)請求信息中的第一時間戳與當前時間的間隔是否在有效期內(nèi),若超出,則所述網(wǎng)絡(luò)請求信息無效。
18.如權(quán)利要求16所述的服務(wù)器,其特征在于,所述預(yù)置加密算法為簽名加密算法, 所述密文校驗?zāi)K還包括 簽名生成単元,用于按所述簽名加密算法對包含所述第一時間戳的算法因子加密生成第二簽名; 第一校驗單元,用于驗證所述簽名生成単元所生成的第二數(shù)字簽名與第二接收單元所接收的時間戳密文對應(yīng)的第一數(shù)字簽名是否一致,若不一致,則所述時間戳密文無效。
19.如權(quán)利要求16所述的服務(wù)器,其特征在于,所述預(yù)置加密算法為對稱加密算法, 所述密文校驗?zāi)K還包括 第二校驗單元,用于使用所述對稱加密算法對應(yīng)的密鑰對第二接收單元所接收的時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與第二接收単元所接收的網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。
20.如權(quán)利要求16所述的服務(wù)器,其特征在于,所述預(yù)置加密算法為非對稱加密算法, 所述密文校驗?zāi)K還包括 第三校驗單元,用于使用與所述非對稱加密算法對應(yīng)的私鑰對第二接收單元所接收的時間戳密文進行解密獲取其中的時間戳信息作為第二時間戳,判斷所述第二時間戳與網(wǎng)絡(luò)請求信息中的第一時間戳是否一致,若不一致,則所述時間戳密文無效。
21.如權(quán)利要求16所述的服務(wù)器,其特征在于,所述接收模塊還包括 第三接收單元,用于接收終端的憑證請求; 所述服務(wù)器還包括 憑證標識生成単元,用于根據(jù)第三接收單元所接收的憑證請求生成憑證標識;所述發(fā)送模塊還包括 第二發(fā)送單元,用于發(fā)送憑證標識生成単元所生成的憑證標識。
22.如權(quán)利要求21所述的服務(wù)器,其特征在于,所述第二接收單元所接收的網(wǎng)絡(luò)請求信息中還包括憑證標識; 所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。
23.如權(quán)利要求21、22所述的服務(wù)器,其特征在于,所述憑證標識動態(tài)有效; 所述服務(wù)器還包括 憑證校驗?zāi)K,用于驗證第二接收單元所接收的網(wǎng)絡(luò)請求信息中是否包括憑證標識,若包括且該憑證標識無效,則所述網(wǎng)絡(luò)請求信息無效。
24.一種基于超文本傳輸協(xié)議的終端,其特征在于,包括 發(fā)送模塊、接收模塊和密文模塊; 其中所述發(fā)送模塊包括 第一發(fā)送單元,用于發(fā)送第一時間戳獲取請求; 第二發(fā)送單元,用于發(fā)送網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述接收模塊接收的第一時間戳,和對應(yīng)的由所述密文模塊生成的時間戳密文; 其中所述接收模塊包括 第一接收單元,用于接收第一時間戳; 其中所述密文模塊用于根據(jù)預(yù)置加密算法對包含有所述接收的第一時間戳的算法因子加密生成時間戳密文。
25.如權(quán)利要求24所述的終端,其特征在于,所述預(yù)置加密算法為簽名加密算法; 所述密文模塊還包括 第一加密單元,用于對包含所述第一時間戳的算法因子加密生成第一數(shù)字簽名組成時間戳密文。
26.如權(quán)利要求24所述的終端,其特征在于,所述預(yù)置加密算法為對稱加密算法; 所述密文模塊還包括 第二加密單元,用于使用與所述對稱加密算法對應(yīng)的密鑰對包含所述第一時間戳的算法因子加密生成間戳密文。
27.如權(quán)利要求24所述的終端,其特征在于,所述預(yù)置加密算法為非對稱加密算法; 所述密文模塊還包括 第三加密單元,用于使用與所述非對稱加密算法對應(yīng)的公鑰對包含所述第一時間戳的算法因子加密生成間戳密文。
28.如權(quán)利要求24所述的終端,其特征在于,還包括 憑證標識生成模塊,用于生成憑證標識; 所述包含第一時間戳的算法因子還包括所述憑證標識模塊生成的憑證標識; 所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。
29.如權(quán)利要求24所述的終端,其特征在干, 所述發(fā)送單元還包括 第三發(fā)送單元,用于發(fā)送憑證請求信息;所述接收模塊還包括 第二接收單元,用于接收憑證標識; 所述第二發(fā)送單元所發(fā)送的網(wǎng)絡(luò)請求信息中還包括第三接收單元所接收的憑證標 識; 所述包含第一時間戳的算法因子還包括所述憑證標識;所述算法因子由所述第一時間戳和所述憑證標識按預(yù)設(shè)規(guī)則組成。
全文摘要
本申請?zhí)峁┝艘环N基于超文本傳輸協(xié)議的網(wǎng)絡(luò)通信方法和系統(tǒng)、服務(wù)器、終端,以抵御HTTP網(wǎng)絡(luò)通信中的重放攻擊。應(yīng)終端請求向終端發(fā)送第一時間戳;接收終端發(fā)送的網(wǎng)絡(luò)請求信息;所述網(wǎng)絡(luò)請求信息中包含所述第一時間戳和對應(yīng)的時間戳密文;所述時間戳密文由終端根據(jù)預(yù)置加密算法對包含所述第一時間戳的算法因子加密生成;按所述預(yù)置加密算法驗證所述時間戳密文是否有效,若無效,則所述網(wǎng)絡(luò)請求信息為無效請求。通過驗證包含時間戳信息的時間戳密文的合法性和有效性,進而防止網(wǎng)絡(luò)請求中時間戳信息被篡改的可能,避免網(wǎng)絡(luò)重放攻擊的發(fā)生。
文檔編號H04L29/08GK102647461SQ20121008971
公開日2012年8月22日 申請日期2012年3月29日 優(yōu)先權(quán)日2012年3月29日
發(fā)明者任寰, 吳浩, 李超, 杭程 申請人:奇智軟件(北京)有限公司