| NAME | SYNOPSIS | ARGUMENTS | DESCRIPTION | RETURNS | SINCE | REPORTING BUGS | COPYRIGHT | SEE ALSO | COLOPHON | |
|  | 
gnutls_tpm_privkey_generate(3)    gnutls   gnutls_tpm_privkey_generate(3)
       gnutls_tpm_privkey_generate - API function
       #include <gnutls/tpm.h>
       int gnutls_tpm_privkey_generate(gnutls_pk_algorithm_t pk, unsigned
       int bits, const char * srk_password, const char * key_password,
       gnutls_tpmkey_fmt_t format, gnutls_x509_crt_fmt_t pub_format,
       gnutls_datum_t * privkey, gnutls_datum_t * pubkey, unsigned int
       flags);
       gnutls_pk_algorithm_t pk
                   the public key algorithm
       unsigned int bits
                   the security bits
       const char * srk_password
                   a password to protect the exported key (optional)
       const char * key_password
                   the password for the TPM (optional)
       gnutls_tpmkey_fmt_t format
                   the format of the private key
       gnutls_x509_crt_fmt_t pub_format
                   the format of the public key
       gnutls_datum_t * privkey
                   the generated key
       gnutls_datum_t * pubkey
                   the corresponding public key (may be null)
       unsigned int flags
                   should be a list of GNUTLS_TPM_* flags
       This function will generate a private key in the TPM chip. The
       private key will be generated within the chip and will be exported
       in a wrapped with TPM's master key form. Furthermore the wrapped
       key can be protected with the provided  password .
       Note that bits in TPM is quantized value. If the input value is
       not one of the allowed values, then it will be quantized to one of
       512, 1024, 2048, 4096, 8192 and 16384.
       Allowed flags are:
       On success, GNUTLS_E_SUCCESS (0) is returned, otherwise a negative
       error value.
       3.1.0
       Report bugs to <bugs@gnutls.org>.
       Home page: https://www.gnutls.org
       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.
       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/
       This page is part of the GnuTLS (GnuTLS Transport Layer Security
       Library) project.  Information about the project can be found at
       ⟨http://www.gnutls.org/⟩.  If you have a bug report for this
       manual page, send it to bugs@gnutls.org.  This page was obtained
       from the tarball fetched from
       ⟨https://www.gnupg.org/ftp/gcrypt/gnutls/⟩ on 2025-08-11.  If you
       discover any rendering problems in this HTML version of the page,
       or you believe there is a better or more up-to-date source for the
       page, or you have corrections or improvements to the information
       in this COLOPHON (which is not part of the original manual page),
       send a mail to man-pages@man7.org
gnutls                            3.8.10   gnutls_tpm_privkey_generate(3)