新四季網

一種基於口令的輕量級密鑰協商方法與流程

2023-06-30 13:30:01


本發明涉及信息安全領域,具體將涉及一種基於口令的輕量級密鑰協商方法。



背景技術:

密鑰協商是一種兩方或者多方通過公開網絡協商共享密鑰的方法,協議的執行需要參與各方共同協作。協商之前,通常每方都保有一些秘密信息。其中,口令就是一種常用的秘密信息。口令的長度通常較短,一般四至八個數字或字母組成,容易記憶,但保密的強度低,容易通過窮舉可能的口令組合被猜測到。所以,在實際會話之前,需要先通過口令協商出會話密鑰。由於密鑰通常位數較長,很難通過窮舉得到,從而提高會話的保密強度。

發明專利申請,申請號:201210349976.0中公開了一種基於數字證書的無線網絡輕量級認證密鑰協商協議,該協議涉及一種可用於無線網絡的輕量級認證密鑰協商協議,基於「證書私鑰-保護密鑰」雙重認證系統和「保護密鑰」動態協商機制,結合公鑰密碼與共享動態保護密鑰對用戶身份進行雙重認證,用戶通過交換證書及私鑰籤名證明會話持有及私鑰擁有性,進行第一重認證,通過共享保護密鑰進行第二重認證。協議利用上次會話結束後雙方共享保護密鑰保護重要參數的交換,並使用本次會話新計算的保護密鑰確認密鑰的正確性,每輪通信在交換參數的同時即可驗證其正確性。密鑰組的協商及參數交換均採用簡單的位運算,並通過Finished消息完成密鑰更新的確認。協議設置會話ID來動態選擇是否利用已共享的舊參數計算本次會話密鑰,在保證安全高效的同時增強協議的靈活性。

發明專利申請,申請號:201080008115.5中公開了一種基於身份的認證密鑰協商協議。協議第一方和第二方之間的密鑰協商協議從第一方的角度包括以下步驟。向該第二方發送加密的第一隨機密鑰分量,所述第一隨機密鑰分量根據基於身份的加密操作使用該第二方的公鑰來加密。從該第二方接收加密的隨機密鑰分量對,所述加密的隨機密鑰分量對根據第一隨機密鑰分量和在該第二方處計算的第二隨機密鑰分量形成,並且在該第二方處根據基於身份的加密操作使用該第一方的公鑰來加密。以加密的形式向該第二方發送所述第二隨機密鑰分量,所述第二隨機密鑰分量使用該第二方的公鑰來加密。在該第一方和該第二方處可根據所述第一隨機密鑰分量和所述第二隨機密鑰分量來計算用於該第一方和該第二方之間的隨後通信的密鑰。

發明專利申請,申請號:201310226205.7中公開了一種基於量子密鑰分發的無線區域網 安全通信方法,該發明提供一種基於量子密鑰分發的無線區域網安全通信方法,所述方法包括以下步驟:(1)進行基於量子密鑰的身份認證;(2)進行量子密鑰協商;(3)開始加密。該發明的方法避免了偽造接入點和申請者進行信息交換,浪費系統資源,或造成拒絕服務攻擊;實現申請者和認證伺服器,以及申請者和認證者之間的雙向認證,身份認證的安全性大大提高;密鑰協商中的消息驗證採用身份認證中產生的密鑰進行保護,可防範中間人篡改等攻擊;基於量子技術的密鑰協商,其安全性由物理定律保證,具有不可破解性,可抵禦計算能力強的量子計算機的破譯,提升了整個系統的安全性。

發明專利申請,申請號:201210304387.0中公開了一種無線體域網對稱密鑰協商方法。該發明的無線體域網對稱密鑰協商方法,設由節點A向B發起承諾,特徵在於,節點A在時刻進行生理信號採集,設為;然後根據產生共享密鑰,並將以隱藏的形式向節點B傳送數據;節點B提取時刻相同的生理信號,經去噪聲處理,並驗證取值是否正確;如正確,則求出協商密鑰;如不正確,則在時刻附近獲取生理信號,繼續求取密鑰。

