25 enum lws_jws_jose_hdr_indexes {
55 LWS_COUNT_JOSE_HDR_ELEMENTS
58 enum lws_jose_algtype {
59 LWS_JOSE_ENCTYPE_NONE,
61 LWS_JOSE_ENCTYPE_RSASSA_PKCS1_1_5,
62 LWS_JOSE_ENCTYPE_RSASSA_PKCS1_OAEP,
63 LWS_JOSE_ENCTYPE_RSASSA_PKCS1_PSS,
65 LWS_JOSE_ENCTYPE_ECDSA,
66 LWS_JOSE_ENCTYPE_ECDHES,
68 LWS_JOSE_ENCTYPE_AES_CBC,
69 LWS_JOSE_ENCTYPE_AES_CFB128,
70 LWS_JOSE_ENCTYPE_AES_CFB8,
71 LWS_JOSE_ENCTYPE_AES_CTR,
72 LWS_JOSE_ENCTYPE_AES_ECB,
73 LWS_JOSE_ENCTYPE_AES_OFB,
74 LWS_JOSE_ENCTYPE_AES_XTS,
75 LWS_JOSE_ENCTYPE_AES_GCM,
81 enum lws_genhash_types hash_type;
82 enum lws_genhmac_types hmac_type;
83 enum lws_jose_algtype algtype_signing;
84 enum lws_jose_algtype algtype_crypto;
86 const char *curve_name;
87 unsigned short keybits_min, keybits_fixed;
88 unsigned short ivbits;
104 #define LWS_JWS_MAX_RECIPIENTS 3
136 LWS_VISIBLE LWS_EXTERN
void
137 lws_jose_init(
struct lws_jose *jose);
144 LWS_VISIBLE LWS_EXTERN
void
145 lws_jose_destroy(
struct lws_jose *jose);
155 LWS_VISIBLE LWS_EXTERN
int
156 lws_gencrypto_jws_alg_to_definition(
const char *alg,
167 LWS_VISIBLE LWS_EXTERN
int
168 lws_gencrypto_jwe_alg_to_definition(
const char *alg,
179 LWS_VISIBLE LWS_EXTERN
int
180 lws_gencrypto_jwe_enc_to_definition(
const char *enc,
194 LWS_VISIBLE LWS_EXTERN
int
195 lws_jws_parse_jose(
struct lws_jose *jose,
196 const char *buf,
int len,
char *temp,
int *temp_len);
209 LWS_VISIBLE LWS_EXTERN
int
210 lws_jwe_parse_jose(
struct lws_jose *jose,
211 const char *buf,
int len,
char *temp,
int *temp_len);
Definition: lws-gencrypto.h:92
Definition: lws-jose.h:80
Definition: lws-jose.h:116
Definition: lws-jose.h:106