Encryption
哪個是最簡單的接近商業級安全性的密碼算法?
如果一個算法比另一個簡單
- 向具有基本高中數學知識的菜鳥解釋更容易。
- 由中級程序員安全地自我實現更容易(是的,我知道永遠不應該“自己動手”,但這只是比較簡單性的一個指標)
- 可以更容易地用手工和紙來完成(不一定可以在紙上完成,但如果你不遺餘力的話,在紙上更容易完成)
- 涉及較少的步驟。
- 任何其他沒有立即想到的因素。
舉一個流行密碼的例子,根據這些標準,RSA比AES 更簡單。
這個問題的重點可能是找出一些非常聰明的加密算法,儘管它們不太流行/聞所未聞,它們處於或非常接近真正的商業級安全性,同時仍然非常簡單。
用更簡單的話來說,就複雜性而言,要求遠高於凱撒密碼,但遠低於 AES。
一個關於最安全的手密碼的問題啟發了這個問題,除了這裡沒有計算/計算能力的限制,而是對複雜性的類似/更嚴格的限制。這個想法是測試密碼學在正確完成的同時可以達到的簡單極限。
也許對稱密碼對於簡單性標準來說是理想的。然而,顯然,只要足夠簡單和安全,任何密碼都是合格的。
編輯1:上面列出的標準按重要性順序排列,即第一個比第二個更重要,依此類推。
我將把微小的加密算法加入其中: https ://en.m.wikipedia.org/wiki/Tiny_Encryption_Algorithm
這是一個非常受人尊敬的分組密碼。它確實可以用作塊密碼,方便的塊大小為 64 位,密鑰大小為 128 位。所以它的行為很像 DES 或 AES,就像你如何安全地使用它一樣。
這是一個 Feistel 網路,任何開始學習加密的人都應該學習。很容易理解為什麼它是可逆的以及洗牌是如何發生的。所以我認為,如果你不僅想記住程式碼,而且對為什麼這是一個好主意有最小的理解,那麼新手可以達到的理解水平很高。