分析. NET DES 的加密算法的使用過程應用

黑客和密碼專家破解加密文件的辦法主要有兩個,第一是搜索密文是否有重復現(xiàn)象,第二是用暴力破解法獲得密鑰。首先我們考慮一下初始向量如何防止重復現(xiàn)象,然后再探討一下防止暴力破解的關鍵問題。

破解密文的第一種方式是搜索樣本——特別是重復的樣本。人們在寫信的時候總是喜歡用同樣的文字開頭,例如“親愛的XXX”、“Dear Sir”等,如果多個郵件的開頭文字相同且通過同一密鑰加密,則每個密文信件的開頭也相同。假設Antonio寫給Melanie的所有加密信件都有相同的問候語“@4^F (2$@Fx”,解密者就會首先檢查開頭的幾個單詞是不是“Dear Melanie”。解密機密文件的一個重要步驟就是猜測文件中應當會出現(xiàn)的幾個單詞,所以我們不應該給解密者提供這種方便。在本文的示例中,初始向量的內容被附加到文件的開頭,從而防止了出現(xiàn)重復現(xiàn)象。只有信件的開頭才容易受到此類攻擊。

計算機的運算速度和精度要遠遠超過人,特別擅長處理一些重復的任務,例如嘗試每一種可能的密鑰組合最終破解密鑰。DES加密算法本身是不安全的,這種加密算法早在70年代就已經公之于眾。而且,破解者如果想要讓搜索密鑰的過程自動化,同樣可以方便地運用.NET的DESCryptoServiceProvider類。

對于一個128位、結合運用密鑰/初始向量的加密方案,計算機嘗試每一種可能的密鑰組合要花多少時間?專家們的看法并不一致,有人認為需要數(shù)月,也有人認為裝有專用硬件的價值6位數(shù)的計算機每秒能夠驗證數(shù)十億個密鑰,破解DES密文只需數(shù)小時。如果你的機密值得花數(shù)月時間去破解,那么最好改用 TripleDES或其他加密算法。從TripleDES的名字也可以猜出,這種加密方式采用三重數(shù)據(jù)加密標準算法,所以密鑰的長度是192位,而不是 64位的DES密鑰。記住,在其他條件相同的情況下,密鑰越長,安全程度越高。

結束語:現(xiàn)在你已經了解了. NET DES加密算法的使用過程,接下去可以研究.NET的其他安全功能,包括極具吸引力的公用密鑰加密方案。雖然公用密鑰加密方案執(zhí)行起來速度慢一些,但加密效果一般要比TripleDES好。本人沒有什么機密值得運用DES之外的算法,不過你的要求可能有所不同。