code: public static String decryptByAES(final String content, final String key) {
          try {
              final byte[] data = Hex.decodeHex(content.toCharArray());
              final KeyGenerator kgen = KeyGenerator.getInstance("AES");
              final SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG");
              secureRandom.setSeed(key.getBytes());
              kgen.init(128, secureRandom);
              final SecretKey secretKey = kgen.generateKey();
              final byte[] enCodeFormat = secretKey.getEncoded();
              final SecretKeySpec keySpec = new SecretKeySpec(enCodeFormat, "AES");
              final Cipher cipher = Cipher.getInstance("AES");
              cipher.init(Cipher.DECRYPT_MODE, keySpec);
              final byte[] result = cipher.doFinal(data);
  
              return new String(result, "UTF-8");
          } catch (final Exception e) {
              LOGGER.log(Level.WARN, "Decrypt failed");
  
              return null;
          }
      }
docs: Decrypts by AES.
  
  @param content the specified content to decrypt
  @param key     the specified key
  @return original content
  @see #encryptByAES(java.lang.String, java.lang.String)