Aes

這是使用 AES CTR 模式生成流密碼的正確方法嗎?

  • September 8, 2014

我們正在為一篇論文實現 Song 等人在 Java 中提出的可搜尋加密技術

$$ 1 $$. 這些方案需要一個流密碼來實現對加密數據的搜尋。在給定相同的“種子”解密時,隨機比特流應該可以在以後重現。 現在我們計劃在 CTR 模式下使用 AES 生成隨機比特流。我們不明白的是什麼被認為是“種子”。“種子”是 IV / Nonce 的隨機 64 位前綴部分嗎?

生成隨機流時的純文字 CTR 模式是什麼?我們是否可以將一些硬編碼字元串作為純文字提供,因為我們並不真正關心我們正在加密什麼,我們想要的只是可以在以後複製的隨機位流

或者什麼被認為是生成隨機比特流的安全方式?

$$ 1 $$宋、黎明小丁、大衛瓦格納和阿德里安佩里格。“搜尋加密數據的實用技術。” 安全和隱私,2000。標準普爾 2000。訴訟。2000 年 IEEE 研討會。IEEE,2000 年。

種子應該是密鑰和隨機數或 IV。這些輸入參數確定密鑰流的值。請注意,如果未重用密鑰,則可能會隱含隨機數,在這種情況下,密鑰可能是唯一的種子,隨機數具有靜態值(但是,如果您應該確保自己不容易受到多目標攻擊使用靜態 IV,請參閱下面 CodesInChaos 的註釋)。

對於大多數流密碼 - 例如 CTR 加密模式 - 密鑰流用於通過將純文字與密鑰流進行異或來加密純文字。顯然,如果您只對 N 位的密鑰流感興趣,那麼您可以簡單地加密由 N 位設置為零的純文字(因為零是 XOR 的標識元素)。根據實現,底層密鑰流也可能直接可用。

引用自:https://crypto.stackexchange.com/questions/18966