Common Lisp Package: COM.INFORMATIMAGO.COMMON-LISP.CESARUM.TEA

This package imlements the TEA, Tiny Encryption Algorithm. Tiny Encryption Algorithm: <http://web.archive.org/web/20070929150931/http://www.simonshepherd.supanet.com/tea.htm> Note: This algorithm as weaknesses. See also: COM.INFORMATIMAGO.COMMON-LISP.CESARUM.RAIDEN License: AGPL3 Copyright Pascal J. Bourguignon 2006 - 2012 This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>

README:

FUNCTION

Public

TEA-DECIPHER (V W K)

DO: Decipher the code vector V, storing the decrypted clear text in the vector W, using the key K. V: The code: a vector of two 32-bit words. W: The clear text: a vector of two 32-bit words. K: The key: a vector of four 32-bit words.

TEA-ENCIPHER (V W K)

DO: Encipher the clear text vector V, storing the code in the vector W, using the key K. V: The clear text: a vector of two 32-bit words. W: The code: a vector of two 32-bit words. K: The key: a vector of four 32-bit words.

Private

Undocumented

INTERACTIVE-TEST

OP (X A B SUM)

READ-WORDS (BITS WHAT)

TEST

WORD (A B C D)

MACRO

Private

Undocumented

C-DECF (VAR EXPR)

C-INCF (VAR EXPR)

CIPLOOP ((V W K Y Z A B C D (SUM INIT-SUM) DELTA) &BODY BODY)

CONSTANT

Private

Undocumented

+N+