Page 335 - 《软件学报》2026年第6期
P. 335
2654 软件学报 2026 年第 37 卷第 6 期
给 A 并在 H list 中添加六元组 (ID j , M j ,i j ,w 1,j ,w 2,j ,z j ).
3
,
∗
∗
j
(4) 固定私钥询问: 记 ID j 为第 个被询问的新身份, 若 j = j , 则 B 停止模拟. 若 j , j B 询问 H 1 预言机得到
a
x j , 返回 SK ID = P 1 Q ID +a 作为 ID j 的固定签名私钥.
,
j
∗
∗
(5) 临时私钥询问: 记 (ID j ,i j ) 为第 个被询问的新二元组, 若 j = j , 则 B 停止模拟. 若 j , j B 询问 H 1 预言
a
x j +a
机得到 x j , 进而得到 ID j 的固定签名私钥 = P . 进一步地, 运行临时私钥生成算法得到临时私钥 并
1 TSK i j
SK ID,i j
返回给 A.
j
∗
(6) 签名询问: 记 (ID j , M j ,i j ) 为第 个被询问的新三元消息组, 如果 j , j , 那么 B 可以获得对应的固定/临时
$
$
$
$
ρ
ρ
∗ h←Z p , ρ←Z p , V i ←G 1 , S i ←G 1 , S ID,i = P , C i = B , 计
签名私钥, 进而生成有效签名. 如果 j = j , 那么 B 随机选取
1
h
h
算群 G T 中的元素 w 1 = e(S i ,P Q ID · P Pub )·e(S ID,i j ,P Pub ) . 计算群 G T 中的元素 w 2 = e(V i ,P t ID j ,i j ·ψ(S ID,i j ))·e(S ID,i j ,P 2 ) . 最
2 2
后定义 H 3 (ID j ||M j ||i j ||w 1 ||w 2 ) = h. 输出签名 σ = (S ID,i j ,C i j ,S i j ,h,V i j ).
∗
∗
∗
∗
∗
∗
∗
∗
∗
∗
∗
,
● 伪造阶段: A 输出伪造签名 (σ , M ,ID ,i ), 其中 σ = (S ∗ ,C ,h ,S ,V ), 令 ID 的下标为 j. 若 j , j B 停
ID,i i i i
∗
∗ ∗ ,C ,h ,S ,V ), 可以认为是一个 次信息传递的零
∗
∗
∗
止模拟并输出失败. 若 j = j , 根据分叉引理, 考虑到签名为 (S ID,i i i i 3
10(q s +1)(q s +q h )
t
知识证明协议. 若存在一个攻击算法 A 能在时间 内以 ϵ > 的概率成功伪造签名 (S ID,i ,h,S i ,V i ),
2 λ
′
′ t < 120686q h t/ϵ 内输出两个有效的签名
则存在一个图灵机 A 通过 A 的帮助, 以相同的输入 (pp, M,ID,i) 在时间
′
∗
∗
∗
(S ID,i ,C i ,h 1 ,S i,1 ,V i,1 ) 和 (S ID,i ,C i ,h 2 ,S i,2 ,V i,2 ), 其中 h 1 , h 2 ,S 1 , S 2 . 据此, B 运行图灵机 A , 获得两个关于 (M ,ID ,i )
∗
∗
∗
∗
∗
∗
∗
∗
∗
的有效签名 (S ∗ ,C ,h ,S ,V ) 和 (S ∗ ,C ,h ,S ,V ), 且满足验证等式 e(P 1 ,C ) = e(S ∗ ,B) 和
ID,i i 1 i,1 i,1 ID,i i 2 i,2 i,2 i ID,i
H 1 (ID ∗ ) h ∗ H 1 (ID ∗ ) h ∗
e(S ,P P Pub )·e(S ∗ ,P Pub ) 1 = e(S ,P P Pub )·e(S ∗ ,P Pub ) 2
∗
∗
1 2 ID,i 2 2 ID,i .
H 2 (ID ∗ ||i ∗ ) H 2 (ID ∗ ||i ∗ )
∗ ∗ ∗ h ∗ ∗ ∗ ∗ h ∗
e(V ,P S )·e(S ,P 2 ) 1 = e(V ,P S )·e(S ,P 2 ) 2
1 2 ID,i ID,i 2 2 ID,i ID,i
根据 KEA 假设, 对于满足 e(P 1 ,C ) = e(S ∗ ,B) 的三元组 (C ,S ∗ ,B), 存在一个提取器 , 能够提取 使得
ρ
∗
∗
∗
E
i ID,i i ID,i
ρ ∗ −1 ρ ∗
∗ a −1 (h ∗ −h ∗ )
∗
S ∗ ID,i = P , 结合之前提到的两个验证等式可以得到 e((S −S ) 2 1 ,P x ∗ +a ) = e(P ,P 2 ).
2
1
1
2
1
k−1
a
∗ (h ∗ −h ∗ ) ρ ∗ −1
i
∗
∗
∗
令 Y = (S −S ) 2 1 −1 , 那么根据等式有 Y = P x ∗ +a . 又有 z f(z) = γ + ∑ γ i z , P 1 = P f(a) , 其中 γ 和 γ i 是可
1 2 1 z+ x ∗ z+ x ∗
i=0
k−1
∑ ( ) 1
1 i
∗
∗
∗
∗
以计算的系数并且 γ 不为 0. 那么我们可以得到 X = Y − γ i ψ a Q = P. 二元组 (x ,X ) 即为 q-SDH 问
γ a+ x ∗
i=0
题的解.
1
∗ B 成功模拟
综上所述, 如果 A 在伪造阶段输出针对 ID = ID i ∗ 的伪造签名, 这件事发生的概率为 , 相应地,
q H 1
1 ϵ
ϵ
的概率为 . 因此, 若 A 能以不可忽略的概率 成功伪造有效签名, 那么 B 能以 的概率成功求解 q-SDH 问题.
q H 1 q H 1
6 性能分析与实验
6.1 安全性比较
如表 2 所示, 本文提出的方案在 SM9 身份基签名的基础上增加了密钥隔离机制, 进而确保了签名系统的前向
安全性、后向安全性. 相对的, 代价是在系统模型中引入了一个物理安全设备, 略微增大了系统运行的负担.
表 2 算法安全性比较
方案 不可伪造性 前向安全性 后向安全性
SM9 √ × ×
本文工作 √ √ √
6.2 性能理论分析
表 3 提供了本方案的运算成本以及和原 SM9 标识签名的比较. 与 SM9 相比, 本文提出的方案的计算时间和
通信开销均有所上升, 但是增加的开销在接受范围内.

