diff --git a/core/src/main/java/org/bitcoinj/crypto/PBKDF2SHA512.java b/core/src/main/java/org/bitcoinj/crypto/PBKDF2SHA512.java index 94671e117..2a0e9eddc 100644 --- a/core/src/main/java/org/bitcoinj/crypto/PBKDF2SHA512.java +++ b/core/src/main/java/org/bitcoinj/crypto/PBKDF2SHA512.java @@ -37,16 +37,17 @@ import java.nio.charset.StandardCharsets; * @see PBKDF2 – Pure Java Implementation by Cryptofreek */ public class PBKDF2SHA512 { + // Length of HMAC result + private static final int H_LEN = 64; + public static byte[] derive(String P, String S, int c, int dkLen) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); try { - int hLen = 64; // Length of HMAC result - - if (dkLen > ((Math.pow(2, 32)) - 1) * hLen) { + if (dkLen > ((Math.pow(2, 32)) - 1) * H_LEN) { throw new IllegalArgumentException("derived key too long"); } else { - int l = (int) Math.ceil((double) dkLen / (double) hLen); + int l = (int) Math.ceil((double) dkLen / (double) H_LEN); // int r = dkLen - (l-1)*hLen; for (int i = 1; i <= l; i++) {