簡體   English   中英

將哈希密碼轉換為字符串werkuzeug python

[英]Convert hashed password to string werkuzeug python

我正在使用Werkzeug進行密碼哈希處理,以便用戶輸入的密碼安全(至少)。

可以說我的應用程序如下:

當用戶登錄時,我將使用check_password_hash,然后在內部登錄用戶。

用戶登錄后,我想向他們顯示密碼。

我遇到的問題:

如何將哈希密碼轉換回字符串以向用戶顯示其密碼?

我的代碼如下:

>>> import werkzeug.security as ws
>>> ws.generate_password_hash('abcdefg')
'pbkdf2:sha1:1000$fYAXLNA6$637528ae2fa195304c328d585e805b164f1c718f'
>>> ws._hash_internal('pbkdf2:sha1:1000', 'fYAXLNA6', 'abcdefg')
('637528ae2fa195304c328d585e805b164f1c718f', 'pbkdf2:sha1:1000')

現在如何將'6375 .....'轉換回'abcdefg'?

我可以訪問數據庫以及所需的所有其他內容。 基本上我是管理員!

注意:我無法使用用戶登錄時輸入的密碼。我只能使用數據庫中的密碼。

用戶登錄后,我想向他們顯示密碼。

散列密碼的全部目的和原因是您永遠無法做到這一點。 不是你,不是其他人。

如果有人可以訪問或使用密碼列表竊取數據庫,則將哈希值轉換回原始密碼確實非常昂貴。 您將需要一百萬年的時間才能破解和撤銷一個密碼。

使用散列時,我們無法取回原始文本。 通常,所有密碼都存儲為哈希值,以使密碼變為私有(僅用戶知道)。 所有服務器都實現了這一點。 如果您想找回密碼,則應該使用對稱密鑰加密。 客戶端和服務器之間共享秘密密鑰的位置(但這是非常不好的做法)最好使用散列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM