public void init(byte[] IV, byte[] key){
		if(IV.length != blockSize || key.length != blockSize)
			throw new RuntimeException("key and IV need to be same as block size (" + blockSize + ")."); //TODO subclass exception
		this.key = key;
		this.IV = IV;
		prehash = Misc.cleanXOR(IV, key);
		cfg = true;
		blockNo = 0;
		buffer = new byte[blockSize];
		bufferIndex = 0;
	}
public void init ( byte [ ] IV , byte [ ] key ) { if ( IV . length != blockSize || key . length != blockSize ) throw new RuntimeException ( "key and IV need to be same as block size (" + blockSize + ")." ) ; this . key = key ; this . IV = IV ; prehash = Misc . cleanXOR ( IV , key ) ; cfg = true ; blockNo = 0 ; buffer = new byte [ blockSize ] ; bufferIndex = 0 ; }
Initializes the cipher with key and IV
@param IV A 256 bit initialization vector to use for the cipher.
@param key A 256 bit key to encrypt with.