常见非对称算法及其应用详解
1. 几种重要的非对称算法
1.1 YAK算法
YAK算法由冯浩在2010年提出,它将认证与密钥协商相结合,和MQV、HMQV一样具有认证功能,且实现相对简单。其具体过程如下:
1. 选择群 :Alice和Bob首先就一个群G达成一致,该群的生成元为g,阶为素数q。常用的群是Schnorr群,生成Schnorr群需先生成p、q、r,满足p和q为素数且$p = qr + 1$。然后选择一个1到p之间的随机数h,群的生成元$g = h^r \bmod p$。
2. 交换密钥 :Bob的私钥为b,公钥为$g^b$;Alice的私钥为a,公钥为$g^a$。Alice选择一个0到$q - 1$之间的x,Bob选择一个0到$q - 1$之间的y。Alice发送$g^x$和零知识证明(RFC 8235描述了一种此类证明),Bob发送$g^y$和零知识证明。
3. 计算密钥 :
- Alice使用公式$K = \frac{(g^y)^b (g^x)^a}{(g^x)^a (g^y)^b}$计算密钥。
- Bob使用公式$K = \frac{(g^x)^a (g^y)^b}{(g^x)^a (g^y)^b}$计算密钥。
4. 生成会话密钥 :对于每个会话密钥,Bob和Alice可以使用K的加密哈希来创建唯一的会话密钥。
1.2 前向保密(Forward Secrecy)
前向保密(FS),有时也称为完美前向保密(PFS),是特定密钥协
超级会员免费看
订阅专栏 解锁全文
3708

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



