我想知道從Web表單發送密碼並將它們存儲在數據存儲中的最新技術。App Engine:傳輸密碼並將其安全地存儲在Google App Engine中的最佳做法是什麼?
很多最近的帖子指向bcrypt,但是,沒有純粹的Python實現,這是App Engine的一項要求。
有什麼建議嗎?
我想知道從Web表單發送密碼並將它們存儲在數據存儲中的最新技術。App Engine:傳輸密碼並將其安全地存儲在Google App Engine中的最佳做法是什麼?
很多最近的帖子指向bcrypt,但是,沒有純粹的Python實現,這是App Engine的一項要求。
有什麼建議嗎?
最佳實踐的支持?將用戶API與Google帳戶或OpenID一起使用,因此您並不是首先存儲或傳輸密碼。
如果您必須自己做,請使用諸如PBKDF2之類的方案通過SSL傳輸登錄數據,並存儲密碼哈希,鹽漬和strengthened。
您可以使用已移植到google-app-engine的PyCrypto。
當然,您不應該存儲實際的密碼。存儲散列應該足夠了。當用戶輸入密碼時,再次對其進行散列並將其與存儲值進行比較。
你當然應該只接收通過HTTPS密碼,這是在谷歌應用程序內發動機(雖然only through you appspot domain)
說「存儲散列應該是足夠的。」是不是一點點不好的建議?我認爲鹽至少應該添加一次,檢查這個答案(不是接受的,但最多的投票):http://stackoverflow.com/questions/1645161/salt-generation-and-open- source-software/1645190#1645190 – hectorg87 2012-07-17 10:37:07
BCrypt已經被移植到Python前一段時間。從那時起,我一直在優雅地使用它。
絕對。最先進的技術是讓Google,Facebook,Twitter或LinkedIn擔心他們的密碼系統的安全性,並且您只需存儲臨時令牌。我確信Gawker和索尼(PS3)在工作人員身上有許多聰明人,但並沒有阻止他們做一件被剝削的笨蛋。 – Calvin 2011-02-15 00:00:31