SHA256加密(登陸注冊的-密碼加鹽)


主要代碼:

1         // 鹽值
2         String salt = null;
3         String password = user.getPassword();
4         //加密密碼
5         String encryptPassword = null; 
6    
7         salt = SaltUtil.generateSalt();
8     
9         encryPassword = PassWordUtil.encrypt(password,salt);

SaltUtil 類

 1 public class SaltUtil {
 2 
 3     /**
 4      * 生成32位隨機鹽
 5      *
 6      * @return
 7      */
 8     public static String generateSalt() {
 9         return new SecureRandomNumberGenerator().nextBytes(16).toHex();
10     }
11 
12 }

PassWordUtil 類

 1 public class PasswordUtil {
 2 
 3     /**
 4      * 密碼加鹽,再加密
 5      *
 6      * @param pwd
 7      * @param salt
 8      * @return
 9      */
10     public static String encrypt(String pwd, String salt) {
11         if (StringUtils.isBlank(pwd)) {
12             throw new IllegalArgumentException("密碼不能為空");
13         }
14         if (StringUtils.isBlank(salt)) {
15             throw new IllegalArgumentException("鹽值不能為空");
16         }
17         return DigestUtils.sha256Hex(pwd + salt);
18     }
19 
20 }

 

可學習的相關博客(進一步學習更深的知識)

1.SHA256加密之顯示明文密碼的偽處理方法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM