新四季網

一種基於口令的遠程認證協議方法

2023-08-11 00:08:41

一種基於口令的遠程認證協議方法
【專利摘要】本發明涉及一種基於口令的遠程認證協議方法,其特徵在於:基於橢圓曲線密碼算法實現,包括如下步驟:步驟1:在系統初始化子協議中,用戶同伺服器協商好以後認證需要使用的橢圓曲線密碼系統參數;步驟2:新用戶UA通過用戶註冊子協議進行註冊,選擇身份標識和用戶口令PWA;步驟3:用戶UA希望登陸系統並進行會話密鑰協商時,首先輸入自己的身份標識IDA和用戶口令PWA;然後通過身份認證和密鑰協商子協議,與伺服器進行雙向認證並且協商在以後通信中使用的密鑰SK。
【專利說明】一種基於口令的遠程認證協議方法
【技術領域】
[0001]本發明涉及一種基於口令的遠程認證協議方法。
【背景技術】
[0002]在網絡應用中,身份認證對於保障網絡資源的安全性起著重要作用,因此尋找簡單有效、實用方便、費用低廉的認證協議是當前研究的重點內容。基於口令的身份認證協議由於數據運算簡單、部署成本低廉、安全可靠而成為近年來研究的熱點。然而,基於口令的身份認證協議仍然存在著安全隱患。因為用戶習慣上選擇使用簡單容易自己記憶的字符串作為口令,例如自己姓名字母的縮寫、生日數字的組合,身份證號碼的組合以及郵箱電話號碼等,這將直接導致這種方式的身份認證協議容易遭到典型的字典攻擊,這其中就包括包括離線口令猜測攻擊和在線口令猜測攻擊等。根據調查顯示,在使用英語的國家當中,有25%的用戶使用的口令是英文單詞,Morris Thompson發現窮舉搜索一部字典,可以在短短的5分鐘之內發現超過1/3的口令;1999年,中科院信息安全中心的Samsa進行了一項研究,他根據中國人姓氏和人名中經常出現的漢字,設計了一部專用的字典,用它窮舉搜索,發現了某伺服器中保存的將近1/2的用戶口令。事實表明,口令認證協議很容易遭受口令猜測攻擊(password guessing attack)。[0003]儘管基於口令的認證存在著如上所述的安全隱患,但這並不能阻止人們對它的青睞,由於其相對於生物特徵認證,口令認證機制擁有更小的數據量,更快的響應速度等優點,而且實現起來更容易,多數用戶能夠接受,因而口令認證機制目前仍然是系統網絡等各種需要認證的系統中主要採取的認證方式。

【發明內容】

