2013-10-06 144 views

回答

2

當時美國法規要求用戶使用強於56位密鑰的密鑰,提交至「密鑰恢復」以啓用執法後門訪問。

因此,作爲標準,在最大允許密鑰長度爲56位時指定了DES。如果您使用了更長的密鑰,則不會與其他DES系統兼容。

參見:http://en.wikipedia.org/wiki/56-bit_encryption

如果要實現一個系統&具有的加密選擇,更現代的&更強的密碼是絕對推薦。目前的標準將是AES(高級加密系統),它是廣泛可用的,強大的,並允許密鑰大小從128 - 256位。

對於桌面或服務器應用程序,AES-256將是一個很好的默認選擇。

參見:http://en.wikipedia.org/wiki/Advanced_Encryption_Standard

當加密數據,明文必須經常「填充」的最小尺寸。密碼依賴於多個位之間的混淆和相互作用,以保護明文的祕密,避免潛在揭示密鑰。對於沒有填充的簡短明文,混淆和交互作用被刪除,因爲數學複雜性下降很大。

只加密一個沒有填充的字符,例如'y'或'n'響應可能會將2^256的空間縮小到可能的2^24。這可能會在幾分鐘內被破解。這將使攻擊者能夠猜測密鑰的大部分,迅速將其破解,然後(最糟糕的是)解密通道上的所有其他流量。

+0

我真的剛剛開始學習密碼學。謝謝。那麼,對於純文本來說,64位是最小的? –

+0

另外,爲什麼DES工作?這很難理解......我的意思是使用S盒似乎是一個非常糟糕的主意。如果DES的設計者放置某些位,那麼他們可以很容易地解密它。你如何證明它是安全的?或者這是不可能的? –

+0

順便說一句,如果64位是最低限度,如果我使用101位純文本會發生什麼?這些位如何劃分? –

相關問題