第二十八個知識點:什么是公鑰密碼學的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) \]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM