       
 
       public function decrypt(block : ByteArray, index : uint = 0) : void {
-         this.state = new Vector.<uint>(keySize);
          block.position = index;
          for(var i:uint=0; i< keySize ; i++) {
             //state.push(block.readUnsignedInt());

            var t1:uint;
            var t2:uint;
            var t3:uint;
            // Rounds
            for (var round:uint = 1; round < nRounds; round++) {
                // Shift rows, sub bytes, mix columns, add round key

   import flash.utils.ByteArray;
   import com.hurlant.crypto.symmetric.ISymmetricKey;


/* word based AES encryption/decryption
 * inspired by
 * https://code.google.com/p/crypto-js/source/browse/tags/3.1.2/src/aes.js
 */

   public class FastAESKey implements ISymmetricKey {
      
      /* private data, specific to each key */
      private var keySize:uint;
      private var nRounds:uint;
      private var ksRows:uint;
