---
name: "gnutls_dh_params_generate2"
section: "3"
platform: "linux"
package: "gnutls"
version: "3.8.13-3"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/gnutls_dh_params_generate2"
---

# gnutls\_dh\_params\_generate2(3)

API function

## NAME

gnutls\_dh\_params\_generate2 - API function

## SYNOPSIS

**#include \<gnutls/gnutls.h\>**

**int gnutls\_dh\_params\_generate2(gnutls\_dh\_params\_t** *dparams***, unsigned int** *bits***);**

## ARGUMENTS

- gnutls\_dh\_params\_t dparams

  The parameters

- unsigned int bits

  is the prime's number of bits

## DESCRIPTION

This function will generate a new pair of prime and generator for use in the Diffie-Hellman key exchange. This may take long time.

It is recommended not to set the number of bits directly, but  use **gnutls\_sec\_param\_to\_pk\_bits()** instead. Also note that the DH parameters are only useful to servers. Since clients use the parameters sent by the server, it's of no use to call this in client side.

The parameters generated are of the DSA form. It also is possible to generate provable parameters (following the Shawe-Taylor algorithm), using **gnutls\_x509\_privkey\_generate2()** with DSA option and the **GNUTLS\_PRIVKEY\_FLAG\_PROVABLE** flag set. These can the be imported with **gnutls\_dh\_params\_import\_dsa()**.

It is no longer recommended for applications to generate parameters. See the "Parameter generation" section in the manual.

## RETURNS

On success, **GNUTLS\_E\_SUCCESS** (0) is returned, otherwise a negative error code is returned.

## REPORTING BUGS

Report bugs to \<bugs@gnutls.org\>.\
 Home page: https://www.gnutls.org

## COPYRIGHT

Copyright © 2001-2023 Free Software Foundation, Inc., and others.\
 Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

## SEE ALSO

The full documentation for **gnutls** is maintained as a Texinfo manual. If the /usr/share/doc/gnutls/ directory does not contain the HTML form visit

- https://www.gnutls.org/manual/
