/home/dko/projects/mobilec/trunk/src/security/xyssl-0.7/include/xyssl/sha1.h File Reference

Go to the source code of this file.

Data Structures

struct  sha1_context
 SHA-1 context structure. More...

Functions

void sha1_starts (sha1_context *ctx)
 SHA-1 context setup.
void sha1_update (sha1_context *ctx, unsigned char *input, int ilen)
 SHA-1 process buffer.
void sha1_finish (sha1_context *ctx, unsigned char *output)
 SHA-1 final digest.
void sha1 (unsigned char *input, int ilen, unsigned char *output)
 Output = SHA-1( input buffer ).
int sha1_file (char *path, unsigned char *output)
 Output = SHA-1( file contents ).
void sha1_hmac_starts (sha1_context *ctx, unsigned char *key, int keylen)
 SHA-1 HMAC context setup.
void sha1_hmac_update (sha1_context *ctx, unsigned char *input, int ilen)
 SHA-1 HMAC process buffer.
void sha1_hmac_finish (sha1_context *ctx, unsigned char *output)
 SHA-1 HMAC final digest.
void sha1_hmac (unsigned char *key, int keylen, unsigned char *input, int ilen, unsigned char *output)
 Output = HMAC-SHA-1( hmac key, input buffer ).
int sha1_self_test (int verbose)
 Checkup routine.


Detailed Description

Definition in file sha1.h.


Function Documentation

void sha1 ( unsigned char *  input,
int  ilen,
unsigned char *  output 
)

Output = SHA-1( input buffer ).

Parameters:
input buffer holding the data
ilen length of the input data
output SHA-1 checksum result

Definition at line 313 of file sha1.c.

References sha1_finish(), sha1_starts(), and sha1_update().

Referenced by main(), ssl_calc_verify(), ssl_derive_keys(), ssl_get_session(), ssl_mac_sha1(), ssl_parse_server_key_exchange(), ssl_set_session(), ssl_write_server_key_exchange(), and x509_hash().

int sha1_file ( char *  path,
unsigned char *  output 
)

Output = SHA-1( file contents ).

Parameters:
path input file name
output SHA-1 checksum result
Returns:
0 if successful, 1 if fopen failed, or 2 if fread failed

Definition at line 328 of file sha1.c.

References f, sha1_finish(), sha1_starts(), and sha1_update().

Referenced by main(), and sha1_wrapper().

void sha1_finish ( sha1_context ctx,
unsigned char *  output 
)

SHA-1 final digest.

Parameters:
ctx SHA-1 context
output SHA-1 checksum result

Definition at line 284 of file sha1.c.

References PUT_UINT32_BE, sha1_padding, sha1_update(), sha1_context::state, and sha1_context::total.

Referenced by sha1(), sha1_file(), sha1_hmac_finish(), ssl_calc_verify(), ssl_derive_keys(), ssl_mac_sha1(), ssl_parse_server_key_exchange(), and ssl_write_server_key_exchange().

void sha1_hmac ( unsigned char *  key,
int  keylen,
unsigned char *  input,
int  ilen,
unsigned char *  output 
)

Output = HMAC-SHA-1( hmac key, input buffer ).

Parameters:
key HMAC secret key
keylen length of the HMAC key
input buffer holding the data
ilen length of the input data
output HMAC-SHA-1 result

Definition at line 408 of file sha1.c.

References sha1_hmac_finish(), sha1_hmac_starts(), and sha1_hmac_update().

Referenced by ssl_decrypt_buf(), ssl_encrypt_buf(), and tls1_prf().

void sha1_hmac_finish ( sha1_context ctx,
unsigned char *  output 
)

SHA-1 HMAC final digest.

Parameters:
ctx HMAC context
output SHA-1 HMAC checksum result

Definition at line 392 of file sha1.c.

References sha1_context::opad, sha1_finish(), sha1_starts(), and sha1_update().

Referenced by sha1_hmac().

void sha1_hmac_starts ( sha1_context ctx,
unsigned char *  key,
int  keylen 
)

SHA-1 HMAC context setup.

Parameters:
ctx HMAC context to be initialized
key HMAC secret key
keylen length of the HMAC key

Definition at line 360 of file sha1.c.

References sha1_context::ipad, sha1_context::opad, sha1_starts(), and sha1_update().

Referenced by sha1_hmac().

void sha1_hmac_update ( sha1_context ctx,
unsigned char *  input,
int  ilen 
)

SHA-1 HMAC process buffer.

Parameters:
ctx HMAC context
input buffer holding the data
ilen length of the input data

Definition at line 383 of file sha1.c.

References sha1_update().

Referenced by sha1_hmac().

int sha1_self_test ( int  verbose  ) 

Checkup routine.

Returns:
0 if successful, or 1 if the test failed

Definition at line 489 of file sha1.c.

Referenced by main().

void sha1_starts ( sha1_context ctx  ) 

SHA-1 context setup.

Parameters:
ctx context to be initialized

Definition at line 61 of file sha1.c.

References sha1_context::state, and sha1_context::total.

Referenced by sha1(), sha1_file(), sha1_hmac_finish(), sha1_hmac_starts(), ssl_calc_verify(), ssl_derive_keys(), ssl_mac_sha1(), ssl_parse_client_hello(), ssl_parse_server_key_exchange(), ssl_write_client_hello(), and ssl_write_server_key_exchange().

void sha1_update ( sha1_context ctx,
unsigned char *  input,
int  ilen 
)

SHA-1 process buffer.

Parameters:
ctx SHA-1 context
input buffer holding the data
ilen length of the input data

Definition at line 232 of file sha1.c.

References sha1_context::buffer, sha1_process(), and sha1_context::total.

Referenced by sha1(), sha1_file(), sha1_finish(), sha1_hmac_finish(), sha1_hmac_starts(), sha1_hmac_update(), ssl_calc_verify(), ssl_derive_keys(), ssl_mac_sha1(), ssl_parse_client_hello(), ssl_parse_server_key_exchange(), ssl_write_record(), and ssl_write_server_key_exchange().


Generated on Fri May 16 14:49:56 2008 for Mobile-C by  doxygen 1.5.4