无配对的基于身份的密钥交换协议:IB - KA 详解
1. 新协议 IB - KA 概述
IB - KA 协议是一种用于身份验证和密钥交换的协议,在安全通信领域有着重要的应用。该协议的实现主要分为三个部分:协议设置、密钥推导和协议会话。
1.1 协议设置
密钥生成中心(KGC)负责协议的初始化设置,具体步骤如下:
1. 选择一个素数阶为 $q$($q$ 为 $\ell$ 位长)的群 $G$,并选取一个随机生成元 $g \in G$。
2. 定义两个哈希函数:$H_1 : {0, 1}^* \to Z_q$ 和 $H_2 : Z_q \times Z_q \to {0, 1}^{\ell}$。
3. 随机选取一个 $x \gets Z_q$,并计算 $y = g^x$。
4. KGC 输出公共参数 $MPK = (G, g, y, H_1, H_2)$,同时将主秘密密钥 $MSK = x$ 保留给自己。
1.2 密钥推导
用户通过身份(ID)获取对应的秘密密钥,具体过程如下:
1. KGC 验证用户身份后,随机选取一个 $k \gets Z_q$,计算 $r_{ID} = g^k$。
2. 使用主秘密密钥 $x$ 计算 $s_{ID} = k + H_1(ID, r_{ID})x$。
3. $(r_{ID}, s_{ID})$ 即为返回给用户的秘密密钥。用户可以通过公钥 $y$ 验证秘密密钥的正确性,验证方程为 $g^{s_{ID}} \stackrel{?}{=} r_{ID} \cdot y^{H_1(ID, r_{ID})}$。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



