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

FreeBSD Manual Pages

  
 
  

home | help
gnutls_hpke_decap(3)		    gnutls		  gnutls_hpke_decap(3)

NAME
       gnutls_hpke_decap - API function

SYNOPSIS
       #include	<gnutls/hpke.h>

       int gnutls_hpke_decap(gnutls_hpke_context_t ctx,	const gnutls_datum_t *
       info,   const   gnutls_datum_t	*   enc,  const	 gnutls_privkey_t  re-
       ceiver_privkey, const gnutls_pubkey_t sender_pubkey,  const  gnutls_da-
       tum_t * psk, const gnutls_datum_t * psk_id);

ARGUMENTS
       gnutls_hpke_context_t ctx
		   The HPKE context to use for decapsulation.

       const gnutls_datum_t * info
		   The	application-specific  information that was included in
		   the key schedule (optional).

       const gnutls_datum_t * enc
		   A pointer to	a gnutls_datum_t structure containing the  en-
		   capsulated key received from	the sender.

       const gnutls_privkey_t receiver_privkey
		   The receiver's private key to use for decapsulation.

       const gnutls_pubkey_t sender_pubkey
		   The sender's	public key for AuthDecap operation (optional).

       const gnutls_datum_t * psk
		   The pre-shared key (optional).

       const gnutls_datum_t * psk_id
		   The pre-shared key identifier (optional).

DESCRIPTION
       This  function  performs	 the decapsulation operation of	HPKE. It takes
       the encapsulated	key ( enc ) received from the sender and uses it along
       with the	receiver's private key to derive the shared  secret.  It  then
       uses  this  shared  secret along	with any provided application-specific
       information ( info ) to set up the necessary keys  and  nonces  in  the
       HPKE context for	subsequent sealing and opening operations.

       This  function  must be used once per HPKE context and before any calls
       to gnutls_hpke_open().

	enc should  be	the  same  encapsulated	 key  that  was	 generated  by
       gnutls_hpke_encap() on the sender's side.

	receiver_privkey  must	be a valid private key that is compatible with
       the KEM algorithm specified in the HPKE context and that	corresponds to
       the receiver's public key used during encapsulation.

       For GNUTLS_HPKE_MODE_AUTH or GNUTLS_HPKE_MODE_AUTH_PSK,
	sender_pubkey must be a	valid public key that can be used for  authen-
       tication.  For  GNUTLS_HPKE_MODE_PSK  or	 GNUTLS_HPKE_MODE_AUTH_PSK,  a
       pre-shared key (	psk ) and its identifier ( psk_id ) must be supplied.

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 no-
       tice 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_decap(3)

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

home | help