已知椭圆曲线方程E11为:y^2=x^3+x+6(mod 11),取p(2,7)为一个生成元,,令k=3,d=5,e=H(M),写出签名与验证签名过程
时间: 2024-06-01 12:11:57 浏览: 22
签名过程:
1. 随机选择一个整数k ∈ [1, 10],计算P = kP。
2. 计算r = xP mod 11,如果r = 0,则重新选择k。
3. 计算s = k^(-1)(e + dr) mod 11,如果s = 0,则重新选择k。
4. 签名为(r,s)。
验证签名过程:
1. 验证r,s是否在[1,10]范围内。
2. 计算w = s^(-1) mod 11。
3. 计算u1 = ew mod 11和u2 = rw mod 11。
4. 计算点Q = u1P + u2p。
5. 如果r = xQ mod 11,则签名有效,否则无效。
相关问题
已知椭圆曲线方程E11为:y 2 y^2y \n2\n =x 3 x^3x \n3\n +x xx+6(mod 11),取p(2,7)为一个生成元,,令k=3,d=5,e=h(m),写出签名与验证签名过程
签名过程:
1. 选取私钥为d=5。
2. 选取一个随机数k=3。
3. 计算椭圆曲线上的点P=k*G,其中G为公钥p(2,7)。
首先计算2G=G+G,3G=G+2G。根据椭圆曲线的加法规则,有:
2G = (6, 3)
3G = (2, 6)
因此,P=3G=(2,6)。
4. 计算r=x(P) mod 11,r为签名中的第一个参数。
r=2 mod 11。
5. 计算s=k^-1*(e+rd) mod (11-1),其中e为消息的哈希值。
假设消息的哈希值为h(m)=8。
首先计算k^-1 mod 10,根据扩展欧几里得算法,有:
3*7 + (-10)*2 = 1
因此,k^-1=7 mod 10。
接着计算s=7*(8+2*5) mod 10=9。
因此,签名为(2, 9)。
验证签名过程:
1. 接收到签名信息(2, 9)和消息m。
2. 计算椭圆曲线上的点P=s*G-e*P,其中G为公钥p(2,7)。
首先计算e的哈希值为h(m)=8。
接着计算-e*P=-5*(2,6)=(-10,2),根据椭圆曲线的加法规则。
最后计算P=9*G+(-10,2)=s*G。
因此,P=(7,3)。
3. 计算r=x(P) mod 11。
r=7 mod 11。
4. 验证签名是否有效,即判断r是否等于签名中的第一个参数。
由于r=7,而签名中的第一个参数为2,两者不相等,因此签名无效。
因此,此签名是无效的。
. 1.已知点G=(2,7)在椭圆曲线E11(1,6)上,求2G和3G。
根据椭圆曲线的加法规则,可以通过将点 G 与自身相加得到 2G,再将点 G 与 2G 相加得到 3G。
首先,计算斜率 k = (3x1^2 + a) / 2y1,其中 x1 = 2,y1 = 7,a = 11。
k = (3*2^2 + 11) / (2*7) = 29/14
然后,计算 x3 = k^2 - 2x1 = (29/14)^2 - 4 = 117/49
计算 y3 = k(x1 - x3) - y1 = (29/14)(2 - 117/49) - 7 = -958/343
因为椭圆曲线是对称的,所以2G 的另一个解是 (x3, -y3)。
因此,2G = (117/49, 958/343) 和 (117/49, -958/343)。
接下来,我们将点 G 与 2G 相加来得到 3G。
计算斜率 k = (y2 - y1) / (x2 - x1),其中 x1 = 2,y1 = 7,x2 = 117/49,y2 = 958/343。
k = (958/343 - 7) / (117/49 - 2) = -29/21
计算 x3 = k^2 - x1 - x2 = (-29/21)^2 - 2 - 117/49 = 340/441
计算 y3 = k(x1 - x3) - y1 = (-29/21)(2 - 340/441) - 7 = -2975/9261
因为椭圆曲线是对称的,所以3G 的另一个解是 (x3, -y3)。
因此,3G = (340/441, 2975/9261) 和 (340/441, -2975/9261)。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)