我試圖創建我的第一個登錄頁面作爲學習練習。簡單的用戶名和密碼驗證java
我的計劃是預先使用用戶名的鹽散列密碼,例如。將其存儲在文本文件中,然後當用戶登錄時,我將使用相同的鹽散列密碼並將結果與文本文件進行比較。
我是一個完整的初學者與安全等,所以我不知道這是否安全或不?小應用程序的規範是什麼?如果不推薦這種方法,那麼什麼是合適的簡單替代方案?
編輯一個可能的解決方案,如果我能得到它的工作。
String unpwfield;
unpwfield = userId.getText()+passwordfield.getText();
if (BCrypt.checkpw(unpwfield, passwordhash))
System.out.println("It matches");
else
System.out.println(userId.getText()+passwordfield.getText());
這聽起來不錯,對許多應用程序來說都是一個標準。只要確定你使用了安全的哈希算法。通常,這些信息將寫入數據庫。 –
我打算讓用戶在這裏創建一個文件http://aes.online-domain-tools.com/ 並要求他們使用該密鑰作爲用戶名。這是一個安全漏洞,知道關鍵是用戶名嗎? –
@ user1274820請參閱[tag:password-encryption]標籤wiki和[此答案](http://stackoverflow.com/questions/2283937/how-should-i-ethically-approach-user-password-storage-for -later-plaintext-retrieve/2287672#2287672)爲什麼這是一個可怕的想法。 – EJP