Ark Server API (ASE) - Wiki
Loading...
Searching...
No Matches
dh.h File Reference
#include <openssl/opensslconf.h>
#include <openssl/e_os2.h>
#include <openssl/bio.h>
#include <openssl/asn1.h>
#include <openssl/ossl_typ.h>
#include <openssl/bn.h>
#include <openssl/dherr.h>
+ Include dependency graph for dh.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define OPENSSL_DH_MAX_MODULUS_BITS   10000
 
#define OPENSSL_DH_FIPS_MIN_MODULUS_BITS   1024
 
#define DH_FLAG_CACHE_MONT_P   0x01
 
#define DH_FLAG_NO_EXP_CONSTTIME   0x00
 
#define DH_FLAG_FIPS_METHOD   0x0400
 
#define DH_FLAG_NON_FIPS_ALLOW   0x0400
 
#define DH_GENERATOR_2   2
 
#define DH_GENERATOR_5   5
 
#define DH_CHECK_P_NOT_PRIME   0x01
 
#define DH_CHECK_P_NOT_SAFE_PRIME   0x02
 
#define DH_UNABLE_TO_CHECK_GENERATOR   0x04
 
#define DH_NOT_SUITABLE_GENERATOR   0x08
 
#define DH_CHECK_Q_NOT_PRIME   0x10
 
#define DH_CHECK_INVALID_Q_VALUE   0x20
 
#define DH_CHECK_INVALID_J_VALUE   0x40
 
#define DH_CHECK_PUBKEY_TOO_SMALL   0x01
 
#define DH_CHECK_PUBKEY_TOO_LARGE   0x02
 
#define DH_CHECK_PUBKEY_INVALID   0x04
 
#define DH_CHECK_P_NOT_STRONG_PRIME   DH_CHECK_P_NOT_SAFE_PRIME
 
#define d2i_DHparams_fp(fp, x)
 
#define i2d_DHparams_fp(fp, x)    ASN1_i2d_fp(i2d_DHparams,(fp), (unsigned char *)(x))
 
#define d2i_DHparams_bio(bp, x)    ASN1_d2i_bio_of(DH, DH_new, d2i_DHparams, bp, x)
 
#define i2d_DHparams_bio(bp, x)    ASN1_i2d_bio_of_const(DH,i2d_DHparams,bp,x)
 
#define d2i_DHxparams_fp(fp, x)
 
#define i2d_DHxparams_fp(fp, x)    ASN1_i2d_fp(i2d_DHxparams,(fp), (unsigned char *)(x))
 
#define d2i_DHxparams_bio(bp, x)    ASN1_d2i_bio_of(DH, DH_new, d2i_DHxparams, bp, x)
 
#define i2d_DHxparams_bio(bp, x)    ASN1_i2d_bio_of_const(DH, i2d_DHxparams, bp, x)
 
#define DH_get_ex_new_index(l, p, newf, dupf, freef)    CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_DH, l, p, newf, dupf, freef)
 
#define EVP_PKEY_CTX_set_dh_paramgen_prime_len(ctx, len)
 
#define EVP_PKEY_CTX_set_dh_paramgen_subprime_len(ctx, len)
 
#define EVP_PKEY_CTX_set_dh_paramgen_type(ctx, typ)
 
#define EVP_PKEY_CTX_set_dh_paramgen_generator(ctx, gen)
 
#define EVP_PKEY_CTX_set_dh_rfc5114(ctx, gen)
 
#define EVP_PKEY_CTX_set_dhx_rfc5114(ctx, gen)
 
#define EVP_PKEY_CTX_set_dh_nid(ctx, nid)
 
#define EVP_PKEY_CTX_set_dh_pad(ctx, pad)
 
#define EVP_PKEY_CTX_set_dh_kdf_type(ctx, kdf)
 
#define EVP_PKEY_CTX_get_dh_kdf_type(ctx)
 
#define EVP_PKEY_CTX_set0_dh_kdf_oid(ctx, oid)
 
#define EVP_PKEY_CTX_get0_dh_kdf_oid(ctx, poid)
 
#define EVP_PKEY_CTX_set_dh_kdf_md(ctx, md)
 
#define EVP_PKEY_CTX_get_dh_kdf_md(ctx, pmd)
 
#define EVP_PKEY_CTX_set_dh_kdf_outlen(ctx, len)
 
#define EVP_PKEY_CTX_get_dh_kdf_outlen(ctx, plen)
 
#define EVP_PKEY_CTX_set0_dh_kdf_ukm(ctx, p, plen)
 
#define EVP_PKEY_CTX_get0_dh_kdf_ukm(ctx, p)
 
#define EVP_PKEY_CTRL_DH_PARAMGEN_PRIME_LEN   (EVP_PKEY_ALG_CTRL + 1)
 
