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

FreeBSD Manual Pages

  
 
  

home | help
RS256_PK_NEW(3)		    Library Functions Manual	       RS256_PK_NEW(3)

NAME
       rs256_pk_new, rs256_pk_free, rs256_pk_from_RSA, rs256_pk_from_EVP_PKEY,
       rs256_pk_from_ptr, rs256_pk_to_EVP_PKEY -- FIDO2	COSE RS256 API

SYNOPSIS
       #include	<openssl/rsa.h>
       #include	<fido/rs256.h>

       rs256_pk_t *
       rs256_pk_new(void);

       void
       rs256_pk_free(rs256_pk_t	**pkp);

       int
       rs256_pk_from_EVP_PKEY(rs256_pk_t *pk, const EVP_PKEY *pkey);

       int
       rs256_pk_from_RSA(rs256_pk_t *pk, const RSA *rsa);

       int
       rs256_pk_from_ptr(rs256_pk_t *pk, const void *ptr, size_t len);

       EVP_PKEY	*
       rs256_pk_to_EVP_PKEY(const rs256_pk_t *pk);

DESCRIPTION
       RS256  is  the  name  given  in	the CBOR Object	Signing	and Encryption
       (COSE) RFC to PKCS#1.5 2048-bit RSA with	SHA-256.  The COSE  RS256  API
       of  libfido2  is	 an auxiliary API with routines	to convert between the
       different RSA public key	types used in libfido2 and OpenSSL.

       In libfido2, RS256 public keys are abstracted by	the rs256_pk_t type.

       The rs256_pk_new() function returns a pointer  to  a  newly  allocated,
       empty  rs256_pk_t  type.	  If  memory  cannot be	allocated, NULL	is re-
       turned.

       The rs256_pk_free() function releases the memory	 backing  *pkp,	 where
       *pkp must have been previously allocated	by rs256_pk_new().  On return,
       *pkp  is	 set  to  NULL.	 Either	pkp or *pkp may	be NULL, in which case
       rs256_pk_free() is a NOP.

       The rs256_pk_from_EVP_PKEY() function fills pk  with  the  contents  of
       pkey.  No references to pkey are	kept.

       The rs256_pk_from_RSA() function	fills pk with the contents of rsa.  No
       references to rsa are kept.

       The  rs256_pk_from_ptr()	 function  fills  pk with the contents of ptr,
       where ptr points	to len bytes.  No references to	ptr are	kept.

       The rs256_pk_to_EVP_PKEY() function converts pk to  a  newly  allocated
       EVP_PKEY	 type  with a reference	count of 1.  No	internal references to
       the   returned	pointer	  are	kept.	  If	an    error    occurs,
       rs256_pk_to_EVP_PKEY() returns NULL.

RETURN VALUES
       The	 rs256_pk_from_EVP_PKEY(),	 rs256_pk_from_RSA(),	   and
       rs256_pk_from_ptr() functions return FIDO_OK on success.	 On  error,  a
       different error code defined in <fido/err.h> is returned.

SEE ALSO
       eddsa_pk_new(3),		   es256_pk_new(3),	      es384_pk_new(3),
       fido_assert_verify(3), fido_cred_pubkey_ptr(3)

FreeBSD	Ports 14.quarterly	 July 15, 2022		       RS256_PK_NEW(3)

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

home | help