我想散列一個密碼並將其保存在數據庫中;我知道散列是一個單向過程。我如何檢查用戶提供的密碼和存儲在數據庫中的密碼是否相同?我正在使用MD5,並且當我每次執行散列操作時,我都會得到相同輸入的不同值。誰能幫忙?如何在java中使用散列函數來散列密碼?
String pass = "wor1ldcup";
String pass1 = "wor1ldcup";
DigestUtils du = new DigestUtils();
byte[] b = du.md5(pass);
byte[] b1 = du.md5(pass1);
您能否提供一個錯誤代碼的示例,用於從相同輸入生成不同的md5值? – 2011-03-15 03:48:36
我能夠哈希值,但我不知道如何使用該值再次比較 – 2011-03-15 03:53:21
/同意Yanick。如果你正確使用MD5,除非輸入改變,否則它不會改變。這就是爲什麼它被用於驗證的原因(不是說它不可能破壞它,因爲它是,但是...) – corsiKa 2011-03-15 03:53:22