#define EVP_PKEY_CTRL_DH_PARAMGEN_GENERATOR   (EVP_PKEY_ALG_CTRL + 2)
 
#define EVP_PKEY_CTRL_DH_RFC5114   (EVP_PKEY_ALG_CTRL + 3)
 
#define EVP_PKEY_CTRL_DH_PARAMGEN_SUBPRIME_LEN   (EVP_PKEY_ALG_CTRL + 4)
 
#define EVP_PKEY_CTRL_DH_PARAMGEN_TYPE   (EVP_PKEY_ALG_CTRL + 5)
 
#define EVP_PKEY_CTRL_DH_KDF_TYPE   (EVP_PKEY_ALG_CTRL + 6)
 
#define EVP_PKEY_CTRL_DH_KDF_MD   (EVP_PKEY_ALG_CTRL + 7)
 
#define EVP_PKEY_CTRL_GET_DH_KDF_MD   (EVP_PKEY_ALG_CTRL + 8)
 
#define EVP_PKEY_CTRL_DH_KDF_OUTLEN   (EVP_PKEY_ALG_CTRL + 9)
 
#define EVP_PKEY_CTRL_GET_DH_KDF_OUTLEN   (EVP_PKEY_ALG_CTRL + 10)
 
#define EVP_PKEY_CTRL_DH_KDF_UKM   (EVP_PKEY_ALG_CTRL + 11)
 
#define EVP_PKEY_CTRL_GET_DH_KDF_UKM   (EVP_PKEY_ALG_CTRL + 12)
 
#define EVP_PKEY_CTRL_DH_KDF_OID   (EVP_PKEY_ALG_CTRL + 13)
 
#define EVP_PKEY_CTRL_GET_DH_KDF_OID   (EVP_PKEY_ALG_CTRL + 14)
 
#define EVP_PKEY_CTRL_DH_NID   (EVP_PKEY_ALG_CTRL + 15)
 
#define EVP_PKEY_CTRL_DH_PAD   (EVP_PKEY_ALG_CTRL + 16)
 
#define EVP_PKEY_DH_KDF_NONE   1
 
#define EVP_PKEY_DH_KDF_X9_42   2
 

Functions

DHDHparams_dup (DH *)
 
const DH_METHODDH_OpenSSL (void)
 
void DH_set_default_method (const DH_METHOD *meth)
 
const DH_METHODDH_get_default_method (void)
 
int DH_set_method (DH *dh, const DH_METHOD *meth)
 
DHDH_new_method (ENGINE *engine)
 
DHDH_new (void)
 
void DH_free (DH *dh)
 
int DH_up_ref (DH *dh)
 
int DH_bits (const DH *dh)
 
int DH_size (const DH *dh)
 
int DH_security_bits (const DH *dh)
 
int DH_set_ex_data (DH *d, int idx, void *arg)
 
