Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

beecrypt.h File Reference

BeeCrypt API, headers. More...

#include "beecrypt/api.h"
#include "beecrypt/memchunk.h"
#include "beecrypt/mpnumber.h"

Include dependency graph for beecrypt.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef int(* entropyNext )(byte *, size_t)
 Prototype definition for an entropy-generating function.
typedef void randomGeneratorParam
typedef int(* randomGeneratorSetup )(randomGeneratorParam *)
typedef int(* randomGeneratorSeed )(randomGeneratorParam *, const byte *, size_t)
typedef int(* randomGeneratorNext )(randomGeneratorParam *, byte *, size_t)
typedef int(* randomGeneratorCleanup )(randomGeneratorParam *)
typedef void hashFunctionParam
typedef int(* hashFunctionReset )(hashFunctionParam *)
typedef int(* hashFunctionUpdate )(hashFunctionParam *, const byte *, size_t)
typedef int(* hashFunctionDigest )(hashFunctionParam *, byte *)
typedef void keyedHashFunctionParam
typedef int(* keyedHashFunctionSetup )(keyedHashFunctionParam *, const byte *, size_t)
typedef int(* keyedHashFunctionReset )(keyedHashFunctionParam *)
typedef int(* keyedHashFunctionUpdate )(keyedHashFunctionParam *, const byte *, size_t)
typedef int(* keyedHashFunctionDigest )(keyedHashFunctionParam *, byte *)
typedef void blockCipherParam
 Placeholder type definition for blockcipher parameters.
typedef int(* blockCipherSetup )(blockCipherParam *, const byte *, size_t, cipherOperation)
 Prototype definition for a setup function.
typedef int(* blockCipherSetIV )(blockCipherParam *, const byte *)
 Prototype definition for an initialization vector setup function.
typedef int(* blockCipherRawcrypt )(blockCipherParam *, uint32_t *, const uint32_t *)
 Prototype for a raw encryption or decryption function.
typedef int(* blockCipherModcrypt )(blockCipherParam *, uint32_t *, const uint32_t *, unsigned int)
 Prototype for a encryption or decryption function which operates on multiple blocks in a certain mode.
typedef uint32_t *(* blockCipherFeedback )(blockCipherParam *)

Enumerations

enum  cipherOperation { NOCRYPT, ENCRYPT, DECRYPT }
 Specifies whether to perform encryption or decryption. More...

Functions

BEECRYPTAPI int entropySourceCount (void)
 This function returns the number of entropy sources implemented by the library.
BEECRYPTAPI const entropySourceentropySourceGet (int n)
 This function returns the n -th entropy source implemented by the library.
BEECRYPTAPI const entropySourceentropySourceFind (const char *name)
 This function returns the entropy source specified by the given name.
BEECRYPTAPI const entropySourceentropySourceDefault (void)
 This functions returns the default entropy source; the default value can be specified by setting environment variable BEECRYPT_ENTROPY.
BEECRYPTAPI int entropyGatherNext (byte *, size_t)
 This function gathers size bytes of entropy into data.
