[BACK]Return to des.h CVS log [TXT][DIR] Up to [local] / OpenXM / src / ox_ntl / crypt / des

File: [local] / OpenXM / src / ox_ntl / crypt / des / des.h (download)

Revision 1.3, Sun Jun 19 15:45:38 2005 UTC (18 years, 11 months ago) by iwane
Branch: MAIN
CVS Tags: R_1_3_1-2, RELEASE_1_3_1_13b, RELEASE_1_2_3_12, KNOPPIX_2006, HEAD, DEB_REL_1_2_3-9
Changes since 1.2: +3 -3 lines

changed prototype of CBC-mode

/* $OpenXM: OpenXM/src/ox_ntl/crypt/des/des.h,v 1.3 2005/06/19 15:45:38 iwane Exp $ */
/*
 * FIPS PUB 46-3
 *   DATA ENCRYPTION STANDARD
 */


#ifndef __DES_H__
#define __DES_H__

#include <inttypes.h>

typedef struct {
	union {
		uint32_t ui[2];
		unsigned char ks[8];
	} key;
} des_key;

#ifdef __cplusplus
extern "C" {
#endif

int	des_keychk(des_key *);
void	des_keyset(const unsigned char *key, des_key *);

int	des_enc_c(const des_key *, const unsigned char *, unsigned char *);
int	des_dec_c(const des_key *, const unsigned char *, unsigned char *);


int	des_enc_ecb(const des_key *, int len, const unsigned char *, unsigned char *);
int	des_dec_ecb(const des_key *, int len, const unsigned char *, unsigned char *);

int	des_enc_cbc(const des_key *, unsigned char *, int len, const unsigned char *, unsigned char *);
int	des_dec_cbc(const des_key *, unsigned char *, int len, const unsigned char *, unsigned char *);

int	des_enc_cfb(const des_key *, int bit, const unsigned char *iv, int len, const unsigned char *, unsigned char *);
int	des_dec_cfb(const des_key *, int bit, const unsigned char *iv, int len, const unsigned char *, unsigned char *);

int	des_ofb(const des_key *, int bit, const unsigned char *iv, int len, const unsigned char *, unsigned char *);

#ifdef __cplusplus
}
#endif

#endif /* __DES_H__ */