diff options
| author | Benedict <benedict@0xb8000.de> | 2016-12-09 18:28:21 +0100 |
|---|---|---|
| committer | Benedict <benedict@0xb8000.de> | 2017-02-21 13:00:26 +0100 |
| commit | 6e5aaceed5c89e323acc1ce701f8cdf573058c46 (patch) | |
| tree | 852da958ee723254f8e00601c55de52300791174 /lib/lib5.h | |
| parent | c735b384e726558608b5442bd42f0df7a7e2daf6 (diff) | |
dh: added a dh bignum implementation based on openssl
Diffstat (limited to 'lib/lib5.h')
| -rw-r--r-- | lib/lib5.h | 16 |
1 files changed, 16 insertions, 0 deletions
@@ -19,6 +19,17 @@ struct dh_param { mpz_t s2; }; +struct dh_param_bignum { + BIGNUM *A; + BIGNUM *B; + BIGNUM *a; + BIGNUM *b; + BIGNUM *p; + BIGNUM *g; + BIGNUM *s1; + BIGNUM *s2; +}; + // global openssl context for auxaliry results BN_CTX *ctx; BIO *out; @@ -55,6 +66,11 @@ void dh_generate_secret_keys(struct dh_param *dh); void dh_generate_public_keys(struct dh_param *dh); void dh_get_session_key(struct dh_param *dh); void do_dh_key_exchange(struct dh_param *dh); +void dh_init_bignum(struct dh_param_bignum *dh); +void dh_generate_secret_keys_bignum(struct dh_param_bignum *dh); +void dh_generate_public_keys_bignum(struct dh_param_bignum *dh); +void dh_get_session_key_bignum(struct dh_param_bignum *dh); +void do_dh_key_exchange_bignum(struct dh_param_bignum *dh); void sha1_key_from_dh(struct dh_param *dh, unsigned char *key); void dh_mitm(struct dh_param *dh); int rsa_decrypt_bignum(BIGNUM *message, BIGNUM *res, struct rsa_key_bignum *private); |