上述專利申請分別以證書、用戶身份、量子、生理信號等為基礎,在用戶之間協商會話密鑰,密鑰協商過程中,節點大部分進行數據傳送,增加了密鑰協商過程中的能量消耗。密鑰協商與信號的熵相關,沒有良好的防攻擊性能。



技術實現要素:

為解決上述現有技術中的不足,本發明的目的是提供一種基於口令的輕量級密鑰協商方法,本發明的密鑰協商方法,避免了對時間必須精準同步的要求,解決了同步信號頻繁廣播的高能耗問題;在密鑰協商過程中,節點大部分只是進行數據的處理,不進行數據傳送,有效地降低了密鑰協商過程中的能量消耗。本方法協商與信號的熵無關、採用弱時間同步方法、採用預置密鑰技術,具有良好的防攻擊性能。

本發明的目的是採用下述技術方案實現的:

本發明提供一種基於口令的輕量級密鑰協商方法,包括正向傳遞和反向傳遞兩輪執行,其改進之處在於,所述密鑰協商方法包括以下步驟:

A.密鑰協商初始化;

B.第一輪正向傳遞,數據由用戶U1向用戶Un傳遞,然後用戶Un將數據發給可信伺服器S;

C.第二輪反向傳遞,數據由可信伺服器S驗證後傳遞給用戶Un,然後數據由用戶Un向傳U1遞。

進一步地,所述步驟A包括下述步驟:

A1.所述密鑰協商採用密鑰協商協議,所述密鑰協商協議包括n個用戶U1,…,Un和一個可信伺服器S;設用戶U1為密鑰協商的發起者,用戶Un為最後一個用戶並與可信伺服器S相鄰;

A2.可信伺服器S向N個用戶U1,…,Un公開自己的公鑰Ppub,保留自己的私鑰Ppri;N個用戶U1,…,Un可向可信伺服器S發送加密信息,伺服器用自己的私鑰解密;N個用戶U1,…,Un兩兩之間未共享任何信息;

A3.每個用戶Ui與可信伺服器S之間共享一個口令pwi,其中i=1,…,n;

A4.定義p階有限循環群G,任取p階有限循環群G上一個元素g;

A5.定義三個哈希函數h1,h2,h3;其中哈希函數h1用於生成會話標識,哈希函數h2用於進行正確性驗證,哈希函數h3用於生成會話密鑰;l1、l2、l3均表示固定的長度;*表示任意長度,l1、l2、l3根據實際需要選取512bits,1024bits。

進一步地,所述步驟B包括下述步驟:

B1.對於密鑰協商發起者用戶U1:計算會話標識sid=h1(U1,…,Un),然後選擇兩個隨機數x1,R1∈Zp,Zp表示以p為模的素數域;計算並把(sid,U1,…,Un,N1,M1)發給下一個用戶U2;x1表示是以p為模的素數域Zp中的隨機數,E代表加密,是用Ppub為密鑰進行加密,N1、M1均為計算的中間結果;

B2.對於用戶Ui,i=1,…,n-1:選擇兩個隨機數xi,Ri,∈Zp,計算並把(sid,U1,…,Un,N1,M1,…,Ni,Mi)發給下一個用戶Ui+1;

B3.對於用戶Un:與其他n-1個用戶操作相同,把最終的(sid,U1,…,Un,N1,M1,…,Nn,Mn)發送給可信伺服器S。

進一步地,所述步驟C包括下述步驟:

C1.對於可信伺服器S:收到(sid,U1,…,Un,N1,M1,…,Nn,Mn)後,所述可信伺服器S用自己的私鑰解密得到會話標識sid到用戶U1,以及隨機數R1,首先驗證會話標識sid=h1(U1,…,Un);然後檢查是否等於收到的N1與會話標識sid與用戶U1共享的pw1相異或的結果;若相等,所述可信伺服器S繼續對N2,M2,…,Nn,Mn做相同檢查;若有一項失敗,則程序終止;所有檢查都通過後,所述可信伺服器S確認(sid,U1,…,Un,N1,M1,…,Nn,Mn)合法;並選擇隨機數s∈Zp,計算i=2,…,n,M′i=h2(sid||Ui||Ri||N),i=1,…,n,將生成的發送給用戶Un;

