Page 241 - 《软件学报》2021年第12期
P. 241

周搏洋  等:全委托的公共可验证的外包数据库方案                                                         3905


         2.3.2    安全性
             1)  验证密钥的机密性
             验证密钥的机密性是针对不可信的云服务器而言的.简单来说,云服务器无法获取外包数据库的验证密钥.
         下面通过安全性实验来定义该模型中的验证密钥的机密性.定义敌手A(⋅)=(A 0 ,A 1 ),其中,A 0 ,A 1 为两个概率多项
         式时间模拟器,设计安全实验如下:
                                       Exp A Privacy [PVDFD , ]λ  :
                                       pp ←  Setup (1 );
                                                 λ
                                        (EK DB 0  ,EK DB 1  ) ← A 0 (pp ,DB DB 1  ; )
                                                              ,
                                                             0
                                       b∈ R  { 0,1 ;}
                                       (σ   ,π   ) ←  VKeval (pp ,EK  );
                                        VK DB b  VK DB b       DB b
                                         ˆ
                                              (
                                         b ← AEK DB 0  ,EK DB 1 ,σ  VK DB b  ,π  VK DB b  );
                                             1
                                       if  b =  ˆ : b
                                        output  1;
                                       else
                                        output  0;
             对于任意的λ∈N,定义敌手A在 PVDFD 中的优势如下:
                               Adv A  Pri cva y (PVDFD , )λ  | Pr[Exp A  Privacy [PVDFD , ]λ =  =  1] 1/ 2 |.−
             定义 1.  若 Adv A Privacy (PVDFD ,λ )≤ negl ( ),λ ,则 PVDFD 方案实现了验证密钥的机密性.其中,negl(λ)为可忽略
         函数.
             2)  验证密钥的不可伪造性
             验证密钥的不可伪造性是针对不可信的云服务器而言的,即,云服务器伪造一个验证密钥始终不能通过数
         据拥有者的验证.下面通过安全性实验来定义该模型中的验证密钥的不可伪造性.定义敌手A(⋅)=(A 0 ,A 1 ,A 2 ),其
         中,A 0 ,A 1 ,A 2 为 3 个概率多项式时间模拟器,设计安全实验如下:
                             Exp VKU [PVDFD , ]λ  :
                                A
                             pp ←  Setup (1 );
                                       λ
                                i = For  1to q =  poly ( ) :λ
                                        λ
                                DB ← A 0 (1, pp  ; )
                                  i
                                (VK pp i  ,RK pp i  ,EK DB i  ,EK pp i ) ←  KeyGen ( pp DB i );
                                                               ,
                                (σ  VK DB i  ,π  VK DB i  ) ← VKeval ( pp ,EK pp i  );
                             EK pp i  ← A 1 (pp ,EK pp 1 ,...,EK pp q ,σ  VK DB 1  ,...,σ  VK DBq  ,π  VK DB 1  ,...,π  VK DBq  );
                              ˆ (σ  ˆ ,π  ) ← A  (pp ,E  ,σ K  ,π  ; )
                               VK DB i  VK DB i  2  pp i  VK DB i  VK DB i
                             ˆ
                             b ← VKrec (pp ,VK pp i  ˆ ,σ  * VK D i B  ˆ ,π  * VK DB i  ,RK pp i  );
                             if  ˆ σ  ≠  σ  and b =  ˆ  VK  :
                                VK DB i  VK DB i  DB i
                                output  1;
                             else
                                output  0;
             对于任意的λ∈N,定义敌手A在 PVDFD 中的优势如下:
                                                                    =
                                   Adv VKU  (PVDFD , ) λ  Pr[Exp VKU [PVDFD ,λ =  ] 1].
                                                        A
                                      A
             定义 2.  若 Adv VKU  (PVDFD ,λ )≤ negl ( )λ ,则 PVDFD 方案实现了验证密钥的不可伪造性.其中,negl(λ)为可忽
                        A
         略函数.
   236   237   238   239   240   241   242   243   244   245   246