Page 301 - 《软件学报》2025年第5期
P. 301
刘振亚 等: SM2 数字签名算法的两方门限计算方案框架 2201
Alice Bob
m'=m||z; 计算 e=Hash(m')
随机生成或计算 w 1 ∈[1,q−1];
计算 Q 1 =[d 1 w 1 ](P+G)
Q 1 、e
随机生成或计算 w 2 ∈[1,q−1];
计算 Q=(x 1 ,y 1 )=[d 2 w 2 ](P+G)+Q 1
计算 r=(x 1 +e) mod q
计算 s 1 =d 2 (r+w 2 ) mod q
s 1 、r
计算 s=(d 1 (r+w 1 )+s 1 −r) mod q
图 3 基于加法密钥拆分的两随机数两方门限计算方案框架
在协作计算 SM2 数字签名的过程中, Alice 和 Bob 能够通过不同的方式构造各自的随机数, 对上述门限计算
方案框架进行实例化. 随机数的构造应满足下述安全要求.
]
w 1 中至少包含 1 [ 1,q−1 均匀分布, 使得
(1) 随机数 个独立随机生成的随机数 k 1 , 且 w 1 与 k 1 的取值分布都是
方程 s = d 1 (r +w 1 )+ s 1 −r 对于 Bob 来说包含至少两个未知数 d 1 和 w 1 , 从而无法解出 Alice 的私钥 d 1 .
w 2 中至少包含 1 [ 1,q−1 均匀分布, 使得
]
(2) 随机数 个独立随机生成的随机数 k 2 , 且 w 2 与 k 2 的取值分布都是
方程 s 1 = d 2 (r +w 2 ) 对于 Alice 来说至少包含两个未知数 d 2 和 w 2 , 从而无法解出 Bob 的私钥 d 2 .
与第 3.1.2 节讨论的 w 1 和 w 2 构造类似, 在加法密钥拆分的情况下, 也可以实现签名随机数的不同构造.
限于篇幅, 本文列出如下几种实例化方案, 如表 5 所示.
表 5 基于加法密钥拆分两随机数框架的实例化
w 1 w 2 k = (d 1 +d 2 ) −1 (d 1 w 1 +d 2 w 2 ) s = (1+d) −1 (k +r)−r 序号
−1
k 2 (d 1 +d 2 ) (d 1 k 1 +d 2 k 2 ) d 1 k 1 +d 2 k 2 +(d 1 +d 2 −1)r 5.1
−1
−1 (d 1 +d 2 ) (d 1 k 1 +k 2 ) d 1 k 1 +k 2 +(d 1 +d 2 −1)r 5.2
d k 2
2
−2 −1 −1 −1 5.3
d k 2 (d 1 +d 2 ) (d 1 k 1 +d k 2 ) d 1 k 1 +d k 2 +(d 1 +d 2 −1)r
2
2
2
−1
−1 (d 1 +d 2 ) (d 1 k 1 +d 2 +k 2 ) d 1 k 1 +d 2 +k 2 +(d 1 +d 2 −1)r 5.4
k 1 1+d k 2
2
−2 −1 −1 −1 5.5
1+d k 2 (d 1 +d 2 ) (d 1 k 1 +d 2 +d k 2 ) d 1 k 1 +d 2 +d k 2 +(d 1 +d 2 −1)r
2 2 2
d −1 +k 2 (d 1 +d 2 ) −1 (d 1 k 1 +1+d 2 k 2 ) d 1 k 1 +1+d 2 k 2 +(d 1 +d 2 −1)r 5.6
2
( )
d −2 (d 1 +d 2 ) −1 d 1 k 1 +d −1 d 1 k 1 +d −1 +d 2 k 2 +(d 1 +d 2 −1)r 5.7
2 +k 2 2 +d 2 k 2 2
−1
−1 −1 (d 1 +d 2 ) (k 1 +k 2 ) k 1 +k 2 +(d 1 +d 2 −1)r 5.8
d k 1 d k 2
2
1
所列方案旨在展示如何通过随机数的构造对该框架进行实例化, 得到相应两方门限计算方案, 其中也包含了
该框架下的已有公开方案. 方案 5.8 为已有公开方案 [39] , 其余均为新方案. 对随机数 w 1 和 w 2 进行相应的不同替换
即可得到本文提出的所有实例化方案, 完整的实例化方案表格可见附录 A 中的表 A2. 值得说明的是, 以上列出的
实例化方案并非所有可能方案, 凡是满足随机数安全要求的构造, 均可用于实例化得到两方门限计算方案.