source: trunk/third/openssh/rijndael.h @ 18759

Revision 18759, 1.8 KB checked in by zacheiss, 22 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r18758, which included commits to RCS files with non-trunk default branches.
Line 
1/*      $OpenBSD: rijndael.h,v 1.12 2001/12/19 07:18:56 deraadt Exp $ */
2
3/**
4 * rijndael-alg-fst.h
5 *
6 * @version 3.0 (December 2000)
7 *
8 * Optimised ANSI C code for the Rijndael cipher (now AES)
9 *
10 * @author Vincent Rijmen <vincent.rijmen@esat.kuleuven.ac.be>
11 * @author Antoon Bosselaers <antoon.bosselaers@esat.kuleuven.ac.be>
12 * @author Paulo Barreto <paulo.barreto@terra.com.br>
13 *
14 * This code is hereby placed in the public domain.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ''AS IS'' AND ANY EXPRESS
17 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE
20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
23 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
25 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
26 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 */
28#ifndef __RIJNDAEL_H
29#define __RIJNDAEL_H
30
31#define MAXKC   (256/32)
32#define MAXKB   (256/8)
33#define MAXNR   14
34
35typedef unsigned char   u8;
36typedef unsigned short  u16;
37typedef unsigned int    u32;
38
39/*  The structure for key information */
40typedef struct {
41        int     decrypt;
42        int     Nr;                     /* key-length-dependent number of rounds */
43        u32     ek[4*(MAXNR + 1)];      /* encrypt key schedule */
44        u32     dk[4*(MAXNR + 1)];      /* decrypt key schedule */
45} rijndael_ctx;
46
47void     rijndael_set_key(rijndael_ctx *, u_char *, int, int);
48void     rijndael_decrypt(rijndael_ctx *, u_char *, u_char *);
49void     rijndael_encrypt(rijndael_ctx *, u_char *, u_char *);
50
51#endif /* __RIJNDAEL_H */
Note: See TracBrowser for help on using the repository browser.