Sat Aug 6 00:39:55 2011

Asterisk developer's documentation


crypto.h File Reference

Provide cryptographic signature routines. More...

Go to the source code of this file.

Defines

#define AST_KEY_PRIVATE   (1 << 1)
#define AST_KEY_PUBLIC   (1 << 0)

Variables

int(*) ast_check_signature (struct ast_key *key, const char *msg, const char *sig)
 Check the authenticity of a message signature using a given public key.
int(*) ast_check_signature_bin (struct ast_key *key, const char *msg, int msglen, const unsigned char *sig)
 Check the authenticity of a message signature using a given public key.
int(*) ast_decrypt_bin (unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key)
int(*) ast_encrypt_bin (unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key)
ast_key *(*) ast_key_get (const char *key, int type)
 Retrieve a key.
int(*) ast_sign (struct ast_key *key, char *msg, char *sig)
int(*) ast_sign_bin (struct ast_key *key, const char *msg, int msglen, unsigned char *sig)


Detailed Description

Provide cryptographic signature routines.

Definition in file crypto.h.


Define Documentation

#define AST_KEY_PRIVATE   (1 << 1)

Definition at line 31 of file crypto.h.

Referenced by __ast_decrypt_bin(), __ast_sign_bin(), authenticate(), check_key(), pw_cb(), try_load_key(), and update_key().

#define AST_KEY_PUBLIC   (1 << 0)

Definition at line 30 of file crypto.h.

Referenced by __ast_check_signature_bin(), __ast_encrypt_bin(), authenticate_verify(), check_key(), register_verify(), show_keys(), try_load_key(), and update_key().


Variable Documentation

int(*) ast_check_signature(struct ast_key *key, const char *msg, const char *sig)

Check the authenticity of a message signature using a given public key.

Parameters:
key a public key to use to verify
msg the message that has been signed
sig the proposed valid signature in mime64-like encoding
Returns 0 if the signature is valid, or -1 otherwise

Definition at line 79 of file cryptostub.c.

Referenced by authenticate_verify(), crypto_init(), and register_verify().

int(*) ast_check_signature_bin(struct ast_key *key, const char *msg, int msglen, const unsigned char *sig)

Check the authenticity of a message signature using a given public key.

Parameters:
key a public key to use to verify
msg the message that has been signed
sig the proposed valid signature in raw binary representation
Returns 0 if the signature is valid, or -1 otherwise

Definition at line 82 of file cryptostub.c.

Referenced by __ast_check_signature(), check_key(), and crypto_init().

int(*) ast_decrypt_bin(unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key)

Parameters:
key a private key to use to decrypt
src the message to decrypt
srclen the length of the message to decrypt
dst a pointer to a buffer of at least srclen bytes in which the decrypted answer will be stored
Returns length of decrypted data on success or -1 on failure.

Definition at line 94 of file cryptostub.c.

Referenced by check_key(), and crypto_init().

int(*) ast_encrypt_bin(unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key)

Parameters:
key a private key to use to encrypt
src the message to encrypt
srclen the length of the message to encrypt
dst a pointer to a buffer of at least srclen * 1.5 bytes in which the encrypted answer will be stored
Returns length of encrypted data on success or -1 on failure.

Definition at line 91 of file cryptostub.c.

Referenced by crypto_init(), and update_key().

struct ast_key*(*) ast_key_get(const char *key, int type)

Retrieve a key.

Parameters:
name of the key we are retrieving
int type of key (AST_KEY_PUBLIC or AST_KEY_PRIVATE)
Returns the key on success or NULL on failure

Definition at line 76 of file cryptostub.c.

Referenced by authenticate(), authenticate_verify(), check_key(), crypto_init(), register_verify(), and update_key().

int(*) ast_sign(struct ast_key *key, char *msg, char *sig)

Parameters:
key a private key to use to create the signature
msg the message to sign
sig a pointer to a buffer of at least 256 bytes in which the mime64-like encoded signature will be stored
Returns 0 on success or -1 on failure.

Definition at line 85 of file cryptostub.c.

Referenced by authenticate(), and crypto_init().

int(*) ast_sign_bin(struct ast_key *key, const char *msg, int msglen, unsigned char *sig)

Parameters:
key a private key to use to create the signature
msg the message to sign
sig a pointer to a buffer of at least 128 bytes in which the raw encoded signature will be stored
Returns 0 on success or -1 on failure.

Definition at line 88 of file cryptostub.c.

Referenced by __ast_sign(), crypto_init(), and update_key().


Generated on Sat Aug 6 00:39:55 2011 for Asterisk - the Open Source PBX by  doxygen 1.4.7