gnutls_privkey_export_rsa_raw(3)

✨ gnutls_privkey_export_rsa_raw ✨

okay bestie, welcome to the gnutls manual section 3, and today's main character is gnutls_privkey_export_rsa_raw β€” it's an API function, and it's literally the one that pulls your RSA private key's raw parameters out into little datums. no cap. πŸ’…


🌸 NAME 🌸

gnutls_privkey_export_rsa_raw β€” API function


πŸ¦‹ SYNOPSIS πŸ¦‹

#include <gnutls/abstract.h>

int gnutls_privkey_export_rsa_raw(gnutls_privkey_t key, gnutls_datum_t *
m, gnutls_datum_t * e, gnutls_datum_t * d, gnutls_datum_t * p,
gnutls_datum_t * q, gnutls_datum_t * u, gnutls_datum_t * e1,
gnutls_datum_t * e2);

like. she takes a key and hands you back eight datums. eight. that's the whole vibe. πŸŽ€


πŸ’– ARGUMENTS πŸ’–

  • gnutls_privkey_t key β€” holds the certificate 🫢
  • gnutls_datum_t * m β€” will hold the modulus
  • gnutls_datum_t * e β€” will hold the public exponent
  • gnutls_datum_t * d β€” will hold the private exponent
  • gnutls_datum_t * p β€” will hold the first prime (p)
  • gnutls_datum_t * q β€” will hold the second prime (q)
  • gnutls_datum_t * u β€” will hold the coefficient
  • gnutls_datum_t * e1 β€” will hold e1 = d mod (p-1)
  • gnutls_datum_t * e2 β€” will hold e2 = d mod (q-1)
bestie every single one of these is an out-param, so the key itself is the only thing you're giving, and the other eight are just lil empty cups waiting to be filled. πŸ“

πŸ‘‘ DESCRIPTION πŸ‘‘

This function will export the RSA private key's parameters found in the given structure. The new parameters will be allocated using gnutls_malloc() and will be stored in the appropriate datum. For EdDSA keys, the y value should be NULL.

not me reading "the y value" like πŸ‘€ β€” fr fr, if you're dealing with EdDSA keys, that one gets NULL. periodt.

also the way that those params are gnutls_malloc()-ed means the memory is yours now, and you know what that means. free it. iykyk. 🧚


⭐ RETURNS ⭐

GNUTLS_E_SUCCESS on success, otherwise a negative error code.

so like, if it's all good you get GNUTLS_E_SUCCESS, and if it's not... negative error code. vibe check failed. πŸ’€


🌈 SINCE 🌈

3.3.0

she's been iconic since 3.3.0, we love a legacy queen. πŸ‘‘


πŸ™ˆ REPORTING BUGS πŸ™ˆ

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

if something's acting up, tell the bugs email, not me, i'm just the messenger. 🫢


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/

like if the local docs aren't giving, the website ate. ✨


and that's the whole page bestie!! this was gnutls 3.8.13, the gnutls_privkey_export_rsa_raw(3) page, brought to you by the gnutls girlies β€” mwah, love u, go free your datums πŸ’–πŸŽ€πŸ¦‹πŸ’…

πŸ“¦ where this page comes from