BEECRYPTAPI int randomGeneratorCount (void)
BEECRYPTAPI const randomGeneratorrandomGeneratorGet (int)
BEECRYPTAPI const randomGeneratorrandomGeneratorFind (const char *)
BEECRYPTAPI const randomGeneratorrandomGeneratorDefault (void)
BEECRYPTAPI int randomGeneratorContextInit (randomGeneratorContext *, const randomGenerator *)
BEECRYPTAPI int randomGeneratorContextFree (randomGeneratorContext *)
BEECRYPTAPI int randomGeneratorContextNext (randomGeneratorContext *, byte *, size_t)
BEECRYPTAPI int randomGeneratorContextSeed (randomGeneratorContext *, const byte *, size_t)
BEECRYPTAPI int hashFunctionCount (void)
BEECRYPTAPI const hashFunctionhashFunctionGet (int)
BEECRYPTAPI const hashFunctionhashFunctionFind (const char *)
BEECRYPTAPI const hashFunctionhashFunctionDefault (void)
BEECRYPTAPI int hashFunctionContextInit (hashFunctionContext *, const hashFunction *)
BEECRYPTAPI int hashFunctionContextFree (hashFunctionContext *)
BEECRYPTAPI int hashFunctionContextReset (hashFunctionContext *)
BEECRYPTAPI int hashFunctionContextUpdate (hashFunctionContext *, const byte *, size_t)
BEECRYPTAPI int hashFunctionContextUpdateMC (hashFunctionContext *, const memchunk *)
BEECRYPTAPI int hashFunctionContextUpdateMP (hashFunctionContext *, const mpnumber *)
BEECRYPTAPI int hashFunctionContextDigest (hashFunctionContext *, byte *)
BEECRYPTAPI int hashFunctionContextDigestMP (hashFunctionContext *, mpnumber *)
BEECRYPTAPI int hashFunctionContextDigestMatch (hashFunctionContext *, const mpnumber *)
BEECRYPTAPI int keyedHashFunctionCount (void)
BEECRYPTAPI const keyedHashFunctionkeyedHashFunctionGet (int)
BEECRYPTAPI const keyedHashFunctionkeyedHashFunctionFind (const char *)
BEECRYPTAPI const keyedHashFunctionkeyedHashFunctionDefault (void)
BEECRYPTAPI int keyedHashFunctionContextInit (keyedHashFunctionContext *, const keyedHashFunction *)
BEECRYPTAPI int keyedHashFunctionContextFree (keyedHashFunctionContext *)
BEECRYPTAPI int keyedHashFunctionContextSetup (keyedHashFunctionContext *, const byte *, size_t)
BEECRYPTAPI int keyedHashFunctionContextReset (keyedHashFunctionContext *)
BEECRYPTAPI int keyedHashFunctionContextUpdate (keyedHashFunctionContext *, const byte *, size_t)
BEECRYPTAPI int keyedHashFunctionContextUpdateMC (keyedHashFunctionContext *, const memchunk *)
BEECRYPTAPI int keyedHashFunctionContextUpdateMP (keyedHashFunctionContext *, const mpnumber *)
BEECRYPTAPI int keyedHashFunctionContextDigest (keyedHashFunctionContext *, byte *)
BEECRYPTAPI int keyedHashFunctionContextDigestMP (keyedHashFunctionContext *, mpnumber *)
BEECRYPTAPI int keyedHashFunctionContextDigestMatch (keyedHashFunctionContext *, const mpnumber *)
BEECRYPTAPI int blockCipherCount (void)
 This function returns the number of blockciphers implemented by the library.
BEECRYPTAPI const blockCipherblockCipherGet (int)
 This function returns the n -th blockcipher implemented by the library.
BEECRYPTAPI const blockCipherblockCipherFind (const char *)
 This function returns the blockcipher specified by the given name.
BEECRYPTAPI const blockCipherblockCipherDefault (void)
 This functions returns the default blockcipher; the default value can be specified by setting environment variable BEECRYPT_CIPHER.
BEECRYPTAPI int blockCipherContextInit (blockCipherContext *, const blockCipher *)
BEECRYPTAPI int blockCipherContextSetup (blockCipherContext *, const byte *, size_t, cipherOperation)
BEECRYPTAPI int blockCipherContextSetIV (blockCipherContext *, const byte *)
BEECRYPTAPI int blockCipherContextFree (blockCipherContext *)
BEECRYPTAPI int blockCipherContextECB (blockCipherContext *, uint32_t *, const uint32_t *, int)
BEECRYPTAPI int blockCipherContextCBC (blockCipherContext *, uint32_t *, const uint32_t *, int)
BEECRYPTAPI int blockCipherContextValidKeylen (blockCipherContext *, size_t)


Detailed Description

BeeCrypt API, headers.

These API functions provide an abstract way for using most of the various algorithms implemented by the library.

Author:
Bob Deblier <bob.deblier@pandora.be>

Typedef Documentation

