<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.4 APKAS-1

    10.4 APKAS-1

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

    10.4.1 方案選項

    客戶和服務器應該建立或者協商確定以下選項:
    a) 口令相關數據
    1) 適用于客戶:根據輸入獲取口令相關的八位位組串π;
    2) 適用于服務器:使用{DL,EC}PVDGP-1和輸入的口令相關的八位位組串π得到的口令驗證元素gπ和受限于口令的公開密鑰vπ。
    b) 公開密鑰產生原語和秘密值產生原語和相關的參數。可選原語:PVDGP-1,PEPKGP-2,SVDP-3;
    c) 和vπ,gπ,π相關的有效的{DL,EC}域參數,包括q,g,r;以及密鑰s,wc,ws;
    d) 一個布爾值b1表明是否希望進行因子乘法運算;
    e) 密鑰產生函數Kdf,可選項為:KDF1,KDF2;
    f) 一個或者多個密鑰產生參數八位位組串{P1,P2…};

    10.4.2 密鑰協商操作

    10.4.2.1 客戶密鑰協商

    a) 使用{DL,EC}PVDGP-1(π) 計算生成元gπ和受限于口令的私鑰uπ;
    b) 隨機選擇一個整數s∈[1,r-1],作為私鑰;
    c) 計算口令相關的公鑰wc={DL,EC}PEPKGP-2(s, gπ);
    d) 發送wc給服務器;
    e) 從服務器接收口令相關的公開密鑰ws;
    1) 如果ws不是群的有效元素,則輸出“invalid”并停止;
    2) 如果ws的階過小不能接受,則輸出“invalid”并停止;
    3) (可選)如果ws不是有效的公鑰,則輸出“invalid”并停止;
    f) 計算域元素z1={DL,EC}SVDP-3(s, ws , b1);
    g) 計算域元素z2={DL,EC}SVDP-3(uπ, ws , b1);
    h) 計算八位位組串Z1=FE2OSP(z1);
    i) 計算八位位組串Z2=FE2OSP(z2);
    j) Z= Z1||Z2;
    k) 對每一個密鑰產生參數Pi,根據共享秘密八位位組串Z,產生一個共享秘密私鑰Ki=Kdf(Z, Pi);

    10.4.2.2 服務器密鑰協商

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

    10.4.3 密鑰證實操作

    APKAS-1方案中客戶可以選擇是否在使用Z或者K1,K2…Kt之前確認服務器正確獲得了Z。對于服務器而言該步驟同樣是可選的。

    10.4.3.1 服務器密鑰證實

    a) 可選項
    1) 計算oπ=GE2OSP(gπ);
    2) 計算os=KCF1(hex(03), wc, ws,Z, oπ);
    3) 發送os給客戶。
    b) 可選項
    4) 從客戶接收八位位組串oc;
    5) 計算oπ=GE2OSP(gπ);
    6) 計算o4=KCF1(hex(04), wc,ws,Z, oπ);

    10.4.3.2 客戶密鑰證實

    a) 可選項
    1) 從服務器接收八位位組串os;
    2) 計算oπ =GE2OSP(gπ);
    3) 計算o3=KCF1(hex(03), w’,w,Z, oπ);
    4) 如果o3≠os,輸出“invalid”并停止。
    b) 可選項
    5) 計算oπ=GE2OSP(gπ);
    6) 計算os=KCF1(hex(04), wc,ws,Z, oπ);

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

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


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