專利名稱:一種基于點對點網絡的授權方法
技術領域:
本發明涉及一種網絡的授權方法,特別是涉及一種基于點對點網絡的授權方法。
背景技術:
現有的P2P(點對點)網絡的授權都是通過用戶名和密碼登陸后,服務器就認為該登陸的節點為授權的點,然后這個點就可以和P2P網絡中的任何一個點進行通訊,而且這種通訊不再經過任何審核,這種方法的實現很簡單,但卻對各個節點之間的安全造成很大的隱患,網絡中任何人都可以冒充網絡中的節點向其它任意經過審核的節點發送消息或接收其它節點的消息,對于一些采用泛洪算法的P2P軟件來說結果可能更加嚴重,比如一個用心不良的破壞者不斷發送搜索消息包,這樣會造成比DDOS更嚴重的后果,網絡極其容易癱瘓。很顯然,必須找出一種授權方案以保護網絡中節點與節點的安全通訊。
非對稱加密算法需要兩個密鑰公開密鑰(public key)和私有密鑰(privatekey)。公開密鑰與私有密鑰是一對,如果用公開密鑰對數據進行加密,只有用對應的私有密鑰才能解密;如果用私有密鑰對數據進行加密,那么只有用對應的公開密鑰才能解密。因為加密和解密使用的是兩個不同的密鑰,所以這種算法叫做非對稱加密算法。非對稱加密算法包括RSA、背包密碼、McEliece密碼、Rabin、橢圓曲線等。
發明內容
本發明的目的是為了克服上述現有技術存在的缺陷而提供一種基于點對點網絡的授權方法。
本發明的目的可以通過以下技術方案來實現一種基于點對點網絡的授權方法,其特征在于,該方法通過非對稱加密算法,對點對點(P2P)節點進行證書的授權,各P2P節點用對應證書來證明自己的身份和進行節點之間的通訊。
該方法通過非對稱加密算法生成不對稱密匙,包括公匙和私匙,并公布公匙,該公匙可以在發布P2P軟件的時候一起發布。
所述的證書包括用戶名,登陸IP。
所述的證書的授權包括以下步驟a.P2P節點建立一個到P2P服務器的連接,并發送自己的標識和密碼給服務器;b.P2P服務器檢查P2P節點的密碼是否正確,如果不正確則發送錯誤報告,登陸過程結束;c.P2P服務器生成對應P2P節點的證書,并用私匙對證書進行加密后把證書發送給P2P節點;d.P2P節點收到證書后,把證書保存起來。
所述的P2P節點之間的通訊包括以下步驟a.P2P節點A建立一個到P2P節點B的連接;b.P2P節點A和P2P節點B各自發送自己的證書給對方;c.P2P節點A、P2P節點B收到對方證書后各自用公匙對證書解密,比較證書中提供的對方的IP地址是否和實際IP一致,如果不一致則發送錯誤報告并結束通訊,否則,P2P節點A和P2P節點B進行正常通訊。
與現有技術相比,本發明有效的防止了未授權用戶進入P2P網絡,有效的保護了各個節點的安全;同時節點與節點之間的認證采用了非對稱加密方法,不需要通過P2P登陸服務器介入。
圖1為本發明的原理框圖。
具體實施例方式
如圖1所示,一種基于點對點網絡的授權方法,該方法通過非對稱加密算法,對點對點(P2P)節點進行證書的授權,各P2P節點用對應證書來證明自己的身份和進行節點之間的通訊。
本實施例的目的在于實現一種針對P2P網絡的授權方法,它能夠實現節點與節點之間的通訊是經過認證的,它為每個節點的身份提供了證明;節點之間通過證書來證明自己的身份。
本實施例利用了非對稱加密算法的特點,即如果用公匙a能夠解開某加密的數據,說明數據是使用與公匙a對應的私匙b加密過的。P2P節點登陸成功后,服務器用私匙加密客戶端的證書,然后把證書發布給P2P節點,P2P節點用該證書來證明自己的身份。
預備步驟1)生成不對稱密匙對(包括公匙和私匙)2)公布公匙,可以在發布P2P軟件的時候一起發布,妥善保存私匙。
進入網絡授權步驟1)P2P建立一個到登陸服務器的連接2)P2P節點發送自己的標識和密碼3)P2P服務器檢查P2P節點的密碼是否正確,如果不正確則發送錯誤報告,登陸過程結束4)P2P服務器生成證書,這個證書用來證明P2P節點的身份,應該包括用戶名,登陸IP等信息5)P2P登陸服務器用私匙對證書進行加密,并把加密后的證書發送給P2P節點6)P2P節點收到證書后,把證書保存起來;加入網絡過程結束P2P節點之間的通訊1)P2P節點A建立一個到P2P節點B的連接2)A發送自己的證書過去3)B收到證書后用預備步驟1)中產生的公匙對證書解密,比較證書中提供的對方的IP地址是否和事實一致,如果不一致則發送錯誤報告并結束通訊4)B也把證書發送給A5)A也用用預備步驟1)中產生的公匙對B發過來的證書解密,比較證書中提供的對方的IP地址是否和事實一致,如果不一致則發送錯誤報告并結束通訊6)A和B進行正常通訊如圖1,步驟(1)中P2P節點A發送了一個登陸請求到登陸服務器,服務器檢查到用戶登陸信息錯誤,則通過(3)發送錯誤報告,否則執行步驟(2)產生證書并發送證書給節點A;如果節點A想與節點B進行通訊,那么,A通過(4)發送其從服務器得到的加密證書給B,B收到證書后,用服務器的公匙解密證書,如果證書中的IP地址和A中的IP地址或其他檢驗信息一致的話那么,B通過A的驗證,并執行步驟(5)發送B的證書給A,A也用同樣的方式驗證B是否合法,如果合法,那么就可以進行正常通訊。
在圖1步驟(6)中非法節點C想和節點B通訊,它發送了一個非法證書,因為它發送的證書B無法解密或者證書提供的信息與事實不符合,所以B在步驟(7)中發送了一個錯誤報告給C,并結束通訊。
權利要求
1.一種基于點對點網絡的授權方法,其特征在于,該方法通過非對稱加密算法,對點對點(P2P)節點進行證書的授權,各P2P節點用對應證書來證明自己的身份和進行節點之間的通訊。
2.根據權利要求1所述的一種基于點對點網絡的授權方法,其特征在于,該方法通過非對稱加密算法生成不對稱密匙,包括公匙和私匙,并公布公匙,該公匙可以在發布P2P軟件的時候一起發布。
3.根據權利要求1所述的一種基于點對點網絡的授權方法,其特征在于,所述的證書包括用戶名,登陸IP。
4.根據權利要求1或2或3所述的一種基于點對點網絡的授權方法,其特征在于,所述的證書的授權包括以下步驟
a.P2P節點建立一個到P2P服務器的連接,并發送自己的標識和密碼給服務器;b.P2P服務器檢查P2P節點的密碼是否正確,如果不正確則發送錯誤報告,登陸過程結束;c.P2P服務器生成對應P2P節點的證書,并用私匙對證書進行加密后把證書發送給P2P節點;d.P2P節點收到證書后,把證書保存起來。
5.根據權利要求1或2所述的一種基于點對點網絡的授權方法,其特征在于,所述的P2P節點之間的通訊包括以下步驟a.P2P節點A建立一個到P2P節點B的連接;b.P2P節點A和P2P節點B各自發送自己的證書給對方;c.P2P節點A、P2P節點B收到對方證書后各自用公匙對證書解密,比較證書中提供的對方的IP地址是否和實際IP一致,如果不一致則發送錯誤報告并結束通訊,否則,P2P節點A和P2P節點B進行正常通訊。
全文摘要
本發明涉及一種基于點對點網絡的授權方法,該方法通過非對稱加密算法,對點對點(P2P)節點進行證書的授權,各P2P節點用對應證書來證明自己的身份和進行節點之間的通訊。與現有技術相比,本發明有效的防止了未授權用戶進入P2P網絡,有效的保護了各個節點的安全;同時節點與節點之間的認證采用了非對稱加密方法,不需要通過P2P登陸服務器介入。
文檔編號H04L9/32GK101094060SQ20061002773
公開日2007年12月26日 申請日期2006年6月19日 優先權日2006年6月19日
發明者金駿, 胡創義, 賀星河 申請人:上海新納廣告傳媒有限公司