typedef uint32_t*(* blockCipherFeedback)(blockCipherParam *)
 

typedef int(* hashFunctionDigest)(hashFunctionParam *, byte *)
 

typedef int(* hashFunctionReset)(hashFunctionParam *)
 

typedef int(* hashFunctionUpdate)(hashFunctionParam *, const byte *, size_t)
 

typedef int(* keyedHashFunctionDigest)(keyedHashFunctionParam *, byte *)
 

typedef int(* keyedHashFunctionReset)(keyedHashFunctionParam *)
 

typedef int(* keyedHashFunctionSetup)(keyedHashFunctionParam *, const byte *, size_t)
 

typedef int(* keyedHashFunctionUpdate)(keyedHashFunctionParam *, const byte *, size_t)
 

typedef int(* randomGeneratorCleanup)(randomGeneratorParam *)
 

typedef int(* randomGeneratorNext)(randomGeneratorParam *, byte *, size_t)
 

typedef void randomGeneratorParam
 

typedef int(* randomGeneratorSeed)(randomGeneratorParam *, const byte *, size_t)
 

typedef int(* randomGeneratorSetup)(randomGeneratorParam *)
 


Enumeration Type Documentation

enum cipherOperation
 

Specifies whether to perform encryption or decryption.

Enumeration values:
NOCRYPT 
ENCRYPT 
DECRYPT 


Function Documentation

BEECRYPTAPI int blockCipherContextCBC blockCipherContext ,
uint32_t *  ,
const uint32_t *  ,
int 
 

BEECRYPTAPI int blockCipherContextECB blockCipherContext ,
uint32_t *  ,
const uint32_t *  ,
int 
 

BEECRYPTAPI int blockCipherContextFree blockCipherContext  ) 
 

BEECRYPTAPI int blockCipherContextInit blockCipherContext ,
const blockCipher
 

BEECRYPTAPI int blockCipherContextSetIV blockCipherContext ,
const byte
 

BEECRYPTAPI int blockCipherContextSetup blockCipherContext ,
const byte ,
size_t  ,
cipherOperation 
 

BEECRYPTAPI int blockCipherContextValidKeylen blockCipherContext ,
size_t 
 

int blockCipherCount void   ) 
 

This function returns the number of blockciphers implemented by the library.

Returns:
The number of implemented blockciphers.

const blockCipher * blockCipherDefault void   ) 
 

This functions returns the default blockcipher; the default value can be specified by setting environment variable BEECRYPT_CIPHER.

Returns:
A pointer to a blockcipher or null, in case an error occured.

const blockCipher * blockCipherFind const char *  name  ) 
 

This function returns the blockcipher specified by the given name.

Parameters:
name Name of the requested blockcipher.
Returns:
A pointer to a blockcipher or null, if the name wasn't found.

const blockCipher * blockCipherGet int  n  ) 
 

This function returns the n -th blockcipher implemented by the library.

Parameters:
n Index of the requested blockcipher; legal values are 0 through blockCipherCount() - 1.
Returns:
A pointer to a blockcipher or null, if the index was out of range.

int entropyGatherNext byte data,
size_t  size
 

This function gathers size bytes of entropy into data.

Unless environment variable BEECRYPT_ENTROPY is set, this function will try each successive entropy source to gather up the requested amount.

Parameters:
data Points to where the entropy should be stored.
size Indicates how many bytes of entropy should be gathered.
Return values:
0 On success.
-1 On failure.

int entropySourceCount void   ) 
 

This function returns the number of entropy sources implemented by the library.

Returns:
The number of implemented entropy sources.

const entropySource * entropySourceDefault void   ) 
 

This functions returns the default entropy source; the default value can be specified by setting environment variable BEECRYPT_ENTROPY.

Returns:
A pointer to an entropy source or null, in case an error occured.

const entropySource * entropySourceFind const char *  name  ) 
 

This function returns the entropy source specified by the given name.

Parameters:
name Name of the requested entropy source.
Returns:
A pointer to an entropy source or null, if the name wasn't found.