C2.對於用戶Un:收到後,首先驗證會話標識sid=h1(U1,…,Un),依次計算和哈希函數h2(sid||Un||Rn||N)並驗證哈希函數h2(sid||Un||Rn||N)=M′n;若驗證通過,依次計算會話密鑰K=h3(sid||N)和i=1,…,n,將發送給用戶Un-1;若驗證失敗,則發送錯誤信息;

C3.對於用戶Ui,i=2,…,n-1:收到後,首先驗證會話標識sid=h1(U1,…,Un),依次計算和哈希函數h2(sid||Ui||Ri||N)並驗證哈希函數若驗證通過,依次計算會話密鑰K=h3(sid||N)和將發送給用戶Ui-1;如驗證失敗,則發送錯誤信息;

C4.對於用戶U1:收到後,首先驗證會話標識sid=h1(U1,…,Un),依次計算和哈希函數h2(sid||U1||R1||N),並驗證哈希函數h2(sid||U1||R1||N)=M′1;若驗證通過,計算會話密鑰K=h3(sid||N);若驗證失敗,則發送錯誤信息;

其中:均為計算的中間結果;、x1,…,xn均表示是以p為模的素數域Zp中的隨機數;g表示p階有限循環群G上一個元素。

進一步地,密鑰協商協議N個用戶的每個用戶發送一次數據,接收一次數據,密鑰協商協議在密鑰協商的發起者收到傳回的數據後結束。

本發明提供的技術方案具有的優異效果是:

1、本發明提供的一種基於口令的輕量級密鑰協商方法,密鑰協商協議基於用戶容易記憶的口令,協商出高強度的會話密鑰。本專利在應用時不要求每個用戶之間都保持通信連接,一個通信方只需連接到與它相近的一個或幾個通信方即可,特別適合在電力,電信等通過逐點組網通信的場景下使用。可以抵禦在線字典攻擊、離線字典攻擊、及中間人攻擊等針對密 鑰協商的常見攻擊,具有高安全強度。

2、本發明的密鑰協商方法,避免了對時間必須精準同步的要求,解決了同步信號頻繁廣播的高能耗問題;在密鑰協商過程中,節點大部分只是進行數據的處理,不進行數據傳送,有效地降低了密鑰協商過程中的能量消耗。

附圖說明

圖1是本發明提供的基於口令的輕量級密鑰協商方法的流程圖;

圖2是本發明提供的可應用場景的網絡結構圖;

圖3是本發明提供的具體實施例中主要數據的交換圖。

具體實施方式

下面結合附圖對本發明的具體實施方式作進一步的詳細說明。

以下描述和附圖充分地示出本發明的具體實施方案,以使本領域的技術人員能夠實踐它們。其他實施方案可以包括結構的、邏輯的、電氣的、過程的以及其他的改變。實施例僅代表可能的變化。除非明確要求,否則單獨的組件和功能是可選的,並且操作的順序可以變化。一些實施方案的部分和特徵可以被包括在或替換其他實施方案的部分和特徵。本發明的實施方案的範圍包括權利要求書的整個範圍,以及權利要求書的所有可獲得的等同物。在本文中,本發明的這些實施方案可以被單獨地或總地用術語「發明」來表示,這僅僅是為了方便,並且如果事實上公開了超過一個的發明,不是要自動地限制該應用的範圍為任何單個發明或發明構思。

本發明提供了一種基於口令的輕量級密鑰協商協議,以實現保密通信。其流程圖如圖1所示,本協議的所有的運算在一個p階有限循環群G上進行,g是G上任意的一個元素。是三個哈希函數,分別用於生成會話標識,進行正確性驗證,和生成會話密鑰。系統包括N個用戶U1,…,Un和一個可信伺服器S。S向所有用戶公開自己的公鑰Ppub,保留自己的私鑰Ppri。用戶可向伺服器發送加密信息,伺服器用自己的私鑰解密。n個用戶之間未共享任何信息,每個用戶Ui與S之間共享一個口令pwi。不失一般性,我們假設U1為密鑰協商的發起者,Un為最後一個用戶並與伺服器S相鄰。協議的執行分兩輪,第一輪數據由U1向Un傳遞,第二輪則反向傳遞迴U1。所有用戶發送一次,接收一次,協議在U1收到傳回的數據後結束。l1、l2、l3均表示固定的長度; *表示任意長度,l1、l2、l3根據實際需要選取512bits,1024bits。

