/** * @return a pseduo random number (hex encoded) */ private String generatePseudoRandomNumber() { byte[] randomBytes = new byte[pseudoRandomNumberBytes]; secureRandom.nextBytes(randomBytes); return new String(Hex.encode(randomBytes)); }
private byte[] decode(CharSequence encodedPassword) { return Hex.decode(encodedPassword); }
@Test public void migrate() { final int saltLength = KeyGenerators.secureRandom().getKeyLength(); String encodedPassword = "ab1146a8458d4ce4e65789e5a3f60e423373cfa10b01abd23739e5ae2fdc37f8e9ede4ae6da65264"; String originalEncodedPassword = "ab1146a8458d4ce4ab1146a8458d4ce4e65789e5a3f60e423373cfa10b01abd23739e5ae2fdc37f8e9ede4ae6da65264"; byte[] originalBytes = Hex.decode(originalEncodedPassword); byte[] fixedBytes = Arrays.copyOfRange(originalBytes, saltLength, originalBytes.length); String fixedHex = String.valueOf(Hex.encode(fixedBytes)); assertThat(fixedHex).isEqualTo(encodedPassword); }
private String encode(byte[] bytes) { if (this.encodeHashAsBase64) { return Base64.getEncoder().encodeToString(bytes); } return String.valueOf(Hex.encode(bytes)); }
private byte[] decode(CharSequence encodedPassword) { return Hex.decode(encodedPassword); }
/** * @return a pseduo random number (hex encoded) */ private String generatePseudoRandomNumber() { byte[] randomBytes = new byte[pseudoRandomNumberBytes]; secureRandom.nextBytes(randomBytes); return new String(Hex.encode(randomBytes)); }
private byte[] decode(String encodedBytes) { if (this.encodeHashAsBase64) { return Base64.getDecoder().decode(encodedBytes); } return Hex.decode(encodedBytes); }
private String encode(byte[] bytes) { if (this.encodeHashAsBase64) { return Base64.getEncoder().encodeToString(bytes); } return String.valueOf(Hex.encode(bytes)); }
private byte[] decode(String encodedBytes) { if (this.encodeHashAsBase64) { return Base64.getDecoder().decode(encodedBytes); } return Hex.decode(encodedBytes); }
public static String md5Hex(String data) { MessageDigest digest; try { digest = MessageDigest.getInstance("MD5"); } catch (NoSuchAlgorithmException e) { throw new IllegalStateException("No MD5 algorithm available!"); } return new String(Hex.encode(digest.digest(data.getBytes()))); } }
public AesBytesEncryptor(String password, CharSequence salt, BytesKeyGenerator ivGenerator, CipherAlgorithm alg) { PBEKeySpec keySpec = new PBEKeySpec(password.toCharArray(), Hex.decode(salt), 1024, 256); SecretKey secretKey = newSecretKey("PBKDF2WithHmacSHA1", keySpec); this.secretKey = new SecretKeySpec(secretKey.getEncoded(), "AES"); this.alg = alg; this.encryptor = alg.createCipher(); this.decryptor = alg.createCipher(); this.ivGenerator = ivGenerator != null ? ivGenerator : alg.defaultIvGenerator(); }
private String encode(byte[] digest) { if (this.encodeHashAsBase64) { return Utf8.decode(Base64.getEncoder().encode(digest)); } else { return new String(Hex.encode(digest)); } }
public String decrypt(String encryptedText) { return Utf8.decode(encryptor.decrypt(Hex.decode(encryptedText))); }
private String encode(byte[] digest) { if (this.encodeHashAsBase64) { return Utf8.decode(Base64.getEncoder().encode(digest)); } else { return new String(Hex.encode(digest)); } }
public AesBytesEncryptor(String password, CharSequence salt, BytesKeyGenerator ivGenerator, CipherAlgorithm alg) { PBEKeySpec keySpec = new PBEKeySpec(password.toCharArray(), Hex.decode(salt), 1024, 256); SecretKey secretKey = newSecretKey("PBKDF2WithHmacSHA1", keySpec); this.secretKey = new SecretKeySpec(secretKey.getEncoded(), "AES"); this.alg = alg; this.encryptor = alg.createCipher(); this.decryptor = alg.createCipher(); this.ivGenerator = ivGenerator != null ? ivGenerator : alg.defaultIvGenerator(); }
/** * Calculates the SHA digest and returns the value as a hex string. * * @param data Data to digest * @return SHA digest as a hex string */ public static String shaHex(String data) { return new String(Hex.encode(sha(data))); }
public String decrypt(String encryptedText) { return Utf8.decode(encryptor.decrypt(Hex.decode(encryptedText))); }
/** * Calculates the SHA digest and returns the value as a hex string. * * @param data Data to digest * @return SHA digest as a hex string */ public static String shaHex(byte[] data) { return new String(Hex.encode(sha(data))); }
if (data.length() / 2 != (data.length() + 1) / 2) { try { Hex.decode(candidate); return candidate;
private String encode(CharSequence rawPassword, byte[] salt) { byte[] digest = digest(rawPassword, salt); return new String(Hex.encode(digest)); }