@Nullable
    public static String decrypt(String cipherText, String encryptionKey, String salt) {
        try {
            return tryDecrypt(cipherText, encryptionKey, salt);
        } catch (Exception ex) {
            LOG.error("Could not decrypt (legacy) value.", ex);
            return null;
        }
    }
@Test
    public void testDecryptStaticPKCS5PaddedCipherText() {
        // The cipherText was encrypted using an AES/CBC/PKCS5Padding transformation.
        // If this test fails, we changed the transformation. If the change was intentional, this test must
        // be updated, and we need to create a migration to re-encrypt all existing secrets in the database.
        // Otherwise, existing secrets cannot be decrypted anymore!
        final String cipherText = "f0b3e951a4b4537e1466a9cd9621eabb";
        final String salt = "612ac41505dc0120";

        final String decrypt = AESTools.decrypt(cipherText, "1234567890123456", salt);
        Assert.assertEquals("I am secret", decrypt);
    }