• 第二十八个知识点:什么是公钥密码学的IND-CCA安全定义?


    第二十八个知识点:什么是公钥密码学的IND-CCA安全定义?

    我们将在这篇博客中讨论公钥加密的IND-CCA安全。

    IND-CCA安全代表选择明文的不可伪造性。这样的安全方案的思想就是给定一个密文,攻击者不能说出给定密文是什么样的明文加密得到的。在这个模型中,攻击者被允许使用加密问询和解密问询。闻讯既可以在第三步和第四步之前也可以在之后。公钥的IND-CCA的find-then-guess安全游戏的描述:

    1.生成公钥和私钥((p_k,s_k))。攻击者A能够获得公钥(p_k)

    2.私密的指定(b leftarrow {0,1})

    3.攻击者A可以进行解密问询(Dec_{s_k}),和加密问询(Enc_{p_k})

    4.A输出一对消息((m_0,m_1))

    5.我们输出加密(c = Enc_{p_k}(m_b))

    6.攻击者被允许使用更多的加密和解密,例如在第三步中,但是我们不被允许要求解密(c)

    7.A输出(b^{‘})。如果(b = b^{‘}),A就获胜了。

    我们说A获胜的概率(Adv(A) = 2*|Pr[A wins]-1/2|)。如果这个概率是可忽略的(negligible),那么就说这个方案是IND-CCA安全的。

    IND-CCA安全有另外一个版本,真实还是随机。主要的不同就是第五步中并不是由攻击者输出的消息。二十一个随机的(m^{‘})。A必须区分它是真的还是随机的。概率和安全和上述定义基本相同。

    这两个定义是等价的,如果一个方案在实数或随机意义上对对手a是IND-CCA安全的,我们可以构造一个对手B用于查找和猜测,这样两个优势都是相等的。类似地,如果一个方案对对手a是发现和猜测安全的,我们可以构造一个这样的对手B使得:

    [Adv_{find-and-guess}(A)=2 cdot Adv_{real-or-random}(B) ]

  • 相关阅读:
    PageRank
    Web挖掘
    无监督学习
    Activiti 学习笔记记录(2016-8-31)
    Activiti 学习笔记记录(二)
    Activiti 学习笔记记录
    Mybatis + SpringMVC + Maven实现分页查询
    Jquery.min.js 下载
    使用Apache Archiva搭建Maven Repository Server
    SpringMVC 参数传递
  • 原文地址:https://www.cnblogs.com/zhuowangy2k/p/12245569.html
Copyright © 2020-2023  润新知