2017-02-14 98 views
0

我想清理一些目前以純文本格式的API登錄。鹽密碼Decypt方法

我現在的想法是,通過發電機來把密碼一樣 - md5hashgenerator.com我會確保其SHA1

我會再設置散列作爲一個變量,但什麼是去解密的正確方法?

+3

爲什麼不使用'password_hash()'?由於'SHA1'不再**安全,您可以閱讀[這裏](https://konklone.com/post/why-google-is-hurrying-the-web-to-kill-sha-1 )。你可以使用內置函數 – Nytrix

+0

@Ntrix我沒有登錄等,它的所有完成在後臺和沒有數據庫 - 他們是登錄Curl –

+1

* Sooo .. *?如果它在'php'中,你可以使用函數'password_hash()'和'password_verify()'。這是最安全的方法**和**非常容易使用。 – Nytrix

回答

-2

UPDATE:

此鏈接瞭解使用情況的哈希算法&加密算法非常有用。當你想比較值Fundamental difference between Hashing and Encryption algorithms 「使用散列函數,但不能存儲平原表示(爲任意數量的原因)。密碼應符合這個用例非常好,因爲你不想來存儲它們平紋文本出於安全原因(也不應該)「

」每當你需要得到輸入數據退了出去。請注意這個詞需要。如果你存儲信用卡號碼使用加密,你需要讓他們回來了在某些時候,但不希望將它們存儲爲純文本,所以應該存儲加密版本並儘可能保證密鑰的安全。「

由於意見提到,MD5和SHA1哈希類型不再是安全的。使用php的內置密碼散列函數。你可以約他們在這裏讀了http://php.net/manual/en/book.password.php 特別password_hash()& password_verify()

一個例子使用率password_verify:

// grab hashed pass from db - to compare against - then perform password_verify() method 
if (password_verify($inputPassword, $dbPass)) { 
      // success 
} 

其中$inputPassword是進入登錄表單的明文密碼。

和password_hash()的一個例子使用

$hash = password_hash($inputPassword, PASSWORD_BCRYPT); 
+1

這是一個榮耀的評論,純粹的聯繫。畢竟,你提出了一種**不安全的**哈希密碼的方法.... – Nytrix

+0

*再次*,做**不**使用'md5()'哈希密碼。 **不安全! – Nytrix

+0

你願意進一步解釋嗎? – Inkdot