| GNU TLS API Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | ||||
#define GNUTLS_CRYPTO_API_VERSION int (*init) (void **ctx); int (*setkey) (void *ctx,const void *key,size_t keysize); int (*setiv) (void *ctx,const void *iv,size_t ivsize); int (*encrypt) (void *ctx,const void *plain,size_t plainsize,void *encr,size_t encrsize); int (*decrypt) (void *ctx,const void *encr,size_t encrsize,void *plain,size_t plainsize); void (*deinit) (void *ctx); int (*hash) (void *ctx,const void *text,size_t textsize); int (*copy) (void **dst_ctx,void *src_ctx); int (*output) (void *src_ctx,void *digest,size_t digestsize); typedef gnutls_crypto_single_digest_st; typedef gnutls_crypto_digest_st; enum gnutls_rnd_level_t; enum gnutls_pk_flag_t; int (*rnd) (void *ctx); typedef bigint_t; enum gnutls_bigint_format_t; bigint_t (*bigint_new) (int nbits); void (*bigint_release) (bigint_t n); int (*bigint_cmp) (const bigint_t m1,const bigint_t m2); int (*bigint_cmp_ui) (const bigint_t m1,unsigned long m2); bigint_t (*bigint_mod) (const bigint_t a,const bigint_t b); bigint_t (*bigint_set) (bigint_t a,const bigint_t b); bigint_t (*bigint_set_ui) (bigint_t a,unsigned long b); unsigned int (); bigint_t (*bigint_powm) (bigint_t w,const bigint_t b,const bigint_t e,const bigint_t m); bigint_t (*bigint_addm) (bigint_t w,const bigint_t a,const bigint_t b,const bigint_t m); bigint_t (*bigint_subm) (bigint_t w,const bigint_t a,const bigint_t b,const bigint_t m); bigint_t (*bigint_mulm) (bigint_t w,const bigint_t a,const bigint_t b,const bigint_t m); bigint_t (*bigint_mul) (bigint_t w,const bigint_t a,const bigint_t b); bigint_t (*bigint_add_ui) (bigint_t w,const bigint_t a,unsigned long b); bigint_t (*bigint_sub_ui) (bigint_t w,const bigint_t a,unsigned long b); bigint_t (*bigint_mul_ui) (bigint_t w,const bigint_t a,unsigned long b); bigint_t (*bigint_div) (bigint_t q,const bigint_t a,const bigint_t b); int (*bigint_prime_check) (const bigint_t pp); int (*bigint_generate_group) (gnutls_group_st *gg,unsigned int bits); bigint_t (*bigint_scan) (const void *buf,size_t buf_size,gnutls_bigint_format_t format); int (*bigint_print) (const bigint_t a,void *buf,size_t *buf_size,gnutls_bigint_format_t format); #define GNUTLS_MAX_PK_PARAMS void gnutls_pk_params_release (gnutls_pk_params_st *p); void gnutls_pk_params_init (gnutls_pk_params_st *p); enum gnutls_direction_t; int (*sign) (gnutls_pk_algorithm_t Param1,gnutls_datum_t *signature,const gnutls_datum_t *data); int (*verify) (gnutls_pk_algorithm_t Param1,const gnutls_datum_t *data,const gnutls_datum_t *signature); int (*generate) (gnutls_pk_algorithm_t Param1); int (*pk_fixup_private_params) (gnutls_pk_algorithm_t Param1,gnutls_direction_t Param2,gnutls_pk_params_st *Param3); #define gnutls_crypto_single_cipher_register(algo, prio, st) #define gnutls_crypto_single_mac_register (algo, prio, st) #define gnutls_crypto_single_digest_register(algo, prio, st) int gnutls_crypto_single_cipher_register2 (gnutls_cipher_algorithm_t algorithm,int priority,int version,gnutls_crypto_single_cipher_st *s); int gnutls_crypto_single_mac_register2 (gnutls_mac_algorithm_t algorithm,int priority,int version,gnutls_crypto_single_mac_st *s); int gnutls_crypto_single_digest_register2 (gnutls_digest_algorithm_t algorithm,int priority,int version,gnutls_crypto_single_digest_st *s); #define gnutls_crypto_cipher_register (prio, st) #define gnutls_crypto_mac_register (prio, st) #define gnutls_crypto_digest_register (prio, st) int gnutls_crypto_cipher_register2 (int priority,int version,gnutls_crypto_cipher_st *s); int gnutls_crypto_mac_register2 (int priority,int version,gnutls_crypto_mac_st *s); int gnutls_crypto_digest_register2 (int priority,int version,gnutls_crypto_digest_st *s); #define gnutls_crypto_rnd_register (prio, st) #define gnutls_crypto_pk_register (prio, st) #define gnutls_crypto_bigint_register (prio, st) int gnutls_crypto_rnd_register2 (int priority,int version,gnutls_crypto_rnd_st *s); int gnutls_crypto_pk_register2 (int priority,int version,gnutls_crypto_pk_st *s); int gnutls_crypto_bigint_register2 (int priority,int version,gnutls_crypto_bigint_st *s);
int (*setkey) (void *ctx,const void *key,size_t keysize);
|
|
|
|
|
|
Returns : |
int (*encrypt) (void *ctx,const void *plain,size_t plainsize,void *encr,size_t encrsize);
|
|
|
|
|
|
|
|
|
|
Returns : |
int (*decrypt) (void *ctx,const void *encr,size_t encrsize,void *plain,size_t plainsize);
|
|
|
|
|
|
|
|
|
|
Returns : |
int (*hash) (void *ctx,const void *text,size_t textsize);
|
|
|
|
|
|
Returns : |
int (*output) (void *src_ctx,void *digest,size_t digestsize);
|
|
|
|
|
|
Returns : |
typedef enum gnutls_rnd_level
{
/* fatal in parts of session if broken, i.e., vulnerable to
statistical analysis */
GNUTLS_RND_NONCE = 0,
/* fatal in session if broken */
GNUTLS_RND_RANDOM = 1,
/* fatal in many sessions if broken */
GNUTLS_RND_KEY = 2
} gnutls_rnd_level_t;
typedef enum
{
/* raw unsigned integer format */
GNUTLS_MPI_FORMAT_USG = 0,
/* raw signed integer format - always a leading zero when positive */
GNUTLS_MPI_FORMAT_STD = 1,
/* the pgp integer format */
GNUTLS_MPI_FORMAT_PGP = 2
} gnutls_bigint_format_t;
bigint_t (*bigint_powm) (bigint_t w,const bigint_t b,const bigint_t e,const bigint_t m);
|
|
|
|
|
|
|
|
Returns : |
bigint_t (*bigint_addm) (bigint_t w,const bigint_t a,const bigint_t b,const bigint_t m);
|
|
|
|
|
|
|
|
Returns : |
bigint_t (*bigint_subm) (bigint_t w,const bigint_t a,const bigint_t b,const bigint_t m);
|
|
|
|
|
|
|
|
Returns : |
bigint_t (*bigint_mulm) (bigint_t w,const bigint_t a,const bigint_t b,const bigint_t m);
|
|
|
|
|
|
|
|
Returns : |
bigint_t (*bigint_mul) (bigint_t w,const bigint_t a,const bigint_t b);
|
|
|
|
|
|
Returns : |
bigint_t (*bigint_add_ui) (bigint_t w,const bigint_t a,unsigned long b);
|
|
|
|
|
|
Returns : |
bigint_t (*bigint_sub_ui) (bigint_t w,const bigint_t a,unsigned long b);
|
|
|
|
|
|
Returns : |
bigint_t (*bigint_mul_ui) (bigint_t w,const bigint_t a,unsigned long b);
|
|
|
|
|
|
Returns : |
bigint_t (*bigint_div) (bigint_t q,const bigint_t a,const bigint_t b);
|
|
|
|
|
|
Returns : |
int (*bigint_generate_group) (gnutls_group_st *gg,unsigned int bits);
|
|
|
|
Returns : |
bigint_t (*bigint_scan) (const void *buf,size_t buf_size,gnutls_bigint_format_t format);
|
|
|
|
|
|
Returns : |
int (*bigint_print) (const bigint_t a,void *buf,size_t *buf_size,gnutls_bigint_format_t format);
|
|
|
|
|
|
|
|
Returns : |
int (*sign) (gnutls_pk_algorithm_t Param1,gnutls_datum_t *signature,const gnutls_datum_t *data);
|
|
|
|
|
|
Returns : |
int (*verify) (gnutls_pk_algorithm_t Param1,const gnutls_datum_t *data,const gnutls_datum_t *signature);
|
|
|
|
|
|
Returns : |
int (*pk_fixup_private_params) (gnutls_pk_algorithm_t Param1,gnutls_direction_t Param2,gnutls_pk_params_st *Param3);
|
|
|
|
|
|
Returns : |
#define gnutls_crypto_single_cipher_register(algo, prio, st)
|
|
|
|
|
#define gnutls_crypto_single_mac_register(algo, prio, st)
|
|
|
|
|
#define gnutls_crypto_single_digest_register(algo, prio, st)
|
|
|
|
|
int gnutls_crypto_single_cipher_register2 (gnutls_cipher_algorithm_t algorithm,int priority,int version,gnutls_crypto_single_cipher_st *s);
|
|
|
|
|
|
|
|
Returns : |
int gnutls_crypto_single_mac_register2 (gnutls_mac_algorithm_t algorithm,int priority,int version,gnutls_crypto_single_mac_st *s);
|
|
|
|
|
|
|
|
Returns : |
int gnutls_crypto_single_digest_register2 (gnutls_digest_algorithm_t algorithm,int priority,int version,gnutls_crypto_single_digest_st *s);
|
|
|
|
|
|
|
|
Returns : |
int gnutls_crypto_cipher_register2 (int priority,int version,gnutls_crypto_cipher_st *s);
|
|
|
|
|
|
Returns : |
int gnutls_crypto_mac_register2 (int priority,int version,gnutls_crypto_mac_st *s);
|
|
|
|
|
|
Returns : |
int gnutls_crypto_digest_register2 (int priority,int version,gnutls_crypto_digest_st *s);
|
|
|
|
|
|
Returns : |
int gnutls_crypto_rnd_register2 (int priority,int version,gnutls_crypto_rnd_st *s);
|
|
|
|
|
|
Returns : |
int gnutls_crypto_pk_register2 (int priority,int version,gnutls_crypto_pk_st *s);
|
|
|
|
|
|
Returns : |