DES_cblock
DES_cblock msgbuf; /* I/O buffer */
set_des_key(DES_cblock *buf) /* key block */
DES_XFORM((DES_cblock *)msgbuf);
DES_XFORM((DES_cblock *)msgbuf);
DES_cblock tbuf; /* temp buffer for initialization vector */
DES_XFORM((DES_cblock *)msgbuf);
static DES_cblock ivec; /* initialization vector */
static DES_cblock pvec; /* padding vector */
void set_des_key(DES_cblock *);
static DES_cblock key = {0x12, 0x34, 0x56, 0x78, 0x9a, 0xbc, 0xde, 0xf0};
static DES_cblock key2 = {0x34, 0x56, 0x78, 0x9a, 0xbc, 0xde, 0xf0, 0x12};
static DES_cblock key3 = {0x56, 0x78, 0x9a, 0xbc, 0xde, 0xf0, 0x12, 0x34};
DES_cblock *ivec,int enc)
DES_cblock *ivec, int *num, int enc)
DES_cblock *ivec, int *num, int enc)
long length, DES_key_schedule *schedule, DES_cblock *ivec,
DES_cblock *ivec, int enc)
void DES_ecb3_encrypt(const_DES_cblock *input, DES_cblock *output,
void DES_ecb_encrypt(const_DES_cblock *input, DES_cblock *output,
DES_cblock key;
DES_key_schedule *_schedule, DES_cblock *ivec, int enc)
DES_key_schedule *_schedule, DES_cblock *ivec, int enc)
DES_key_schedule *k3, DES_cblock *ivec,
DES_cblock d;
DES_key_schedule *schedule, DES_cblock *ivec, int *num)
DES_cblock d;
DES_random_key(DES_cblock *ret)
arc4random_buf(ret, sizeof(DES_cblock));
static const DES_cblock weak_keys[NUM_WEAK_KEY]={
if (memcmp(weak_keys[i], key, sizeof(DES_cblock)) == 0)
void DES_set_odd_parity(DES_cblock *key)
DES_cblock *ivec, const_DES_cblock *inw,
DES_ecb_encrypt((DES_cblock *)(in + i), (DES_cblock *)(out + i),
(DES_cblock *)ctx->iv, &ctx->num);
(DES_cblock *)ctx->iv, &ctx->num);
(DES_cblock *)ctx->iv, ctx->encrypt);
(DES_cblock *)ctx->iv, ctx->encrypt);
(DES_cblock *)ctx->iv, &ctx->num, ctx->encrypt);
(DES_cblock *)ctx->iv, &ctx->num, ctx->encrypt);
(DES_cblock *)ctx->iv, ctx->encrypt);
ctx->cipher_data, (DES_cblock *)ctx->iv, ctx->encrypt);
(DES_cblock *)ctx->iv, ctx->encrypt);
DES_cblock *deskey = (DES_cblock *)key;
if (DES_random_key((DES_cblock *)ptr) == 0)
DES_cblock *deskey = ptr;
DES_ecb3_encrypt((const_DES_cblock *)(in + i), (DES_cblock *)(out + i),
(DES_cblock *)ctx->iv, &ctx->num);
(DES_cblock *)ctx->iv, &ctx->num);
(DES_cblock *)ctx->iv, ctx->encrypt);
(DES_cblock *)ctx->iv, ctx->encrypt);
(DES_cblock *)ctx->iv, &ctx->num, ctx->encrypt);
(DES_cblock *)ctx->iv, &ctx->num, ctx->encrypt);
(DES_cblock *)ctx->iv, ctx->encrypt);
(DES_cblock *)ctx->iv, ctx->encrypt);
(DES_cblock *)ctx->iv, ctx->encrypt);
DES_cblock *deskey = (DES_cblock *)key;
DES_cblock *deskey = (DES_cblock *)key;
DES_cblock *deskey = (DES_cblock *)key;
(DES_cblock *)&(ctx->iv[0]), &data(ctx)->inw,
(DES_cblock *)&(ctx->iv[0]), &data(ctx)->inw,
DES_cblock inw;
DES_cblock outw;
void DES_ecb3_encrypt(const_DES_cblock *input, DES_cblock *output,
DES_LONG DES_cbc_cksum(const unsigned char *input,DES_cblock *output,
long length,DES_key_schedule *schedule,DES_cblock *ivec,
long length,DES_key_schedule *schedule,DES_cblock *ivec,
long length,DES_key_schedule *schedule,DES_cblock *ivec,
long length,DES_key_schedule *schedule,DES_cblock *ivec,
void DES_ecb_encrypt(const_DES_cblock *input,DES_cblock *output,
DES_key_schedule *ks3,DES_cblock *ivec,int enc);
DES_cblock *ivec1,DES_cblock *ivec2,
DES_cblock *ivec,int *num,int enc);
DES_cblock *ivec,int enc);
DES_cblock *ivec,int *num);
DES_cblock *iv);
DES_cblock *iv);
long length,DES_key_schedule *schedule,DES_cblock *ivec);
long length,DES_key_schedule *schedule,DES_cblock *ivec,
DES_LONG DES_quad_cksum(const unsigned char *input,DES_cblock output[],
long length,int out_count,DES_cblock *seed);
int DES_random_key(DES_cblock *ret);
void DES_set_odd_parity(DES_cblock *key);
void DES_string_to_key(const char *str,DES_cblock *key);
void DES_string_to_2keys(const char *str,DES_cblock *key1,DES_cblock *key2);
DES_key_schedule *schedule,DES_cblock *ivec,int *num,
DES_key_schedule *schedule,DES_cblock *ivec,int *num);
DES_cblock cblock;
#define DES_KEY_SZ (sizeof(DES_cblock))
DES_cblock ivec; /* initialization vector */
static void cvtkey(DES_cblock, char *);
static void makekey(DES_cblock *);
DES_cblock msgbuf; /* I/O buffer */
cvtkey(DES_cblock obuf, char *ibuf)
makekey(DES_cblock *buf)
DES_cblock msgbuf; /* I/O buffer */
DES_cblock msgbuf; /* I/O buffer */
DES_cblock msgbuf; /* I/O buffer */
DES_cblock msgbuf; /* I/O buffer */
DES_cblock ibuf; /* temp buffer for initialization vector */
DES_cblock msgbuf; /* I/O buffer */
DES_cblock encbuf; /* encryption buffer */
DES_cblock msgbuf; /* encryption buffer */
DES_cblock msgbuf; /* encryption buffer */
DES_cblock msgbuf; /* encryption buffer */
DES_cblock msgbuf; /* encryption buffer */
DES_cblock msgbuf; /* encryption buffer */
DES_cblock msgbuf; /* encryption buffer */
DES_cblock msgbuf; /* encryption buffer */
DES_set_odd_parity((DES_cblock *)des_key);
DES_cblock des_key;
DES_ecb_encrypt((DES_cblock *)clear, (DES_cblock *)cipher, &key_schedule, 1);