第一輪如下:

U1:計算一個會話標識sid=h1(U1,…,Un),然後選擇兩個隨機數x1,R1,∈Zp,然後計算並把(sid,U1,…,Un,N1,M1)發給下一個用戶U2。

Ui,i=1,…,n-1:選擇兩個隨機數xi,Ri,∈Zp,然後計算並把(sid,U1,…,Un,N1,M1,…,Ni,Mi)發給下一個用戶Ui+1。

Un:與其他用戶操作相同,把最後的(sid,U1,…,Un,N1,M1,…,Nn,Mn)發送給可信伺服器S。

第二輪如下:

S:收到(sid,U1,…,Un,N1,M1,…,Nn,Mn)後,S用自己的私鑰解密M1得到sid到U1,以及R1,首先驗證sid=h1(U1,…,Un)。然後S檢查是否等於收到的N1與自己與U1共享的pw1相異或的結果。如果相等,S繼續對N2,M2,…,Nn,Mn做相同檢查。如果有一項失敗,程序終止。所有檢查都通過後,S確認(sid,U1,…,Un,N1,M1,…,Nn,Mn)合法。然後S選擇隨機數s∈Zp,計算i=2,…,n,M′i=h2(sid||Ui||Ri||N),i=1,…,n,將生成的發送給Un。

Un:收到後,首先驗證sid=h1(U1,…,Un),然後計算再計算h2(sid||Un||Rn||N)並驗證如驗證通過,計算會話密鑰K=h3(sid||N)。接下來,繼續計算i=1,…,n,將發送給Un-1。如驗證失敗,則發錯誤信息。

Ui,i=2,…,n-1:收到後,首先驗證sid=h1(U1,…,Un),然後計算再計算h2(sid||Ui||Ri||N)並驗證h2(sid||Ui||Ri||N)=M′i。如驗證通過,計算會話密鑰K=h3(sid||N)。接下來,繼續計算將發送給Ui-1。如驗證失敗,則發錯誤信息。

U1:收到後,首先驗證sid=h1(U1,…,Un),然後計算再計算h2(sid||U1||R1||N)並驗證h2(sid||U1||R1||N)=M′1。如驗證通過,計算會話密鑰K=h3(sid||N)。如驗證失敗,則發錯誤信息。

其中:N1、M1、N2,M2,…,Nn,Mn、M′1,…,M′n均為計算的中間結果;、x1·…·xn均表示是以p為模的素數域Zp中的隨機數。

實施例

我們以一個只有三個用戶A,B,C和伺服器S的系統為例說明協議運行過程,其應用場景結構圖如圖2所示。在例子中,我們忽略簡單的比較驗證。

A:計算會話標識sid=h1(Ua,Ub,Uc),選擇隨機數a,Ra,∈Zp,計算Na=ga,向B發送sid,Ua,Ub,Uc,Na,Ma)。

B:選擇隨機數b,Rb,∈Zp,計算Nb=(Na)b=gab向C發送sid,Ua,Ub,Uc,Na,Ma,Nb,Mb)。

C:選擇隨機數c,Rc,∈Zp,計算Nc=(Nb)c=gabc,向S發送sid,Ua,Ub,Uc,Na,Ma,Nb,Mb,Nc,Mc)。

S:解密得到Na,Ma,Nb,Mb,Nc,Mc,隨機選s∈Zp,計算N=(Nc)s=gabcs,

M′a=h2(sid||A||Ra||gabcs),M′b=h2(sid||B||Rb||gabcs),M′c=h2(sid||C||Rc||gabcs),向C發送

C:計算向B發送

B:計算向A發送

A:計算具體實施例中主要數據的交換圖如圖3所示。

以上實施例僅用以說明本發明的技術方案而非對其限制,儘管參照上述實施例對本發明進行了詳細的說明,所屬領域的普通技術人員依然可以對本發明的具體實施方式進行修改或 者等同替換,這些未脫離本發明精神和範圍的任何修改或者等同替換,均在申請待批的本發明的權利要求保護範圍之內。

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