Des
使用 DES 時,如果我們只使用字母作為字元,那麼密鑰空間會有多大?
會安全嗎?還是它容易受到暴力攻擊或其他什麼?
DES 密鑰為 56 位。如果我們假設字母是 ASCII 編碼並且每個佔用 8 位,這意味著只有字母的 DES 密鑰將是 7 個字母長。鑑於羅馬字母表中有 26 個字母,我們將有 $ 26^7 \approx 2^{33} $ 可能的鍵,或者如果我們允許大寫和小寫, $ 52^7 \approx 2^{40} $ 可能的鍵。這兩個鍵空間都可以用現代硬體快速列舉,並且很容易被暴力破解。
如果打算將盡可能多的字母填充到 56 位 DES 密鑰中,那麼如果忽略大小寫,則可以得到 11(和一點)。您可以解碼 ASCII 值以減少表示字元所需的位。那麼 56/log(2;26) = 11.9。
因此,您的密鑰空間將是 26^11 或 51.7 位。這幾乎是 DES 的全部強度,但對於今天的攻擊硬體來說仍然很低。當然,DES 已被棄用。