购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.3.3
ElGamal签名

ElGamal数字签名方案的过程和RSA签名方案相似,但采用的参数和签名函数不同。回顾ElGamal加密算法,密钥参数中{ α , β , p }为公钥, d 为私钥。Bob签名的计算过程如下。选择一个临时的随机密钥 w ,满足 w <= p -2,且 w p -1的最大公约数为1。计算:

r = α w mod p

以及

s =( x - dr ) w -1 mod p -1。

上述计算中的{ r , s }即为签名的结果。

Alice利用公钥参数对签名进行验证,其过程如下。计算:

t = β r × r s mod p

如果 t = α x mod p 则验证通过;否则验证失败。

ElGamal签名方案的证明过程不像RSA方案那么直接,需要利用数论中的费马小定理,在这里不做叙述。一般情况下,选择ElGamal数字签名算法参数 p 的长度为1024或更大。由于输出为{ r , s },因此该算法的签名长度是原文摘要长度的三倍。 lPKgSkSxHFtEWv3r1PcImp862kjW+rppTD8CR+sj3hW9EwDXEsPGaGhH1eV0K/tl

点击中间区域
呼出菜单
上一章
目录
下一章
×