Page 56 - 《软件学报》2025年第10期
P. 56

陈颖 等: 具有用户自主链接及验证者条件撤销的格基群签名                                                    4453


                                                                           (     ) l
                                                                         l      nk             d i  已累加到
                    b) 运行   TUpdate ( j, d) → z new , 更新树  T crt . 对于每一个   j, 令   w j ∈ {0,1} × {0,1}   作为证据说明
                                 A                                               j∈[c]
                                       (  { }   )
                 z new  中, 发布群消息  info  = z new , w j j∈[c]   已经被撤销的用户其对应叶子结点值不累加在   z new  中.
                                   new
                          (                                 )
                                             *
                    (6)   Sign gpk,pp,usk[π],µ ∈ {0,1} , scp,upk[π],grt[π] : 由用户  π 执行.
                                                                                                 q
                                                                                        T
                                                                                                    ′
                                    ′                        mk               ′    C 1 = br , c 2 = f · r+  · s ,ct =
                    a) 运行   PKE.Enc(b, s ), 加密   grt[π]: 随机选择   r ← {0,1} , f ← R q ,bin(s) → s ; 计算
                                                                                                 2
                 (C 1 , c 2 , f).
                    b) 计算  V = H 1 (scp), H = H 2 (scp||µ), 运行  u ← SamPre(b,T b ,σ,V + HG 1 ).
                              nym = V · x p ,τ = H · s p .
                    c) 计算假名
                                                                                                   u 是合
                    d) 生成非交互式零知识证明协议          Φ 说明: ① 持有具有合法的       x, s, 且累加器验证通过; ② b) 中生成的
                 法的; ③ 加密  grt[π] 的过程是正确的; ④    nym,τ 是正确计算的. 生成的证明描述如下.

                                            {                    √             }
                                        Π 1 : (s, b)|As = b mod q,||s|| ⩽ σ m∧ bu = V + HG 1 ,

                                                   {
                                                                        }
                                                Π 2 : (x, s)|nym = V · x p ,τ = H · s p ,

                                 {
                                  (    (   )     )
                                                T
                              Π 3 :  x, b, d, j,w j , r, s· r |Ax p = G 2 · d mod p∧TVerify (z new , d,( j,w l ,...,w 1 )) = 1
                                                                        A
                                                                                q         }
                                                                       T
                                                                                   ′
                                                                ∧C 1 = br ,c 2 = f · r+  · s ∧ d , 0 nk  .
                                                                                2
                            (
                                )
                                                                                    H 3
                    重复  κ = ω logλ Φ 以达到可忽略的完备性错误        (soundness error). 最终生成的证明  P (X,Z) → Π = {Π 1 ,Π 2 ,Π 3 }.
                                                                    (      (   )    T  )
                 这里, 公开输入    X = (A,u, scp,G 1 ,G 2 ,nym,τ,ct,z new , H,V), 秘密输入   s, x, b, d, j,w j , r, s· r . 通过  Fait-Shamir 转换
                                 (     κ         κ  )
                 为非交互式协议      Π = {CMT i }  ,CH,{RSP}  , 其中,
                                       i=1       i=1
                                         (       κ                           )       κ
                                  CH = H 3 µ,{CMT i }  , A,u, scp,G 1 ,G 2 ,nym,τ,ct,z new , H,V → {1,2,3} ,
                                                 i=1
                 其中,  d , 0 nk  这一不等关系证明参考文献     [15] 中的不等关系证明.
                    e) 签名   sig = (Π,ct,u), 输出消息-签名对为  Σ = (sig,µ,nym,τ, scp).
                            (              )
                    (7)  Verify gpk,pp,info  ,Σ,RL → 1/0.
                                     new
                                  Σ
                                         ′
                                                    ′
                    a) 下载   z new , 解析  , 计算  V = H 1 (scp), H = H 2 (scp||µ).
                          V (X ,Π) 验证证明  , 若合法则进行步骤        c), 否则输出  0  返回.
                                          Π
                            H 3
                               ′
                    b) 运行
                                             ′            τ = H · s p , 若存在则返回  0.
                    c) 对于   RL 中的每一个   grt[i] → s , 检查是否存在
                                             j
                    (8)  Extract(Σ 1 ,Σ 2 ) → grt[π ]/⊥.
                                        ∗
                    a) 运行验证算法    Verify 验证  Σ 1 ,Σ 2  合法性.
                    b) 解析  Σ 1 ,Σ 2 , 若  nym 1 = nym 2 ∧µ 1 , µ 2  则进行步骤  c), 否则输出  ⊥.
                                                     ′  ∗                          RL 中以撤销该违规群成员.
                    c) 运行解密算法    PKE.Dec(u 1 −u 2 ,ct) → grt [π ], 并将其反馈给群管理员   GM 加入
                    (9)   UCLink(Σ,usk) → Π L : 由持有私钥  x 的诚实用户执行.
                              {(      )   (       )}
                          Σ → nym 1 ,scp ,..., nym ,scp  ,K ⩽ Q.
                    a) 解析             1       i  i  i∈K
                               ∑
                                  K   (  )
                          hscp =    H 1 scp ,nym = hscp· x p .
                    b) 计算                i
                                  i=1
                                  {  (       )           }
                    c) 生成  NIZK  Π L : (x) hscp,nym |nym = hscp· x p .
                    (10)  VLink(Σ,nym,Π L ) → 1/0.
                              {(      )   (       )}
                    a) 解析  Σ → nym 1 ,scp ,..., nym ,scp  ,K ⩽ Q.
                                      1       i  i  i∈K
                                                                           (              )
                    b) 运行验签算法    Verify 逐一检验每个   Σ i  的合法性, 若存在  Σ ∈ Σ,Verify gpk,pp,info  ,Σ,RL = 0, 返回  0.
                                                                                    new
                    c) 若对于   ∃i , j ∈ [K], 存在  scp = scp  返回  0.
                                            i    j
                                  K
                                ∑
                    d) 计算  snym =   nym ,∆ = snym−nym, 验证  ||∆|| ∞ ⩽ K +1 是否成立. 若成立则输出  1 表示  Π L  合法, 否则输出  0.
                                       i
                                  i=1
                  4.1   正确性分析
                    定理  3. GS-UCL-VCR  符合正确性, 其同时满足验证正确性, 链接验证正确性及条件可提取性.
   51   52   53   54   55   56   57   58   59   60   61