code: public String decrypt(final String pEncryptedText) throws GeneralSecurityException {
          byte[] allEncryptedBytes = Base64Util.decode(pEncryptedText);
          int totalLen = allEncryptedBytes.length;
          byte[] salt = new byte[SALT_SIZE];
  
          System.arraycopy(allEncryptedBytes, 0, salt, 0, SALT_SIZE);
          byte padLen = allEncryptedBytes[SALT_SIZE];
  
          byte[] encryptedBytes = new byte[totalLen - SALT_SIZE - 1 - padLen];
          System.arraycopy(allEncryptedBytes, SALT_SIZE + 1, encryptedBytes, 0, encryptedBytes.length);
  
          Cipher cipher = createCipher(salt, Cipher.DECRYPT_MODE);
          byte[] clearBytes = cipher.doFinal(encryptedBytes);
  
          return new String(clearBytes, Charset.forName("UTF-8"));
      }
docs: Decrypt a password encrypted with {@link #encrypt(String)}
  
  @param pEncryptedText encrypted text
  @return the decrypted text
  @throws GeneralSecurityException when decryption fails