X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/blobdiff_plain/6a0a5bdca4ee09be70284f0f2c022c9f8faf45a9..5d01b1b9514a258c5a3c201e944f676cb2c467f0:/skipjack.h diff --git a/skipjack.h b/skipjack.h index 9a0b3ca..0afff1f 100644 --- a/skipjack.h +++ b/skipjack.h @@ -1,13 +1,13 @@ /* -*-c-*- * - * $Id: skipjack.h,v 1.1 2000/07/15 15:39:33 mdw Exp $ + * $Id: skipjack.h,v 1.3 2004/04/08 01:36:15 mdw Exp $ * * The Skipjack block cipher * * (c) 2000 Straylight/Edgeware */ -/*----- Licensing notice --------------------------------------------------* +/*----- Licensing notice --------------------------------------------------* * * This file is part of Catacomb. * @@ -15,26 +15,18 @@ * it under the terms of the GNU Library General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. - * + * * Catacomb 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 Library General Public License for more details. - * + * * You should have received a copy of the GNU Library General Public * License along with Catacomb; if not, write to the Free * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, * MA 02111-1307, USA. */ -/*----- Revision history --------------------------------------------------* - * - * $Log: skipjack.h,v $ - * Revision 1.1 2000/07/15 15:39:33 mdw - * The NSA's Skipjack block cipher. - * - */ - /*----- Notes on the Skipjack block cipher --------------------------------* * * Skipjack was designed by the NSA, as a type II algorithm to be used in the @@ -75,20 +67,20 @@ extern const octet skipjack_keysz[]; /*----- Data structures ---------------------------------------------------*/ typedef struct skipjack_ctx { - octet k[10]; + uint32 ka, kb, kc, kd, ke; } skipjack_ctx; /*----- Functions provided ------------------------------------------------*/ /* --- @skipjack_init@ --- * * - * Arguments: @skipjack_ctx *k@ = pointer to key block - * @const void *buf@ = pointer to key buffer - * @size_t sz@ = size of key material + * Arguments: @skipjack_ctx *k@ = pointer to key block + * @const void *buf@ = pointer to key buffer + * @size_t sz@ = size of key material * - * Returns: --- + * Returns: --- * - * Use: Initializes a Skipjack key buffer. The key buffer must be + * Use: Initializes a Skipjack key buffer. The key buffer must be * exactly 10 bytes long. */ @@ -97,13 +89,13 @@ extern void skipjack_init(skipjack_ctx */*k*/, /* --- @skipjack_eblk@, @skipjack_dblk@ --- * * - * Arguments: @const skipjack_ctx *k@ = pointer to key block - * @const uint32 s[2]@ = pointer to source block - * @uint32 d[2]@ = pointer to skipjacktination block + * Arguments: @const skipjack_ctx *k@ = pointer to key block + * @const uint32 s[2]@ = pointer to source block + * @uint32 d[2]@ = pointer to skipjacktination block * - * Returns: --- + * Returns: --- * - * Use: Low-level block encryption and decryption. + * Use: Low-level block encryption and decryption. */ extern void skipjack_eblk(const skipjack_ctx */*k*/,