const entropySource * entropySourceGet int  n  ) 
 

This function returns the n -th entropy source implemented by the library.

Parameters:
n Index of the requested entropy source; legal values are 0 through entropySourceCount() - 1.
Returns:
A pointer to an entropy source or null, if the index was out of range.

BEECRYPTAPI int hashFunctionContextDigest hashFunctionContext ,
byte
 

BEECRYPTAPI int hashFunctionContextDigestMatch hashFunctionContext ,
const mpnumber
 

BEECRYPTAPI int hashFunctionContextDigestMP hashFunctionContext ,
mpnumber
 

BEECRYPTAPI int hashFunctionContextFree hashFunctionContext  ) 
 

BEECRYPTAPI int hashFunctionContextInit hashFunctionContext ,
const hashFunction
 

BEECRYPTAPI int hashFunctionContextReset hashFunctionContext  ) 
 

BEECRYPTAPI int hashFunctionContextUpdate hashFunctionContext ,
const byte ,
size_t 
 

BEECRYPTAPI int hashFunctionContextUpdateMC hashFunctionContext ,
const memchunk
 

BEECRYPTAPI int hashFunctionContextUpdateMP hashFunctionContext ,
const mpnumber
 

BEECRYPTAPI int hashFunctionCount void   ) 
 

BEECRYPTAPI const hashFunction* hashFunctionDefault void   ) 
 

BEECRYPTAPI const hashFunction* hashFunctionFind const char *   ) 
 

BEECRYPTAPI const hashFunction* hashFunctionGet int   ) 
 

BEECRYPTAPI int keyedHashFunctionContextDigest keyedHashFunctionContext ,
byte
 

BEECRYPTAPI int keyedHashFunctionContextDigestMatch keyedHashFunctionContext ,
const mpnumber
 

BEECRYPTAPI int keyedHashFunctionContextDigestMP keyedHashFunctionContext ,
mpnumber
 

BEECRYPTAPI int keyedHashFunctionContextFree keyedHashFunctionContext  ) 
 

BEECRYPTAPI int keyedHashFunctionContextInit keyedHashFunctionContext ,
const keyedHashFunction
 

BEECRYPTAPI int keyedHashFunctionContextReset keyedHashFunctionContext  ) 
 

BEECRYPTAPI int keyedHashFunctionContextSetup keyedHashFunctionContext ,
const byte ,
size_t 
 

BEECRYPTAPI int keyedHashFunctionContextUpdate keyedHashFunctionContext ,
const byte ,
size_t 
 

BEECRYPTAPI int keyedHashFunctionContextUpdateMC keyedHashFunctionContext ,
const memchunk
 

BEECRYPTAPI int keyedHashFunctionContextUpdateMP keyedHashFunctionContext ,
const mpnumber
 

BEECRYPTAPI int keyedHashFunctionCount void   ) 
 

BEECRYPTAPI const keyedHashFunction* keyedHashFunctionDefault void   ) 
 

BEECRYPTAPI const keyedHashFunction* keyedHashFunctionFind const char *   ) 
 

BEECRYPTAPI const keyedHashFunction* keyedHashFunctionGet int   ) 
 

BEECRYPTAPI int randomGeneratorContextFree randomGeneratorContext  ) 
 

BEECRYPTAPI int randomGeneratorContextInit randomGeneratorContext ,
const randomGenerator
 

BEECRYPTAPI int randomGeneratorContextNext randomGeneratorContext ,
byte ,
size_t 
 

BEECRYPTAPI int randomGeneratorContextSeed randomGeneratorContext ,
const byte ,
size_t 
 

BEECRYPTAPI int randomGeneratorCount void   ) 
 

BEECRYPTAPI const randomGenerator* randomGeneratorDefault void   ) 
 

BEECRYPTAPI const randomGenerator* randomGeneratorFind const char *   ) 
 

BEECRYPTAPI const randomGenerator* randomGeneratorGet int   ) 
 


Generated on Mon Jun 20 10:09:23 2005 for BeeCrypt by  doxygen 1.4.0