Page 348 - 《软件学报》2026年第4期
P. 348
苏航 等: 高效的区块链中可监管身份隐私保护方案 1789
败标识 ⊥.
4.2.2 方案描述
( )
λ
(1) 初始化算法 RRIPP.SetUp 1 → (pp, sk a )
*
*
G
设 q 为素数, 选取 q 阶循环群 , 选取生成元 g ∈ G, 选取密码学哈希函数 H : {0,1} → Z . 监管者选取随机数
q
* r r
r r ∈ Z 作为监管私钥 sk a , 计算 pk a =g 作为监管公钥, 监管者秘密保存监管私钥 sk a . 设置公开参数 pp={G,q,g, pk a ,H}.
q
输出公开参数 pp.
RRIPP.KeyGen(pp) → (sk, pk)
(2) 密钥生成算法
* sk u
选取随机数 r u ∈ Z , 令私钥 sk u = r u , 计算公钥 pk u = g .
q
输出公私钥对 (sk u , pk u ).
RRIPP.TxGen(pp, pk r , pk a ) → (RRIPP.Tx)
(3) 交易生成算法
依次执行下述 3 个子算法.
1) 一次性地址生成算法 OTA.Gen
* t ( t ) r t
选取随机数 t ∈ Z , 计算 R = g , 计算 r t = H pk , 计算一次性地址 P = pk r g .
q r
2) 接收者监管密文生成算法 ElG.Enc
( )
* r e r e
选取随机数 r e ∈ Z , 计算 C = (C 1 ,C 2 ) = g , pk r pk .
a
q
ZK.ProofGen
3) 接收者身份一致性零知识证明生成算法
* s e s t s e
,
,
选取随机数 s t , s e ∈ Z , 计算 Q 1 = g , Q 2 = g pk , h = H (g ∥ pk a ∥ C 1 ∥ C 2 ∥ P ∥ Q 1 ∥ Q 2 ) w t = s t −hr t w e = s e +hr e ,
q a
则身份一致性证明为 π = (w t ,w e ,h).
输出 RRIPP.Tx = (P,R,C,π).
(4) 合法性验证算法 RRIPP.Verif (pp, pk a ,RRIPP.Tx) → 0/1
Q = g /C ,Q = pk g P /C , h = H(g ∥
h
h
h
w e
w t
′
′
w e
′
执行接收者身份一致性零知识证明生成算法 ZK.ProofVerif , 计算 1 1 2 a 2
′
′ ′ h = h , 则交易接收者身份一致性证明验证通过并输出 1, 否则验证不通过并输出 0.
pk a ∥ C 1 ∥ C 2 ∥ P ∥ Q ∥ Q ). 若
1 2
(5) 交易接收算法 RRIPP.Rev(pp, sk r ,RRIPP.Tx) → (otsk r /⊥)
依次执行下述两个子算法.
1) 一次性地址验证算法 OTA.Verif
′
′
计算 P = pk r g H( R sk r ) , 若 P = P, 则验证成功并继续执行, 否则输出 ⊥.
2) 一次性私钥计算算法 OTA.OtskGen
( )
计算一次性私钥 otsk r = H R sk r + sk r , 输出 otsk r .
(6) 监管算法 RRIPP.Reg(pp, sk a ,RRIPP.Tx) → (pk r /⊥)
sk a
=
执行接收者身份监管密文解密算法 ElG.Dec, 计算 pk r C 2 /C . 输出 pk r .
1
4.3 RRIPP 方案安全模型及证明
4.3.1 安全模型
安全的 RRIPP 方案应该满足交易接收者身份匿名性和身份可监管性 [34] .
上述安全属性的形式化定义可基于仿真器 S 和敌手 A 之间的实验给出, 下面给出敌手 A 在实验中可查询的
预言机.
(1) 查询预言机
O R : 注册预言机, 敌手 A 查询此预言机注册一个新用户 , 该预言机返回一个有效的用户公钥 pk i , 并将 (pk i , sk i ,I i )
I i
添加到集合 L 中.
sk i , 并将
O C : 腐化成员预言机, 敌手 A 查询此预言机腐化公钥为 pk i 的用户 , 该预言机返回相对应的私钥
I i
(pk i , sk i ,I i ) 添加到集合 L M 中.
O T : 生成交易预言机, 敌手 A 查询此预言机以获取接收者公钥为 pk i 的接收者身份隐私保护与监管相关的交