void * DH_get_ex_data (DH *d, int idx)
 
 DEPRECATEDIN_0_9_8 (DH *DH_generate_parameters(int prime_len, int generator, void(*callback)(int, int, void *), void *cb_arg)) int DH_generate_parameters_ex(DH *dh
 
int DH_check_params_ex (const DH *dh)
 
int DH_check_ex (const DH *dh)
 
int DH_check_pub_key_ex (const DH *dh, const BIGNUM *pub_key)
 
int DH_check_params (const DH *dh, int *ret)
 
int DH_check (const DH *dh, int *codes)
 
int DH_check_pub_key (const DH *dh, const BIGNUM *pub_key, int *codes)
 
int DH_generate_key (DH *dh)
 
int DH_compute_key (unsigned char *key, const BIGNUM *pub_key, DH *dh)
 
int DH_compute_key_padded (unsigned char *key, const BIGNUM *pub_key, DH *dh)
 
DHd2i_DHparams (DH **a, const unsigned char **pp, long length)
 
int i2d_DHparams (const DH *a, unsigned char **pp)
 
DHd2i_DHxparams (DH **a, const unsigned char **pp, long length)
 
int i2d_DHxparams (const DH *a, unsigned char **pp)
 
int DHparams_print_fp (FILE *fp, const DH *x)
 
int DHparams_print (BIO *bp, const DH *x)
 
DHDH_get_1024_160 (void)
 
DHDH_get_2048_224 (void)
 
DHDH_get_2048_256 (void)
 
DHDH_new_by_nid (int nid)
 
int DH_get_nid (const DH *dh)
 
int DH_KDF_X9_42 (unsigned char *out, size_t outlen, const unsigned char *Z, size_t Zlen, ASN1_OBJECT *key_oid, const unsigned char *ukm, size_t ukmlen, const EVP_MD *md)
 
void DH_get0_pqg (const DH *dh, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g)
 
int DH_set0_pqg (DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g)
 
void DH_get0_key (const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key)
 
int DH_set0_key (DH *dh, BIGNUM *pub_key, BIGNUM *priv_key)
 
const BIGNUMDH_get0_p (const DH *dh)
 
const BIGNUMDH_get0_q (const DH *dh)
 
const BIGNUMDH_get0_g (const DH *dh)
 
const BIGNUMDH_get0_priv_key (const DH *dh)
 
const BIGNUMDH_get0_pub_key (const DH *dh)
 
void DH_clear_flags (DH *dh, int flags)
 
int DH_test_flags (const DH *dh, int flags)
 
void DH_set_flags (DH *dh, int flags)
 
ENGINEDH_get0_engine (DH *d)
 
long DH_get_length (const DH *dh)
 
int DH_set_length (DH *dh, long length)
 
DH_METHODDH_meth_new (const char *name, int flags)
 
void DH_meth_free (DH_METHOD *dhm)
 
DH_METHODDH_meth_dup (const DH_METHOD *dhm)
 
const char * DH_meth_get0_name (const DH_METHOD *dhm)
 
int DH_meth_set1_name (DH_METHOD *dhm, const char *name)
 
int DH_meth_get_flags (const DH_METHOD *dhm)
 
int DH_meth_set_flags (DH_METHOD *dhm, int flags)
 
void * DH_meth_get0_app_data (const DH_METHOD *dhm)
 
int DH_meth_set0_app_data (DH_METHOD *dhm, void *app_data)
 
int DH_meth_set_generate_key (DH_METHOD *dhm, int(*generate_key)(DH *))
 
int DH_meth_set_compute_key (DH_METHOD *dhm, int(*compute_key)(unsigned char *key, const BIGNUM *pub_key, DH *dh))
 
int DH_meth_set_bn_mod_exp (DH_METHOD *dhm, int(*bn_mod_exp)(const DH *, BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, BN_CTX *, BN_MONT_CTX *))
 
int DH_meth_set_init (DH_METHOD *dhm, int(*init)(DH *))
 
int DH_meth_set_finish (DH_METHOD *dhm, int(*finish)(DH *))
 
int DH_meth_set_generate_params (DH_METHOD *dhm, int(*generate_params)(DH *, int, int, BN_GENCB *))
 

Variables

int prime_len
 
int int generator
 
int int BN_GENCBcb
 
int(*)(DH *) DH_meth_get_generate_key (const DH_METHOD *dhm)
 
int(*)(unsigned char *key, const BIGNUM *pub_key, DH *dh) DH_meth_get_compute_key (const DH_METHOD *dhm)
 
int(*)(const DH *, BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, BN_CTX *, BN_MONT_CTX *) DH_meth_get_bn_mod_exp (const DH_METHOD *dhm)
 
int(*)(DH *) DH_meth_get_init (const DH_METHOD *dhm)
 
int(*)(DH *) DH_meth_get_finish (const DH_METHOD *dhm)
 
int(*)(DH *, int, int, BN_GENCB *) DH_meth_get_generate_params (const DH_METHOD *dhm)
 

Macro Definition Documentation

◆ d2i_DHparams_bio

#define d2i_DHparams_bio ( bp,
x )    ASN1_d2i_bio_of(DH, DH_new, d2i_DHparams, bp, x)

Definition at line 98 of file dh.h.

◆ d2i_DHparams_fp

#define d2i_DHparams_fp ( fp,
x )
Value:
(DH *)ASN1_d2i_fp((char *(*)())DH_new, \
(char *(*)())d2i_DHparams, \
(fp), \
(unsigned char **)(x))
void * ASN1_d2i_fp(void *(*xnew)(void), d2i_of_void *d2i, FILE *in, void **x)
DH * d2i_DHparams(DH **a, const unsigned char **pp, long length)
DH * DH_new(void)
const EC_POINT BIGNUM * x
Definition ec.h:545
struct dh_st DH
Definition ossl_typ.h:104

Definition at line 91 of file dh.h.

◆ d2i_DHxparams_bio

#define d2i_DHxparams_bio ( bp,
x )    ASN1_d2i_bio_of(DH, DH_new, d2i_DHxparams, bp, x)

Definition at line 110 of file dh.h.

◆ d2i_DHxparams_fp

#define d2i_DHxparams_fp ( fp,
x )
Value:
(DH *)ASN1_d2i_fp((char *(*)())DH_new, \
(char *(*)())d2i_DHxparams, \
(fp), \
(unsigned char **)(x))
DH * d2i_DHxparams(DH **a, const unsigned char **pp, long length)

Definition at line 103 of file dh.h.

◆ DH_CHECK_INVALID_J_VALUE

