Page 297 - 《软件学报》2025年第5期
P. 297
刘振亚 等: SM2 数字签名算法的两方门限计算方案框架 2197
[1,q−1] 均匀分布, 也使得 Bob s = d 1 (s 1 +w 1 s 2 +...+w γ s γ+1 )−r 中解出 d 1 .
是 无法从方程 Alice 的部分私钥
(2) 随机数 w γ+1 包含至少 1 个独立随机生成的随机数 k i , 且其与 k i 的取值分布都是 [1,q−1] 均匀分布, 使得方
s 1 = d 2 (r +w γ+1 ) 对于 w γ+1 从而无法解出 Bob
程 Alice 来说至少包含两个未知数 d 2 和 的部分私钥 d 2 .
w γ+2 ,...,w 2γ+1 均包含至少 1 [1,q−1] 均匀
(3) 随机数 个独立随机生成的随机数 k i , 且其与 k i 的取值分布都是
分布, 使得 Alice 无法从 s 2 ,..., s γ+1 中获取 Bob 的部分私钥 d 2 .
与第 3.1.2 节讨论的 w 1 和 w 2 构造类似, 本文基于随机数 k i (i = 1,2,...) , 结合签名私钥 d , Alice 和 Bob 的部分
1
私钥 d 1 、 d 2 以及它们的逆 d −1 、 d −1 , 进行加或乘的组合, 实现签名随机数 w 1 ,…, w γ 和 w γ+1 ,…, w 2γ+ 的不同构造.
1 2
在具体的实例化方案中, s 按照上文相应的步骤计算即可.
进一步, w i 还可以使用签名私钥 d 进行构造. 虽然 Alice 和 Bob 无法获取签名私钥 d , 但是可以通过一定的形
式转换, 使得 Alice 和 Bob 在不知道 d 的情况下, 基于 P 和 G 完成签名随机数构造. 即随机数 可进一步变化为如
k
下等价形式:
k = w γ+1 +w 1 w γ+2 +...+w γ w 2γ+1
−1 −1
= d d 2 ( d 1 d 2 (w γ+1 +w 1 w γ+2 +...+w γ w 2γ+1 ) )
1
( )
= (1+d) d 1 d 2 (w γ+1 +w 1 w γ+2 +...+w γ w 2γ+1 )
= (1+d)d 1 d 2 w γ+1 +(1+d)d 1 d 2 w 1 w γ+2 +...+(1+d)d 1 d 2 w γ w 2γ+1 .
′ ′ ′ ′ ′ ′ ′ .
令 (1+d)d 2 w i =w (i=γ +1,...,2γ +1) d 1 w i =w (i = 1,...,γ) , 使得签名随机数 k=d 1 w +w w +...+ w w
,
i i γ+1 1 γ+2 γ 2γ+1
此时, Alice 和 Bob 能够通过如下步骤协作计算椭圆曲线点 Q = [k]G .
[ ] [ ]
,
Alice.1 随机生成或计算 w 1 ,w 2 ,...,w γ ∈ 1,q−1 , 计算 Q 1 = [d 1 ](P+G) Q 2 = [d 1 w 1 ](P+G),...,Q γ +1 = d 1 w γ
(P+G) , 发送 Q 1 ,...,Q γ +1 给 Bob.
[ ] [ ] [ ] [ ]
Bob.1 随机生成或计算 w γ+1 ,w γ+2 ,...,w 2γ+1 ∈ 1,q−1 , 计算 Q = d 2 w γ+1 Q 1 + d 2 w γ+2 Q 2 +...+ d 2 w 2γ+1 Q γ+1 .
P 的计算过程有所不同, 但签名随机数 的构造相
k
虽然上述椭圆曲线点 Q 的协作计算过程相较于不使用公钥
同, 都是 k = w γ+1 +w 1 w γ+2 +...+w γ w 2γ+1 . 因此, s 仍然按照上文相应的步骤计算即可.
′ ′ ′ 2 2
由于 w = d 1 w i (i = 1,...,γ) , 根据 w 1 ,...,w γ 的取值, w ,...,w 可以相应取值为: d 1 k i d k i k i d 1 +d k i d 1 +k i ,
,
,
,
,
i 1 γ 1 1
2
d +d 1 k i 1+d 1 k i d 1 k i ...k j 等.
,
,
1
′ ′ ′
由于 w = (1+d)d 2 w i (i = γ +1,...,2γ +1) , 根据 w γ+1 ,...,w 2γ+1 的取值, w ,...,w 可以相应取值为: (1+d)d 2 k i ,
i γ+1 2γ+1
2 ( 2 ) ( 2 2 )
(1+d)d k i (1+d)k i (1+d) d 2 +d k i , (1+d)(d 2 +k i ) (1+d) d +d k i , (1+d)(1+d 2 k i ) (1+d)d 2 k i ...k j 等.
,
,
,
,
2 2 2
限于篇幅, 本文列出如下几种实例化方案.
后文表 3 展示了取 γ = 3 时, 不包含签名私钥 d 的签名随机数构造形式.
后文表 4 展示了取 γ = 3 时, 包含签名私钥 d 的签名随机数构造形式. 序号 3.*.d 旨在表明该方案与表 3 中的
方案 3.*为相同方案, 不同之处在于椭圆曲线点 Q 的协作计算过程是否使用公钥 P , 相当于签名随机数是否使用私
d . 而最终计算的签名第 2 s 相同, 在表 4 中省略.
钥 部分
所列方案旨在展示如何通过随机数的构造对该框架进行实例化, 得到相应两方门限计算方案, 其中也包含了
该框架下的已有公开方案. 方案 3.1, 3.9, 3.10, 3.11 为已公开方案 [32−38] , 其余均为新方案. 对随机数 w 1 ,w 2 ,...,w 2γ+1
进行相应的不同替换即可得到本文所提出的所有实例化方案. 值得说明的是, 以上实例化方案并非所有可能方案,
凡是满足随机数安全要求的构造, 均可进行实例化.
3.1.4.1 安全性分析
第 3.1.4 节所描述的两方门限签名计算的过程应满足如下安全要求: 任一参与方无法获取完整的签名私钥或
另一部分私钥的任何信息.
安全性说明如下.
在一次协作签名中, Alice 能够获取如下信息.
(1) 签名第 1 r = (x 1 +e) mod q .
部分