Page 356 - 《软件学报》2026年第4期
P. 356
苏航 等: 高效的区块链中可监管身份隐私保护方案 1797
由于本文中的 RRIPP 方案和 RSIPP 方案的技术路线与文献 [34] 中的方案均类似, 本节基于实验测试结果重
点给出本文的方案与文献 [34] 方案的整体性能对比.
6.2.1 理论层面对比
为了便于比较, 本节设置文献 [28,33,34] 和本文中的方案安全强度均为 128 bit, 结合各文献中的设置实例化
各方案, 在此基础上对比分析方案性能, 即文献 [33,34] 采用 Pbc 库 [41] 中的类型 A 配对 e(G 1 ×G 1 ) → G T , 群 G 1 、G T
阶的位长设置为 256 bit, 文献 [28] 与本文采用 P256 椭圆曲线 G, 群 G 阶的位长设置为 256 bit. 文献 [28] 中的 zk-
SNARK 选用具有 128 bit 安全强度且零知识证明长度较短的 Groth16 方案 [14] 进行实例化, zk-SNARK 证明长度约为
1 526 bit. 各类元素的长度如表 3 所示. 基于 Go 语言 Pbc 库、Crypto 库实例化上述配对 e 与椭圆曲线 G, 通过执行
G 上的各类主要耗时运算各 1 000 次, 计算各类主要耗时运算平均执行时间, 结果如表 3 所示.
配对 e 与椭圆曲线
由于文献 [28] 中未给出 l 的建议取值, 考虑到交易接收者隐私保护和方案效率之间的平衡, 此处设 l=3. 根据 Monero
中的设置令 RSIPP 算法环签名成员数量为 16. 符号定义如表 3 所示.
表 3 符号定义
符号 含义 长度或平均单次执行时间
|G|, |G 1 |, |G T | 分别表示群 G、G 1 、G T 中的元素长度 |G|=512 bit, |G 1 | =1024 bit, |G T | =1024 bit
q, q 1 , q T 分别表示群 G、群 G 1 和群 G T 的阶 位长为256 bit
分别表示有限域 Z q 、Z q 1
Z q , Z q 1 中的元素长度 Z q =256 bit, Z q 1 =256 bit
|zk-SNARK| zk-SNARK零知识证明长度 |zk-SNARK|=1536 bit
BP 执行1次 e(G 1 ×G 1 ) → G T 配对运算的时间 1.31 ms
PM G 执行1次群 G 中标量乘法运算的时间 0.07 ms
PM G 1 执行1次群 G 1 中标量乘法运算的时间 1.84 ms
M G T 执行1次群 G T 中模幂运算的时间 0.18 ms
HTP 执行1次hash to point运算的时间 1.87 ms
l 用于隐藏真实接收者的账户数量 3
n 环签名成员数量 16
RRIPP 方案与已有类似方案的性能对比如表 4、表 5 所示. 本文中的 RRIPP 方案较文献 [28,34] 中的方案具
有较短的长度与较高的运算效率.
表 4 RRIPP 方案与已有类似方案的消息长度对比
字段类型 文献[28] 文献[34] 本方案
接收者地址长度 (含接收者身份监管信息) 3l|G|+|zk-SNARK| 5|G 1 |+4Z q 1 4|G|+3Z q
实际长度 l=3 (bit) 6 144 6 144 2 816
表 5 RRIPP 方案与已有类似方案的运算效率对比
效率对比项 文献[28] 文献[34] 本方案
交易接收计算量 l(BP+2HTP) 2PM G 1 2PM G
交易接收时间近似值 (ms) ≈15.15 ≈3.68 ≈0.14
交易接收者身份监管计算量 lPM G 1 2PM G 1 PM G
交易接收者身份监管时间近似值 (ms) ≈5.52 ≈3.68 ≈0.07
RSIPP 方案与已有类似方案的性能对比如表 6 和表 7 所示. 本文中的 RSIPP 方案较文献 [33,34] 中的方案具
有较短的长度与较高的运算效率. 文献 [33] 方案中的交易生成和交易验证算法执行时间不随环签名成员数量线
性增长, 当环签名成员数量 n>105 时, 文献 [33] 方案中的一些算法效率优于 RSIPP 方案中的相应算法. 当前
Monero 中环签名成员数量设置为 16, 可在保证发送者身份匿名性的同时避免消息长度和运算效率的过度增加,
在当前及未来的一段时间内, RSIPP 方案的性能较文献 [33] 中的相应方案仍具有较大优势.

