密码学|数字签名

数字签名

数字签名满足下面条件
认证性(Authenticity):验证消息确实是由声称的发送者发送的,不是伪造的
完整性(Integrity):验证消息在传输或存储过程中没有被篡改
不可否认性(Non-repudiation):发送者之后不能否认他发送过这条消息(因为签名只有他本人能生成)

总体来说数字签名是公钥密码的逆用,使用私钥签名,使用公钥验签
数字签名方案的三个部分:
(1)密钥生成:生成签名者所需的公私钥对;
(2)签名过程:对于m,利用私钥进行签名s = S(m), 输出(m, s);
(3)验证过程:验证者使用公钥验证签名,如果验证方程成立,则承认该签名;否则拒绝。

RSA 签名

签密方案

A向B传递加密的消息-签名对
\(C = (M^{d_A} mod n_A)^{e_B} mod n_B\)
\(M' = M^{e_B} mod n_B\)
B解密和验签
\(C^{d_B} = M^{d_A} = S_A\)
\((M')^{d_B} mod n_B =M\)
\(S_A^{e_A} = (M^{d_A})^{e_A} = M mod n_A\)

简化计算的性质

如果 $ t = LCM[p - 1, q - 1] $ (最小公倍数),并且 $ k \equiv r \mod t $ 且 $ k > r $,那么 $ a^k \equiv a^r \mod pq $
因为 $ a^k \equiv a^r \mod p $ 且 \(a^k \equiv a^r \mod q\)
根据中国剩余定理,我们可以得出\(a^k \equiv a^r \mod pq\)

消息过大时对消息先用哈希函数处理

ELGamal数字签名

密钥生成

大素数\(P\),乘法群\(Z_p^*\)的生成元\(g\)
随机数\(x\),\(x<p-2\)
\(y = g^xmodp\)
公钥为\((p,g,y)\)私钥为\(x\)

签名过程

\(gcd(k,p-1)= 1,k\in Z_{p-1}\)
\(s(m) = (s_1,s_2) \in Z_p^* \times Z_{p-1}\)
\(s_1 = g^kmod p\)
\(s_2 = (m-xs_1)k^{-1}mod(p-1)\)

验证过程

\(y^{s_1}s_1^{s_2} = g^m modp\)
上式成立时则签名为有效签名

Schnorr签名方案

密钥生成

选择一个大素数 \(p\) 和素数 \(q\) ,\(q|(p-1)\)
选择阶为q子群生成元 \(g\)
\(g = a^{(p-1)/q}modp\)\(g=1\)则重试
私钥:随机选择一个整数 \(x (1 < x < q)\)
公钥:计算 \(y = g^x mod p,(p,q,g,y)\)

签名生成

选择一个随机数 \(k (1 < k < q)\)
计算 \(r = g^k mod p\)
计算 \(e = H(r || m)\),其中 \(H\) 是一个哈希函数,\(||\) 表示连接。\(e\) 是一个挑战值。
计算 \(S = k + x * e mod q\)
签名是 \((e, S)\)

签名验证

获取公钥 \(y\)、消息 \(m\) 和签名 \((e, S)\)
计算 \(u = g^S * y^{-e} mod p\)
计算 \(e' = H(u || m)\)
如果 \(e == e'\),则验证通过,签名有效;否则无效。

数字签名标准 DSS

密钥生成

选择公共参数 \(p, q, g\)
用户选择私钥 \(x\)(一个小于 \(q\) 的随机数)。
计算公钥 \(y = g^x mod p\)

签名生成

选择一个随机数 \(k\)
计算消息的哈希值 \(H(m)\)
计算 \(r ( (g^k mod p) mod q )\)。如果 \(r=0\),重新选择 \(k\)
计算 \(s ( k^(-1) * (H(m) + x*r) ) mod q\)。如果 \(s=0\),重新选择 \(k\)
签名是 \((r, s)\)

签名验证

获取公钥 \(y\)、消息 \(m\) 和签名 \((r, s)\)
检查 \(r\)\(s\) 是否在 \(1\)\(q-1\) 之间。如果不是,签名无效。
计算消息的哈希值 \(H(m)\)
计算 \(w s^(-1) mod q\)
计算 \(u1 (H(m) * w) mod q\)
计算 \(u2 (r * w) mod q\)
计算 \(v ( (g^u1 * y^u2) mod p ) mod q\)
如果 \(v = r\),则签名有效;否则无效。

posted @ 2025-06-18 14:55  lumiere_cloud  阅读(68)  评论(0)    收藏  举报