As part of some research about the [common crypto mistakes that developers make](https://littlemaninmyhead.wordpress.com/2017/04/22/top-10-developer-crypto-mistakes/), I noticed that your application has one of them. In [EncryptionUtil.getCipher](https://github.com/audit4j/audit4j-core/blob/69caeb5f2bcff756c230378ae405966cdc6b8861/src/main/java/org/audit4j/core/util/EncryptionUtil.java#L127) you're initializing a Cipher instance with a [static IV](https://github.com/audit4j/audit4j-core/blob/95eae62a8a8f1e7f073247dc2b079462f2f62808/src/main/java/org/audit4j/core/CoreConstants.java#L146) which is insecure. One possible solution would be to generate the initialization vector using SecureRandom: ``` byte[] iv = new byte[16]; new SecureRandom().nextBytes(iv); ```