anchor.diff:  				// can't throw this exception in initializer, but this will log it
   				createObject("component", "org.owasp.esapi.errors.EncryptionException").init(variables.ESAPI, "Encryption failure", "Error creating Encryptor", e);
   			}
  -		
  +
   			return this;
   		</cfscript>
  -		
  -	</cffunction>
  -	
  +
  +	</cffunction>
  +
   	<cffunction access="public" returntype="String" name="hashString" output="false"
   	            hint="Hashes the data using the specified algorithm and the Java MessageDigest class. This method first adds the salt, a separator (':'), and the data, and then rehashes 1024 times to help strengthen weak passwords.">
   		<cfargument required="true" type="String" name="plaintext"/>
   		<cfargument required="true" type="String" name="salt"/>
  -	
  +
   		<cfscript>
   			// CF8 requires 'var' at the top
   			var digest = "";
   			var i = "";
   			var encoded = "";
  -		
  +
   			var bytes = "";
   			try {
   				digest = newJava("java.security.MessageDigest").getInstance(variables.hashAlgorithm);
  
positive.code: 				throwException(createObject("component", "org.owasp.esapi.errors.EncryptionException").init(variables.ESAPI, "Signature failure", "Can't find signature algorithm " & variables.signatureAlgorithm, e));
  			}
  		</cfscript>
  		
  	</cffunction>
  	
  	<cffunction access="public" returntype="boolean" name="verifySignature" output="false">
  		<cfargument required="true" type="String" name="signature"/>
  		<cfargument required="true" type="String" name="data"/>
  	
  		<cfscript>
  			// CF8 requires 'var' at the top
  			var bytes = "";
  			var signer = "";
  		
  			try {
  				bytes = variables.ESAPI.encoder().decodeFromBase64(arguments.signature);
  				signer = newJava("java.security.Signature").getInstance(variables.signatureAlgorithm);
  
negative.code: 		variables.randomAlgorithm = "SHA1PRNG";
  		variables.encoding = "UTF-8";
  	</cfscript>
  
  	<cffunction access="public" returntype="org.owasp.esapi.Encryptor" name="init" output="false">
  		<cfargument required="true" type="org.owasp.esapi.ESAPI" name="ESAPI"/>
  
  		<cfscript>
  			// CF8 requires 'var' at the top
  			var salt = "";
  