#define DH_CHECK_INVALID_J_VALUE   0x40

Definition at line 78 of file dh.h.

◆ DH_CHECK_INVALID_Q_VALUE

#define DH_CHECK_INVALID_Q_VALUE   0x20

Definition at line 77 of file dh.h.

◆ DH_CHECK_P_NOT_PRIME

#define DH_CHECK_P_NOT_PRIME   0x01

Definition at line 72 of file dh.h.

◆ DH_CHECK_P_NOT_SAFE_PRIME

#define DH_CHECK_P_NOT_SAFE_PRIME   0x02

Definition at line 73 of file dh.h.

◆ DH_CHECK_P_NOT_STRONG_PRIME

#define DH_CHECK_P_NOT_STRONG_PRIME   DH_CHECK_P_NOT_SAFE_PRIME

Definition at line 89 of file dh.h.

◆ DH_CHECK_PUBKEY_INVALID

#define DH_CHECK_PUBKEY_INVALID   0x04

Definition at line 83 of file dh.h.

◆ DH_CHECK_PUBKEY_TOO_LARGE

#define DH_CHECK_PUBKEY_TOO_LARGE   0x02

Definition at line 82 of file dh.h.

◆ DH_CHECK_PUBKEY_TOO_SMALL

#define DH_CHECK_PUBKEY_TOO_SMALL   0x01

Definition at line 81 of file dh.h.

◆ DH_CHECK_Q_NOT_PRIME

#define DH_CHECK_Q_NOT_PRIME   0x10

Definition at line 76 of file dh.h.

◆ DH_FLAG_CACHE_MONT_P

#define DH_FLAG_CACHE_MONT_P   0x01

Definition at line 35 of file dh.h.

◆ DH_FLAG_FIPS_METHOD

#define DH_FLAG_FIPS_METHOD   0x0400

Definition at line 51 of file dh.h.

◆ DH_FLAG_NO_EXP_CONSTTIME

#define DH_FLAG_NO_EXP_CONSTTIME   0x00

Definition at line 41 of file dh.h.

◆ DH_FLAG_NON_FIPS_ALLOW

#define DH_FLAG_NON_FIPS_ALLOW   0x0400

Definition at line 59 of file dh.h.

◆ DH_GENERATOR_2

#define DH_GENERATOR_2   2

Definition at line 67 of file dh.h.

◆ DH_GENERATOR_5

#define DH_GENERATOR_5   5

Definition at line 69 of file dh.h.

◆ DH_get_ex_new_index

#define DH_get_ex_new_index ( l,
p,
newf,
dupf,
freef )    CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_DH, l, p, newf, dupf, freef)

Definition at line 130 of file dh.h.

◆ DH_NOT_SUITABLE_GENERATOR

#define DH_NOT_SUITABLE_GENERATOR   0x08

Definition at line 75 of file dh.h.

◆ DH_UNABLE_TO_CHECK_GENERATOR

#define DH_UNABLE_TO_CHECK_GENERATOR   0x04

Definition at line 74 of file dh.h.

◆ EVP_PKEY_CTRL_DH_KDF_MD

#define EVP_PKEY_CTRL_DH_KDF_MD   (EVP_PKEY_ALG_CTRL + 7)

Definition at line 318 of file dh.h.

◆ EVP_PKEY_CTRL_DH_KDF_OID

#define EVP_PKEY_CTRL_DH_KDF_OID   (EVP_PKEY_ALG_CTRL + 13)

Definition at line 324 of file dh.h.

◆ EVP_PKEY_CTRL_DH_KDF_OUTLEN

#define EVP_PKEY_CTRL_DH_KDF_OUTLEN   (EVP_PKEY_ALG_CTRL + 9)

Definition at line 320 of file dh.h.

◆ EVP_PKEY_CTRL_DH_KDF_TYPE

#define EVP_PKEY_CTRL_DH_KDF_TYPE   (EVP_PKEY_ALG_CTRL + 6)

Definition at line 317 of file dh.h.

◆ EVP_PKEY_CTRL_DH_KDF_UKM

#define EVP_PKEY_CTRL_DH_KDF_UKM   (EVP_PKEY_ALG_CTRL + 11)

Definition at line 322 of file dh.h.

◆ EVP_PKEY_CTRL_DH_NID

#define EVP_PKEY_CTRL_DH_NID   (EVP_PKEY_ALG_CTRL + 15)

Definition at line 326 of file dh.h.

◆ EVP_PKEY_CTRL_DH_PAD

#define EVP_PKEY_CTRL_DH_PAD   (EVP_PKEY_ALG_CTRL + 16)

Definition at line 327 of file dh.h.

◆ EVP_PKEY_CTRL_DH_PARAMGEN_GENERATOR