[0004]本發明目的在於提供一種基於口令的遠程認證協議方法,能夠實現雙向認證,有效提高安全性。
[0005]實現本發明目的技術方案:
[0006]一種基於口令的遠程認證協議方法,其特徵在於:基於橢圓曲線密碼算法實現,包括如下步驟:
[0007]步驟1:在系統初始化子協議中,用戶同伺服器協商好以後認證需要使用的橢圓曲線密碼系統參數;
[0008]步驟2:新用戶Ua通過用戶註冊子協議進行註冊,選擇身份標識和用戶口令PWa ;
[0009]步驟3:用戶Ua希望登陸系統並進行會話密鑰協商時,首先輸入自己的身份標識IDa和用戶口令PWa ;,然後通過身份認證和密鑰協商子協議,與伺服器進行雙向認證並且協商在以後通信中使用的密鑰SK。
[0010]步驟2中,伺服器S收到新用戶Ua註冊提交的身份標識IDa和用戶口令PWa ;後,進行計算^(10」|ds) ? PWa,然後把數據(IDa,Wa)保存在伺服器的認證資料庫中,前述式中,ds表示伺服器的私鑰,h表示單向哈希函數。[0011]步驟3中,具體包括以下步驟,
[0012]步驟3.1:用戶Ua首先輸入自己的身份標識IDa和用戶口令PWa ;用戶自由選擇一個隨機數r1,r1∈Z*n,Z*n表示整數模n的剩餘類,然後進行運算R1=A.P,P表示群G的生成元,把消息<IDa,R1)發送給伺服器S ;
[0013]步驟3.2:伺服器S接收到上一步來自用戶Ua的消息<IDA,R1)後,根據自己的認證資料庫中存儲的數據對用戶IDa進行合法性檢驗;如果在資料庫中未找到該IDa,則伺服器S終止協議的進程;否則,伺服器S進行如下運算,
[0014]選擇隨機數r2, r2 e Z*n,計算 R2=r2.P, Ks=r2.R1, R3=ds.R1,h1=h(s| |ida| R1I Ir2 R3 Iks),式中s表示伺服器的身份標識,最後由伺服器s把消息發送到用戶Ua;
[0015]步驟3.3:當用戶Ua接收到來上一步來自伺服器S的消息<R2,hi〉後,進行運算Ku^1.R2=IT1.r2.P,以及計算 h廣=h (S IDa R1 R2 T1.Ps I Ku),驗證 Ii1* 與收到來自伺服器的h是否保持一致,如果不一致,則用戶Ua終止進行協議進程;否則,用戶Ua計算h2=h(IDaI I S| Ir1.Ps I IKuI IPWa),然後將h2發送給伺服器S,並且用戶Ua計算一個密鑰SK=h(IDaI |s| Ir1I Ir2I Ir1-PsI IkuI |PWA);
[0016]步驟3.4:伺服器S從本地認證資料庫中提取步驟2中計算獲得的WA,並進行計算Wa ? h(IDA |ds)得到伺服器端計算得到的PW/,然後計算h(IDaI |S| R3 Ks |PW/),得到的計算結果與上一步中收到的h2進行對比驗證,看是否保持一致,如果不一致,則用戶Ua對伺服器的認證請求失敗,終止協議;否則,伺服器S認可用戶Ua的合法身份,並且伺服器S計算一個密鑰 SK=h(iDA| |s| R1IIR2 R3 |ks |pwa*)。
[0017]用戶Ua可進行口令修改,包括以下步驟,
[0018]步驟4.1:用戶Ua和伺服器S首先執行密鑰SK ;
[0019]步驟4.2:假如上一步成功,則用戶Ua通過客戶端輸入新的口令PWAnew ;
[0020]步驟4.3:用戶Ua通過客戶端計算PWD=h (Ku | | SK) ? Pfftoew和[0021 ] ff=h (Ku I I SKI I PffAnew),並把消息〈PWD,ff> 發送至伺服器 S ;
[0022]步驟4.4:當伺服器S收到來自於用戶Ua的請求修改口令的消息〈PWD,W〉後,首先進行如下式子的計算,
[0023]PWahJ=PWD ? h(Ks |PffAnew),
[0024]然後對比驗證W是否等於h (Ks I I SK I I Pfftoe;),假如不相等,伺服器需要計算h3=h(SK| Ks I 「Refused」)並將消息〈「Refused」,h3>發送給用戶,拒絕更改口令;如果兩者相等,則進行計算h4=h (SKI I Ks I I "Accepted"),並將消息發送給用戶,允許其變更口令;最後伺服器將計算新的W/來替換原來的Wa並保存到認證資料庫,其中 Wa* 的計算式為 ffA*=h (IDa I I ds) ? Pfftoe;;
[0025]步驟4.5:如果用戶Ua收到消息〈「Refused」 , h3>,並且經驗證h3等於h(SK| |Kj I 「Refused」),則可以確定是伺服器S發送的消息拒絕更改口令;而如果收到消息〈「Accepted」, h4>,並且經過驗證h4等於h (SKI KuI 「Accepted」),貝U用戶Ua可以確定是伺服器S發送的消息接收了變更口令請求。
[0026]本發明具有的有益效果:
[0027]本發明可以抵抗重放攻擊。本發明是一種三消息挑戰-響應模式的認證協議,只有合法用戶才能正確的應答挑戰信息R2,同時也只有合法的伺服器才能正確的響應新鮮值R1,所以本發明能夠有效的抵禦重放攻擊。
[0028]本發明可以抵抗離線口令猜測攻擊。本發明能夠有效地抵抗離線口令猜測攻擊,假設以下兩種情形:
[0029]I)假設攻擊者捕獲了 Wa,但是由於其無法或者伺服器的私鑰ds,所以無法進行離線口令猜測攻擊;
[0030]2)攻擊者不能夠從h2發動離線口令猜測攻擊,這是因為假如攻擊者要計算h2,則必須同時計算出Ku或者Ks,而計算Ku或者Ks則需要根據R1, R2來計算,這又歸結為橢圓曲線計算Diffie-Hellman問題。
[0031 ] 本發明能夠抵抗身份冒充攻擊。攻擊者在不知道PW的情況下,是不能構造出正確的第3條回應消息的,所以攻擊者就無法冒充用戶身份。同時,攻擊者也無法正確的通過計算得出ds -R1和回應消息,因為如果要構造該值,則需要知道A或者ds,而假如通過R1來計算得到^或者通過Ps計算得到ds都將面臨橢圓曲線離散對數難題。
[0032]本發明能夠提供雙向認證。從上面的認證和密鑰協商過程可以清楚的看到,本協議提供了雙向認證。第2條響應消息只有擁有合法身份的伺服器才能構造出來;而第3條響應消息只有除了伺服器之外的合法用戶才能構造出來。所以該認證協議提供了雙向認證。
[0033]本發明能夠提供前向安全性。本發明是基於橢圓曲線Diffie-Hellman機制,攻擊者如果強行從R1和R2來計算SK將面臨橢圓曲線離散對數難題,從而提供了前向安全性。
【專利附圖】

