GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
DH_GENERATE_KEY(3) FreeBSD Library Functions Manual DH_GENERATE_KEY(3)

DH_generate_key, DH_compute_keyperform Diffie-Hellman key exchange

#include <openssl/dh.h>

int
DH_generate_key(DH *dh);

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

() performs the first step of a Diffie-Hellman key exchange by generating private and public DH values. By calling DH_compute_key(), these are combined with the other party's public value to compute the shared key.

() expects dh to contain the shared parameters and . It generates a random private DH value unless is already set, and computes the corresponding public value , which can then be published.

() computes the shared secret from the private DH value in dh and the other party's public value in pub_key and stores it in key. key must point to (dh) bytes of memory.

DH_generate_key() returns 1 on success, or 0 otherwise.

DH_compute_key() returns the size of the shared secret on success, or -1 on error.

The error codes can be obtained by ERR_get_error(3).

DH_get0_key(3), DH_new(3), DH_size(3), ECDH_compute_key(3)

DH_generate_key() and DH_compute_key() first appeared in SSLeay 0.5.1 and have been available since OpenBSD 2.4.

August 19, 2019 FreeBSD 14.3-RELEASE

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.