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) |
struct 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) |
Provide cryptographic signature routines.
Definition in file crypto.h.
#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().
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.
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
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.
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
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) |
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.
Referenced by check_key(), and crypto_init().
int(* ast_encrypt_bin)(unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key) |
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.
Referenced by crypto_init(), and update_key().
struct ast_key*(* ast_key_get)(const char *key, int type) |
Retrieve a key.
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
Referenced by authenticate(), authenticate_verify(), check_key(), crypto_init(), register_verify(), and update_key().
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.
Referenced by authenticate(), and crypto_init().
int(* ast_sign_bin)(struct ast_key *key, const char *msg, int msglen, unsigned char *sig) |
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.
Referenced by __ast_sign(), crypto_init(), and update_key().