/third_party/libwebsockets/lib/jose/jwk/ |
H A D | jwk.c | 52 lws_jwk_dump(struct lws_jwk *jwk) in lws_jwk_dump() argument 61 switch (jwk->kty) { in lws_jwk_dump() 64 lwsl_err("%s: jwk %p: unknown type\n", __func__, jwk); in lws_jwk_dump() 84 lwsl_info("%s: jwk %p\n", __func__, jwk); in lws_jwk_dump() 87 if (jwk->meta[n].buf && meta_b64[n]) { in lws_jwk_dump() 89 lwsl_hexdump_info(jwk->meta[n].buf, jwk->meta[n].len); in lws_jwk_dump() 91 if (jwk in lws_jwk_dump() 137 lws_jwk_destroy(struct lws_jwk *jwk) lws_jwk_destroy() argument 144 lws_jwk_init_jps(struct lws_jwk_parse_state *jps, struct lws_jwk *jwk, lws_jwk_key_import_callback cb, void *user) lws_jwk_init_jps() argument 161 lws_jwk_dup_oct(struct lws_jwk *jwk, const void *key, int len) lws_jwk_dup_oct() argument 178 lws_jwk_generate(struct lws_context *context, struct lws_jwk *jwk, enum lws_gencrypto_kty kty, int bits, const char *curve) lws_jwk_generate() argument 251 lws_jwk_rfc7638_fingerprint(struct lws_jwk *jwk, char *digest32) lws_jwk_rfc7638_fingerprint() argument 286 lws_jwk_strdup_meta(struct lws_jwk *jwk, enum enum_jwk_meta_tok idx, const char *in, int len) lws_jwk_strdup_meta() argument [all...] |
H A D | jose_key.c | 42 * These are the entire legal token set for names in jwk. 44 * The first version is used to parse a detached single jwk that don't have any 45 * parent JSON context. The second version is used to parse full jwk objects 144 e->buf = lws_malloc(dec_size, "jwk"); in _lws_jwk_set_el_jwk_b64() 164 e->buf = lws_malloc(dec_size, "jwk"); in _lws_jwk_set_el_jwk_b64u() 183 struct lws_jwk *jwk = jps->jwk; in cb_jwk() local 205 if (jps->per_key_cb(jps->jwk, jps->user)) { in cb_jwk() 214 lws_jwk_destroy(jps->jwk); in cb_jwk() 222 * Now we saw the whole jwk an in cb_jwk() 419 lws_jwk_import(struct lws_jwk *jwk, lws_jwk_key_import_callback cb, void *user, const char *in, size_t len) lws_jwk_import() argument 454 lws_jwk_export(struct lws_jwk *jwk, int flags, char *p, int *len) lws_jwk_export() argument 599 lws_jwk_load(struct lws_jwk *jwk, const char *filename, lws_jwk_key_import_callback cb, void *user) lws_jwk_load() argument 624 lws_jwk_save(struct lws_jwk *jwk, const char *filename) lws_jwk_save() argument [all...] |
/third_party/node/test/parallel/ |
H A D | test-webcrypto-export-import-cfrg.js | 22 jwk: { 39 jwk: { 56 jwk: { 73 jwk: { 180 const jwk = keyData[name].jwk; 187 'jwk', 189 kty: jwk.kty, 190 crv: jwk.crv, 191 x: jwk [all...] |
H A D | test-webcrypto-export-import-ec.js | 34 jwk: { 59 jwk: { 79 jwk: { 183 const jwk = keyData[namedCurve].jwk; 190 'jwk', 192 kty: jwk.kty, 193 crv: jwk.crv, 194 x: jwk.x, 195 y: jwk [all...] |
H A D | test-webcrypto-export-import-rsa.js | 50 jwk: { 120 jwk: { 243 jwk: { 381 const jwk = keyData[size].jwk; 388 'jwk', 390 kty: jwk.kty, 391 n: jwk.n, 392 e: jwk.e, 399 'jwk', [all...] |
H A D | test-crypto-key-objects.js | 121 const jwk = { 150 const publicJwk = { kty: jwk.kty, e: jwk.e, n: jwk.n }; 171 const publicKeyFromJwk = createPublicKey({ key: publicJwk, format: 'jwk' }); 177 const privateKeyFromJwk = createPrivateKey({ key: jwk, format: 'jwk' }); 209 keyObject.export({ format: 'jwk' }), 210 { kty: 'RSA', n: jwk.n, e: jwk [all...] |
/third_party/libwebsockets/minimal-examples/api-tests/api-test-jose/ |
H A D | jws.c | 123 struct lws_jwk jwk; in test_jws_HS256() local 128 lws_jws_init(&jws, &jwk, context); in test_jws_HS256() 148 if (lws_jwk_import(&jwk, NULL, NULL, key_jwk, strlen(key_jwk)) < 0) { in test_jws_HS256() 152 if (jwk.kty != LWS_GENCRYPTO_KTY_OCT) { in test_jws_HS256() 153 lwsl_err("%s: unexpected kty %d\n", __func__, jwk.kty); in test_jws_HS256() 180 jwk.e[LWS_GENCRYPTO_OCT_KEYEL_K].buf, in test_jws_HS256() 181 jwk.e[LWS_GENCRYPTO_OCT_KEYEL_K].len)) in test_jws_HS256() 201 if (lws_jws_sig_confirm_compact_b64(buf, lws_ptr_diff_size_t(p, buf), &map, &jwk, context, in test_jws_HS256() 208 lws_jwk_destroy(&jwk); in test_jws_HS256() 222 lws_jwk_destroy(&jwk); in test_jws_HS256() 280 struct lws_jwk jwk; test_jws_RS256() local 415 struct lws_jwk jwk; test_jws_ES256() local 577 struct lws_jwk jwk; test_jws_ES512() local 831 struct lws_jwk jwk; test_jwt_RS256() local [all...] |
H A D | jwk.c | 2 * lws-api-test-jose - RFC7517 jwk tests 281 struct lws_jwk jwk; in test_jwk() local 285 if (lws_jwk_import(&jwk, key_import_callback, NULL, in test_jwk() 292 lws_jwk_destroy(&jwk); in test_jwk() 296 if (lws_jwk_import(&jwk, key_import_callback, NULL, in test_jwk() 303 lws_jwk_destroy(&jwk); in test_jwk() 307 if (lws_jwk_import(&jwk, key_import_callback, NULL, in test_jwk() 314 lws_jwk_destroy(&jwk); in test_jwk() 318 if (lws_jwk_import(&jwk, NULL, NULL, (char *)lws_jwe_ex_b_jwk_json, in test_jwk() 324 lws_jwk_destroy(&jwk); in test_jwk() [all...] |
/third_party/libwebsockets/include/libwebsockets/ |
H A D | lws-jwk.h | 25 /*! \defgroup jwk JSON Web Keys 62 struct lws_jwk *jwk; member 74 * \param jwk: the JWK object to create 75 * \param cb: callback for each jwk-processed key, or NULL if importing a single 84 * There are two ways to use this... with some protocols a single jwk is 91 * s as a temporary jwk, and calls the user-provided callback for each key in 96 lws_jwk_import(struct lws_jwk *jwk, lws_jwk_key_import_callback cb, void *user, 101 * \param jwk: the JWK object to destroy 106 lws_jwk_destroy(struct lws_jwk *jwk); 108 /** lws_jwk_dup_oct() - Set a jwk t [all...] |
H A D | lws-jws.h | 69 struct lws_jwk *jwk; /* the struct lws_jwk containing the signing key */ member 82 * \param jwk: the jwk to use with this jws 86 lws_jws_init(struct lws_jws *jws, struct lws_jwk *jwk, 105 * \param jwk: public key 117 lws_jws_sig_confirm_compact(struct lws_jws_map *map, struct lws_jwk *jwk, 123 struct lws_jwk *jwk, 133 * \param jwk: public key 147 struct lws_jwk *jwk, 156 * \param jwk 534 struct lws_jwk *jwk; global() member [all...] |
/third_party/libwebsockets/lib/tls/openssl/ |
H A D | openssl-x509.c | 473 lws_x509_public_to_jwk(struct lws_jwk *jwk, struct lws_x509_cert *x509, in lws_x509_public_to_jwk() argument 486 memset(jwk, 0, sizeof(*jwk)); in lws_x509_public_to_jwk() 520 jwk->kty = LWS_GENCRYPTO_KTY_EC; in lws_x509_public_to_jwk() 550 EC_GROUP_get_curve_name(ecgroup), jwk)) in lws_x509_public_to_jwk() 578 jwk->kty = LWS_GENCRYPTO_KTY_RSA; in lws_x509_public_to_jwk() 616 jwk->e[n].len = (unsigned int)BN_num_bytes(mpi[n]); in lws_x509_public_to_jwk() 617 jwk->e[n].buf = lws_malloc(jwk->e[n].len, "certkeyimp"); in lws_x509_public_to_jwk() 618 if (!jwk in lws_x509_public_to_jwk() [all...] |
/third_party/libwebsockets/minimal-examples/crypto/minimal-crypto-x509/ |
H A D | main.c | 62 struct lws_jwk jwk; in main() local 66 memset(&jwk, 0, sizeof(jwk)); in main() 122 if (lws_x509_public_to_jwk(&jwk, x509_trusted, in main() 131 lws_jwk_strdup_meta(&jwk, JWK_META_ALG, p, (int)strlen(p)); in main() 134 lws_jwk_dump(&jwk); in main() 135 lws_jwk_destroy(&jwk); in main() 140 if (lws_x509_public_to_jwk(&jwk, x509, "P-256,P-384,P-521", 4096)) { in main() 148 lws_jwk_strdup_meta(&jwk, JWK_META_ALG, p, (int)strlen(p)); in main() 150 lws_jwk_dump(&jwk); in main() [all...] |
/third_party/libwebsockets/minimal-examples/api-tests/api-test-gencrypto/ |
H A D | lws-genec.c | 27 struct lws_jwk jwk; in test_genec1() local 49 if (lws_jwk_import(&jwk, NULL, NULL, (char *)jwk_ec1, in test_genec1() 55 lws_jwk_dump(&jwk); in test_genec1() 57 if (jwk.kty != LWS_GENCRYPTO_KTY_EC) { in test_genec1() 58 lws_jwk_destroy(&jwk); in test_genec1() 59 lwsl_err("%s: jwk is not an EC key\n", __func__); in test_genec1() 66 n = lws_genecdh_set_key(&ctx, jwk.e, LDHS_OURS); in test_genec1() 68 lws_jwk_destroy(&jwk); in test_genec1() 106 lws_jwk_destroy(&jwk); in test_genec1()
|
/third_party/libwebsockets/minimal-examples/crypto/minimal-crypto-jwk/ |
H A D | main.c | 2 * lws-crypto-jwk 75 struct lws_jwk jwk; in main() local 121 if (lws_jwk_generate(context, &jwk, kty, bits, curve)) { in main() 128 lws_jwk_strdup_meta(&jwk, JWK_META_KID, p, (int)strlen(p)); in main() 131 lws_jwk_strdup_meta(&jwk, JWK_META_USE, p, (int)strlen(p)); in main() 134 lws_jwk_strdup_meta(&jwk, JWK_META_ALG, p, (int)strlen(p)); in main() 137 lws_jwk_strdup_meta(&jwk, JWK_META_KEY_OPS, p, (int)strlen(p)); in main() 146 if (lws_jwk_export(&jwk, 0, key, &vl) < 0) { in main() 176 if (lws_jwk_export(&jwk, LWSJWKF_EXPORT_PRIVATE, key, &vl) < 0) { in main() 195 lws_jwk_destroy(&jwk); in main() [all...] |
/third_party/libwebsockets/lib/tls/mbedtls/ |
H A D | mbedtls-x509.c | 379 lws_x509_public_to_jwk(struct lws_jwk *jwk, struct lws_x509_cert *x509, in lws_x509_public_to_jwk() argument 388 memset(jwk, 0, sizeof(*jwk)); in lws_x509_public_to_jwk() 393 jwk->kty = LWS_GENCRYPTO_KTY_RSA; in lws_x509_public_to_jwk() 411 jwk->kty = LWS_GENCRYPTO_KTY_EC; in lws_x509_public_to_jwk() 418 (int)ecpctx->MBEDTLS_PRIVATE(grp).id, jwk)) in lws_x509_public_to_jwk() 435 jwk->e[n].buf = lws_malloc(mbedtls_mpi_size(mpi[n]), "certjwk"); in lws_x509_public_to_jwk() 436 if (!jwk->e[n].buf) in lws_x509_public_to_jwk() 438 jwk->e[n].len = (uint32_t)mbedtls_mpi_size(mpi[n]); in lws_x509_public_to_jwk() 439 mbedtls_mpi_write_binary(mpi[n], jwk in lws_x509_public_to_jwk() 453 lws_x509_jwk_privkey_pem(struct lws_context *cx, struct lws_jwk *jwk, void *pem, size_t len, const char *passphrase) lws_x509_jwk_privkey_pem() argument [all...] |
/third_party/libwebsockets/lib/jose/jws/ |
H A D | jws.c | 164 lws_jws_init(struct lws_jws *jws, struct lws_jwk *jwk, in lws_jws_init() argument 169 jws->jwk = jwk; in lws_jws_init() 188 jws->jwk = NULL; in lws_jws_destroy() 446 struct lws_jwk *jwk, struct lws_context *context) in lws_jws_sig_confirm() 472 if (b != 2 || jwk) in lws_jws_sig_confirm() 480 if (b != 3 || !jwk) { in lws_jws_sig_confirm() 494 if (jwk->kty != LWS_GENCRYPTO_KTY_RSA) in lws_jws_sig_confirm() 521 if (lws_genrsa_create(&rsactx, jwk->e, context, padding, in lws_jws_sig_confirm() 550 jwk in lws_jws_sig_confirm() 445 lws_jws_sig_confirm(struct lws_jws_map *map_b64, struct lws_jws_map *map, struct lws_jwk *jwk, struct lws_context *context) lws_jws_sig_confirm() argument 670 lws_jws_sig_confirm_compact_b64_map(struct lws_jws_map *map_b64, struct lws_jwk *jwk, struct lws_context *context, char *temp, int *temp_len) lws_jws_sig_confirm_compact_b64_map() argument 691 lws_jws_sig_confirm_compact_b64(const char *in, size_t len, struct lws_jws_map *map, struct lws_jwk *jwk, struct lws_context *context, char *temp, int *temp_len) lws_jws_sig_confirm_compact_b64() argument 712 lws_jws_sig_confirm_compact(struct lws_jws_map *map, struct lws_jwk *jwk, struct lws_context *context, char *temp, int *temp_len) lws_jws_sig_confirm_compact() argument 725 lws_jws_sig_confirm_json(const char *in, size_t len, struct lws_jws *jws, struct lws_jwk *jwk, struct lws_context *context, char *temp, int *temp_len) lws_jws_sig_confirm_json() argument 954 lws_jwt_signed_validate(struct lws_context *ctx, struct lws_jwk *jwk, const char *alg_list, const char *com, size_t len, char *temp, int tl, char *out, size_t *out_len) lws_jwt_signed_validate() argument 1042 lws_jwt_vsign_via_info(struct lws_context *ctx, struct lws_jwk *jwk, const struct lws_jwt_sign_info *info, const char *format, va_list ap) lws_jwt_vsign_via_info() argument 1182 lws_jwt_sign_via_info(struct lws_context *ctx, struct lws_jwk *jwk, const struct lws_jwt_sign_info *info, const char *format, ...) lws_jwt_sign_via_info() argument 1197 lws_jwt_sign_compact(struct lws_context *ctx, struct lws_jwk *jwk, const char *alg, char *out, size_t *out_len, char *temp, int tl, const char *format, ...) lws_jwt_sign_compact() argument [all...] |
/third_party/libwebsockets/lib/jose/jwe/ |
H A D | jwe-rsa-aescbc.c | 54 if (jwe->jws.jwk->kty != LWS_GENCRYPTO_KTY_RSA) { in lws_jwe_encrypt_rsa_aes_cbc_hs() 55 lwsl_err("%s: unexpected kty %d\n", __func__, jwe->jws.jwk->kty); in lws_jwe_encrypt_rsa_aes_cbc_hs() 87 jwe->jws.jwk->e[LWS_GENCRYPTO_RSA_KEYEL_N].len)) in lws_jwe_encrypt_rsa_aes_cbc_hs() 100 if (lws_genrsa_create(&rsactx, jwe->jws.jwk->e, jwe->jws.context, in lws_jwe_encrypt_rsa_aes_cbc_hs() 139 if (jwe->jws.jwk->kty != LWS_GENCRYPTO_KTY_RSA) { in lws_jwe_auth_and_decrypt_rsa_aes_cbc_hs() 140 lwsl_err("%s: unexpected kty %d\n", __func__, jwe->jws.jwk->kty); in lws_jwe_auth_and_decrypt_rsa_aes_cbc_hs() 154 if (lws_genrsa_create(&rsactx, jwe->jws.jwk->e, jwe->jws.context, in lws_jwe_auth_and_decrypt_rsa_aes_cbc_hs()
|
H A D | jwe-rsa-aesgcm.c | 38 if (jwe->jws.jwk->kty != LWS_GENCRYPTO_KTY_RSA) { in lws_jwe_encrypt_rsa_aes_gcm() 39 lwsl_err("%s: wrong kty %d\n", __func__, jwe->jws.jwk->kty); in lws_jwe_encrypt_rsa_aes_gcm() 96 if (lws_genrsa_create(&rsactx, jwe->jws.jwk->e, jwe->jws.context, in lws_jwe_encrypt_rsa_aes_gcm() 130 if (jwe->jws.jwk->kty != LWS_GENCRYPTO_KTY_RSA) { in lws_jwe_auth_and_decrypt_rsa_aes_gcm() 131 lwsl_err("%s: unexpected kty %d\n", __func__, jwe->jws.jwk->kty); in lws_jwe_auth_and_decrypt_rsa_aes_gcm() 145 if (lws_genrsa_create(&rsactx, jwe->jws.jwk->e, jwe->jws.context, in lws_jwe_auth_and_decrypt_rsa_aes_gcm()
|
/third_party/libwebsockets/lib/jose/jwe/enc/ |
H A D | aeskw.c | 47 if (jwe->jws.jwk->kty != LWS_GENCRYPTO_KTY_OCT) { in lws_jwe_encrypt_aeskw_cbc_hs() 48 lwsl_err("%s: unexpected kty %d\n", __func__, jwe->jws.jwk->kty); in lws_jwe_encrypt_aeskw_cbc_hs() 87 jwe->jws.jwk->e, 1, NULL)) { in lws_jwe_encrypt_aeskw_cbc_hs() 125 if (jwe->jws.jwk->kty != LWS_GENCRYPTO_KTY_OCT) { in lws_jwe_auth_and_decrypt_aeskw_cbc_hs() 126 lwsl_err("%s: unexpected kty %d\n", __func__, jwe->jws.jwk->kty); in lws_jwe_auth_and_decrypt_aeskw_cbc_hs() 139 jwe->jws.jwk->e, 1, NULL)) { in lws_jwe_auth_and_decrypt_aeskw_cbc_hs()
|
/third_party/libwebsockets/lib/tls/ |
H A D | lws-genec-common.c | 50 struct lws_jwk *jwk) in lws_genec_confirm_curve_allowed_by_tls_id() 73 jwk->e[LWS_GENCRYPTO_EC_KEYEL_CRV].len = (uint32_t)len; in lws_genec_confirm_curve_allowed_by_tls_id() 74 jwk->e[LWS_GENCRYPTO_EC_KEYEL_CRV].buf = in lws_genec_confirm_curve_allowed_by_tls_id() 76 if (!jwk->e[LWS_GENCRYPTO_EC_KEYEL_CRV].buf) { in lws_genec_confirm_curve_allowed_by_tls_id() 80 memcpy(jwk->e[LWS_GENCRYPTO_EC_KEYEL_CRV].buf, in lws_genec_confirm_curve_allowed_by_tls_id() 49 lws_genec_confirm_curve_allowed_by_tls_id(const char *allowed, int id, struct lws_jwk *jwk) lws_genec_confirm_curve_allowed_by_tls_id() argument
|
/third_party/node/test/fixtures/wpt/WebCryptoAPI/import_export/ |
H A D | okp_importKey.https.any.js | 15 jwk: { 27 jwk: { 39 jwk: { 51 jwk: { 76 ['spki', 'jwk', 'raw'].forEach(function(format) { 79 if (format === "jwk") { // Not all fields used for public keys 80 data = {jwk: {kty: keyData[vector.name].jwk.kty, crv: keyData[vector.name].jwk.crv, x: keyData[vector.name].jwk [all...] |
H A D | ec_importKey.https.any.js | 19 jwk: { 34 jwk: { 49 jwk: { 75 ['spki', 'spki_compressed', 'jwk', 'raw', 'raw_compressed'].forEach(function(format) { 78 if (format === "jwk") { // Not all fields used for public keys 79 data = {jwk: {kty: keyData[curve].jwk.kty, crv: keyData[curve].jwk.crv, x: keyData[curve].jwk.x, y: keyData[curve].jwk [all...] |
/third_party/node/lib/internal/crypto/ |
H A D | keys.js | 164 options.format, 'options.format', [undefined, 'buffer', 'jwk']); 165 if (options.format === 'jwk') { 220 if (options && options.format === 'jwk') { 237 if (options && options.format === 'jwk') { 240 'jwk', 'does not support encryption'); 264 else if (formatStr === 'jwk') 476 const jwk = { 485 jwk.d = key.d; 489 const type = handle.initJwk(jwk, jwk [all...] |
H A D | webcrypto.js | 439 const jwk = key[kKeyObject][kHandle].exportJwk({ 445 jwk.alg = normalizeHashName( 448 return jwk; 450 jwk.alg = normalizeHashName( 453 return jwk; 455 jwk.alg = normalizeHashName( 458 return jwk; 462 jwk.crv ||= key.algorithm.namedCurve; 463 return jwk; 467 jwk [all...] |
/third_party/libwebsockets/minimal-examples/crypto/minimal-crypto-jws/ |
H A D | main.c | 27 struct lws_jwk jwk; in main() local 50 lws_jws_init(&jws, &jwk, context); in main() 89 if (lws_jwk_load(&jwk, p, NULL, NULL)) { in main() 95 lwsl_err("-k <jwk file> is required\n"); in main() 170 if (lws_jws_sig_confirm_json(in, (unsigned int)n, &jws, &jwk, context, in main() 187 &map, &jwk, context, in main() 210 lws_jwk_destroy(&jwk); in main()
|