【附圖說明】
[0034]圖1為用戶註冊流程圖;
[0035]圖2為認證和密鑰協商流程圖;
[0036]圖3為口令修改流程圖。
【具體實施方式】
[0037]本發明基於橢圓曲線密碼算法實現,在系統初始化子協議中,用戶同伺服器協商好以後認證需要使用的橢圓曲線密碼系統參數;
[0038](一)用戶註冊子協議:
[0039]在註冊初始時,由用戶Ua自己選擇身份標識和用戶口令PWa,然後通過安全方式提交給伺服器S ;
[0040]伺服器S收到新用戶Ua註冊提交的身份標識IDa和用戶口令PWa ;後,進行計算WA=h(IDA |ds) ? PWa,然後把數據(IDa,Wa)保存在伺服器的認證資料庫中,前述式中,屯表示伺服器的私鑰,h表示單向哈希函數。
[0041 ] (二)認證和密鑰協商子協議:
[0042]I)用戶Ua首先輸入自己的身份標識IDa和用戶口令PWa ;用戶自由選擇一個隨機數r1,r1 ∈ Z*n,Z*n表示整數模η的剩餘類,然後進行運算R1=F1* P,P表示群G的生成元,把消息<IDa,R1)發送給伺服器S ;
[0043]2)伺服器S接收到上一步來自用戶Ua的消息<IDa,RA後,根據自己的認證資料庫中存儲的數據對用戶IDa進行合法性檢驗;如果在資料庫中未找到該IDa,則伺服器S終止協議的進程;否則,伺服器S進行如下運算,
[0044]選擇隨機數r2, r2 e Z*n,計算 R2=r2.P, Ks=r2.R1, R3=ds.R1,h1=h(s| |ida| R1I Ir2 R3 Iks),式中s表示伺服器的身份標識,最後由伺服器s把消息發送到用戶Ua;
[0045]3)當用戶Ua接收到來上一步來自伺服器S的消息<R2,hi〉後,進行運算Ku^1.R2=IT1.r2.P,以及計算h廣=h (S IDa R1 R2 T1.Ps Ku),驗證Ii1*與收到來自伺服器的Ii1是否保持一致,如果不一致,則用戶Ua終止進行協議進程;如果一致,那麼伺服器是合法的,通過用戶的認證。在這裡的依據是,只有合法的伺服器才能給出正確的R3,接下來用戶Ua計算h2=h (IDa I I S I I ι -Ps I I Ku I IPWA),然後將h2發送給伺服器S,並且用戶Ua計算一個密鑰 SK=h(iDA| |s| R1IIR2 Ir1-Ps IkuI |pwa);
[0046]4)伺服器S從本地認證資料庫中提取步驟2中計算獲得的Wa,並進行計算Wa ? h(IDA |ds)得到伺服器端計算得到的PW/,然後計算h(IDaI |S| R3 Ks |PW/),得到的計算結果與上一步中收到的h2進行對比驗證,看是否保持一致,如果不一致,則用戶Ua對伺服器的認證請求失敗,終止協議;否則,伺服器S認可用戶Ua的合法身份,並且伺服器S計算一個密鑰 SK=h(iDA| |s| R1IIR2 R3 |ks |pwa*)。
[0047]通過以上步驟,用戶和伺服器之間完成了認證,這種認證是雙向的,保證了用戶和伺服器雙方的合法身份,並且協商好共同的密鑰SK。
[0048](三)口令修改子協議:
[0049]用戶Ua可進行口令修改,包括以下步驟,
[0050]I)用戶Ua和伺服器S首先執行會話密鑰SK ;
[0051]2)假如上一步成功,則用戶Ua通過客戶端輸入新的口令PWitew ;
[0052]3 )用戶Ua通過客戶端計算PWD=h (Ku | | SK) ? PffAnew和
[0053]ff=h (Ku I I SKI I PWAnew),並把消息〈PWD,ff> 發送至伺服器 S ;
[0054]4)當伺服器S收到來自於用戶Ua的請求修改口令的消息〈PWD,W〉後,首先進行如下式子的計算,
[0055]PU=PWD ? h(Ks |PffAnew),
[0056]然後對比驗證w是否等於h(Ks| sk| Ipwam;),假如不相等,伺服器需要計算h3=h(SK| Ks I 「Refused」)並將消息〈「Refused」,h3>發送給用戶,拒絕更改口令;如果兩者相等,則進行計算h4=h (SKI I Ks I I "Accepted"),並將消息發送給用戶,允許其變更口令;最後伺服器將計算新的W/來替換原來的Wa並保存到認證資料庫,其中 Wa* 的計算式為 ffA*=h (IDa I I ds) ? Pfftoe;;
[0057]5)如果用戶Ua收到消息〈「Refused」,h3>,並且經驗證h3等於h(SK| |Kj I 「Refused」),則可以確定是伺服器S發送的消息拒絕更改口令;而如果收到消息〈「Accepted」, h4>,並且經過驗證h4等於h (SKI KuI 「Accepted」),貝U用戶Ua可以確定是伺服器S發送的消息接收了變更口令請求。
【權利要求】
1.一種基於口令的遠程認證協議方法,其特徵在於:基於橢圓曲線密碼算法實現,包括如下步驟: 步驟1:在系統初始化子協議中,用戶同伺服器協商好以後認證需要使用的橢圓曲線密碼系統參數; 步驟2:新用戶Ua通過用戶註冊子協議進行註冊,選擇身份標識和用戶口令PWa ; 步驟3:用戶Ua希望登陸系統並進行會話密鑰協商時,首先輸入自己的身份標識IDa和用戶口令PWa ;,然後通過身份認證和密鑰協商子協議,與伺服器進行雙向認證並且協商在以後通信中使用的密鑰SK。
2.根據權利要求1所述的基於口令的遠程認證協議方法,其特徵在於:步驟2中,伺服器S收到新用戶Ua註冊提交的身份標識IDa和用戶口令PWa ;後,進行計算WA=h(IDA |ds) ? PWa,然後把數據(IDa,Wa)保存在伺服器的認證資料庫中,前述式中,屯表示伺服器的私鑰,h表示單向哈希函數。
3.根據權利要求2所述的基於口令的遠程認證協議方法,其特徵在於:步驟3中,具體包括以下步驟, 步驟3.1:用戶Ua首先輸入自己的身份標識IDa和用戶口令PWa ;用戶自由選擇一個隨機數ri,ri e Z\,Z\表示整數模η的剩餘類,然後進行運算R1=F1* P,P表示群G的生成元,把消息<IDa,R1)發送給伺服器S ; 步驟3.2:伺服器S接收 到上一步來自用戶Ua的消息<IDa,R1)後,根據自己的認證資料庫中存儲的數據對用戶IDa進行合法性檢驗;如果在資料庫中未找到該IDa,則伺服器S終止協議的進程;否則,伺服器S進行如下運算, 選擇隨機數 r2, r2 e Z*n,計算 R2=r2.P, Ks=r2.R1, R3=ds.R1,h1=h(s| |ida| R1I Ir2 R3 Iks),式中s表示伺服器的身份標識,最後由伺服器s把消息發送到用戶Ua; 步驟3.3:當用戶Ua接收到來上一步來自伺服器S的消息<R2,hi〉後,進行運算Ku^1.R2=IT1.r2.P,以及計算 h廣=h (S IDa R1 R2 T1.Ps I Ku),驗證 Ii1* 與收到來自伺服器的h是否保持一致,如果不一致,則用戶Ua終止進行協議進程;否則,用戶Ua計算h2=h(IDaI I S| Ir1.Ps I IKuI IPWa),然後將h2發送給伺服器S,並且用戶Ua計算一個密鑰SK=h(IDaI |s| Ir1I Ir2I Ir1-PsI IkuI |PWA); 步驟3.4:伺服器S從本地認證資料庫中提取步驟2中計算獲得的WA,並進行計算Wa ? h(IDA |ds)得到伺服器端計算得到的PW/,然後計算h(IDaI |S| R3 Ks |PW/),得到的計算結果與上一步中收到的h2進行對比驗證,看是否保持一致,如果不一致,則用戶Ua對伺服器的認證請求失敗,終止協議;否則,伺服器S認可用戶Ua的合法身份,並且伺服器S計算一個密鑰 SK=h(iDA| |s| R1IIR2 R3 |ks |pwa*)。
4.根據權利要求3所述的基於口令的遠程認證協議方法,其特徵在於:用戶Ua可進行口令修改,包括以下步驟, 步驟4.1:用戶Ua和伺服器S首先執行密鑰SK ; 步驟4.2:假如上一步成功,則用戶Ua通過客戶端輸入新的口令PWamw ; 步驟4.3:用戶Ua通過客戶端計算PWD=h (Ku I I SK) ? Pfftoew和 W=h (Ku I I SKI I Pfftoew),並把消息〈PWD,W〉發送至伺服器S ;步驟4.4:當伺服器S收到來自於用戶Ua的請求修改口令的消息〈PWD,W〉後,首先進行如下式子的計算,
PffAne;=PWD ? h(Ks I PWaiiJ , 然後對比驗證W是否等於h(Ks| SKl Ipwam/),假如不相等,伺服器需要計算h3=h(SK| Ks I 「Refused」)並將消息〈「Refused」,h3>發送給用戶,拒絕更改口令;如果兩者相等,則進行計算h4=h (SKI I Ks I I "Accepted"),並將消息發送給用戶,允許其變更口令;最後伺服器將計算新的W/來替換原來的Wa並保存到認證資料庫,其中 Wa* 的計算式為 ffA*=h (IDa I I ds) ? Pfftoe;; 步驟4.5:如果用戶Ua收到消息〈「Refused」 , h3>,並且經驗證h3等於h(SK| |Kj I 「Refused」),則可以確定是伺服器S發送的消息拒絕更改口令;而如果收到消息〈「Accepted」, h4>,並且經過驗證h4等於h (SKI KuI 「Accepted」),貝U用戶Ua可以確定是伺服器S發送的消 息接收了變更口令請求。
【文檔編號】H04L9/32GK103905437SQ201410108353
【公開日】2014年7月2日 申請日期:2014年3月22日 優先權日:2014年3月22日
【發明者】馬春光, 付韜, 崔振山, 苗俊峰 申請人:哈爾濱工程大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