/** * 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; } }