#define EVP_PKEY_CTRL_DH_PARAMGEN_GENERATOR   (EVP_PKEY_ALG_CTRL + 2)

Definition at line 313 of file dh.h.

◆ EVP_PKEY_CTRL_DH_PARAMGEN_PRIME_LEN

#define EVP_PKEY_CTRL_DH_PARAMGEN_PRIME_LEN   (EVP_PKEY_ALG_CTRL + 1)

Definition at line 312 of file dh.h.

◆ EVP_PKEY_CTRL_DH_PARAMGEN_SUBPRIME_LEN

#define EVP_PKEY_CTRL_DH_PARAMGEN_SUBPRIME_LEN   (EVP_PKEY_ALG_CTRL + 4)

Definition at line 315 of file dh.h.

◆ EVP_PKEY_CTRL_DH_PARAMGEN_TYPE

#define EVP_PKEY_CTRL_DH_PARAMGEN_TYPE   (EVP_PKEY_ALG_CTRL + 5)

Definition at line 316 of file dh.h.

◆ EVP_PKEY_CTRL_DH_RFC5114

#define EVP_PKEY_CTRL_DH_RFC5114   (EVP_PKEY_ALG_CTRL + 3)

Definition at line 314 of file dh.h.

◆ EVP_PKEY_CTRL_GET_DH_KDF_MD

#define EVP_PKEY_CTRL_GET_DH_KDF_MD   (EVP_PKEY_ALG_CTRL + 8)

Definition at line 319 of file dh.h.

◆ EVP_PKEY_CTRL_GET_DH_KDF_OID

#define EVP_PKEY_CTRL_GET_DH_KDF_OID   (EVP_PKEY_ALG_CTRL + 14)

Definition at line 325 of file dh.h.

◆ EVP_PKEY_CTRL_GET_DH_KDF_OUTLEN

#define EVP_PKEY_CTRL_GET_DH_KDF_OUTLEN   (EVP_PKEY_ALG_CTRL + 10)

Definition at line 321 of file dh.h.

◆ EVP_PKEY_CTRL_GET_DH_KDF_UKM

#define EVP_PKEY_CTRL_GET_DH_KDF_UKM   (EVP_PKEY_ALG_CTRL + 12)

Definition at line 323 of file dh.h.

◆ EVP_PKEY_CTX_get0_dh_kdf_oid

#define EVP_PKEY_CTX_get0_dh_kdf_oid ( ctx,
poid )
Value:
EVP_PKEY_CTRL_GET_DH_KDF_OID, 0, (void *)(poid))
int void BN_CTX * ctx
Definition bn.h:334
#define EVP_PKEY_CTRL_GET_DH_KDF_OID
Definition dh.h:325
#define EVP_PKEY_DHX
Definition evp.h:51
int EVP_PKEY_CTX_ctrl(EVP_PKEY_CTX *ctx, int keytype, int optype, int cmd, int p1, void *p2)
#define EVP_PKEY_OP_DERIVE
Definition evp.h:1263

Definition at line 277 of file dh.h.

◆ EVP_PKEY_CTX_get0_dh_kdf_ukm

#define EVP_PKEY_CTX_get0_dh_kdf_ukm ( ctx,
p )
Value:
#define EVP_PKEY_CTRL_GET_DH_KDF_UKM
Definition dh.h:323
BIGNUM * p
Definition ec.h:274

Definition at line 307 of file dh.h.

◆ EVP_PKEY_CTX_get_dh_kdf_md

#define EVP_PKEY_CTX_get_dh_kdf_md ( ctx,
pmd )
Value:
EVP_PKEY_CTRL_GET_DH_KDF_MD, 0, (void *)(pmd))
#define EVP_PKEY_CTRL_GET_DH_KDF_MD
Definition dh.h:319

Definition at line 287 of file dh.h.

◆ EVP_PKEY_CTX_get_dh_kdf_outlen

#define EVP_PKEY_CTX_get_dh_kdf_outlen ( ctx,
plen )
Value:
EVP_PKEY_CTRL_GET_DH_KDF_OUTLEN, 0, (void *)(plen))
#define EVP_PKEY_CTRL_GET_DH_KDF_OUTLEN
Definition dh.h:321

Definition at line 297 of file dh.h.

◆ EVP_PKEY_CTX_get_dh_kdf_type

#define EVP_PKEY_CTX_get_dh_kdf_type ( ctx)
Value:

Definition at line 267 of file dh.h.

◆ EVP_PKEY_CTX_set0_dh_kdf_oid

#define EVP_PKEY_CTX_set0_dh_kdf_oid ( ctx,
oid )
Value:
EVP_PKEY_CTRL_DH_KDF_OID, 0, (void *)(oid))
#define EVP_PKEY_CTRL_DH_KDF_OID
Definition dh.h:324

