最優非對稱加密填充
編輯最優非對稱加密填充,是一種密碼填充方法。 它是 Feistel 網絡的一種特殊形式,在隨機預言模型中,可以使用任意陷門排列來構建語義安全的加密方法以抵抗選擇的明文攻擊。
過程(基本變體)
編輯設 n? 是一個安全參數,k 0? 如此之大以至于攻擊者只能執行遠少于 2 k 0 的計算步驟。
此外,設 F? 是一系列陷門排列 f : { 0 , 1 } n ? { 0 , 1 } n 到具有 n位的消息,并且 k = n ? k 0 是要傳輸的消息的長度。
變體
編輯通過對上述協議的簡單修改,還可以實現 IND-CCA1 安全性,即針對選擇密文攻擊的安全性。 為此,消息 m 的長度減少為 k ? k 1 位,并與 k 1 零連接。 解密時,檢查重構值的形式是否正確,否則中止。
RSA OAEP
編輯開發 OAEP 的原因是找到一種使用 RSA 安全加密(在 IND-CCA2 安全意義上)的方法。 如果在 OAEP 中使用 RSA 作為陷門排列,則該方法稱為 RSA-OAEP。 盡管 OAEP 在一般情況下不會實現 IND-CCA2 安全性,但 RSA-OAEP 在隨機預言機模型和 RSA 假設下實現。
由于OAEP編碼的結果是0到2 n 之間的一個數,n? 位RSA模數 N小于 2 n ,有可能OAEP編碼的結果比RSA取模的數值大。 然而,這絕不能發生,因為在這種情況下,解密不再清晰。 因此,在這種情況下,必須使用新的隨機 r 重復 OAEP 編碼。
RSA-OAEP 在 PKCS#1 和 RFC 3447 中標準化,其中使用的散列函數是過程的參數,即未指定。 在這些情況下,即沒有隨機 oracle,如果使用的散列函數是 t-wise 獨立的,則 RSA-OAEP 在 phi 隱藏假設 IND-CPA 下是安全的。但是,在標準化期間進行了更改,這意味著該方法不再可證明有一件事是確定的:為了避免重復上面提到的OAEP編碼,確定OAEP的結果必須比RSA模數短8位; 前 8 位用 0 填充。 解密時,接收方必須檢查前 8 位是否為 0,否則中止。 如果攻擊者可以區分解密是否由于這個原因或其他原因而中止,存在一種無需密鑰即可恢復完整明文的攻擊。 為此,他只需要對錯誤 oracle 進行大約 1000 次查詢,它只輸出解密嘗試是否失敗以及失敗的原因。 例如,此類 oracles 可能會發生在 TLS/SSL 連接中,攻擊也在實踐中進行。
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/342205/