Rhonabwy
Create, modify, parse or export Json Web Keys as defined in the RFC 7517
Functions
jws.c File Reference
#include <string.h>
#include <gnutls/gnutls.h>
#include <gnutls/crypto.h>
#include <gnutls/abstract.h>
#include <gnutls/x509.h>
#include <orcania.h>
#include <yder.h>
#include <rhonabwy.h>

Functions

int r_jws_init (jws_t **jws)
 
void r_jws_free (jws_t *jws)
 
jws_tr_jws_copy (jws_t *jws)
 
int r_jws_set_payload (jws_t *jws, const unsigned char *payload, size_t payload_len)
 
const unsigned char * r_jws_get_payload (jws_t *jws, size_t *payload_len)
 
int r_jws_set_alg (jws_t *jws, jwa_alg alg)
 
jwa_alg r_jws_get_alg (jws_t *jws)
 
const char * r_jws_get_kid (jws_t *jws)
 
int r_jws_set_header_str_value (jws_t *jws, const char *key, const char *str_value)
 
int r_jws_set_header_int_value (jws_t *jws, const char *key, int i_value)
 
int r_jws_set_header_json_t_value (jws_t *jws, const char *key, json_t *j_value)
 
const char * r_jws_get_header_str_value (jws_t *jws, const char *key)
 
int r_jws_get_header_int_value (jws_t *jws, const char *key)
 
json_t * r_jws_get_header_json_t_value (jws_t *jws, const char *key)
 
json_t * r_jws_get_full_header_json_t (jws_t *jws)
 
int r_jws_add_keys (jws_t *jws, jwk_t *jwk_privkey, jwk_t *jwk_pubkey)
 
int r_jws_add_jwks (jws_t *jws, jwks_t *jwks_privkey, jwks_t *jwks_pubkey)
 
int r_jws_add_keys_json_str (jws_t *jws, const char *privkey, const char *pubkey)
 
int r_jws_add_keys_json_t (jws_t *jws, json_t *privkey, json_t *pubkey)
 
int r_jws_add_keys_pem_der (jws_t *jws, int format, const unsigned char *privkey, size_t privkey_len, const unsigned char *pubkey, size_t pubkey_len)
 
int r_jws_add_keys_gnutls (jws_t *jws, gnutls_privkey_t privkey, gnutls_pubkey_t pubkey)
 
int r_jws_add_key_symmetric (jws_t *jws, const unsigned char *key, size_t key_len)
 
jwks_tr_jws_get_jwks_privkey (jws_t *jws)
 
jwks_tr_jws_get_jwks_pubkey (jws_t *jws)
 
int r_jws_parsen (jws_t *jws, const char *jws_str, size_t jws_str_len, int x5u_flags)
 
int r_jws_parse (jws_t *jws, const char *jws_str, int x5u_flags)
 
int r_jws_verify_signature (jws_t *jws, jwk_t *jwk_pubkey, int x5u_flags)
 
char * r_jws_serialize (jws_t *jws, jwk_t *jwk_privkey, int x5u_flags)