Definition at line 272 of file dh.h.

◆ EVP_PKEY_CTX_set0_dh_kdf_ukm

#define EVP_PKEY_CTX_set0_dh_kdf_ukm ( ctx,
p,
plen )
Value:
EVP_PKEY_CTRL_DH_KDF_UKM, plen, (void *)(p))
#define EVP_PKEY_CTRL_DH_KDF_UKM
Definition dh.h:322

Definition at line 302 of file dh.h.

◆ EVP_PKEY_CTX_set_dh_kdf_md

#define EVP_PKEY_CTX_set_dh_kdf_md ( ctx,
md )
Value:
EVP_PKEY_CTRL_DH_KDF_MD, 0, (void *)(md))
#define EVP_PKEY_CTRL_DH_KDF_MD
Definition dh.h:318
const void int const EVP_MD * md
Definition hmac.h:34

Definition at line 282 of file dh.h.

◆ EVP_PKEY_CTX_set_dh_kdf_outlen

#define EVP_PKEY_CTX_set_dh_kdf_outlen ( ctx,
len )
Value:
const unsigned char size_t len
Definition ct.h:348
#define EVP_PKEY_CTRL_DH_KDF_OUTLEN
Definition dh.h:320

Definition at line 292 of file dh.h.

◆ EVP_PKEY_CTX_set_dh_kdf_type

#define EVP_PKEY_CTX_set_dh_kdf_type ( ctx,
kdf )
Value:

Definition at line 262 of file dh.h.

◆ EVP_PKEY_CTX_set_dh_nid

#define EVP_PKEY_CTX_set_dh_nid ( ctx,
nid )
Value:
#define EVP_PKEY_CTRL_DH_NID
Definition dh.h:326
#define EVP_PKEY_OP_KEYGEN
Definition evp.h:1255
#define EVP_PKEY_DH
Definition evp.h:50
#define EVP_PKEY_OP_PARAMGEN
Definition evp.h:1254
int nid
Definition x509.h:927

Definition at line 253 of file dh.h.

◆ EVP_PKEY_CTX_set_dh_pad

#define EVP_PKEY_CTX_set_dh_pad ( ctx,
pad )
Value:

Definition at line 258 of file dh.h.

◆ EVP_PKEY_CTX_set_dh_paramgen_generator

#define EVP_PKEY_CTX_set_dh_paramgen_generator ( ctx,
gen )
Value:

Definition at line 241 of file dh.h.

◆ EVP_PKEY_CTX_set_dh_paramgen_prime_len

#define EVP_PKEY_CTX_set_dh_paramgen_prime_len ( ctx,
len )
Value:

Definition at line 229 of file dh.h.

◆ EVP_PKEY_CTX_set_dh_paramgen_subprime_len

#define EVP_PKEY_CTX_set_dh_paramgen_subprime_len ( ctx,
len )
Value:

Definition at line 233 of file dh.h.

◆ EVP_PKEY_CTX_set_dh_paramgen_type

#define EVP_PKEY_CTX_set_dh_paramgen_type ( ctx,
typ )
Value:

Definition at line 237 of file dh.h.

◆ EVP_PKEY_CTX_set_dh_rfc5114

#define EVP_PKEY_CTX_set_dh_rfc5114 ( ctx,
gen )
Value:

Definition at line 245 of file dh.h.

◆ EVP_PKEY_CTX_set_dhx_rfc5114

#define EVP_PKEY_CTX_set_dhx_rfc5114 ( ctx,
gen )
Value:

Definition at line 249 of file dh.h.

◆ EVP_PKEY_DH_KDF_NONE

#define EVP_PKEY_DH_KDF_NONE   1

Definition at line 330 of file dh.h.

◆ EVP_PKEY_DH_KDF_X9_42

#define EVP_PKEY_DH_KDF_X9_42   2

Definition at line 332 of file dh.h.

◆ i2d_DHparams_bio

#define i2d_DHparams_bio ( bp,
x )    ASN1_i2d_bio_of_const(DH,i2d_DHparams,bp,x)

Definition at line 100 of file dh.h.

◆ i2d_DHparams_fp

#define i2d_DHparams_fp ( fp,
x )    ASN1_i2d_fp(i2d_DHparams,(fp), (unsigned char *)(x))

Definition at line 96 of file dh.h.

◆ i2d_DHxparams_bio

#define i2d_DHxparams_bio ( bp,
x )    ASN1_i2d_bio_of_const(DH, i2d_DHxparams, bp, x)

Definition at line 112 of file dh.h.

◆ i2d_DHxparams_fp

#define i2d_DHxparams_fp ( fp,
x )    ASN1_i2d_fp(i2d_DHxparams,(fp), (unsigned char *)(x))

