<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.9 APKAS-7

    10.9 APKAS-7

    {DL,EC}APKAS-7-{CLIENT,SERVER}是{離散對數,橢圓曲線}口令鑒別密鑰協商方案,該方案是擴展口令鑒別密鑰協商方案,包含參與方{CLIENT,SERVER}。在該方案中,客戶擁有口令相關的八位位組串π,而服務器擁有與π的口令驗證數據。

    10.9.1 方案選項

    客戶和服務器應該建立或者協商確定以下選項:
    a) 口令相關數據
    1) 適用于客戶: 根據輸入獲取口令相關的八位位組串π;
    2) 適用于服務器:使用{DL,EC}PVDGP-6(π)和輸入的口令相關的八位位組串π得到的口令驗證元素。
    b) 公開密鑰產生原語和秘密值產生原語和相關的參數。可選原語:PVDGP-6, PEPKGP-PAK, PKGP-DH, SVDP-PAK1-CLIENT, SVDP-PAK2;
    c) 和π相關的有效的{DL,EC}域參數,包括k, q, r,g;
    d) 與私鑰u和公鑰v相關的簽名方案Ss;
    e) 掩碼生成函數Mgf,可選項為:MGF1;
    f) 散列函數hashSK;
    g) 密鑰產生函數Kdf,可選項為:KDF1,KDF2;
    h) 一個或者多個密鑰產生參數八位位組串{P1,P2…};

    10.9.2 密鑰協商操作

    10.9.2.1 客戶密鑰協商

    a) 計算πm = {DL,EC}PVDGP-6(π);
    b) 隨機選擇一個整數s ∈[1, r -1],作為私鑰;
    c) 計算口令相關的公鑰wc= {DL,EC}PEPKGP-1(s, πm);
    d) 發送wc給服務器;
    e) 從服務器接收公鑰ws;
    f) 如果ws不是群的有效元素,則輸出“invalid”并停止;
    g) 計算域元素z = {DL,EC}SVDP-1-CLIENT(s, ws);
    h) 計算八位位組串Z = FE2OSP(z);
    i) 對每一個密鑰產生參數Pi,根據Z,產生一個共享秘密私鑰Ki= Kdf(Z,Pi);

    10.9.2.2 服務器密鑰協商

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

    10.9.3 密鑰證實操作

    10.9.3.1 服務器密鑰證實

    a) 必選項
    1) 計算oπ= GE2OSP(πm^(-1));
    2) 計算os = KCF1(hex(03)||oID, wc, ws, Z, oπ);
    3) 發送os給客戶。
    b) 必選項
    1) 計算o7 = KCF1(hex(05)||oID, wc, ws, Z, oπ);
    2) 計算o5 = MGF1(o7,uLen);
    3) 計算UKπ=Uπ⊕o5;
    4) 發送UKπ和Hu給客戶;
    5) 從客戶接收簽名Sc;
    6) 計算M = oID||GE2OSP(wc)||GE2OSP(ws);

    10.9.3.2 客戶密鑰證實

    a) 必選項
    1) 從服務器接收八位位組串os;
    2) 計算oπ= GE2OSP(πm^(-1));
    3) 計算o3 = KCF1(hex(03)||oID,wc, ws, Z, oπ);
    4) 如果o3 ≠os,輸出“invalid”并停止。
    b) 必選項
    1) 從服務器接收八位位組串UKπ和Hu;
    2) 計算o7 = KCF1(hex(05)||oID, wc, ws, Z, oπ);
    3) 計算o5 = MGF1(o7,uLen);
    4) 計算ou = UKπ⊕o5⊕MGF1(hex(02)|| π,uLen);
    5) 如果hashSK≠ Hu,輸出“invalid”并停止;
    6) 從ou計算得到簽名私鑰u;
    7) (可選)如果u不是有效的簽名私鑰,則輸出“invalid”并停止。
    c) 必選項
    1) 計算M = oID||GE2OSP(wc)||GE2OSP(ws);
    2) 計算Sc = Sign(u,M);

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

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


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