代码之家  ›  专栏  ›  技术社区  ›  Samboy T

如何创建SHA-512哈希?

  •  0
  • Samboy T  · 技术社区  · 7 年前

    我试图在Java代码中创建一个SHA-512或SHA-256系统来存储密码。我环顾四周,找不到任何工作代码。有人知道从哪里开始吗?或者有没有一个插件可以为我哈希字符串?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Anthony    7 年前

    尝试以下操作:

    import java.nio.charset.StandardCharsets;
    import java.security.MessageDigest;
    import java.security.NoSuchAlgorithmException;
    
    public String get_SHA_512_SecurePassword(String passwordToHash, String              salt){
    String generatedPassword = null;
    try {
         MessageDigest md = MessageDigest.getInstance("SHA-512");
         md.update(salt.getBytes(StandardCharsets.UTF_8));
         byte[] bytes = md.digest(passwordToHash.getBytes(StandardCharsets.UTF_8));
         StringBuilder sb = new StringBuilder();
         for(int i=0; i< bytes.length ;i++){
            sb.append(Integer.toString((bytes[i] & 0xff) + 0x100, 16).substring(1));
         }
         generatedPassword = sb.toString();
        } 
       catch (NoSuchAlgorithmException e){
        e.printStackTrace();
       }
    return generatedPassword;
    }