#include <openssl/opensslconf.h>
#include <openssl/ec.h>
#include <openssl/ossl_typ.h>
#include <openssl/bn.h>
Go to the source code of this file.
Data Structures | |
struct | ECDSA_SIG_st |
Defines | |
#define | ECDSA_F_ECDSA_DATA_NEW_METHOD 100 |
#define | ECDSA_F_ECDSA_DO_SIGN 101 |
#define | ECDSA_F_ECDSA_DO_VERIFY 102 |
#define | ECDSA_F_ECDSA_SIGN_SETUP 103 |
#define | ECDSA_R_BAD_SIGNATURE 100 |
#define | ECDSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE 101 |
#define | ECDSA_R_ERR_EC_LIB 102 |
#define | ECDSA_R_MISSING_PARAMETERS 103 |
#define | ECDSA_R_NEED_NEW_SETUP_VALUES 106 |
#define | ECDSA_R_RANDOM_NUMBER_GENERATION_FAILED 104 |
#define | ECDSA_R_SIGNATURE_MALLOC_FAILED 105 |
Typedefs | |
typedef struct ECDSA_SIG_st | ECDSA_SIG |
Functions | |
ECDSA_SIG * | ECDSA_SIG_new (void) |
ECDSA_SIG *ECDSA_SIG_new(void) allocates and initialize a ECDSA_SIG structure. | |
void | ECDSA_SIG_free (ECDSA_SIG *a) |
ECDSA_SIG_free frees a ECDSA_SIG structure. | |
int | i2d_ECDSA_SIG (const ECDSA_SIG *a, unsigned char **pp) |
i2d_ECDSA_SIG DER encode content of ECDSA_SIG object (note: this function modifies *pp (*pp += length of the DER encoded signature)). | |
ECDSA_SIG * | d2i_ECDSA_SIG (ECDSA_SIG **v, const unsigned char **pp, long len) |
d2i_ECDSA_SIG decodes a DER encoded ECDSA signature (note: this function changes *pp (*pp += len)). | |
ECDSA_SIG * | ECDSA_do_sign (const unsigned char *dgst, int dgst_len, EC_KEY *eckey) |
ECDSA_do_sign computes the ECDSA signature of the given hash value using the supplied private key and returns the created signature. | |
ECDSA_SIG * | ECDSA_do_sign_ex (const unsigned char *dgst, int dgstlen, const BIGNUM *kinv, const BIGNUM *rp, EC_KEY *eckey) |
ECDSA_do_sign_ex computes ECDSA signature of a given hash value using the supplied private key (note: sig must point to ECDSA_size(eckey) bytes of memory). | |
int | ECDSA_do_verify (const unsigned char *dgst, int dgst_len, const ECDSA_SIG *sig, EC_KEY *eckey) |
ECDSA_do_verify verifies that the supplied signature is a valid ECDSA signature of the supplied hash value using the supplied public key. | |
const ECDSA_METHOD * | ECDSA_OpenSSL (void) |
void | ECDSA_set_default_method (const ECDSA_METHOD *meth) |
ECDSA_set_default_method sets the default ECDSA method. | |
const ECDSA_METHOD * | ECDSA_get_default_method (void) |
ECDSA_get_default_method returns the default ECDSA method. | |
int | ECDSA_set_method (EC_KEY *eckey, const ECDSA_METHOD *meth) |
ECDSA_set_method sets method to be used for the ECDSA operations. | |
int | ECDSA_size (const EC_KEY *eckey) |
ECDSA_size returns the maximum length of the DER encoded signature. | |
int | ECDSA_sign_setup (EC_KEY *eckey, BN_CTX *ctx, BIGNUM **kinv, BIGNUM **rp) |
ECDSA_sign_setup precompute parts of the signing operation. | |
int | ECDSA_sign (int type, const unsigned char *dgst, int dgstlen, unsigned char *sig, unsigned int *siglen, EC_KEY *eckey) |
ECDSA_sign computes ECDSA signature of a given hash value using the supplied private key (note: sig must point to ECDSA_size(eckey) bytes of memory). | |
int | ECDSA_sign_ex (int type, const unsigned char *dgst, int dgstlen, unsigned char *sig, unsigned int *siglen, const BIGNUM *kinv, const BIGNUM *rp, EC_KEY *eckey) |
ECDSA_sign_ex computes ECDSA signature of a given hash value using the supplied private key (note: sig must point to ECDSA_size(eckey) bytes of memory). | |
int | ECDSA_verify (int type, const unsigned char *dgst, int dgstlen, const unsigned char *sig, int siglen, EC_KEY *eckey) |
ECDSA_verify verifies that the given signature is valid ECDSA signature of the supplied hash value using the specified public key. | |
int | ECDSA_get_ex_new_index (long argl, void *argp, CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func) |
int | ECDSA_set_ex_data (EC_KEY *d, int idx, void *arg) |
void * | ECDSA_get_ex_data (EC_KEY *d, int idx) |
void | ERR_load_ECDSA_strings (void) |
typedef struct ECDSA_SIG_st ECDSA_SIG |
d2i_ECDSA_SIG decodes a DER encoded ECDSA signature (note: this function changes *pp (*pp += len)).
v | pointer to ECDSA_SIG pointer (may be NULL) | |
pp | buffer with the DER encoded signature | |
len | bufferlength |
ECDSA_do_sign computes the ECDSA signature of the given hash value using the supplied private key and returns the created signature.
dgst | pointer to the hash value | |
dgst_len | length of the hash value | |
eckey | pointer to the EC_KEY object containing a private EC key |
ECDSA_SIG* ECDSA_do_sign_ex | ( | const unsigned char * | dgst, | |
int | dgstlen, | |||
const BIGNUM * | kinv, | |||
const BIGNUM * | rp, | |||
EC_KEY * | eckey | |||
) |
ECDSA_do_sign_ex computes ECDSA signature of a given hash value using the supplied private key (note: sig must point to ECDSA_size(eckey) bytes of memory).
dgst | pointer to the hash value to sign | |
dgstlen | length of the hash value | |
kinv | optional pointer to a pre-computed inverse k | |
rp | optional pointer to the pre-computed rp value (see ECDSA_sign_setup | |
eckey | pointer to the EC_KEY object containing a private EC key |
int ECDSA_do_verify | ( | const unsigned char * | dgst, | |
int | dgst_len, | |||
const ECDSA_SIG * | sig, | |||
EC_KEY * | eckey | |||
) |
ECDSA_do_verify verifies that the supplied signature is a valid ECDSA signature of the supplied hash value using the supplied public key.
dgst | pointer to the hash value | |
dgst_len | length of the hash value | |
sig | pointer to the ECDSA_SIG structure | |
eckey | pointer to the EC_KEY object containing a public EC key |
const ECDSA_METHOD* ECDSA_get_default_method | ( | void | ) |
ECDSA_get_default_method returns the default ECDSA method.
void* ECDSA_get_ex_data | ( | EC_KEY * | d, | |
int | idx | |||
) |
int ECDSA_get_ex_new_index | ( | long | argl, | |
void * | argp, | |||
CRYPTO_EX_new * | new_func, | |||
CRYPTO_EX_dup * | dup_func, | |||
CRYPTO_EX_free * | free_func | |||
) |
const ECDSA_METHOD* ECDSA_OpenSSL | ( | void | ) |
void ECDSA_set_default_method | ( | const ECDSA_METHOD * | meth | ) |
ECDSA_set_default_method sets the default ECDSA method.
meth | the new default ECDSA_METHOD |
int ECDSA_set_ex_data | ( | EC_KEY * | d, | |
int | idx, | |||
void * | arg | |||
) |
int ECDSA_set_method | ( | EC_KEY * | eckey, | |
const ECDSA_METHOD * | meth | |||
) |
ECDSA_set_method sets method to be used for the ECDSA operations.
eckey | pointer to the EC_KEY object | |
meth | pointer to the new method |
void ECDSA_SIG_free | ( | ECDSA_SIG * | a | ) |
ECDSA_SIG_free frees a ECDSA_SIG structure.
a | pointer to the ECDSA_SIG structure |
ECDSA_SIG* ECDSA_SIG_new | ( | void | ) |
ECDSA_SIG *ECDSA_SIG_new(void) allocates and initialize a ECDSA_SIG structure.
int ECDSA_sign | ( | int | type, | |
const unsigned char * | dgst, | |||
int | dgstlen, | |||
unsigned char * | sig, | |||
unsigned int * | siglen, | |||
EC_KEY * | eckey | |||
) |
ECDSA_sign computes ECDSA signature of a given hash value using the supplied private key (note: sig must point to ECDSA_size(eckey) bytes of memory).
type | this parameter is ignored | |
dgst | pointer to the hash value to sign | |
dgstlen | length of the hash value | |
sig | buffer to hold the DER encoded signature | |
siglen | pointer to the length of the returned signature | |
eckey | pointer to the EC_KEY object containing a private EC key |
int ECDSA_sign_ex | ( | int | type, | |
const unsigned char * | dgst, | |||
int | dgstlen, | |||
unsigned char * | sig, | |||
unsigned int * | siglen, | |||
const BIGNUM * | kinv, | |||
const BIGNUM * | rp, | |||
EC_KEY * | eckey | |||
) |
ECDSA_sign_ex computes ECDSA signature of a given hash value using the supplied private key (note: sig must point to ECDSA_size(eckey) bytes of memory).
type | this parameter is ignored | |
dgst | pointer to the hash value to sign | |
dgstlen | length of the hash value | |
sig | buffer to hold the DER encoded signature | |
siglen | pointer to the length of the returned signature | |
kinv | optional pointer to a pre-computed inverse k | |
rp | optional pointer to the pre-computed rp value (see ECDSA_sign_setup | |
eckey | pointer to the EC_KEY object containing a private EC key |
ECDSA_sign_setup precompute parts of the signing operation.
eckey | pointer to the EC_KEY object containing a private EC key | |
ctx | pointer to a BN_CTX object (may be NULL) | |
kinv | pointer to a BIGNUM pointer for the inverse of k | |
rp | pointer to a BIGNUM pointer for x coordinate of k * generator |
int ECDSA_size | ( | const EC_KEY * | eckey | ) |
ECDSA_size returns the maximum length of the DER encoded signature.
eckey | pointer to a EC_KEY object |
int ECDSA_verify | ( | int | type, | |
const unsigned char * | dgst, | |||
int | dgstlen, | |||
const unsigned char * | sig, | |||
int | siglen, | |||
EC_KEY * | eckey | |||
) |
ECDSA_verify verifies that the given signature is valid ECDSA signature of the supplied hash value using the specified public key.
type | this parameter is ignored | |
dgst | pointer to the hash value | |
dgstlen | length of the hash value | |
sig | pointer to the DER encoded signature | |
siglen | length of the DER encoded signature | |
eckey | pointer to the EC_KEY object containing a public EC key |
void ERR_load_ECDSA_strings | ( | void | ) |
int i2d_ECDSA_SIG | ( | const ECDSA_SIG * | a, | |
unsigned char ** | pp | |||
) |
i2d_ECDSA_SIG DER encode content of ECDSA_SIG object (note: this function modifies *pp (*pp += length of the DER encoded signature)).
a | pointer to the ECDSA_SIG object | |
pp | pointer to a unsigned char pointer for the output or NULL |