Lines Matching refs:jwe
26 #include "private-lib-jose-jwe.h"
53 lws_jwe_encrypt_gcm(struct lws_jwe *jwe,
64 if (jwe->jws.map.len[LJWE_ATAG] != LWS_AESGCM_TAG) {
66 __func__, jwe->jws.map.len[LJWE_ATAG]);
70 if (jwe->jws.map.len[LJWE_IV] != LWS_AESGCM_IV) { /* MUST be 96-bit */
72 jwe->jws.map.len[LJWE_IV]);
78 el.len = jwe->jose.enc_alg->keybits_fixed / 8;
90 (uint8_t *)jwe->jws.map.buf[LJWE_IV],
91 (uint8_t *)jwe->jws.map.buf[LJWE_ATAG], &ivs,
99 n = lws_genaes_crypt(&aesctx, (uint8_t *)jwe->jws.map.buf[LJWE_CTXT],
100 jwe->jws.map.len[LJWE_CTXT],
101 (uint8_t *)jwe->jws.map.buf[LJWE_CTXT],
102 (uint8_t *)jwe->jws.map.buf[LJWE_IV],
106 n |= lws_genaes_destroy(&aesctx, (uint8_t *)jwe->jws.map.buf[LJWE_ATAG],
113 return (int)jwe->jws.map.len[LJWE_CTXT];
117 lws_jwe_auth_and_decrypt_gcm(struct lws_jwe *jwe,
129 if (jwe->jws.map.len[LJWE_ATAG] != LWS_AESGCM_TAG) {
131 __func__, jwe->jws.map.len[LJWE_ATAG]);
135 if (jwe->jws.map.len[LJWE_IV] != LWS_AESGCM_IV) { /* MUST be 96-bit */
137 jwe->jws.map.len[LJWE_IV]);
143 el.len = jwe->jose.enc_alg->keybits_fixed / 8;
154 (uint8_t *)jwe->jws.map.buf[LJWE_IV],
155 (uint8_t *)jwe->jws.map.buf[LJWE_ATAG], &ivs, 16);
160 n = lws_genaes_crypt(&aesctx, (uint8_t *)jwe->jws.map.buf[LJWE_CTXT],
161 jwe->jws.map.len[LJWE_CTXT],
162 (uint8_t *)jwe->jws.map.buf[LJWE_CTXT],
163 (uint8_t *)jwe->jws.map.buf[LJWE_IV],
164 (uint8_t *)jwe->jws.map.buf[LJWE_ATAG], &ivs, 16);
172 return (int)jwe->jws.map.len[LJWE_CTXT];