<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    10.5 [DL]APKAS-2,[DL]APKAS-3

    10.5 [DL]APKAS-2,[DL]APKAS-3

    [DL]APKAS-{2,3}-{CLIENT,SERVER}是離散對數口令鑒別密鑰協商方案,包含參與方{CLIENT,SERVER}APKAS-2APKAS-3。
    [DL]APKAS-{2,3}使用優化的Diffie-Hellman交換在兩個參與方直接建立共享密鑰。

    10.5.1 方案選項

    客戶和服務器應該建立或者協商確定協商口令驗證數據生成原語,公開密鑰生成原語,秘密值生成原語和相關參數。可選項包括:DLPVDGP-{2,3},DLPKGP-2-CLIENT,DLPEPKGP-{3, 4}-SERVER,DLSVDP-{4,5}-CLIENT,DLSVDP-{4,5}-SERVER。APKAS-3客戶和服務器必須使用相同的散列函數參數和相同的Mvcf參數。
    a) 口令相關秘密和驗證數據
    1) 適用于客戶:口令相關秘密八位位組串π,可以包含“鹽”和單方或者雙方的身份信息;
    2) 適用于服務器:使用DLPVDGP-{SRP3,SRP6}根據口令相關秘密π生成受口令限制的公開密鑰vπ;
    b) 和π,vπ相關的有效的DL域參數,包括gq-1,q,r, k;以及密鑰s,wc,ws;
    c) 密鑰產生函數Kdf,可選項為:KDF1,KDF2;
    d) 一個或者多個密鑰產生參數八位位組串{P1,P2…};

    10.5.2 密鑰協商操作

    協議的兩個參與方應該執行如下(或者等同的)步驟產生共享的密鑰,K1,K2…Kt。

    10.5.2.1 客戶密鑰協商

    a) 隨機選擇一個整數s∈[1,q -2],作為私鑰;
    b) 計算DL公鑰wc=DLPKGP-2-CLIENT (s);
    c) 發送wc給服務器;
    d) 從服務器接收口令相關的公開密鑰ws;
    1) 如果ws不是群的有效元素,則輸出“invalid”并停止;
    e) 使用原語DLPVDGP-{2,3}(π)計算受限于口令的私鑰uπ和口令驗證數據vπ;
    f) 計算協商域元素z:
    1) APKAS-2:z =DLSVDP-4-CLIENT(s, uπ, vπ, ws)
    2) APKAS-3:z =DLSVDP-5-CLIENT(s, uπ, vπ, wc, ws)
    g) 計算八位位組串Z=FE2OSP(z);
    h) 對每一個密鑰產生參數Pi,根據共享秘密八位位組串Z,產生一個共享秘密私鑰Ki=Kdf(Z, Pi);

    10.5.2.2 服務器密鑰協商

    a) 隨機選擇一個整數s∈[1,q -2],作為私鑰;
    b) 計算口令相關的公鑰ws=DLPEPKGP-2-CLIENT (s,vπ);
    c) 從客戶接收公開密鑰wc;
    1) 如果ws不是群的有效元素,則輸出“invalid”并停止;
    d) 發送ws給客戶;
    e) 計算協商域元素z =DLSVDP-4-CLIENT(s, vπ, wc,ws)
    f) 計算八位位組串Z=FE2OSP(z);
    g) 對每一個密鑰產生參數Pi,根據共享秘密八位位組串Z,產生一個共享秘密私鑰Ki=Kdf(Z, Pi);

    10.5.3 密鑰證實操作

    [DL]APKAS-{2,3}方案中服務器必須在使用Z或者K1,K2…Kt之前確認客戶正確獲得了Z。對于客戶而言該步驟同樣是可選的。

    10.5.3.1 客戶密鑰證實

    a) 必選項
    1) 計算oπ=FE2OSP(vπ);
    2) 計算oc=KCF1(hex(04), wc,ws,Z, oπ);
    3) 發送oc給服務器。
    b) 可選項
    4) 從服務器接收八位位組串os;
    5) 計算o4=KCF1(hex(04), wc,ws,Z, oπ);

    10.5.3.2 服務器密鑰證實

    a) 必選項
    1) 從客戶接收八位位組串oc;
    2) 計算oπ=FE2OSP(vπ);
    3) 計算o3=KCF1(hex(04), wc,ws,Z, oπ);
    4) 如果o3≠oc,輸出“invalid”并停止。
    b) 可選項
    5) 計算os=KCF1(hex(03), wc,ws,Z, oπ);

    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类