2017-04-02 43 views
0

我有兩個應用程序使用不同的方法來散列用戶密碼。我想同步這些應用程序,以便允許用戶使用相同的用戶憑證登錄。可以將bcrypt哈希密碼轉換爲SHA2嗎?

是否可以將bcrypt密碼轉換爲SHA2?

+1

當然,只需讓他們再次輸入密碼並用SHA2重新密碼。 –

+0

不,但您可以同步用戶登錄。我強烈建議你使用Bcrypt,但毫無意義降級到sha2 – JimL

+0

爲什麼不讓他們更新他們的密碼,而是使用相同的算法?由於您無法從哈希版本獲取原始密碼,我會這樣做;如果你能控制它的話。 –

回答

-1

Bcrypt和SHA-256是單向哈希算法,不能解密哈希(沒有暴力)。您不能做批量密碼更改。但是,仍然可以將數據庫從一種算法轉換爲另一種算法。具體方法如下:

  1. 每次用戶登錄到你的網站,比較,如果提供的密碼保存在數據庫中的哈希值相匹配。

  2. 如果有匹配,則採取提供的密碼這可能將是$ _ POST [「密碼」],然後將其散列到你的目的地算法像hash('mypassword', 'mypassword');

這是你的唯一途徑將能夠轉換那些哈希密碼。

在以前的WordPress版本中,他們用來將密碼存儲爲散列MD5。他們現在已經引入了一種新的密碼算法,以及它在升級時如何轉換舊的MD5密碼哈希。

+0

Bcrypt和SHA2不是等價的哈希算法,Bcrypt是一種爲密碼哈希設計的計算密集型方法,SHA2(不管那是什麼)不適合密碼哈希。 – zaph

+0

基於OP問題,Bcrypt是否是廣泛的主題。它當然不是等價的散列算法,否則它會有相同的名稱。不知道你爲什麼說明顯。我錯過了什麼? –

+0

問題是關於密碼哈希。你真的想用不安全的密碼哈希方法幫助OP的用戶處於危險之中嗎? – zaph

相關問題