已經證實較容易破解的演算法(不安全演算法):MD4, MD5, SHA-0, SHA-1, DES。
理論上大部分的演算法基本上都是可以破解的,只是需要很多電腦並行運算很長時間才能破解。密鑰越長,需要耗費的資源越多,以此來提高破解的成本,由於成本過高導致不進行攻擊或採用旁道攻擊。 (推薦學習:PHP影片教學)
同時金鑰越長加解密的成本也會隨之提高,所以可以根據資訊的價值和保密要求來選擇合適的演算法。
DES演算法為密碼體制中的對稱密碼體制,又稱為美國資料加密標準,是1972年美國IBM公司研發的對稱密碼體制加密演算法。明文以64位分組,密鑰長64位,密鑰事實上是56位參與DES運算(第8、16、24、32、40、48、56、64位是校驗位, 使得每個密鑰都有奇數個1)分組後的明文組和56位元的金鑰位元替代或交換的方法形成密文組的加密方法。
DES演算法具有極高安全性,到目前為止,除了用窮舉搜尋法對DES演算法進行攻擊外,還沒有發現更有效的辦法。而56位長的密鑰的窮舉空間為2^56,這意味著如果一台計算機的速度是每一秒鐘檢測一百萬個密鑰,則它搜索完全部密鑰就需要將近2285年的時間,可見,這是難以實現的。然而,這並不等於說DES是不可破解的。而實際上,隨著硬體技術和Internet的發展,其破解的可能性越來越大,而且,所需的時間越來越少。使用經過特殊設計的硬體並行處理要幾個小時。
MD5:嚴格來說不算加密演算法,只能說是摘要演算法。 MD5以512位元分組來處理輸入的訊息,且每一分組又被劃分為16個32位子分組,經過了一系列的處理後,演算法的輸出由四個32位元分組組成,將這四個32位分組級聯後將產生一個128位元雜湊值。
MD4是麻省理工學院教授Ronald Rivest於1990年設計的資訊摘要演算法。它是一種用來測試資訊完整性的密碼雜湊函數的實行。其摘要長度為128位元。這個演算法影響了後來的演算法如MD5、SHA家族和RIPEMD等。
SHA-1(英文:Secure Hash Algorithm 1,中文名稱:安全雜湊演算法1)是一種密碼雜湊函數,美國國家安全局設計,並由美國國家標準技術研究所(NIST)發佈為聯邦資料處理標準(FIPS)。 SHA-1可以產生一個被稱為訊息摘要的160位元(20位元組)雜湊值,雜湊值通常的呈現形式為40個十六進位數。
最初載明的演算法於1993年發布,稱做安全雜湊標準(Secure Hash Standard),FIPSPUB 180。這個版本現在常被稱為SHA-0。
SHA-1已不再視為可抵禦有充足資金、充足運算資源的攻擊者。 2005年,密碼分析人員發現了對SHA-1的有效攻擊方法,這表明該演算法可能不夠安全,不能繼續使用,自2010年以來,許多組織建議用SHA-2或SHA-3來取代SHA-1 。 Microsoft、Google以及Mozilla都宣布,它們旗下的瀏覽器將在2017年前停止接受使用SHA-1演算法簽署的SSL憑證。
更多PHP相關技術文章,請造訪PHP圖文教學欄位進行學習!
以上是不安全加密演算法的詳細內容。更多資訊請關注PHP中文網其他相關文章!