NAME

Trfcrypt_CSchedule - Interface to procedures generating internal keys from a user key.

SYNOPSIS

#include <generic/trfcrypt.h>

void Trfcrypt_CSchedule
(
	void *key,
	int key_length,
	Trf_Options cOptions,
	int direction,
	void **e_schedule,
	void **d_schedule
);

PARAMETERS

void *key
User key.
int key_length
Length of user key (in byte).
Trf_Options cOptions
Cipher specific option info.
int direction
Requested internal key (TRFCRYPT_ENCRYPT, TRFCRYPT_DECRYPT).
void **e_schedule
Internal key for encryption.
void **d_schedule
Internal key for decryption.

DESCRIPTION

A procedure of this type is called by the common code to generate internal keys for encryption and/or decryption. It is the responsibility of the called procedure to allocate the space of the internal key. Pointers to both internal keys are given to the procedure to allow avoidance of duplicate calls to complex operations (see examples in 'blowfish.c', 'idea.c' ('des.c', 'rc4.c' too)).

SEE ALSO

Trfcrypt_Init , Trfcrypt_SafeInit , Trfcrypt_CEncryptChar , Trfcrypt_CDecryptChar , Trfcrypt_CCheck , Trfcrypt_RegisterCipher , Trfcrypt_BCSchedule , Trfcrypt_BCEncryptBlock , Trfcrypt_BCDecryptBlock , Trfcrypt_BCCheck , Trfcrypt_RegisterBlockcipher , Trfcrypt_XorBuffer , Trfcrypt_ShiftRegister , Trfcrypt_FlipRegisterShort , Trfcrypt_FlipRegisterLong