2014-06-19 88 views
1

的速度和效率,並使用所有hash_algos密碼算法hash_algos矯枉過正

Array 
(
    [0] => md2 
    [1] => md4 
    [2] => md5 
    [3] => sha1 
    [4] => sha224 
    [5] => sha256 
    [6] => sha384 
    [7] => sha512 
    [8] => ripemd128 
    [9] => ripemd160 
    [10] => ripemd256 
    [11] => ripemd320 
    [12] => whirlpool 
    [13] => tiger128,3 
    [14] => tiger160,3 
    [15] => tiger192,3 
    [16] => tiger128,4 
    [17] => tiger160,4 
    [18] => tiger192,4 
    [19] => snefru 
    [20] => snefru256 
    [21] => gost 
    [22] => adler32 
    [23] => crc32 
    [24] => crc32b 
    [25] => salsa10 
    [26] => salsa20 
    [27] => haval128,3 
    [28] => haval160,3 
    [29] => haval192,3 
    [30] => haval224,3 
    [31] => haval256,3 
    [32] => haval128,4 
    [33] => haval160,4 
    [34] => haval192,4 
    [35] => haval224,4 
    [36] => haval256,4 
    [37] => haval128,5 
    [38] => haval160,5 
    [39] => haval192,5 
    [40] => haval224,5 
    [41] => haval256,5 
) 

顯然,這種安全只是好奇,就從一個突發奇想是矯枉過正但嚴格來說,並驚奇會循環這些方法與我們的密碼和鹽然後用我們的回覆說md5是我們最後一個算作商店的算法。破解密碼需要多長時間?作爲香港專業教育學院的一些文檔with a password 8 or less characters in length it takes only 6 hours to crack所以在參考閱讀,如果我們的規定和法規,以密碼爲

一個大寫字母 兩個數字 ,長度不得少於10個字符

然後循環我們在hash_algs密碼本質我們的密碼幾乎可以堅不可摧,儘管我不應該使用它,因爲這些日子裏的一切都可以被破解。

所以我的擔心是這是可行的 將它有一個沉重的頁面加載 條例於密碼強度強這樣 這真的矯枉過正或者是像諾克斯堡的安全性?

+0

https://programmers.stackexchange.com/questions/115406/is-it-more-secure-to-hash-a-password-multiple-times – FuzzyTree

+0

所以通過使用不同的算法,你實際上削弱了它的實力?這是我從這篇文章中得到的。 – EasyBB

回答

1

混合所有散列函數並不是一個好主意,因爲它們仍然太快,而且你不知道它們是否相互影響。

一個合適的密碼哈希函數應該是(需要一些計算時間)。如果攻擊者試圖破解密碼,並且哈希處理得當,那麼對他來說唯一的方法就是蠻橫攻擊,通常與字典結合使用。

這意味着,他每秒可以嘗試的密碼越多,他就會越快地找到原始密碼。今天你可以例如用普通硬件計算8 Giga MD5 hashes per second

有像BCrypt和PBKDF2算法與成本因素,您可以使用PHP函數password_hash()生成BCrypt哈希。成本因子定義了散列函數迭代的次數,因此您可以控制一次嘗試計算所需的時間。毫秒來訪問你的網站並不多,毫秒到暴力是一個阻礙。用你的哈希鏈,你仍然只有40個快速計算。

如果你有興趣瞭解更多關於密碼存儲的信息,你可以看看我的tutorial關於安全密碼存儲。

+0

好吧,你好像你知道你在做什麼,我不介意閱讀,只是不要官方文檔到處都是,然後變得厭倦閱讀。 – EasyBB

1

使用所有的算法是完全矯枉過正的。如果我是你,只需爲每個用戶生成一個隨機salt(可能通過MD5 hashing uniqid,只是一個例子),然後用這個salt對密碼進行哈希處理。 Blowfish加密將爲您工作。

+0

由於我相當新,你可以給我解釋河豚。而我其實只是在考慮用id生成一種獨特的鹽,以及haha – EasyBB

相關問題