[發明專利]移動P2P用戶身份認證方法有效
| 申請號: | 201010238066.6 | 申請日: | 2010-07-27 |
| 公開(公告)號: | CN101902476A | 公開(公告)日: | 2010-12-01 |
| 發明(設計)人: | 陳惠芳;謝磊;陳高翔;譚云棧 | 申請(專利權)人: | 浙江大學 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L29/08;H04W12/04;H04W12/06 |
| 代理公司: | 杭州求是專利事務所有限公司 33200 | 代理人: | 杜軍 |
| 地址: | 310027 浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 移動 p2p 用戶 身份 認證 方法 | ||
1.移動P2P用戶身份認證方法,其特征在于該方法包括以下步驟:
步驟(1)系統初始化和用戶注冊;
在系統初始化階段,移動P2P網絡設置系統參數,并將其中一部分系統參數公開,公開的系統參數包括大素數p、大素數p的本原根g,認證服務器的公鑰PUAS和注冊服務器的公鑰PUREG;
用戶注冊是指第一次使用移動P2P網絡的用戶,向注冊服務器提交自身賬號ID和密碼PW進行注冊,通過賬號和密碼,用戶可以登錄到移動P2P網絡并獲取服務;
用戶注冊的具體步驟是:
a)用戶發送注冊請求消息至注冊服務器;注冊請求消息是用戶使用注冊服務器的公鑰PUREG對自身賬號ID和密碼PW進行加密后的消息,加密算法為E(PUREG,[ID||PW]),其中E()是公鑰加密算法,“||”為比特連接符,用于將一個比特串連接到另一個比特串上;
b)注冊服務器對注冊請求消息用自身私鑰進行解密,得到該用戶的賬號ID和密碼PW,解密算法為D(PRREG,E(PUREG,[ID||PW])),其中D()為對應于E()的公鑰解密算法;
注冊服務器再從整數域中隨機選擇參數β作為用戶密鑰,并計算秘密參數其中K為注冊服務器的主密鑰,h(.)為單向哈希函數,為異或運算;
注冊服務器將包含參數h(.)、ID、N、h(PW)和β的虛擬智能卡發放給提交注冊請求的用戶;
c)注冊服務器將該用戶的身份信息用認證服務器的公鑰加密后發送給認證服務器,用戶的身份信息包括用戶的賬號ID和密鑰β,加密算法為E(PUAS,[β||ID]),認證服務器用自身私鑰解密后即可獲得注冊用戶的身份信息;
d)用戶獲得注冊服務器返回的虛擬智能卡,將其保存到移動終端;注冊成功后,用戶可以通過虛擬智能卡、賬號和密碼登錄到移動P2P網絡中;
步驟(2)登錄認證;
登錄認證是指用戶在存有虛擬智能卡的移動終端上通過輸入正確的賬號和密碼登錄到認證服務器并進行身份認證;登錄認證包括本地登錄和服務器驗證;本地登錄是指移動終端在本地驗證用戶輸入的賬號和密碼的正確性,本地登錄的具體方法是:
e)用戶輸入自己的賬號ID和密碼PW進行登錄,移動終端利用本地存儲的虛擬智能卡對密碼PW進行哈希運算,得到h(PW)’;將用戶輸入的ID和計算得到的h(PW)’與保存在虛擬智能卡中的ID和h(PW)進行比較;若用戶輸入的ID與保存在虛擬智能卡中的ID一致且計算得到的h(PW)’與保存在虛擬智能卡中的h(PW)一致,則本地登錄成功;若用戶輸入的ID與保存在虛擬智能卡中的ID不一致或計算得到的h(PW)’與保存在虛擬智能卡中的h(PW)不一致,說明用戶輸入的ID或PW有誤,本地登錄失??;
本地登錄成功后,移動終端發送登錄認證信息到認證服務器進行驗證,服務器驗證的具體方法是:
f)移動終端隨機選擇整數u,使得u<p;計算公開參數a,a=gu?mod?p;mod表示取模運算;
g)移動終端計算登錄的動態ID(DID)、驗證參數C和用戶標示符UID,具體為C=h(DID//β//a//T1),UID=ID||a;其中T1為用戶的本地時間戳,由于DID的生成依賴于本地時間戳,因此用戶每次登錄都會生成不同的DID,C為用于驗證自身身份的驗證參數,用戶將UID、C和T1發送到認證服務器;
h)認證服務器在T’時間收到用戶的認證請求、UID、C和T1,認證服務器對T1進行驗證,若T’-T1≤ΔT,繼續驗證;若T’-T1>ΔT,則認證失?。黄渲笑為時間參數,由P2P系統根據用戶和認證服務器的時延進行確定;
i)認證服務器從UID中得到ID和a,并查找與該用戶ID對應的β,然后計算DID’=h(h(K||ID)||T1),C’=h(DID’||β||a||T1),驗證C’和收到的C是否一致,若C’=C,表明該用戶為合法用戶,用戶通過認證,若C’≠C,則認證失敗;
j)用戶通過身份認證后,認證服務器用私鑰PRAS為用戶生成票據Ticket,具體為Ticket=E(PRAS,[ID||a||h(DID’)||T2||Lifetime]),并將票據Ticket發送給用戶;其中T2為認證服務器生成票據Ticket的時間,Lifetime為票據的生存時間,T2與Lifetime用于確定票據的有效期,防止用戶使用過期的票據;
k)認證服務器向P2P系統發布用戶的身份標識符UID,其它用戶可通過移動P2P網絡提供的搜索和查詢協議發現該用戶并進行服務請求;
步驟(3)服務請求認證;
服務請求認證是指通過登錄認證的合法用戶,需要向移動P2P網絡中的其它用戶請求服務時,用戶之間進行的相互身份認證;服務請求認證的具體步驟是:
l)用戶A需要獲取B提供的服務,則用戶A向移動P2P網絡發起查詢,找到符合要求的用戶B及其UIDB,用戶A從返回的UIDB中得到用戶B的公開參數b,
m)用戶A向用戶B提出服務請求,并發送認證信息TicketA和UIDA給用戶B,TicketA為認證服務器為用戶A發放的票據,UIDA為用戶A此次登錄的用戶標識符,UIDA=IDA||aA;
n)用戶B使用認證服務器的公鑰PUAS解密TicketA,得到IDA||aA||h(DIDA’)||T2||Lifetime,根據T2和Lifetime檢查TicketA是否過期,若TicketA未過期,則將解密后的IDA、aA和用戶A發送的UIDA進行比較,若解密后的IDA、aA與用戶A發送的UIDA中的IDA、aA相同,則繼續認證;若解密后的IDA、aA與用戶A發送的UIDA中的IDA、aA不同,則認為A的身份被假冒,直接退出認證過程;
o)用戶B從整數域中隨機選擇一個整數r,計算中間值對稱密鑰KAB=h(Temp||r)和參數M=h(KAB||r||IDB),并將M和r發送給用戶A;
p)用戶A收到用戶B發送的M和r后,計算M’=h(KAB’||r||IDB),并與M進行比較,若M’=M,則認證了用戶B和KAB的真實性,繼續下一步驟;否則退出認證;KAB為用戶A和用戶B之間共享的對稱密鑰;
q)用戶A用對稱密鑰KAB對DIDA和NonceAB進行加密,并發送NonceAB給用戶B,加密算法為:E(KAB,DIDA||NonceAB),其中NonceAB為用戶A隨機選擇的整數;
r)用戶B使用對稱密鑰KAB對用戶A發送的消息進行解密并計算h(DIDA),將計算得到的h(DIDA)與TicketA中的h(DIDA’)進行比較,若計算得到的h(DIDA)與TicketA中的h(DIDA’)一致,則認為用戶A擁有正確的DIDA,且用戶A經過了認證服務器的認證,同時用戶B保存NonceAB,在B與A斷開連接后根據NonceAB進行快速重認證;若計算得到的h(DIDA)與TicketA中的h(DIDA’)不一致,則退出認證;
至此,用戶A和用戶B之間通過認證;用戶B與用戶A建立連接,并為用戶A提供所需的服務。
2.根據權利要求1所述的移動P2P用戶身份認證方法,其特征在于所述的快速重認證的具體步驟是:
s)用戶A向用戶B提出重服務認證請求,并發送認證信息UIDA給用戶B;
t)用戶B在本地查找是否存在與UIDA對應的KAB和NonceAB,若不存在KAB和NonceAB,則說明用戶B之前并未對用戶A進行認證,快速重認證失??;若存在KAB和NonceAB,則用戶B產生一個新的隨機數Nonce’AB并用KAB加密NonceAB后發送給用戶A,加密算法為:E(KAB,Nonce’AB);
u)用戶A用KAB對消息進行解密,得到Nonce’AB計算h(NonceAB||Nonce’AB)并將h(NonceAB||Nonce’AB)發送給用戶B;
v)用戶B根據本地保存的NonceAB,計算h(NonceAB||Nonce’AB)’,并與A發送的消息進行比較;若A發送的h(NonceAB||Nonce’AB)與h(NonceAB||Nonce’AB)’一致,則用戶A通過認證,用戶A和用戶B將NonceAB更新為Nonce’AB;若A發送的h(NonceAB||Nonce’AB)與h(NonceAB||Nonce’AB)’不一致,則認證失敗。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江大學,未經浙江大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010238066.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:液滴噴頭及液滴噴出裝置
- 下一篇:泛化置信度傳播的雙目立體視覺匹配方法





