1. A system for data decryption, the system comprising the steps of: an input operable to receive encrypted data associated with a plurality of plain characters, the encrypted data comprising a plurality of offsets; a memory operable to store a key block comprising a plurality of key characters, each plain character corresponding to a key character of the plurality of key characters; processor operable to repeat the following for a subsequent offset of the plurality of offsets to decrypt the encrypted data: locate a current key character; locate a next key character corresponding to the offset applied to the current key character; and determine a plain character corresponding to the next key character.