Page 269 - 《软件学报》2020年第10期
P. 269

张启慧  等:改进的三方口令验证元认证密钥交换协议                                                        3245


         4.2   协议比较
             本节给出 I-V3PAKE 协议与其他典型的三方 PAKE 协议在功能、安全性、效率方面的比较,具体结果见表
         1.在表 1 中,“验证元”“标准模型”“抗离线字典攻击”“C2S 认证”“Key Privacy”分别表示所考虑的三方 PAKE 协议
         是否支持验证元、是否在标准模型下可证明安全、是否提供抗离线字典攻击、用户到服务器的显式认证以及
         会话密钥针对服务器的私密性,“计算效率 A/B/S”表示用户 A、B 和服务器 S 分别所需的计算模指数运算的次数.
         如同文献[32],我们采用标准模型下 CCA 安全的 DHIES 公钥加密算法                [35] 来实例化协议中的公钥加密算法 PKE.
                        x y
         另外,注意到形如 g h 的多指数运算可以通过快速算法在约等于单个指数的计算时间内完成                               [32] ,因而在计算效
         率中只算作一次指数运算.
             从表 1 中的结果可以看出,目前只有文献[29]和我们的 I-V3PAKE 协议是基于验证元的,且是在标准模型下设计
         的,但是文献[29]中的协议不能抵抗离线字典攻击,因而安全性不能满足实用要求.尽管文献[32,36]中的协议也是在
         标准模型下可证明安全的,但是这两个协议都不是基于验证元的,因此不能抵御服务器泄露攻击.另外,从通信和计算
         效率上看,我们的 I-V3PAKE 协议在额外的通过验证元方式保护口令的条件下,还具备与文献[29,32,36]较为接近的
         通信和计算复杂度,甚至 I-V3PAKE 协议的计算效率要更优于文献[29].因此,I-V3PAKE 协议不仅提供了更强的
         安全性保障,同时具有可接受的计算和通信效率.

                 Table 1    Comparisons between I-V3PAKE protocol and other verifier-based 3PAKE protocols
                              表 1   I-V3PAKE 协议与其他典型三方 PAKE 协议的比较
               协议     验证元    标准模型     抗离线字典攻击       C2S 认证   Key privacy   通信轮数   计算效率 A/B/S
                [5]     N       N          Y          N         N         2         1/1/2
                [37]    N       N          Y          N         N         3         3/3/4
                [36]    N       Y          Y          Y         Y         3         6/6/10
                [32]    N       Y          Y          Y         Y         3         6/6/9
                [29]    Y       Y          N          Y         Y         4         20/20/6
               Ours     Y       Y          Y          Y         Y         4         7/7/10

         5    安全性证明
             本节在前述安全模型中证明 I-V3PAKE 协议的安全性,首先证明 I-V3PAKE 协议满足语义安全性,然后证明
         协议中诚实用户所生成的会话密钥相对于诚实而好奇的服务器具有私密性.
             定理 1.  如果公钥加密体制 PKE =      (KG Enc Dec 是 CCA 安全的,ElGamal 公钥加密体制 PKE′       (KG Enc′  , ′ =  ,
                                               ,
                                                  )
                                           ,
          Dec′ ) 是 CPA 安全的,L s,H 是按照式(1)定义的与公钥加密体制 PKE′及口令哈希机制 PHS 相关联的语言,SPHF
         是相应于语言 L s,H 的平滑投射哈希函数,MAC 是安全的消息认证码,则 I-V3PAKE 协议是语义安全的.
             证明:假设 A 是针对 I-V3PAKE 协议语义安全性的攻击者,其计算时间至多为 t,访问 Send 和 Execute 预言
         的次数至多为 q send ,q exe .下面通过构造游戏序列 G 0 , G   ,...,G 来估计攻击者的优势,起始游戏是安全模型所定义
                                                    1   8
         的与真实协议交互的游戏.
             游戏 G 0 :这个游戏对应于安全模型中语义安全定义时的真实攻击,记此时攻击者的优势为
                                            Adv ake , PD () =A  Adv 0 ( )A                    (3)
             游戏 G 1 :从这个游戏开始,我们先逐步修改对 Execute 询问的模拟方式.游戏 G 1 中,在模拟 Execute 询问时,
         首先将用户端利用 ProjH 的计算全部替换成对应的 Hash 计算.由于 Execute 中用户和服务器都是诚实的,因而
         上述替换可行;又根据平滑投射哈希函数的正确性定义,可知在游戏 G 1 中攻击者具有和在游戏 G 0 中相同的优
         势,即 Adv 1 () =A  Adv 0 ().A
                                                                                         , ′
             游戏 G 2 :在模拟 Execute 时,对任意用户U ∈    {, },A B 我们将用户第 1 条消息中的密文 c      US  Enc′ =  (pk P U  ; )r U  =
          (u =  U  g  U r  ,e =  U  h ⋅  U r  P U ) 替换成 c US  Enc′ =  (pk′  , ; )P r U  =  (u =  U  g  U r  ,e =  U  h ⋅  U r  P 0 ), 其中,P 0 是一个虚拟口令 π 0 (即不属
                                             0
         于口令字典中的一个值)所对应的预哈希.根据 ElGamal 公钥加密体制 PKE′的 CPA 安全性,可知 P 0 和 P U 的密文
         是不可区分的,从而利用标准的混合(hybrid)证明技术将 q exe 个 Execute 预言中的密文逐个替换可知,攻击者在游
   264   265   266   267   268   269   270   271   272   273   274