Page 283 - 《软件学报》2021年第11期
P. 283

王利朋  等:应用区块链的多接收者多消息签密方案                                                        3609


                    除了上述两种秘密共享技术,当前出现了其他一些秘密共享方案:文献[18]基于双线性映射和秘密共享思
                 想提出了一种基于身份的门限签名方案,采用基于身份的 t-out-of-n 秘密共享算法提升了算法的执行效率;文献
                 [19]提出了一种离散对数难度的门限方案,能够有效抵抗针对秘密共享技术的攻击手段;文献[20,21]提出了基
                 于 ECDSA 的门限签密技术,s 个参与者重构密钥,但却需要 2s+1 个参与者才能签名;Goldfeder 等人                   [22] 提出利用
                 秘密分享技术实现比特币密钥的多方控制功能,利用门限密码学技术实现密钥的可信管理.

                 2    预备知识

                 2.1   困难性问题
                    •   离散对数(discrete logarithm,简称 DL)问题
                                                                     *
                    设定循环群 G p 的阶为 p,且 p 是大素数,P 为 G p 的生成元, a ∈      Z ,给定元素组〈P,aP〉,求解 a.给定算法 ,能够
                                                                      p
                                                     DL
                 在概率多项式时间内解决 DL 问题的概率 Adv ( )=Pr⎡ (P,aP)=a⎤是可忽略的.
                    •   Computational Diffie-Hellman(CDH)问题
                    设定循环群 G p 的阶为 p,且 p 是大素数,P 为 G p 的生成元, ,ab∈        Z ,给定元素组〈P,aP,bP〉,求解 abP.给定算
                                                                        *
                                                                        p
                 法 ,能够在概率多项式时间内解决 CDH 问题的概率 Adv               CDH ( )=Pr⎡ (P,aP,bP)=abP⎤是可忽略的.
                 2.2   系统模型

                    多接收者多消息签密方案由下述步骤组成.
                    (1)  系统初始化(Setup):输入参数 k,密钥生成中心协作生成系统公开参数 Params 和主密钥 s,定义为
                        Setup(k)→(Params,s).
                    (2)  用户密钥生成(KeyGen):输入用户身份信息 ID、系统公开参数 Params 以及系统主密钥 s,用户和密钥
                        生成中心协作,生成用户私钥γ 和用户公钥κ,定义为 KeyGen(ID,Params,s)→(γ,κ).
                    (3)  签密(SignCrypt):对于ρ个接收者,发送者 ID S 发送含有ρ条消息的明文集合 M.输入系统公开参数
                         Params、明文集合 M={m 1 ,m 1 ,…,m ρ }、发送者身份 ID S 以及接收者身份集合 ID =     {ID  1 R  ,ID R 2  ,...,ID R ρ },
                                                                                      R
                         输出相应的密文集合 C =       {c  ,c  ,...,c  }, 定义为 SignCrypt(Params,M,ID S ,ID R )→C.
                                               1 R  R 2  R ρ
                    (4)  解签密(UnSignCrypt):接收者 ID   (i ∈ [1, ])ρ  根据系统公开参数 Params、密文 c  (c ∈  , C i∈  [1, ])ρ 、接
                                                  i R                                  i R  i R
                         收者私钥 γ ,输出明文信息 m′       (i ∈ [1, ]),ρ  定义为UnSignCrypt (Params ,c  ,ID  ,γ  ) → m′  .
                                  i R            i R                             i R  i R  i R  i R
                    (5)  签名校验(VerifySign):接收者 ID 根据输入参数 Params 以及接收者公钥 κ ,对解签密后的消息 m′
                                                  i R                               i R                i R
                        进行校验:如果校验通过,输出 True;否则,输出 False:定义为
                                          VerifySign (Params m′  ,ID  ,κ  ) →  (True | False).
                                                        ,
                                                          i R  i R  i R
                 2.3   安全模型
                    按照文献[23]定义的安全模型,本节将介绍选择密文攻击下的保密性和选择消息攻击下的不可伪造性的安
                 全属性定义以及对应的游戏交互模型.设定接收者共有ρ个,标记为 ID =                       {ID  1 R  ,ID R 2  ,...,ID R ρ }, 明文消息集合为
                                                                         R
                 M={m 1 ,m 1 ,…,m ρ }.不失一般性,下面主要描述第 i 个接收者 ID 处理消息 m i 的步骤.设定选择密文攻击保密性的
                                                                 i R
                                                             2
                           1
                 攻击敌手为  ,选择消息攻击不可伪造性的攻击敌手为  ,此外还需要考虑其他两种类型的攻击,分别如下.
                    •   第 1 种类型的攻击敌手并没有掌握系统主密钥信息,但敌手具有能够替换用户公钥的能力,这种攻击
                                                                            1
                        方式的敌手标记为  I .敌手  I 在对保密性进行攻击时重新标记为   ,对不可伪造性进行攻击时重新标
                                                                            І
                             2
                        记为   .
                             І
                    •   第 2 种类型的攻击敌手能够获取系统主密钥信息,但不具有替换公钥的能力,这种攻击方式的敌手标
                                                                 1
                                                                                                  2
                        记为  II .敌手  II 在对保密性进行攻击时重新标记为   ,对不可伪造性进行攻击时重新标记为   .
                                                                 II                               II
                                     1
                                                                  1
                    定义 1(攻击敌手为   时方案的保密性).  若不存在敌手   能够通过多项式时间的计算以不可忽略的优势
                                     І                            І
   278   279   280   281   282   283   284   285   286   287   288