public synchronized static String invoke( String input, String key, String algorithm, String encoding, Object ivOrSalt, int iterations ) throws PageException {
try {
if ( CFMXCompat.isCfmxCompat( algorithm ) )
return Coder.encode( encoding, new CFMXCompat().transformString( key, input.getBytes( Cryptor.DEFAULT_CHARSET ) ) );
byte[] baIVS = null;
if ( ivOrSalt instanceof String )
baIVS = ((String)ivOrSalt).getBytes( Cryptor.DEFAULT_CHARSET );
else if ( ivOrSalt != null )