Encryption

NORX32-f 可以用於 Salsa20 風格的流密碼嗎?

  • August 10, 2016
#include <std_roll_your_own_crypto_warning.h>

隨著第三輪 CAESAR 候選人即將公佈,該設計

$$ 0 $$Salsa20/ChaCha + Poly1305 在很多方面看起來仍然不錯,包括軟體性能。然而,LRX 算法在(相對)有效的掩蔽/致盲方面具有主要優勢$$ 1 $$.

諾克斯

$$ 2 $$是一種基於海綿的設計,類似於 Keccak/SHA-3 和基於 Keccak-p 的 Keyak$$ 3 $$CAESAR 候選人,但在設計時考慮了高效的軟體性能。但是,它的效率不如 ChaCha20/Poly1305$$ 4 $$在軟體中,特別是如果您想要 32 位系統上的 256 位密鑰。

所以問題是,在 Salsa20 風格的流密碼中使用 NORX32-f 是否有任何明顯的問題,使用偽加法運算 $ H() $ 以 Salsa20 的方式添加初始狀態?流密碼使用與海綿使用需要什麼不同的安全屬性(如果有的話)?

諾克斯 $ F^l $ 旨在表現為隨機排列(以一些已知的無害屬性為模),給定足夠的輪次。 $ F^l $ 除了加法運算之外,其他方面都類似於ChaCha雙輪,它被替換為 $ H $ , 和旋轉常數。

NORX 應該可以在 Salsa20/ChaCha 風格的模式下使用;該模式的中斷也可能會給 NORX 海綿模式帶來麻煩。請注意,最後一步,在初始狀態下添加,可以簡單地使用 xor 完成;無需使用 $ H $ 在那裡。由於使用此模式會失去身份驗證,因此還應考慮獨立 MAC 的成本。

提高 NORX32 性能的另一個選擇是使用並行模式。比如說, $ 8 $ 您可以使用 AVX2 同時計算所有車道。由於 NORX 受到純順序模式的影響,這將提高性能 2 倍或更多。然而,這不會是 CAESAR 送出的“官方”模式。

話雖如此,我不建議在這些模式下使用 NORX 置換,也不能建議以任何形式使用 NORX。這是一個處於起步階段的密碼原語,不應假設其強大的安全性。

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