專利名稱:基于互聯網的加密通信方法及系統的制作方法
技術領域:
本發明涉及互聯網信息安全技術,尤其涉及一種基于互聯網的加密通信方法及系統。
背景技術:
加密通信是互聯網信息傳輸中一種常見的通信安全保障手段,通信的發送方在發 送數據前,從密鑰服務器(Key Server)獲得一個密鑰,以所述密鑰對通信數據加密后,將數 據發出;而接收方收到該加密的數據后,以同樣的密鑰對該加密數據進行解密。上述方案的 缺點是,密鑰服務器提供的密鑰對其接入的所有的客戶端都是相同的,也就是說,接入所述 密鑰服務器的任何客戶端都持有相同的密鑰,對以該密鑰加密的所有數據,其他的客戶端
(第三方)都可以解密,這無疑提高了加密通信的風險。
發明內容
本發明所要解決的技術問題是提供一種基于互聯網的加密通信方法,該方法保 證了只有通信的雙方能夠獲得加密的通信數據的密鑰,從而有效防止了第三方竊聽數據, 保證了雙方客戶端數據的安全性。 本發明進一步所要解決的技術問題是提供一種基于互聯網的加密通信系統,該 系統保證了只有通信的雙方能夠獲得加密的通信數據的密鑰,從而有效防止了第三方竊聽 數據,保證了雙方客戶端數據的安全性。 為解決上述技術問題,本發明采用如下技術方案
—種基于互聯網的加密通信方法,包括以下步驟 第一客戶端在向第二客戶端發送通信數據時,根據第二客戶端的MAC地址在本地
密鑰列表中查找攜帶有雙方客戶端用戶標識的密鑰,若查到該密鑰,則執行下述加密發送
步驟,否則,向密鑰服務器發送獲取所述密鑰的請求消息,執行下述密鑰獲取步驟; 密鑰獲取步驟,密鑰服務器根據來自第一客戶端/第二客戶端的密鑰獲取請求,
將攜帶有雙方客戶端用戶標識的密鑰發送到所述第一客戶端/第二客戶端; 加密發送步驟,使用該密鑰對待發送的通信數據進行加密,并將加密的通信數據
發送到第二客戶端; 第二客戶端接收到所述加密的通信數據后,在本地密鑰列表中查找攜帶有雙方客 戶端用戶標識的密鑰,若查到該密鑰,則執行下述解密接收步驟,否則,向密鑰服務器發送 獲取所述密鑰的請求消息,執行所述密鑰獲取步驟,并丟棄所述加密的通信數據;
解密接收步驟,以所述密鑰對所述加密的通信數據進行解密。
—種基于互聯網的通信加密系統,其特征在于,該系統包括有 第一客戶端,用于以攜帶有雙方客戶端用戶標識的密鑰對待發送的通信數據進行 加密后,發送加密的通信數據; 第二客戶端,用于以攜帶有雙方客戶端用戶標識的密鑰對其接收到的加密的通信數據進行解密; 密鑰服務器,與所述第一客戶端和第二客戶端相連,用于接收所述第一客戶端或
第二客戶端發送的密鑰獲取請求,并將攜帶有雙方客戶端用戶標識的密鑰發送給所述第一
客戶端或第二客戶端。 本發明的有益效果是 本發明的實施例通過在密鑰中攜帶雙方客戶端的用戶標識,從而保證了只有通信 的雙方能夠獲得加密的通信數據的密鑰,有效防止了第三方竊聽數據,保證了雙方客戶端 數據的安全性。 下面結合附圖對本發明作進一步的詳細描述。
圖1是本發明提供的基于互聯網的加密通信方法的一個實施例的方法流程圖。
圖2是本發明提供的基于互聯網的加密通信系統的一個實施例中加密子網內通 信結構的組成結構圖。 圖3是本發明提供的基于互聯網的加密通信系統的一個實施例中加密子網與非 加密子網間通信結構的組成結構圖。 圖4是本發明提供的基于互聯網的加密通信系統的一個實施例中加密子網間通 信的組成結構圖。 圖5是本發明提供的基于互聯網的加密通信系統的一個實施例的設備部署解密 示意圖。 圖6是本發明提供的基于互聯網的加密通信系統的一個實施例的模塊部署結構 示意圖。
具體實施例方式
下面參考圖1詳細描述本發明提供的基于互聯網的加密通信方法的一個實施例。 如圖所示,本實施例實現一次加密通信主要包括一下步驟 第一客戶端在向第二客戶端發送通信數據時,根據第二客戶端的MAC地址在本地 密鑰列表中查找攜帶有雙方客戶端用戶標識的密鑰,若查到該密鑰,則執行下述加密發送 步驟,否則,向密鑰服務器發送獲取密鑰請求,執行下述密鑰獲取步驟; 在密鑰獲取步驟中,若密鑰服務器收到來自第一客戶端的密鑰獲取請求,則將攜 帶有雙方客戶端用戶標識的密鑰發送到所述第一客戶端,執行下述加密發送步驟;若密鑰 服務器收到來自第二客戶端的密鑰獲取請求,則將所述密鑰發送到第二客戶端,執行下述 解密接收步驟; 在加密發送步驟中,使用該密鑰對待發送的通信數據進行加密,并將加密的通信 數據發送到第二客戶端; 第二客戶端接收到所述加密的通信數據后,在本地密鑰列表中查找攜帶有雙方客 戶端用戶標識的密鑰,若查到該密鑰,則執行下述解密接收步驟,否則,向密鑰服務器發送 獲取密鑰請求,執行所述密鑰獲取步驟; 解密接收步驟,以所述密鑰對所述加密的通信數據進行解密。
下面詳細描述當通信的雙方為同一個加密子網內的兩個普通客戶端之間一次加 密通信的具體實施過程,假設第一客戶端的用戶標識為ID_1、 MAC地址為MACj ;第二客戶 端的ID號為ID_2、MAC地址為MAC_2 : 首先,密鑰服務器對客戶端進行接入認證時,要求客戶端提供其用戶名和MAC地 址,并將所述用戶名和MAC地址保存在ID-MAC列表中,另外,密鑰服務器中還保存有一個 ID-ID-KEY列表,該ID-ID-KEY列表中保存有所述密鑰服務器根據雙方客戶端的用戶名和 MAC地址產生的密鑰; 當協議層要求ID_1發出數據包到目的地址MAC_2時,ID_1在本地MAC-KEY列表 中查詢(MAC_2,KEY_ ),若查不至IJ,則發送請求(ID_1,MAC_2,KEY_ )到密鑰服務器,并 丟棄此數據包; 密鑰服務器收到請求(ID_1, MAC_2, KEY— )后,在ID-MAC列表中查詢(ID— , MAC_2),得到(ID_2,MAC_2),則在ID-ID-KEY列表中查詢(ID_1, ID_2,KEY_ ),若查不到, 則生成密鑰(ID_1, ID_2, KEY_1_2),并保存到ID-ID-KEY列表后,將該密鑰(ID_1, MAC_2, KEY_1_2)返回給ID_1 ; ID—l接收到(ID_1, MAC_2, KEY丄2)后,在本地MAC-KEY列表中保存(MAC_2, KEY丄2); 當協議層再次要求ID_1發送數據包到目的地址MAC_2時,ID_1在本地MAC-KEY列
表中查詢(MAC_2, KEY_ ),查到(MAC_2, KEY_1_2),則加密并發送該數據包; ID_2收到來自ID_1的該數據包后,提取其源MAC,得到MAC_1,則在本地MAC-KEY
列表中查詢(MAC_1,KEY_ ),若不到,則發送請求(ID_2,MAC_1,KEY_ )到密鑰服務器,
同時丟棄此數據包。 密鑰服務器收到請求(ID_2, MAC_1, KEY— )后,在ID-MAC列表中查詢(ID— , MAC—1),得至U (IDj,MACj),則在ID-ID-KEY列表中查詢(ID—l , ID_2, KEY— ),并將查到 的(ID_2, MAC_1, KEY丄2)返回給ID—2 ; ID_2收至lj (ID_2, MAC_1, KEY_1_2)后,在本地MAC-KEY列表中保存(MAC_1, KEY丄2); 當ID_2再次收到來自ID_1發的數據包時,從數據包中提取其源MAC,得到MACj, 則在本地MAC-KEY列表中查詢密鑰(MAC_1,KEY_ ),查到(MAC_1,KEY_1_2)后,解密該數 據包,并將其轉發給協議層。 另外,本實施例還可實現加密子網內的客戶端與非加密子網之間的加密通信,具 體實現時,在所述第一客戶端所在的加密子網端口設置一個第一虛擬客戶端,所述第一虛 擬客戶端具有預設的專用用戶名,從而,所述第一虛擬客戶端在第一客戶端與非加密子網 之間以所述第二客戶端的身份與作為第一客戶端的普通客戶端通信,處理并轉發第一客 戶端和非加密子網間的通信數據。假設所述普通客戶端的用戶標識為IDj、MAC地址為 MAC_1 ;所述第一虛擬客戶端擁有的專用ID號為ID_X86 ;而所述非加密子網的ID號為ID_ X、MAC地址為MAC—X,所述普通客戶端實現一次與非加密子網通信的過程具體如下
當協議層要求ID_1發出數據包到目的MAC地址MAC_X時,ID_1在本地MAC-KEY列 表中查詢(MAC_X,KEY_ ),查不至lj,則發送請求(ID_1,MAC_X,KEY_ )到密鑰服務器,同 時丟棄此數據包;
密鑰服務器收到請求(ID_1,MAC_X,KEY_ )后,先在ID-MAC列表中查詢(ID_ , MAC_X),查不到,則生成(ID_X86, MAC_X),并將其保存在ID-IP列表中后,在ID-ID-KEY列 表中查詢(ID_1, ID_X86, KEY_ ),查不到,則生成密鑰(ID_1, ID_X86, KEY_1_X86),并保 存到ID-ID-KEY列表后,將該密鑰(ID_1, MAC_X, KEY_1_X86)返回給ID_1 ;
ID_1收到(ID_1, MAC_X, KEY_1_X86)后,在本地MAC-KEY列表中保存(MAC_X, KEY丄X86); 當協議層再次要求ID_1發送數據包到目的MAC地址MAC—X時,ID_1在本地 MAC-KEY列表中查詢(MAC_X,KEY_ ),查到(MAC_X,KEY_1_X86)后,加密并發送該數據包;
ID_X86收到來自ID_1的數據包后,提取其源MAC,得到MAC_1后,在本地MAC-KEY 列表中查詢(MAC_1, KEY— ),若查不到,則發送請求(ID—X86, MAC_1, KEY— )到密鑰服 務器,同時丟棄此數據包; 密鑰服務器收到請求(ID_X86,MAC_1,KEY_ )后,在ID-MAC列表中查詢(ID_ , MAC—1),得至U (ID_1, MAC—l)后,在ID-ID-KEY列表中查詢(ID_1, ID—X86, KEY— ),查到 (ID_1, ID—X86, KEY丄X86)后,將(ID—X86, MAC—l, KEY丄X86)返回給ID—X86 ;
ID_X86收到(ID_X86, MAC_1, KEY_1X86)后,在本地MAC-KEY列表中保存(MAC_1, KEY丄X86); 當ID_X86再次收到來自ID_1的數據包時,提取其源MAC,得到MAC_1,在本地 MAC-KEY列表中查詢(MAC_1,KEY_ ),查到(MAC_1,KEY_1_X86)后,解密該數據包,并將其 轉發到非加密子網。 具體實現時,所述第一虛擬客戶端可設置在該加密子網的完全解密口上。
另外,本實施例還可實現位于不同的加密子網內的客戶端之間的加密通信,在這 種情況下,需要在每個加密子網端口還設置一個第二虛擬客戶端,具體實現時,其通信可分 以下階段實現 1、加密子網內普通客戶端與第一虛擬客戶端之間的通信; 2、第一虛擬客戶端和第二虛擬客戶端之間的通信; 3、第二虛擬客戶端和對端加密子網的第二虛擬客戶端之間的通信。 上述每個通信階段都構成了相互通信的第一客戶端和第二客戶端,所述而普通客
戶端與第一虛擬客戶端之間的通信與前述相同,此處不再贅述。 下面僅詳細描述第一虛擬客戶端和第二虛擬客戶端之間的通信過程。在此過程 中,所述第二虛擬客戶端亦具有一個預設的專用用戶名,因而,設置在加密子網端口上的第 一虛擬客戶端和第二虛擬客戶端分別以第一客戶端和第二客戶端的身份進行加密通信。假 設作為第一客戶端的第一虛擬客戶端ID為ID—X86、作為第二客戶端的第二虛擬客戶端ID 為NETIDj,則 首先,密鑰服務器為網間通訊產生一個密鑰NETKEY,而NETID_1在啟動時即從本 地密鑰服務器獲得NETKEY ; 加密子網內的數據包通過設置在三層解密口的ID—X86解密后,即為完全解密的 普通數據包,而NETID_1則用NETKEY加密該數據包,并將其送到對端加密子網的第二虛擬 客戶端; 而當NETIDJ收到來自對端加密子網的第二虛擬客戶端的加密數據包后,以NETKEY解密所述數據包,并將其轉發到ID_X86 ; 當該數據包到達所述對端加密子網的ID_X86時,數據包已經是完全解密的普通
數據包,從而完成了第一虛擬客戶端和第二虛擬客戶端之間加密通信的過程。 具體實現時,所述第二虛擬客戶端亦可設置在該加密子網的完全解密口。 值得注意的是,密鑰服務器產生NETKEY后,需將其告知所有有網間通訊的安全交
換系統。 另外,本實施例還可以實現加密的多播(廣播)通信。假設多播MAC地址(多播 MAC地址的第40位為1)擁有的專用ID號為ID_M,所有多播地址都使用這個ID,具體地,一 次加密的多播通信過程如下 首先,密鑰服務器啟動時,為多播通訊生成密鑰(ID_M, KEY_M),并將其單獨保存 (即不保存到ID-ID-KEY列表); 協議層要求ID_1發出數據包到多播地址MAC_M時,ID_1在本地查找不到多播密 鑰,則發送請求(ID_M, MAC_M, KEY_ )到密鑰服務器,同時丟棄此數據包。
密鑰服務器收到請求(ID_M, MAC_M, KEY_ )后,多播密鑰(ID_M, MAC_M, KEY_M) 返回給ID_1 ; ID_1收到(ID_M, MAC_M, KEY_M)后,單獨保存該多播密鑰KEY_M ; 當協議層再次要求ID_1發送數據包到多播地址MAC_M時,ID_1則用KEY_M加密
并發送該數據包; ID—2收到來自ID_1的該數據包后,提取目的MAC,得到MAC—M,這是一個多播地址, IDJ在本地查找不到多播密鑰,則發送請求(ID_M,MAC_M,KEY_ )到密鑰服務器,同時丟 棄此數據包; 密鑰服務器收到請求(ID_M, MAC_M, KEY_ )后,將(ID_M, MAC_M, KEY_M)返回給 ID_2 ; ID_2收到(ID_M, MAC_M, KEY_M)后,單獨保存該多播密鑰KEY_M ; 當ID—2再次收到來自ID_1的數據包時,提取目的MAC,得到多播地址MAC—M后,用
KEY_M解密該數據包,并將其轉發給協議層。 下面詳細描述本實施例的密鑰更新機制。 本實施例中,密鑰更新必須保證在各個客戶端的更新同時成功,或者同時失敗。
對于加密子網內的密鑰,更新由密鑰服務器發起。密鑰服務器更新密鑰對(ID_1, ID_2, KEY丄2, PW_ID),并通知ID—l和ID—2,如果ID—l更新成功,而ID_2沒有,則考慮兩 種情況 第一種情況、ID_1先發包給ID_2,當ID_2發現該密鑰的PW_ID與自己的不同時, 則發送請求(ID_2,MAC_1,PW_ID_0LD)到密鑰服務器,密鑰服務器發現該PW_ID_0LD已經過 時,則返回新的密鑰(ID_2, MAC_1, KEY_1_2, PW_ID_NEW); 第二種情況、ID_2先發包給ID_1,當ID_1發現該密鑰的PW_ID與自己的不同時, 則發送請求(ID_2, MAC_1, PW_ID_NEW)到密鑰服務器,密鑰服務器發現該PW_ID是最新的, 則再次更新持有該密鑰對的所有客戶端。
多播密鑰一旦生成,則不再更新。 而加密子網間的密鑰更新機制與加密網內密鑰更新類似三層解密口發現收到密鑰的PWID不同,則向本地密鑰服務器請求新密鑰,密鑰服務器收到該請求后,將新密鑰返
回給三層解密口。 由于密鑰服務器在產生和保存密鑰時,使密鑰與雙方客戶端的ID相關(ID, ID, KEY),而不是與其MAC相關;同時,對認證客戶端的密鑰請求,密鑰服務器只接受與網卡相 關的請求,即(ID,MAC,KEY)中的ID必須是請求認證客戶端的ID),從而保證了數據在加密 子網內傳輸的安全性。 另外,由于所述完全解密口是連接在安全交換系統的網橋上,而網橋不會把發往 非加密子網的數據轉發到完全解密口,從而保證了加密子網內、加密子網間的數據不會泄 露到非加密網。 另外,由于密鑰服務器在接收到其他密鑰服務器獲取自身密鑰(NETID, KEY)的請 求時,必須檢查確認確信請求者的身份,確實是合法的密鑰服務器,從而保證了數據在加密 子網間傳輸的安全性。 本實施例可實現至少三種層次的加密通信,包括二層加密(加密MAC層數據)、 三層加密(加密IP層數據)、和NAT模式三層加密。 下面參 考圖2-4詳細描述本發明提供的基于互聯網的加密通信系統的一個實施 例。如圖1所示,本實施例主要包括有 第一客戶端l,用于以攜帶有雙方客戶端用戶標識的密鑰對待發送的通信數據進 行加密后,發送加密的通信數據; 第二客戶端2,用于以攜帶有雙方客戶端用戶標識的密鑰對其接收到的加密的通 信數據進行解密; 密鑰服務器3,與所述第一客戶端1和第二客戶端2相連,用于根據通信方的用戶 名和接收所述第一客戶端1或第二客戶端2發送的密鑰獲取請求,并將攜帶有雙方客戶端 用戶標識的密鑰發送給所述第一客戶端1或第二客戶端2。 具體實現時,本系統可實現加密子網內加密通信、加密子網與非加密子網間的加 密通信、以及加密子網間的加密通信。 在加密子網內加密通信的情況下,所述第一客戶端和第二客戶端分別為同一加密 子網內的兩個普通客戶端。 并且,參考圖2,其第一客戶端1和第二客戶端2分別包括有 密鑰獲取單元11(21),用于向所述密鑰服務器發送獲得攜帶有第一客戶端和第二 客戶端的用戶標識的密鑰的請求,并接收密鑰服務器返回的所述密鑰; 加密發送單元12(22),用于以所述密鑰獲取單元獲得的密鑰對其接收到的加密的 通信數據進行解密,并將所述解密的通信數據發送到第二客戶端(第一客戶端);
解密接收單元13(23),用于在接收到來自所述第一客戶端(第二客戶端)的通信 數據時,以所述密鑰對該通信數據進行加密。 參考圖3,在加密子網與非加密子網間的加密通信的情況下,所述第一客戶端和第 二客戶端分別為第一客戶端1和該客戶端所在加密子網的第一虛擬客戶端3,并且,所述第 一虛擬客戶端4包括有 密鑰獲取單元41,用于向所述密鑰服務器2發送獲得攜帶有所述客戶端和第一虛 擬客戶端的用戶標識的密鑰的請求,并接收密鑰服務器2返回的所述密鑰;
解密轉發單元43,用于以所述密鑰獲取單元41獲得的密鑰對其接收到的加密的
通信數據進行解密,并將所述解密的通信數據轉發到與其相連的非加密子網; 加密轉發單元42,用于在接收到來自所述非加密子網的通信數據時,以所述密鑰
對該通信數據進行加密,并轉發給第一客戶端1 ; 所述第一客戶端1包括有 密鑰獲取單元ll,用于向所述密鑰服務器2發送獲得攜帶有所述客戶端和第一虛 擬客戶端的用戶標識的密鑰的請求,并接收密鑰服務器2返回的所述密鑰;
解密接收單元13,用于以所述密鑰對來自所述加密轉發單元42的加密的通信數 據進行解密; 加密發送單元12,用于以所述密鑰對待發送的通信數據進行加密后,發送到所述 解密轉發單元43。 參考圖4,在兩個加密子網間的加密通信的情況下,還需要在加密子網端口設置一 個第二虛擬客戶端,而其涉及的普通客戶端與前述與非加密子網通信的普通客戶端相同, 此處不再贅述。 下面僅詳細描述所述第一客戶端和第二客戶端分別為設置在加密子網端口的第 一虛擬客戶端和第二虛擬客戶端的情況,在這種情況下,所述第一虛擬客戶端亦4與前述 基本相同,其包括有 密鑰獲取單元41,用于向所述密鑰服務器2發送獲得攜帶有所述客戶端和第一虛
擬客戶端的用戶標識的密鑰的請求,并接收密鑰服務器2返回的所述密鑰; 解密轉發單元43,用于以所述密鑰獲取單元31獲得的密鑰對其接收到的加密的
通信數據進行解密,并將所述解密的通信數據轉發到與其相連的非加密子網; 加密轉發單元42,用于在接收到來自所述非加密子網的通信數據時,以所述密鑰
對該通信數據進行加密,并轉發給該加密子網內的普通客戶端1 ; 而所述第二虛擬客戶端5包括有 密鑰獲取單元51,用于從密鑰管理器2獲得預設的網間密鑰, 網間加密單元52,用于以預設的網間密鑰,對來自所述解密發送單元的通信數據 進行加密后,將其發送到對端加密子網; 網間解密單元53,用于以預設的網間密鑰,對來自對端加密子網的加密的通信數 據進行解密后,將其發送到所述加密轉發單元; 另外,本實施例還可實現多播加密通信,在這種情況下,所述第一客戶端和第二客 戶端分別為多播發送方和任一多播接收方,并且,所述密鑰為攜帶有所述多播發送方MAC 地址的密鑰。 下面參考圖5描述本實施例的設備部署結構;如圖所示,管理級聯口用于級聯同 一個子網(192. 168. 5. X)內的若干安全交換系統,使它們結合成為一個更大的安全交換系 統。它們的密鑰服務器通過管理網連接,必要時從彼此獲取子網內管理信息,如(ID,MAC) 對、(ID, ID, KEY)對等; 三層加密口,用于連接不同的加密子網(192. 168. 5. X和192. 168.6. X)的安全交 換系統,具體實現時,三層加密口依賴路由器來完成所述連接,不同加密子網安全交換系統 的密鑰服務器通過管理網連接,從彼此獲取網間管理信息,如網間密鑰NETKEY等;
完全解密口,用于連接加密網與非加密網。 下面參考圖6描述相應的模塊部署結構。ID_1、ID_2是加密子網1內的認證客戶 端,ID_X86作為加密子網1外的網卡的代理,申請密鑰,與網內的網卡(如ID_1、 ID_2)通 訊。NETID_1作為加密子網1網內的網卡的代理,申請密鑰,與其他加密子網(如加密子網 2)通訊。完全解密口包括一個ID—X86,出子網時解密,進子網時加密。三層加密口包括一 個ID—X86和一個NETID,在出子網時,先用子網密鑰解密,再用網間密鑰加密,進子網時,先 用網間密鑰解密,再用子網密鑰加密。X是不加密的普通網卡客戶端。 以上所述是本發明的優選實施方式,應當指出,對于本技術領域的普通技術人員 來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也視為 本發明的保護范圍。
1權利要求
一種基于互聯網的加密通信方法,其特征在于,該方法包括以下步驟第一客戶端在向第二客戶端發送通信數據時,根據第二客戶端的MAC地址在本地密鑰列表中查找攜帶有雙方客戶端用戶標識的密鑰,若查到該密鑰,則執行下述加密發送步驟,否則,向密鑰服務器發送獲取所述密鑰的請求消息,執行下述密鑰獲取步驟;密鑰獲取步驟,密鑰服務器根據來自第一客戶端/第二客戶端的密鑰獲取請求,將攜帶有雙方客戶端用戶標識的密鑰發送到所述第一客戶端/第二客戶端;加密發送步驟,使用該密鑰對待發送的通信數據進行加密,并將加密的通信數據發送到第二客戶端;第二客戶端接收到所述加密的通信數據后,在本地密鑰列表中查找攜帶有雙方客戶端用戶標識的密鑰,若查到該密鑰,則執行下述解密接收步驟,否則,向密鑰服務器發送獲取所述密鑰的請求消息,執行所述密鑰獲取步驟,并丟棄所述加密的通信數據;解密接收步驟,以所述密鑰對所述加密的通信數據進行解密。
2. 如權利要求1所述的基于互聯網的加密通信方法,其特征在于,所述第一客戶端和 第二客戶端分別為位于同一加密子網內的兩個客戶端。
3. 如權利要求1所述的基于互聯網的加密通信方法,其特征在于,所述第二客戶端為 設置在所述第一客戶端所在加密子網端口的第一虛擬客戶端,而所述解密接收步驟之后還 包括有將所述解密的通信數據轉發到非加密子網。
4. 如權利要求1所述的基于互聯網的加密通信方法,其特征在于,所述第一客戶端和 第二客戶端分別為設置在同一加密子網端口的第一虛擬客戶端和第二虛擬客戶端,而所述 解密接收步驟之后還包括有所述第二虛擬客戶端以預設的網間密鑰對所述通信數據進行加密,并將加密的通信數 據轉發到對端加密子網;所述第二虛擬客戶端接收到來自對端加密子網的加密的通信數據后,以所述預設的網 間密鑰對其進行解密,并將解密后的通信數據轉發到所述第一虛擬客戶端。
5. 如權利要求1所述的基于互聯網的加密通信方法,其特征在于,所述第一客戶端和 第二客戶端分別為多播發送方和任一多播接收方,且所述密鑰為攜帶有所述多播發送方 MAC地址的密鑰。
6. —種基于互聯網的通信加密系統,其特征在于,該系統包括有第一客戶端,用于以攜帶有雙方客戶端用戶標識的密鑰對待發送的通信數據進行加密 后,發送加密的通信數據;第二客戶端,用于以攜帶有雙方客戶端用戶標識的密鑰對其接收到的加密的通信數據 進行解密;密鑰服務器,與所述第一客戶端和第二客戶端相連,用于接收所述第一客戶端或第二 客戶端發送的密鑰獲取請求,并將攜帶有雙方客戶端用戶標識的密鑰發送給所述第一客戶 端或第二客戶端。
7. 如權利要求6所述的基于互聯網的通信加密系統,其特征在于,所述第一客戶端和 第二客戶端分別為同一加密子網內的兩個客戶端。
8. 如權利要求6所述的基于互聯網的通信加密系統,其特征在于,所述第二客戶端為設置在所述第一客戶端所在加密子網端口的第一虛擬客戶端,并且,所述第一虛擬客戶端 包括有密鑰獲取單元,用于向所述密鑰服務器發送獲得攜帶有所述客戶端和第一虛擬客戶端 的用戶標識的密鑰的請求,并接收密鑰服務器返回的所述密鑰;解密轉發單元,用于以所述密鑰獲取單元獲得的密鑰對其接收到的加密的通信數據進行解密,并將所述解密的通信數據轉發到與其相連的非加密子網;加密轉發單元,用于在接收到來自所述非加密子網的通信數據時,以所述密鑰對該通 信數據進行加密,并轉發給第一客戶端;所述第一客戶端包括有密鑰獲取單元,用于向所述密鑰服務器發送獲得攜帶有第一客戶端和第一虛擬客戶端 的用戶標識的密鑰的請求,并接收密鑰服務器返回的所述密鑰;解密接收單元,用于以所述密鑰對來自所述加密發送單元的加密的通信數據進行解密;加密發送單元,用于以所述密鑰對待發送的通信數據進行加密后,發送到所述解密轉 發單元。
9. 如權利要求6所述的基于互聯網的加密通信系統,其特征在于,所述第一客戶端和 第二客戶端分別為設置在同一加密子網端口的第一虛擬客戶端和第二虛擬客戶端,而所述 第一虛擬客戶端與發送/接收數據的普通客戶端相連,并且,所述第一虛擬客戶端包括有密鑰獲取單元,用于向所述密鑰服務器發送獲得攜帶有所述普通客戶端和第一虛擬客 戶端的用戶標識的密鑰的請求,并接收密鑰服務器返回的所述密鑰;解密轉發單元,用于以所述密鑰獲取單元獲得的密鑰對其接收到的加密的通信數據進行解密,并將所述解密的通信數據轉發到第二虛擬客戶端;加密轉發單元,用于在接收到來自所述非加密子網的通信數據時,以所述密鑰對該通 信數據進行加密,并將所述加密的通信數據轉發到所述普通客戶端;而所述第二虛擬客戶端包括有網間加密單元,用于以預設的網間密鑰,對來自所述解密轉發單元的通信數據進行加 密后,將其發送到對端加密子網;網間解密單元,用于以預設的網間密鑰,對來自對端加密子網的加密的通信數據進行解密后,將其發送到所述加密轉發單元。
10. 如權利要求6所述的基于互聯網的加密通信系統,其特征在于,所述第一客戶端和第二客戶端分別為多播發送方和任一多播接收方,并且,所述密鑰為攜帶有所述多播發送 方MAC地址的密鑰。
全文摘要
本發明公開一種基于互聯網的加密通信方法,包括第一客戶端查找攜帶有雙方客戶端用戶標識的密鑰,若查到,則加密發送通信數據,否則,向密鑰服務器發送獲取第一客戶端與第二客戶端密鑰的請求消息;密鑰服務器收到第一客戶端或第二客戶端的密鑰獲取請求后,將攜帶有雙方客戶端用戶標識的密鑰發送到所述第一客戶端或第二客戶端;第二客戶端接收到所述加密的通信數據后,查找所述密鑰,若查到,解密接收,否則,向密鑰服務器發送獲取第二客戶端與第一客戶端的密鑰請求消息,并丟棄所述加密的通信數據。本發明還公開了相應的基于互聯網的加密通信系統。本發明可有效防止第三方竊聽數據,保證雙方客戶端數據的安全性。
文檔編號H04L29/06GK101783792SQ20091010512
公開日2010年7月21日 申請日期2009年1月16日 優先權日2009年1月16日
發明者藍曉敏 申請人:深圳市維信聯合科技有限公司