Как создать хеш SHA-512?

Я пытаюсь создать в своем Java-коде систему SHA-512 или SHA-256 для хранения паролей. Я осмотрелся и не нашел рабочего кода. Есть ли у кого-нибудь идеи с чего начать? Или есть плагин, который хеширует строки для меня?


person Samboy T    schedule 24.02.2018    source источник
comment
Возможный дубликат примера sha512 для android   -  person Zoe    schedule 25.02.2018
comment
Jasypt: как зашифровать пароли пользователей   -  person Elliott Frisch    schedule 25.02.2018


Ответы (1)


Попробуй это:

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;
}
person Anthony    schedule 24.02.2018