压缩函数的数论构造方法
在密码学领域,压缩函数的构造至关重要,它是构建哈希函数等重要密码学工具的基础。本文将介绍基于离散对数问题和RSA问题的两种数论构造方法,以及变色龙哈希函数的相关内容。
基于离散对数问题的构造
离散对数假设指出,从一个群元素 $y = g^x$ 中恢复随机的 $x \in Z_q$ 是不可行的,其中 $g$ 生成某个群 $G$ 的一个(循环)子群 $H$,通常子群的阶为素数 $q$。我们以此为基础构建一个压缩函数。
哈希函数的构造
定义哈希函数 $H = (H.KGen, H.Eval)$,其构造的伪代码如下:
Construction 14.7 (Discrete-Logarithm-Based Hash Function).
Let DL = (DL.KGen, DL.Eval) be an instance of the discrete-logarithm
problem (Definition 10.7 on page 414). Then we define hash function
H := (H.KGen, H.Eval) as
H.KGen(1λ)
1 :
(Z∗
p, q, g0) ←$ DL.KGen(1λ)
2 :
z ←$ Zq
3 :
g1 ←gz
0 mod p
// via Eval
4 :
hk ←$ (Z∗
p, q, g0, g1)
5 :
return hk
H.Eval(hk, m)
1 :
(Z∗
p, q, g0, g1) ←parse hk
2 :
(x0, x1) ←parse m
// (x0,
超级会员免费看
订阅专栏 解锁全文
37

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



