Page 341 - 《软件学报》2026年第4期
P. 341

1782                                                       软件学报  2026  年第  37  卷第  4  期


                                TRS.Sig(pp,S, sk π , pk a , M) → σ
                    (3) 环签名算法
                                                          S
                    算法输入为公开参数        pp、环签名成员公钥集合  、签名者私钥              sk π 、追踪者公钥   pk a 、签名消息  M, 输出为
                 环签名  σ.
                    (4) 环签名验证算法     TRS.Ver(pp,σ, pk a , M) → (0/1)
                    算法输入为公开参数        pp、环签名    σ、追踪者公钥     pk a 、签名消息  M, 输出为验签结果.
                    (5) 可链接性判断算法      TRS.Link(pp,σ 1 ,σ 2 ,L) → (0/1)
                    算法输入为公开参数        pp、环签名    σ 1  和   σ 2 、历史密钥镜像列表  L, 输出为链接性验证结果.
                    (6) 签名者身份追踪算法      TRS.Trace(pp,σ, sk a ) → pk i
                    算法输入为公开参数        pp、环签名    σ、追踪者私钥     sk a , 输出为真实签名者公钥     pk i .
                  2.4.2    可追踪环签名安全模型
                    一个安全的可追踪环签名方案应该满足不可伪造性、匿名性、可链接性、不可诽谤性和可追踪性                                  [34,37] . 下面
                 基于仿真器    S  和敌手  A 之间的实验给出各安全属性的形式化定义.
                    (1) 查询预言机

                      O R : 注册预言机, 敌手  A 查询此预言机, 注册一个新用户, 该预言机返回一个有效的用户公钥                   pk i , 并将其添加
                 到  LIST R  中.
                                                                                 ′
                                                            S
                      O S : 签名预言机, 敌手  A 使用环签名成员公钥集合  , 追踪者公钥          pk a  和消息  m  查询此预言机, 该预言机返回
                                 ′                 LIST S  中.
                 一个有效的环签名      σ , 并将签名结果添加到
                      O C : 腐化成员预言机, 敌手   A 使用公钥   pk i  查询此预言机, 该预言机返回对应的私钥          sk i , 并将  (pk i , sk i ,I i ) 添加
                   LIST C  中.
                 到
                    (2) 不可伪造性
                    不可伪造性是指敌手        A 不能在仅已知环签名成员公钥的前提下伪造任何环签名. 不可伪造性由敌手                          A 和仿
                 真器  S  之间的实验   Expt  unfo  (λ) 定义.
                                   TRS
                                                          ( )
                                                           λ
                    初始化阶段:    S  运行初始化算法     pp ← TRS.SetUp 1 , 将公开参数   pp 发送给  A.
                    查询阶段:    A 采用自适应策略查询预言机         O R O S  和  O C .
                                                      ,
                    伪造阶段:    A 将   (m,σ) 提交给  , 其中  m 为签名消息,  σ 为签名.
                                           S
                    若满足下述条件,      A 获胜.
                    1)  1 ← TRS.Ver(pp,σ, pk a , M).
                    2) 对于所有   pk i ∈ S, pk i  是  O R  预言机的输出.
                    3) 对于所有   pk i ∈ S, pk i  未被用于查询  O C  预言机.
                    4)   σ 不是  O S  预言机的输出.
                                  [          ]
                    令  Adv unfo (λ) = Pr Expt unfo  (λ) = 1  表示敌手  A 打破方案不可伪造性的优势.
                         TRS         TRS
                    定义  1. 不可伪造性.
                                                                       Adv unfo  (λ) 是可忽略的, 则  TRS  方案满足不
                    对于概率多项式时间敌手          A, 若敌手打破方案不可伪造性的优势               TRS
                 可伪造性.
                    (3) 匿名性
                    匿名性是指从有效环签名中推断出签名者真实身份是不可行的. 匿名性由敌手                             A  和仿真器  S  之间的实验
                 Expt anon  (λ)  定义.
                    TRS
                                                          ( )
                                                           λ
                    初始化阶段:    S  运行初始化算法     pp ← TRS.SetUp 1 , 将公开参数   pp 发送给  A.
                    查询阶段:    A 采用自适应策略查询预言机         O R .
                                                                                             R
                    挑战阶段:    A 将元组   (S,m) 提交给  , 该元组含有   n 个公钥的集合    S  以及消息  .           π←{1,...,n} 并计
                                              S
                                                                                m S  随机选择
                 算  σ π ← TRS.Sig(pp,S, sk π , pk a ,m), 其中   sk π  为   pk π  对应的私钥, 并将  σ π  交给  A.
   336   337   338   339   340   341   342   343   344   345   346