import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.PBEKeySpec;
import javax.crypto.spec.SecretKeySpec;
-import javax.xml.bind.DatatypeConverter;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
LOG.error("Failed to encrypt data.", e);
return data;
}
- return DatatypeConverter.printBase64Binary(cryptobytes);
+ return Base64.getEncoder().encodeToString(cryptobytes);
}
@Override
LOG.warn("String {} was not decrypted.", encryptedData);
return encryptedData;
}
+
+ final byte[] cryptobytes = Base64.getDecoder().decode(encryptedData);
+ final byte[] clearbytes;
try {
- byte[] cryptobytes = DatatypeConverter.parseBase64Binary(encryptedData);
- byte[] clearbytes = decryptCipher.doFinal(cryptobytes);
- return new String(clearbytes, Charset.defaultCharset());
+ clearbytes = decryptCipher.doFinal(cryptobytes);
} catch (IllegalBlockSizeException | BadPaddingException e) {
LOG.error("Failed to decrypt encoded data", e);
+ return encryptedData;
}
- return encryptedData;
+ return new String(clearbytes, Charset.defaultCharset());
}
@Override