Definition at line 108 of file dh.h.

◆ OPENSSL_DH_FIPS_MIN_MODULUS_BITS

#define OPENSSL_DH_FIPS_MIN_MODULUS_BITS   1024

Definition at line 33 of file dh.h.

◆ OPENSSL_DH_MAX_MODULUS_BITS

#define OPENSSL_DH_MAX_MODULUS_BITS   10000

Definition at line 30 of file dh.h.

Function Documentation

◆ d2i_DHparams()

DH * d2i_DHparams ( DH ** a,
const unsigned char ** pp,
long length )

◆ d2i_DHxparams()

DH * d2i_DHxparams ( DH ** a,
const unsigned char ** pp,
long length )

◆ DEPRECATEDIN_0_9_8()

DEPRECATEDIN_0_9_8 ( DH * DH_generate_parametersint prime_len, int generator, void(*callback)(int, int, void *), void *cb_arg)

◆ DH_bits()

int DH_bits ( const DH * dh)

◆ DH_check()

int DH_check ( const DH * dh,
int * codes )

◆ DH_check_ex()

int DH_check_ex ( const DH * dh)

◆ DH_check_params()

int DH_check_params ( const DH * dh,
int * ret )

◆ DH_check_params_ex()

int DH_check_params_ex ( const DH * dh)

◆ DH_check_pub_key()

int DH_check_pub_key ( const DH * dh,
const BIGNUM * pub_key,
int * codes )

◆ DH_check_pub_key_ex()

int DH_check_pub_key_ex ( const DH * dh,
const BIGNUM * pub_key )

◆ DH_clear_flags()

void DH_clear_flags ( DH * dh,
int flags )

◆ DH_compute_key()

int DH_compute_key ( unsigned char * key,
const BIGNUM * pub_key,
DH * dh )

◆ DH_compute_key_padded()

int DH_compute_key_padded ( unsigned char * key,
const BIGNUM * pub_key,
DH * dh )

◆ DH_free()

void DH_free ( DH * dh)

◆ DH_generate_key()

int DH_generate_key ( DH * dh)

◆ DH_get0_engine()

ENGINE * DH_get0_engine ( DH * d)

◆ DH_get0_g()

const BIGNUM * DH_get0_g ( const DH * dh)

◆ DH_get0_key()

void DH_get0_key ( const DH * dh,
const BIGNUM ** pub_key,
const BIGNUM ** priv_key )

◆ DH_get0_p()

const BIGNUM * DH_get0_p ( const DH * dh)

◆ DH_get0_pqg()

void DH_get0_pqg ( const DH * dh,
const BIGNUM ** p,
const BIGNUM ** q,
const BIGNUM ** g )

◆ DH_get0_priv_key()

const BIGNUM * DH_get0_priv_key ( const DH * dh)

◆ DH_get0_pub_key()

const BIGNUM * DH_get0_pub_key ( const DH * dh)

◆ DH_get0_q()

const BIGNUM * DH_get0_q ( const DH * dh)

◆ DH_get_1024_160()

DH * DH_get_1024_160 ( void )

◆ DH_get_2048_224()

DH * DH_get_2048_224 ( void )

◆ DH_get_2048_256()

DH * DH_get_2048_256 ( void )

◆ DH_get_default_method()

const DH_METHOD * DH_get_default_method ( void )

◆ DH_get_ex_data()

void * DH_get_ex_data ( DH * d,
int idx )

◆ DH_get_length()

long DH_get_length ( const DH * dh)

◆ DH_get_nid()

int DH_get_nid ( const DH * dh)

◆ DH_KDF_X9_42()

int DH_KDF_X9_42 ( unsigned char * out,
size_t outlen,
const unsigned char * Z,
size_t Zlen,
ASN1_OBJECT * key_oid,
const unsigned char * ukm,
size_t ukmlen,
const EVP_MD * md )

◆ DH_meth_dup()

DH_METHOD * DH_meth_dup ( const DH_METHOD * dhm)

◆ DH_meth_free()

void DH_meth_free ( DH_METHOD * dhm)

◆ DH_meth_get0_app_data()

void * DH_meth_get0_app_data ( const DH_METHOD * dhm)

◆ DH_meth_get0_name()

const char * DH_meth_get0_name ( const DH_METHOD * dhm)

◆ DH_meth_get_flags()

int DH_meth_get_flags ( const DH_METHOD * dhm)

◆ DH_meth_new()

DH_METHOD * DH_meth_new ( const char * name,
int flags )

◆ DH_meth_set0_app_data()

int DH_meth_set0_app_data ( DH_METHOD * dhm,
void * app_data )

◆ DH_meth_set1_name()

