--- /dev/null
+/**
+ * ISymmetricKey
+ *
+ * An interface for symmetric encryption keys to implement.
+ * Copyright (c) 2007 Henri Torgemane
+ *
+ * See LICENSE.txt for full license information.
+ */
+package com.hurlant.crypto.symmetric
+{
+ import flash.utils.ByteArray;
+
+ public interface ISymmetricKey
+ {
+ /**
+ * Returns the block size used by this particular encryption algorithm
+ */
+ function getBlockSize():uint;
+ /**
+ * Encrypt one block of data in "block", starting at "index", of length "getBlockSize()"
+ */
+ function encrypt(block:ByteArray, index:uint=0):void;
+ /**
+ * Decrypt one block of data in "block", starting at "index", of length "getBlockSize()"
+ */
+ function decrypt(block:ByteArray, index:uint=0):void;
+ /**
+ * Attempts to destroy sensitive information from memory, such as encryption keys.
+ * Note: This is not guaranteed to work given the Flash sandbox model.
+ */
+ function dispose():void;
+
+ function toString():String;
+ }
+}
\ No newline at end of file