Gå til innhold

[Løst] Hashe passord med salt


Anbefalte innlegg

Videoannonse
Annonse

Glem det, fant det ut nå.

	public final int ITERATIONS = 1000000;
	public final int KEY_LENGTH = 192;
	public final String ALGORITHM = "PBKDF2WithHmacSHA1";

	public String getHash(String text, String salt){
		try {
			char[] textChars = text.toCharArray();
			byte[] saltBytes = salt.getBytes();

			PBEKeySpec spec = new PBEKeySpec(textChars, saltBytes, ITERATIONS, KEY_LENGTH);
			SecretKeyFactory key = SecretKeyFactory.getInstance(ALGORITHM);
			byte[] hashedPassword = key.generateSecret(spec).getEncoded();
			return String.format("%x", new BigInteger(hashedPassword));
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}

	public String getSalt() {
		try {
			SecureRandom sr = SecureRandom.getInstance("SHA1PRNG");
			byte[] salt = new byte[16];
			sr.nextBytes(salt);
			String encodedSalt = Base64.encode(salt);
			return encodedSalt;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...