Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
gnutls_hpke_open(3)		     gnutls		     gnutls_hpke_open(3)

NAME
     gnutls_hpke_open - API function

SYNOPSIS
     #include <gnutls/hpke.h>

     int gnutls_hpke_open(gnutls_hpke_context_t ctx, const gnutls_datum_t * aad,
     const gnutls_datum_t * ciphertext, gnutls_datum_t * plaintext);

ARGUMENTS
     gnutls_hpke_context_t ctx
		 The HPKE context to use for opening.

     const gnutls_datum_t * aad
		 The  associated  data (AAD) that was authenticated during seal-
		 ing.

     const gnutls_datum_t * ciphertext
		 The ciphertext received from the sender.

     gnutls_datum_t * plaintext
		 A pointer to a gnutls_datum_t	structure  where  the  resulting
		 plaintext will be stored.

DESCRIPTION
     This  function performs the opening operation of HPKE. It takes the cipher-
     text received from the sender and uses the keys and nonces set  up  in  the
     HPKE context (after decapsulation) to decrypt the ciphertext and verify the
     authentication  tag.  If  the decryption and authentication are successful,
     the resulting plaintext is stored in
      plaintext . If the decryption or authentication fails,  the  function  se-
     curely erases any allocated plaintext and returns an error code.

     This  function  can  be used multiple times with the same HPKE context, but
     the decapsulation function (gnutls_hpke_decap()) must be called once before
     the first call to this function.

      aad should be the same AAD that was provided to gnutls_hpke_seal() on  the
     sender's side.

      ciphertext   should   be	 the  same  ciphertext	that  was  generated  by
     gnutls_hpke_seal() on the sender's side.

     The function will allocate memory for the	plaintext , and  the  caller  is
     responsible  for  freeing	this  memory  using  gnutls_free() when it is no
     longer needed.

RETURNS
     0 on success, or a negative error code on failure

SINCE
     3.8.13

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

COPYRIGHT
     Copyright (C) 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/local/share/doc/gnutls/	directory does not contain the HTML form
     visit

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

gnutls				     3.8.13		     gnutls_hpke_open(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gnutls_hpke_open&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help