int DH_meth_set1_name ( DH_METHOD * dhm,
const char * name )

◆ DH_meth_set_bn_mod_exp()

int DH_meth_set_bn_mod_exp ( DH_METHOD * dhm,
int(*)(const DH *, BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, BN_CTX *, BN_MONT_CTX *) bn_mod_exp )

◆ DH_meth_set_compute_key()

int DH_meth_set_compute_key ( DH_METHOD * dhm,
int(*)(unsigned char *key, const BIGNUM *pub_key, DH *dh) compute_key )

◆ DH_meth_set_finish()

int DH_meth_set_finish ( DH_METHOD * dhm,
int(*)(DH *) finish )

◆ DH_meth_set_flags()

int DH_meth_set_flags ( DH_METHOD * dhm,
int flags )

◆ DH_meth_set_generate_key()

int DH_meth_set_generate_key ( DH_METHOD * dhm,
int(*)(DH *) generate_key )

◆ DH_meth_set_generate_params()

int DH_meth_set_generate_params ( DH_METHOD * dhm,
int(*)(DH *, int, int, BN_GENCB *) generate_params )

◆ DH_meth_set_init()

int DH_meth_set_init ( DH_METHOD * dhm,
int(*)(DH *) init )

◆ DH_new()

DH * DH_new ( void )

◆ DH_new_by_nid()

DH * DH_new_by_nid ( int nid)

◆ DH_new_method()

DH * DH_new_method ( ENGINE * engine)

◆ DH_OpenSSL()

const DH_METHOD * DH_OpenSSL ( void )

◆ DH_security_bits()

int DH_security_bits ( const DH * dh)

◆ DH_set0_key()

int DH_set0_key ( DH * dh,
BIGNUM * pub_key,
BIGNUM * priv_key )

◆ DH_set0_pqg()

int DH_set0_pqg ( DH * dh,
BIGNUM * p,
BIGNUM * q,
BIGNUM * g )

◆ DH_set_default_method()

void DH_set_default_method ( const DH_METHOD * meth)

◆ DH_set_ex_data()

int DH_set_ex_data ( DH * d,
int idx,
void * arg )

◆ DH_set_flags()

void DH_set_flags ( DH * dh,
int flags )

◆ DH_set_length()

int DH_set_length ( DH * dh,
long length )

◆ DH_set_method()

int DH_set_method ( DH * dh,
const DH_METHOD * meth )

◆ DH_size()

int DH_size ( const DH * dh)

◆ DH_test_flags()

int DH_test_flags ( const DH * dh,
int flags )

◆ DH_up_ref()

int DH_up_ref ( DH * dh)

◆ DHparams_dup()

DH * DHparams_dup ( DH * )

◆ DHparams_print()

int DHparams_print ( BIO * bp,
const DH * x )

◆ DHparams_print_fp()

int DHparams_print_fp ( FILE * fp,
const DH * x )

◆ i2d_DHparams()

int i2d_DHparams ( const DH * a,
unsigned char ** pp )

◆ i2d_DHxparams()

int i2d_DHxparams ( const DH * a,
unsigned char ** pp )

Variable Documentation

◆ cb

int int BN_GENCB* cb

Definition at line 143 of file dh.h.

◆ DH_meth_get_bn_mod_exp

int(*)(const DH *, BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, BN_CTX *, BN_MONT_CTX *) DH_meth_get_bn_mod_exp(const DH_METHOD *dhm) ( const DH_METHOD * dhm)

Definition at line 213 of file dh.h.

◆ DH_meth_get_compute_key

int(*)(unsigned char *key, const BIGNUM *pub_key, DH *dh) DH_meth_get_compute_key(const DH_METHOD *dhm) ( const DH_METHOD * dhm)

Definition at line 209 of file dh.h.

◆ DH_meth_get_finish

int(*)(DH *) DH_meth_get_finish(const DH_METHOD *dhm) ( const DH_METHOD * dhm)

Definition at line 221 of file dh.h.

◆ DH_meth_get_generate_key

int(*)(DH *) DH_meth_get_generate_key(const DH_METHOD *dhm) ( const DH_METHOD * dhm)

Definition at line 207 of file dh.h.

◆ DH_meth_get_generate_params

int(*)(DH *, int, int, BN_GENCB *) DH_meth_get_generate_params(const DH_METHOD *dhm) ( const DH_METHOD * dhm)

Definition at line 223 of file dh.h.

◆ DH_meth_get_init

int(*)(DH *) DH_meth_get_init(const DH_METHOD *dhm) ( const DH_METHOD * dhm)

Definition at line 219 of file dh.h.

◆ generator

int int generator

Definition at line 142 of file dh.h.

◆ prime_len

int prime_len

Definition at line 142 of file dh.h.