我創建的用戶我的應用程序,並正與Spring Security的MD5哈希編碼器確保他們:春MD5外觀形式
PasswordEncoder encoder = new Md5PasswordEncoder();
String hashedPass = encoder.encodePassword(dbUser.getPassword(), null);
dbUser.setPassword(hashedPass);
因此「管理」變成了「d41d8cd98f00b204e9800998ecf8427e」。
這是所有罰款和花花公子,但我也試圖創建一個表單,當前用戶可以去更新自己的細節,等
我不打擾關於MD5哈希值,因爲這是解碼不是春季的一部分(someone already asked)。但是,當我嘗試將其添加到我的表單時,沒有任何內容出現。
<form:password cssClass="input" placeholder="Password" path="password" />
如果我添加「showPassword」屬性,則MD5哈希被添加到擋在外面(例如,通過對鉻圓圈)的字段,但是如果我右擊和「查看源」的散列是存在的。
我該如何使它看起來像原來的'管理員'輸入的字符數? HTML5佔位符將無法工作,因爲用戶可能認爲他們每次都必須重新鍵入密碼,並且javascript絕對不是一個乾淨的選項。
非常感謝,
託比
MD5不是一個好選擇。改用[BCrypt](http://stackoverflow.com/a/8528804/241990)。 – 2013-03-05 14:42:59
我猜猜同一個問題的空白密碼字段仍然適用?除了改進的安全級別之外,是否還有其他特殊的好處,例如性能?歡呼 – Toby 2013-03-05 18:54:24
在性能方面,它要慢得多(按設計)。查看[Wikipedia page](http://en.wikipedia.org/wiki/Bcrypt)或搜索此網站獲取更多信息。 – 2013-03-05 20:06:57