test: subsys: jwt: fix testing of the features

- Some files (PEM/DER files, jwt-test-cert.c, user-tls-conf.h)
  were removed because they are not used or no longer necessary.
  Private keys used in the test are now in the jwt-test-private.c
  file as arrays.
- testcase.yaml has been improved in order to test all possible
  use cases: ECDSA with TC, ECDSA with PSA, RSA;
- unnecessary Kconfigs were removed from prj.conf.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
This commit is contained in:
Valerio Setti 2024-09-10 16:45:37 +02:00 committed by Anas Nashif
commit 6e8e0ec08e
9 changed files with 153 additions and 326 deletions

View file

@ -1,18 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIC+zCCAeOgAwIBAgIJAIo6NLZ3yCHqMA0GCSqGSIb3DQEBCwUAMBMxETAPBgNV
BAMMCGp3dC10ZXN0MCAXDTE4MDcwMjE3MjExMVoYDzQ3NTYwNTI5MTcyMTExWjAT
MREwDwYDVQQDDAhqd3QtdGVzdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
ggEBAKZSmN8OM9BpYjLEQHzsv5+jNYpRze1Jmb74KT/R16j7xjaCRWTbbXPvU8oC
frCRBr3VZkvqh3ptlaVrZLnWw92yXAOLAFxGFouGyCgNtLE+tg2CIpdbdQIAl8dX
S6CB+y3Iu4E3xI7mfJr5LQzUuCLlO6D+qD5emTZXdiV+/IkXPDnwPC6zPxT1I5aS
Qnsd0AuxRHGJO0Tl6uosZ7vZ45yKGoMe6RPjPAawo5idK6WEZdsjd1nKZHadVAVX
pxDLYux/OfzXUz1GLewR0UIQanM5GBCgz5uIbx6IaIs8MFk/ZrUJZfw3959O1xrG
FmRnZEHAkFHZ2vUlXMBinw3sLNMCAwEAAaNQME4wHQYDVR0OBBYEFINKpDYiVZyi
JlzHhq5Xo0Ax4eTKMB8GA1UdIwQYMBaAFINKpDYiVZyiJlzHhq5Xo0Ax4eTKMAwG
A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBADzE5U+/LiDbI/PS+5o3J5z+
0eYdIOYU4Qe/ltdnt0voRKY1a0WHkYYXoFiONSRuAK/6O3bJByfQCd/NSAObTkPY
R0WPCg2vriztxPxs2fdU2VBh4qB7WM/yNOPpMamCDPZzg5oubVIwecYwZ0V888xV
GfWHwRcKtN7QogNIpGhMJj65MYPuB1cXAdUq7/zpRAewCp472dcUKLzLTHq7z8VU
ko0u1uTemh+xHtJLpVxqq7a6cpgka3DS7qwjz5XUL6UWKyL3uJcUL36ghL0ZwyQv
HngefbPQFMDyyoPh6QPGUMLwgN5pMI5mvdtA0I7z0G67TLpB+hpf+Kgyzx5JjQ0=
-----END CERTIFICATE-----

View file

@ -1,28 +0,0 @@
-----BEGIN PRIVATE KEY-----
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCmUpjfDjPQaWIy
xEB87L+fozWKUc3tSZm++Ck/0deo+8Y2gkVk221z71PKAn6wkQa91WZL6od6bZWl
a2S51sPdslwDiwBcRhaLhsgoDbSxPrYNgiKXW3UCAJfHV0uggfstyLuBN8SO5nya
+S0M1Lgi5Tug/qg+Xpk2V3YlfvyJFzw58Dwusz8U9SOWkkJ7HdALsURxiTtE5erq
LGe72eOcihqDHukT4zwGsKOYnSulhGXbI3dZymR2nVQFV6cQy2Lsfzn811M9Ri3s
EdFCEGpzORgQoM+biG8eiGiLPDBZP2a1CWX8N/efTtcaxhZkZ2RBwJBR2dr1JVzA
Yp8N7CzTAgMBAAECggEAJK3wgriKGrsy6ck4A5TeiaEfrJpv1JW3r1LhHe70JZMo
2lqOXTi7AadVDibQs7W4C+NlBPb627gRGYL+mrFPTrQH8MwVz0OxsyGNQLANGk2f
Lol1gXWs7z0cO9z3k7U2pJkxKMUYtv8DmdW75ql+1ktBhDbE+cQ4+6/8ITbJEJ5R
H8bHUu53l2RibMUEgFC2WiFOUbKRQtHnoY62Q0D/sm9CBdDfnPRdUmsC+45+G/NM
5GQrLFQsk3cEMKZaYHpAaJX3aS46J7U8hIyp/l+mWgKMAT1QB5gh0HxF9IQTgBeT
is39AJfvhW/ZNFhhnP5bDoHy9Sbs13P9RgSy3OX/KQKBgQDUZ+dV6sH267j0lVRY
yKG7h6H13i4hhJjl1t5fxFhvMnd7GCKsa6r1Nregd9SnrXz0GzwPWJjDzopYja5T
6d35WTsfkncqv/kmtuuOLQlOQAW2oIAyHDMg2OjPop825N8Z9Zy/cmFnxonpMTKq
Re25LcSptMKAj7uyI4UtLlBAXQKBgQDIdWrZKcjjTt/wkLS5XxKE3pzSkdowapq8
Etsdc+oMZftgLsOsTXYABN/RXQPt73d2Jda6jeD3VKMrOfoBUqqVt8hhflgXzits
Yr0KJzmUA5LHxHOO+YeMkutqxWZm06skVq41TyzWfuOYn3S+sEAZ+p6VK1xciFzY
7lfpZ7cO7wKBgCTbUr0J21ZpWNK4BsbRKZ9MzcHIJ+ERDSb0vemIPIAvFaR6b6nT
lPqv3/UsVe4yoHgLMcTH7torQL5U92cAMdBOt3+m/p6gaS9alk05a1/0pAkomJYZ
ZpXQjbVZ1p7D4CK1B9oAkv5a6RtZuhzpvXJgiruX7hg42Kz0lOteGfbRAoGAXM3n
crSimYHZsWD9GlkGlNcPGXmG3yVrj6jXIpKYh7brIwNjebC+8ZFQIXiDqjNURjGM
cP/gaAEaLZgAw34HFZtpPKGmnRbJCbvIsxunz3u8B5pOuaGSfKVEMkFDgFV8hS1Q
J8QJCSDjs7QW83Vbp+tcYckaUIidG510u81VdacCgYBo2ciokJD+RYxfuU0dhgIh
6SMH9qqrbLZ58vZTpe6IT0hu9GRQYOGMO32gK1dyGrdU15sNFKQRAfoWvXs7sK1m
goHvTe0oOOsZWPLBUBKcYjYKR0tFSC8i9LQyqw9kOTK0WnOZ1VMod4s/EN9RKRWx
SQRks63lbskp3YQ8R0GSsA==
-----END PRIVATE KEY-----

View file

@ -2,21 +2,10 @@ CONFIG_BASE64=y
CONFIG_JSON_LIBRARY=y
CONFIG_JWT=y
CONFIG_ZTEST=y
# CONFIG_ZTEST_STACK_SIZE=2048
CONFIG_ZTEST_STACK_SIZE=8192
# Enable CSPRNG
CONFIG_ENTROPY_GENERATOR=y
CONFIG_ENTROPY_DEVICE_RANDOM_GENERATOR=y
# Enable MBEDTLS
CONFIG_MBEDTLS=y
CONFIG_MBEDTLS_BUILTIN=y
CONFIG_MBEDTLS_ENABLE_HEAP=y
CONFIG_MBEDTLS_HEAP_SIZE=32700
CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y
CONFIG_MBEDTLS_USER_CONFIG_FILE="user-tls-conf.h"
CONFIG_NET_SOCKETS=y
CONFIG_REQUIRES_FULL_LIBC=y

View file

@ -1,148 +0,0 @@
/*
* Copyright (C) 2018, Linaro, Ltd
* SPDX-License-Identifier: Apache-2.0
*
*/
/* subject:/CN=jwt-test */
/* issuer :/CN=jwt-test */
unsigned char XXX_subject_name[21] = {
0x30, 0x13, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C,
0x08, 0x6A, 0x77, 0x74, 0x2D, 0x74, 0x65, 0x73, 0x74,
};
unsigned char XXX_public_key[294] = {
0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7,
0x0D, 0x01, 0x01,
0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00, 0x30, 0x82, 0x01, 0x0A, 0x02,
0x82, 0x01, 0x01,
0x00, 0xA6, 0x52, 0x98, 0xDF, 0x0E, 0x33, 0xD0, 0x69, 0x62, 0x32, 0xC4, 0x40,
0x7C, 0xEC, 0xBF,
0x9F, 0xA3, 0x35, 0x8A, 0x51, 0xCD, 0xED, 0x49, 0x99, 0xBE, 0xF8, 0x29, 0x3F,
0xD1, 0xD7, 0xA8,
0xFB, 0xC6, 0x36, 0x82, 0x45, 0x64, 0xDB, 0x6D, 0x73, 0xEF, 0x53, 0xCA, 0x02,
0x7E, 0xB0, 0x91,
0x06, 0xBD, 0xD5, 0x66, 0x4B, 0xEA, 0x87, 0x7A, 0x6D, 0x95, 0xA5, 0x6B, 0x64,
0xB9, 0xD6, 0xC3,
0xDD, 0xB2, 0x5C, 0x03, 0x8B, 0x00, 0x5C, 0x46, 0x16, 0x8B, 0x86, 0xC8, 0x28,
0x0D, 0xB4, 0xB1,
0x3E, 0xB6, 0x0D, 0x82, 0x22, 0x97, 0x5B, 0x75, 0x02, 0x00, 0x97, 0xC7, 0x57,
0x4B, 0xA0, 0x81,
0xFB, 0x2D, 0xC8, 0xBB, 0x81, 0x37, 0xC4, 0x8E, 0xE6, 0x7C, 0x9A, 0xF9, 0x2D,
0x0C, 0xD4, 0xB8,
0x22, 0xE5, 0x3B, 0xA0, 0xFE, 0xA8, 0x3E, 0x5E, 0x99, 0x36, 0x57, 0x76, 0x25,
0x7E, 0xFC, 0x89,
0x17, 0x3C, 0x39, 0xF0, 0x3C, 0x2E, 0xB3, 0x3F, 0x14, 0xF5, 0x23, 0x96, 0x92,
0x42, 0x7B, 0x1D,
0xD0, 0x0B, 0xB1, 0x44, 0x71, 0x89, 0x3B, 0x44, 0xE5, 0xEA, 0xEA, 0x2C, 0x67,
0xBB, 0xD9, 0xE3,
0x9C, 0x8A, 0x1A, 0x83, 0x1E, 0xE9, 0x13, 0xE3, 0x3C, 0x06, 0xB0, 0xA3, 0x98,
0x9D, 0x2B, 0xA5,
0x84, 0x65, 0xDB, 0x23, 0x77, 0x59, 0xCA, 0x64, 0x76, 0x9D, 0x54, 0x05, 0x57,
0xA7, 0x10, 0xCB,
0x62, 0xEC, 0x7F, 0x39, 0xFC, 0xD7, 0x53, 0x3D, 0x46, 0x2D, 0xEC, 0x11, 0xD1,
0x42, 0x10, 0x6A,
0x73, 0x39, 0x18, 0x10, 0xA0, 0xCF, 0x9B, 0x88, 0x6F, 0x1E, 0x88, 0x68, 0x8B,
0x3C, 0x30, 0x59,
0x3F, 0x66, 0xB5, 0x09, 0x65, 0xFC, 0x37, 0xF7, 0x9F, 0x4E, 0xD7, 0x1A, 0xC6,
0x16, 0x64, 0x67,
0x64, 0x41, 0xC0, 0x90, 0x51, 0xD9, 0xDA, 0xF5, 0x25, 0x5C, 0xC0, 0x62, 0x9F,
0x0D, 0xEC, 0x2C, 0xD3, 0x02, 0x03, 0x01, 0x00, 0x01,
};
unsigned char XXX_certificate[767] = {
0x30, 0x82, 0x02, 0xFB, 0x30, 0x82, 0x01, 0xE3, 0xA0, 0x03, 0x02, 0x01, 0x02,
0x02, 0x09, 0x00,
0x8A, 0x3A, 0x34, 0xB6, 0x77, 0xC8, 0x21, 0xEA, 0x30, 0x0D, 0x06, 0x09, 0x2A,
0x86, 0x48, 0x86,
0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, 0x13, 0x31, 0x11, 0x30, 0x0F,
0x06, 0x03, 0x55,
0x04, 0x03, 0x0C, 0x08, 0x6A, 0x77, 0x74, 0x2D, 0x74, 0x65, 0x73, 0x74, 0x30,
0x20, 0x17, 0x0D,
0x31, 0x38, 0x30, 0x37, 0x30, 0x32, 0x31, 0x37, 0x32, 0x31, 0x31, 0x31, 0x5A,
0x18, 0x0F, 0x34,
0x37, 0x35, 0x36, 0x30, 0x35, 0x32, 0x39, 0x31, 0x37, 0x32, 0x31, 0x31, 0x31,
0x5A, 0x30, 0x13,
0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x08, 0x6A, 0x77,
0x74, 0x2D, 0x74,
0x65, 0x73, 0x74, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86,
0x48, 0x86, 0xF7,
0x0D, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00, 0x30, 0x82,
0x01, 0x0A, 0x02,
0x82, 0x01, 0x01, 0x00, 0xA6, 0x52, 0x98, 0xDF, 0x0E, 0x33, 0xD0, 0x69, 0x62,
0x32, 0xC4, 0x40,
0x7C, 0xEC, 0xBF, 0x9F, 0xA3, 0x35, 0x8A, 0x51, 0xCD, 0xED, 0x49, 0x99, 0xBE,
0xF8, 0x29, 0x3F,
0xD1, 0xD7, 0xA8, 0xFB, 0xC6, 0x36, 0x82, 0x45, 0x64, 0xDB, 0x6D, 0x73, 0xEF,
0x53, 0xCA, 0x02,
0x7E, 0xB0, 0x91, 0x06, 0xBD, 0xD5, 0x66, 0x4B, 0xEA, 0x87, 0x7A, 0x6D, 0x95,
0xA5, 0x6B, 0x64,
0xB9, 0xD6, 0xC3, 0xDD, 0xB2, 0x5C, 0x03, 0x8B, 0x00, 0x5C, 0x46, 0x16, 0x8B,
0x86, 0xC8, 0x28,
0x0D, 0xB4, 0xB1, 0x3E, 0xB6, 0x0D, 0x82, 0x22, 0x97, 0x5B, 0x75, 0x02, 0x00,
0x97, 0xC7, 0x57,
0x4B, 0xA0, 0x81, 0xFB, 0x2D, 0xC8, 0xBB, 0x81, 0x37, 0xC4, 0x8E, 0xE6, 0x7C,
0x9A, 0xF9, 0x2D,
0x0C, 0xD4, 0xB8, 0x22, 0xE5, 0x3B, 0xA0, 0xFE, 0xA8, 0x3E, 0x5E, 0x99, 0x36,
0x57, 0x76, 0x25,
0x7E, 0xFC, 0x89, 0x17, 0x3C, 0x39, 0xF0, 0x3C, 0x2E, 0xB3, 0x3F, 0x14, 0xF5,
0x23, 0x96, 0x92,
0x42, 0x7B, 0x1D, 0xD0, 0x0B, 0xB1, 0x44, 0x71, 0x89, 0x3B, 0x44, 0xE5, 0xEA,
0xEA, 0x2C, 0x67,
0xBB, 0xD9, 0xE3, 0x9C, 0x8A, 0x1A, 0x83, 0x1E, 0xE9, 0x13, 0xE3, 0x3C, 0x06,
0xB0, 0xA3, 0x98,
0x9D, 0x2B, 0xA5, 0x84, 0x65, 0xDB, 0x23, 0x77, 0x59, 0xCA, 0x64, 0x76, 0x9D,
0x54, 0x05, 0x57,
0xA7, 0x10, 0xCB, 0x62, 0xEC, 0x7F, 0x39, 0xFC, 0xD7, 0x53, 0x3D, 0x46, 0x2D,
0xEC, 0x11, 0xD1,
0x42, 0x10, 0x6A, 0x73, 0x39, 0x18, 0x10, 0xA0, 0xCF, 0x9B, 0x88, 0x6F, 0x1E,
0x88, 0x68, 0x8B,
0x3C, 0x30, 0x59, 0x3F, 0x66, 0xB5, 0x09, 0x65, 0xFC, 0x37, 0xF7, 0x9F, 0x4E,
0xD7, 0x1A, 0xC6,
0x16, 0x64, 0x67, 0x64, 0x41, 0xC0, 0x90, 0x51, 0xD9, 0xDA, 0xF5, 0x25, 0x5C,
0xC0, 0x62, 0x9F,
0x0D, 0xEC, 0x2C, 0xD3, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x50, 0x30, 0x4E,
0x30, 0x1D, 0x06,
0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0x83, 0x4A, 0xA4, 0x36, 0x22,
0x55, 0x9C, 0xA2,
0x26, 0x5C, 0xC7, 0x86, 0xAE, 0x57, 0xA3, 0x40, 0x31, 0xE1, 0xE4, 0xCA, 0x30,
0x1F, 0x06, 0x03,
0x55, 0x1D, 0x23, 0x04, 0x18, 0x30, 0x16, 0x80, 0x14, 0x83, 0x4A, 0xA4, 0x36,
0x22, 0x55, 0x9C,
0xA2, 0x26, 0x5C, 0xC7, 0x86, 0xAE, 0x57, 0xA3, 0x40, 0x31, 0xE1, 0xE4, 0xCA,
0x30, 0x0C, 0x06,
0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, 0x0D,
0x06, 0x09, 0x2A,
0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, 0x82, 0x01,
0x01, 0x00, 0x3C,
0xC4, 0xE5, 0x4F, 0xBF, 0x2E, 0x20, 0xDB, 0x23, 0xF3, 0xD2, 0xFB, 0x9A, 0x37,
0x27, 0x9C, 0xFE,
0xD1, 0xE6, 0x1D, 0x20, 0xE6, 0x14, 0xE1, 0x07, 0xBF, 0x96, 0xD7, 0x67, 0xB7,
0x4B, 0xE8, 0x44,
0xA6, 0x35, 0x6B, 0x45, 0x87, 0x91, 0x86, 0x17, 0xA0, 0x58, 0x8E, 0x35, 0x24,
0x6E, 0x00, 0xAF,
0xFA, 0x3B, 0x76, 0xC9, 0x07, 0x27, 0xD0, 0x09, 0xDF, 0xCD, 0x48, 0x03, 0x9B,
0x4E, 0x43, 0xD8,
0x47, 0x45, 0x8F, 0x0A, 0x0D, 0xAF, 0xAE, 0x2C, 0xED, 0xC4, 0xFC, 0x6C, 0xD9,
0xF7, 0x54, 0xD9,
0x50, 0x61, 0xE2, 0xA0, 0x7B, 0x58, 0xCF, 0xF2, 0x34, 0xE3, 0xE9, 0x31, 0xA9,
0x82, 0x0C, 0xF6,
0x73, 0x83, 0x9A, 0x2E, 0x6D, 0x52, 0x30, 0x79, 0xC6, 0x30, 0x67, 0x45, 0x7C,
0xF3, 0xCC, 0x55,
0x19, 0xF5, 0x87, 0xC1, 0x17, 0x0A, 0xB4, 0xDE, 0xD0, 0xA2, 0x03, 0x48, 0xA4,
0x68, 0x4C, 0x26,
0x3E, 0xB9, 0x31, 0x83, 0xEE, 0x07, 0x57, 0x17, 0x01, 0xD5, 0x2A, 0xEF, 0xFC,
0xE9, 0x44, 0x07,
0xB0, 0x0A, 0x9E, 0x3B, 0xD9, 0xD7, 0x14, 0x28, 0xBC, 0xCB, 0x4C, 0x7A, 0xBB,
0xCF, 0xC5, 0x54,
0x92, 0x8D, 0x2E, 0xD6, 0xE4, 0xDE, 0x9A, 0x1F, 0xB1, 0x1E, 0xD2, 0x4B, 0xA5,
0x5C, 0x6A, 0xAB,
0xB6, 0xBA, 0x72, 0x98, 0x24, 0x6B, 0x70, 0xD2, 0xEE, 0xAC, 0x23, 0xCF, 0x95,
0xD4, 0x2F, 0xA5,
0x16, 0x2B, 0x22, 0xF7, 0xB8, 0x97, 0x14, 0x2F, 0x7E, 0xA0, 0x84, 0xBD, 0x19,
0xC3, 0x24, 0x2F,
0x1E, 0x78, 0x1E, 0x7D, 0xB3, 0xD0, 0x14, 0xC0, 0xF2, 0xCA, 0x83, 0xE1, 0xE9,
0x03, 0xC6, 0x50,
0xC2, 0xF0, 0x80, 0xDE, 0x69, 0x30, 0x8E, 0x66, 0xBD, 0xDB, 0x40, 0xD0, 0x8E,
0xF3, 0xD0, 0x6E,
0xBB, 0x4C, 0xBA, 0x41, 0xFA, 0x1A, 0x5F, 0xF8, 0xA8, 0x32, 0xCF, 0x1E, 0x49,
0x8D, 0x0D,
};

View file

@ -4,109 +4,130 @@
*
*/
#if defined(CONFIG_JWT_SIGN_RSA)
/* To generate the key in the correct format use the following command:
* $ openssl genrsa 2048 | openssl rsa -outform DER | xxd -i
*/
unsigned char jwt_test_private_der[] = {
0x30, 0x82, 0x04, 0xbc, 0x02, 0x01, 0x00, 0x30, 0x0d, 0x06, 0x09, 0x2a,
0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x04, 0x82,
0x04, 0xa6, 0x30, 0x82, 0x04, 0xa2, 0x02, 0x01, 0x00, 0x02, 0x82, 0x01,
0x01, 0x00, 0xa6, 0x52, 0x98, 0xdf, 0x0e, 0x33, 0xd0, 0x69, 0x62, 0x32,
0xc4, 0x40, 0x7c, 0xec, 0xbf, 0x9f, 0xa3, 0x35, 0x8a, 0x51, 0xcd, 0xed,
0x49, 0x99, 0xbe, 0xf8, 0x29, 0x3f, 0xd1, 0xd7, 0xa8, 0xfb, 0xc6, 0x36,
0x82, 0x45, 0x64, 0xdb, 0x6d, 0x73, 0xef, 0x53, 0xca, 0x02, 0x7e, 0xb0,
0x91, 0x06, 0xbd, 0xd5, 0x66, 0x4b, 0xea, 0x87, 0x7a, 0x6d, 0x95, 0xa5,
0x6b, 0x64, 0xb9, 0xd6, 0xc3, 0xdd, 0xb2, 0x5c, 0x03, 0x8b, 0x00, 0x5c,
0x46, 0x16, 0x8b, 0x86, 0xc8, 0x28, 0x0d, 0xb4, 0xb1, 0x3e, 0xb6, 0x0d,
0x82, 0x22, 0x97, 0x5b, 0x75, 0x02, 0x00, 0x97, 0xc7, 0x57, 0x4b, 0xa0,
0x81, 0xfb, 0x2d, 0xc8, 0xbb, 0x81, 0x37, 0xc4, 0x8e, 0xe6, 0x7c, 0x9a,
0xf9, 0x2d, 0x0c, 0xd4, 0xb8, 0x22, 0xe5, 0x3b, 0xa0, 0xfe, 0xa8, 0x3e,
0x5e, 0x99, 0x36, 0x57, 0x76, 0x25, 0x7e, 0xfc, 0x89, 0x17, 0x3c, 0x39,
0xf0, 0x3c, 0x2e, 0xb3, 0x3f, 0x14, 0xf5, 0x23, 0x96, 0x92, 0x42, 0x7b,
0x1d, 0xd0, 0x0b, 0xb1, 0x44, 0x71, 0x89, 0x3b, 0x44, 0xe5, 0xea, 0xea,
0x2c, 0x67, 0xbb, 0xd9, 0xe3, 0x9c, 0x8a, 0x1a, 0x83, 0x1e, 0xe9, 0x13,
0xe3, 0x3c, 0x06, 0xb0, 0xa3, 0x98, 0x9d, 0x2b, 0xa5, 0x84, 0x65, 0xdb,
0x23, 0x77, 0x59, 0xca, 0x64, 0x76, 0x9d, 0x54, 0x05, 0x57, 0xa7, 0x10,
0xcb, 0x62, 0xec, 0x7f, 0x39, 0xfc, 0xd7, 0x53, 0x3d, 0x46, 0x2d, 0xec,
0x11, 0xd1, 0x42, 0x10, 0x6a, 0x73, 0x39, 0x18, 0x10, 0xa0, 0xcf, 0x9b,
0x88, 0x6f, 0x1e, 0x88, 0x68, 0x8b, 0x3c, 0x30, 0x59, 0x3f, 0x66, 0xb5,
0x09, 0x65, 0xfc, 0x37, 0xf7, 0x9f, 0x4e, 0xd7, 0x1a, 0xc6, 0x16, 0x64,
0x67, 0x64, 0x41, 0xc0, 0x90, 0x51, 0xd9, 0xda, 0xf5, 0x25, 0x5c, 0xc0,
0x62, 0x9f, 0x0d, 0xec, 0x2c, 0xd3, 0x02, 0x03, 0x01, 0x00, 0x01, 0x02,
0x82, 0x01, 0x00, 0x24, 0xad, 0xf0, 0x82, 0xb8, 0x8a, 0x1a, 0xbb, 0x32,
0xe9, 0xc9, 0x38, 0x03, 0x94, 0xde, 0x89, 0xa1, 0x1f, 0xac, 0x9a, 0x6f,
0xd4, 0x95, 0xb7, 0xaf, 0x52, 0xe1, 0x1d, 0xee, 0xf4, 0x25, 0x93, 0x28,
0xda, 0x5a, 0x8e, 0x5d, 0x38, 0xbb, 0x01, 0xa7, 0x55, 0x0e, 0x26, 0xd0,
0xb3, 0xb5, 0xb8, 0x0b, 0xe3, 0x65, 0x04, 0xf6, 0xfa, 0xdb, 0xb8, 0x11,
0x19, 0x82, 0xfe, 0x9a, 0xb1, 0x4f, 0x4e, 0xb4, 0x07, 0xf0, 0xcc, 0x15,
0xcf, 0x43, 0xb1, 0xb3, 0x21, 0x8d, 0x40, 0xb0, 0x0d, 0x1a, 0x4d, 0x9f,
0x2e, 0x89, 0x75, 0x81, 0x75, 0xac, 0xef, 0x3d, 0x1c, 0x3b, 0xdc, 0xf7,
0x93, 0xb5, 0x36, 0xa4, 0x99, 0x31, 0x28, 0xc5, 0x18, 0xb6, 0xff, 0x03,
0x99, 0xd5, 0xbb, 0xe6, 0xa9, 0x7e, 0xd6, 0x4b, 0x41, 0x84, 0x36, 0xc4,
0xf9, 0xc4, 0x38, 0xfb, 0xaf, 0xfc, 0x21, 0x36, 0xc9, 0x10, 0x9e, 0x51,
0x1f, 0xc6, 0xc7, 0x52, 0xee, 0x77, 0x97, 0x64, 0x62, 0x6c, 0xc5, 0x04,
0x80, 0x50, 0xb6, 0x5a, 0x21, 0x4e, 0x51, 0xb2, 0x91, 0x42, 0xd1, 0xe7,
0xa1, 0x8e, 0xb6, 0x43, 0x40, 0xff, 0xb2, 0x6f, 0x42, 0x05, 0xd0, 0xdf,
0x9c, 0xf4, 0x5d, 0x52, 0x6b, 0x02, 0xfb, 0x8e, 0x7e, 0x1b, 0xf3, 0x4c,
0xe4, 0x64, 0x2b, 0x2c, 0x54, 0x2c, 0x93, 0x77, 0x04, 0x30, 0xa6, 0x5a,
0x60, 0x7a, 0x40, 0x68, 0x95, 0xf7, 0x69, 0x2e, 0x3a, 0x27, 0xb5, 0x3c,
0x84, 0x8c, 0xa9, 0xfe, 0x5f, 0xa6, 0x5a, 0x02, 0x8c, 0x01, 0x3d, 0x50,
0x07, 0x98, 0x21, 0xd0, 0x7c, 0x45, 0xf4, 0x84, 0x13, 0x80, 0x17, 0x93,
0x8a, 0xcd, 0xfd, 0x00, 0x97, 0xef, 0x85, 0x6f, 0xd9, 0x34, 0x58, 0x61,
0x9c, 0xfe, 0x5b, 0x0e, 0x81, 0xf2, 0xf5, 0x26, 0xec, 0xd7, 0x73, 0xfd,
0x46, 0x04, 0xb2, 0xdc, 0xe5, 0xff, 0x29, 0x02, 0x81, 0x81, 0x00, 0xd4,
0x67, 0xe7, 0x55, 0xea, 0xc1, 0xf6, 0xeb, 0xb8, 0xf4, 0x95, 0x54, 0x58,
0xc8, 0xa1, 0xbb, 0x87, 0xa1, 0xf5, 0xde, 0x2e, 0x21, 0x84, 0x98, 0xe5,
0xd6, 0xde, 0x5f, 0xc4, 0x58, 0x6f, 0x32, 0x77, 0x7b, 0x18, 0x22, 0xac,
0x6b, 0xaa, 0xf5, 0x36, 0xb7, 0xa0, 0x77, 0xd4, 0xa7, 0xad, 0x7c, 0xf4,
0x1b, 0x3c, 0x0f, 0x58, 0x98, 0xc3, 0xce, 0x8a, 0x58, 0x8d, 0xae, 0x53,
0xe9, 0xdd, 0xf9, 0x59, 0x3b, 0x1f, 0x92, 0x77, 0x2a, 0xbf, 0xf9, 0x26,
0xb6, 0xeb, 0x8e, 0x2d, 0x09, 0x4e, 0x40, 0x05, 0xb6, 0xa0, 0x80, 0x32,
0x1c, 0x33, 0x20, 0xd8, 0xe8, 0xcf, 0xa2, 0x9f, 0x36, 0xe4, 0xdf, 0x19,
0xf5, 0x9c, 0xbf, 0x72, 0x61, 0x67, 0xc6, 0x89, 0xe9, 0x31, 0x32, 0xaa,
0x45, 0xed, 0xb9, 0x2d, 0xc4, 0xa9, 0xb4, 0xc2, 0x80, 0x8f, 0xbb, 0xb2,
0x23, 0x85, 0x2d, 0x2e, 0x50, 0x40, 0x5d, 0x02, 0x81, 0x81, 0x00, 0xc8,
0x75, 0x6a, 0xd9, 0x29, 0xc8, 0xe3, 0x4e, 0xdf, 0xf0, 0x90, 0xb4, 0xb9,
0x5f, 0x12, 0x84, 0xde, 0x9c, 0xd2, 0x91, 0xda, 0x30, 0x6a, 0x9a, 0xbc,
0x12, 0xdb, 0x1d, 0x73, 0xea, 0x0c, 0x65, 0xfb, 0x60, 0x2e, 0xc3, 0xac,
0x4d, 0x76, 0x00, 0x04, 0xdf, 0xd1, 0x5d, 0x03, 0xed, 0xef, 0x77, 0x76,
0x25, 0xd6, 0xba, 0x8d, 0xe0, 0xf7, 0x54, 0xa3, 0x2b, 0x39, 0xfa, 0x01,
0x52, 0xaa, 0x95, 0xb7, 0xc8, 0x61, 0x7e, 0x58, 0x17, 0xce, 0x2b, 0x6c,
0x62, 0xbd, 0x0a, 0x27, 0x39, 0x94, 0x03, 0x92, 0xc7, 0xc4, 0x73, 0x8e,
0xf9, 0x87, 0x8c, 0x92, 0xeb, 0x6a, 0xc5, 0x66, 0x66, 0xd3, 0xab, 0x24,
0x56, 0xae, 0x35, 0x4f, 0x2c, 0xd6, 0x7e, 0xe3, 0x98, 0x9f, 0x74, 0xbe,
0xb0, 0x40, 0x19, 0xfa, 0x9e, 0x95, 0x2b, 0x5c, 0x5c, 0x88, 0x5c, 0xd8,
0xee, 0x57, 0xe9, 0x67, 0xb7, 0x0e, 0xef, 0x02, 0x81, 0x80, 0x24, 0xdb,
0x52, 0xbd, 0x09, 0xdb, 0x56, 0x69, 0x58, 0xd2, 0xb8, 0x06, 0xc6, 0xd1,
0x29, 0x9f, 0x4c, 0xcd, 0xc1, 0xc8, 0x27, 0xe1, 0x11, 0x0d, 0x26, 0xf4,
0xbd, 0xe9, 0x88, 0x3c, 0x80, 0x2f, 0x15, 0xa4, 0x7a, 0x6f, 0xa9, 0xd3,
0x94, 0xfa, 0xaf, 0xdf, 0xf5, 0x2c, 0x55, 0xee, 0x32, 0xa0, 0x78, 0x0b,
0x31, 0xc4, 0xc7, 0xee, 0xda, 0x2b, 0x40, 0xbe, 0x54, 0xf7, 0x67, 0x00,
0x31, 0xd0, 0x4e, 0xb7, 0x7f, 0xa6, 0xfe, 0x9e, 0xa0, 0x69, 0x2f, 0x5a,
0x96, 0x4d, 0x39, 0x6b, 0x5f, 0xf4, 0xa4, 0x09, 0x28, 0x98, 0x96, 0x19,
0x66, 0x95, 0xd0, 0x8d, 0xb5, 0x59, 0xd6, 0x9e, 0xc3, 0xe0, 0x22, 0xb5,
0x07, 0xda, 0x00, 0x92, 0xfe, 0x5a, 0xe9, 0x1b, 0x59, 0xba, 0x1c, 0xe9,
0xbd, 0x72, 0x60, 0x8a, 0xbb, 0x97, 0xee, 0x18, 0x38, 0xd8, 0xac, 0xf4,
0x94, 0xeb, 0x5e, 0x19, 0xf6, 0xd1, 0x02, 0x81, 0x80, 0x5c, 0xcd, 0xe7,
0x72, 0xb4, 0xa2, 0x99, 0x81, 0xd9, 0xb1, 0x60, 0xfd, 0x1a, 0x59, 0x06,
0x94, 0xd7, 0x0f, 0x19, 0x79, 0x86, 0xdf, 0x25, 0x6b, 0x8f, 0xa8, 0xd7,
0x22, 0x92, 0x98, 0x87, 0xb6, 0xeb, 0x23, 0x03, 0x63, 0x79, 0xb0, 0xbe,
0xf1, 0x91, 0x50, 0x21, 0x78, 0x83, 0xaa, 0x33, 0x54, 0x46, 0x31, 0x8c,
0x70, 0xff, 0xe0, 0x68, 0x01, 0x1a, 0x2d, 0x98, 0x00, 0xc3, 0x7e, 0x07,
0x15, 0x9b, 0x69, 0x3c, 0xa1, 0xa6, 0x9d, 0x16, 0xc9, 0x09, 0xbb, 0xc8,
0xb3, 0x1b, 0xa7, 0xcf, 0x7b, 0xbc, 0x07, 0x9a, 0x4e, 0xb9, 0xa1, 0x92,
0x7c, 0xa5, 0x44, 0x32, 0x41, 0x43, 0x80, 0x55, 0x7c, 0x85, 0x2d, 0x50,
0x27, 0xc4, 0x09, 0x09, 0x20, 0xe3, 0xb3, 0xb4, 0x16, 0xf3, 0x75, 0x5b,
0xa7, 0xeb, 0x5c, 0x61, 0xc9, 0x1a, 0x50, 0x88, 0x9d, 0x1b, 0x9d, 0x74,
0xbb, 0xcd, 0x55, 0x75, 0xa7, 0x02, 0x81, 0x80, 0x68, 0xd9, 0xc8, 0xa8,
0x90, 0x90, 0xfe, 0x45, 0x8c, 0x5f, 0xb9, 0x4d, 0x1d, 0x86, 0x02, 0x21,
0xe9, 0x23, 0x07, 0xf6, 0xaa, 0xab, 0x6c, 0xb6, 0x79, 0xf2, 0xf6, 0x53,
0xa5, 0xee, 0x88, 0x4f, 0x48, 0x6e, 0xf4, 0x64, 0x50, 0x60, 0xe1, 0x8c,
0x3b, 0x7d, 0xa0, 0x2b, 0x57, 0x72, 0x1a, 0xb7, 0x54, 0xd7, 0x9b, 0x0d,
0x14, 0xa4, 0x11, 0x01, 0xfa, 0x16, 0xbd, 0x7b, 0x3b, 0xb0, 0xad, 0x66,
0x82, 0x81, 0xef, 0x4d, 0xed, 0x28, 0x38, 0xeb, 0x19, 0x58, 0xf2, 0xc1,
0x50, 0x12, 0x9c, 0x62, 0x36, 0x0a, 0x47, 0x4b, 0x45, 0x48, 0x2f, 0x22,
0xf4, 0xb4, 0x32, 0xab, 0x0f, 0x64, 0x39, 0x32, 0xb4, 0x5a, 0x73, 0x99,
0xd5, 0x53, 0x28, 0x77, 0x8b, 0x3f, 0x10, 0xdf, 0x51, 0x29, 0x15, 0xb1,
0x49, 0x04, 0x64, 0xb3, 0xad, 0xe5, 0x6e, 0xc9, 0x29, 0xdd, 0x84, 0x3c,
0x47, 0x41, 0x92, 0xb0
0x30, 0x82, 0x04, 0xa5, 0x02, 0x01, 0x00, 0x02, 0x82, 0x01, 0x01, 0x00,
0xc3, 0x10, 0x4f, 0x09, 0xcb, 0xfa, 0xfc, 0xc6, 0xb3, 0x93, 0x38, 0x00,
0x6b, 0x0c, 0x6a, 0x68, 0xa8, 0x65, 0x0b, 0xf3, 0x88, 0x57, 0x0f, 0x94,
0x5c, 0xf0, 0x93, 0xb1, 0x24, 0xff, 0x3e, 0xe8, 0x6b, 0xf3, 0xbd, 0xd1,
0xd3, 0x9e, 0x64, 0x2e, 0x65, 0xfd, 0x2f, 0x57, 0xe9, 0x8d, 0x12, 0x4b,
0xae, 0x3f, 0xe5, 0x04, 0x77, 0xa9, 0x78, 0x1f, 0x8a, 0xe8, 0x03, 0x6c,
0x06, 0x6f, 0x9e, 0x77, 0x5c, 0xfe, 0x87, 0x2a, 0xb3, 0xb7, 0x7f, 0xaa,
0xe1, 0x9b, 0x2b, 0x79, 0x69, 0xac, 0x06, 0xb3, 0x2e, 0x2f, 0x0d, 0x3a,
0x99, 0x06, 0xf4, 0xb1, 0x0a, 0x3a, 0x90, 0x75, 0x18, 0x29, 0x48, 0xc4,
0x2b, 0xd0, 0x67, 0x41, 0x4b, 0x82, 0x47, 0xf3, 0xae, 0x6d, 0x05, 0x37,
0xe4, 0x4d, 0x7e, 0x19, 0x61, 0x2c, 0xb1, 0x4c, 0x9e, 0x05, 0xcb, 0x98,
0x7d, 0x1c, 0x92, 0x90, 0xff, 0xef, 0xa0, 0x5c, 0x5d, 0xee, 0xa9, 0xce,
0x04, 0x8d, 0xbc, 0xea, 0xb0, 0x37, 0x97, 0x65, 0x95, 0xdb, 0x23, 0xb7,
0x8a, 0x9e, 0x8e, 0x14, 0x08, 0xb1, 0x8a, 0x64, 0x85, 0xc7, 0x55, 0xe0,
0x1e, 0x7f, 0x5a, 0x8c, 0x78, 0xc1, 0x03, 0xcb, 0x0f, 0x8c, 0x51, 0x8d,
0x6f, 0x55, 0x0a, 0x6a, 0xc5, 0x82, 0xf4, 0xf5, 0xae, 0x1a, 0xcb, 0x5a,
0x16, 0x45, 0x0f, 0xe2, 0xc3, 0xb8, 0xd2, 0xe1, 0x50, 0xc7, 0x02, 0xe5,
0xf8, 0xd5, 0x63, 0xb9, 0xd4, 0xc7, 0x6b, 0xf2, 0x03, 0x25, 0xfb, 0x18,
0x64, 0x66, 0xab, 0xbc, 0xd8, 0x04, 0xf8, 0xb9, 0x88, 0x23, 0x5e, 0x6a,
0x27, 0x20, 0xa2, 0x7c, 0xaf, 0x75, 0xad, 0xdc, 0x38, 0xea, 0x03, 0x25,
0x42, 0x39, 0xdd, 0x49, 0xf3, 0xaa, 0xd4, 0x46, 0x98, 0x57, 0x61, 0x1e,
0xc8, 0x56, 0x0e, 0xfc, 0x4b, 0x9a, 0xe2, 0x27, 0xc0, 0x83, 0xc5, 0xde,
0xb2, 0x3e, 0x7d, 0xd9, 0x02, 0x03, 0x01, 0x00, 0x01, 0x02, 0x82, 0x01,
0x00, 0x53, 0x34, 0x7a, 0xb2, 0x70, 0x1b, 0x10, 0x85, 0xe5, 0x85, 0x8f,
0xa6, 0xc6, 0x02, 0xd6, 0xc4, 0xeb, 0xc7, 0xa6, 0x70, 0x6c, 0x20, 0xce,
0xd9, 0x77, 0x47, 0x7b, 0x88, 0x5d, 0x82, 0xaf, 0x1f, 0xcf, 0x24, 0x7a,
0x3c, 0xad, 0xaa, 0xeb, 0x8a, 0xcb, 0x20, 0x53, 0x78, 0x89, 0x7c, 0x0e,
0x68, 0xcf, 0xdc, 0x1b, 0x61, 0x6b, 0x75, 0x93, 0x72, 0xc8, 0xfa, 0xac,
0xb3, 0x00, 0x8f, 0xce, 0x25, 0x96, 0x3a, 0x50, 0x07, 0xcb, 0xff, 0x22,
0xeb, 0x0e, 0x2e, 0xf5, 0x3d, 0x65, 0xf0, 0xe6, 0x2e, 0xba, 0x2d, 0x81,
0xd4, 0x14, 0x00, 0x5e, 0x91, 0xc2, 0x0e, 0x37, 0x1e, 0x6b, 0x7e, 0xf8,
0xb6, 0x0d, 0x06, 0x69, 0x74, 0xf5, 0xb3, 0x8d, 0xe3, 0x88, 0xec, 0xa2,
0x04, 0x34, 0x53, 0x45, 0xcd, 0xa7, 0xa0, 0xbb, 0xc4, 0x35, 0xc7, 0xbd,
0x0f, 0xbf, 0x96, 0x57, 0x82, 0x98, 0x59, 0x6b, 0xaa, 0x1c, 0x05, 0xc6,
0x9a, 0x0b, 0x55, 0xf4, 0x30, 0xd5, 0xf9, 0xb7, 0xe9, 0x90, 0xff, 0x77,
0x8c, 0x92, 0xdd, 0x42, 0x6f, 0xcd, 0x08, 0xff, 0x84, 0x59, 0xed, 0xdf,
0x86, 0x55, 0x9c, 0x30, 0x29, 0x19, 0x55, 0xcc, 0x86, 0x10, 0xd0, 0x4b,
0x59, 0xa4, 0x34, 0xc5, 0x75, 0x0a, 0xca, 0x41, 0xf0, 0x02, 0x97, 0xa1,
0x2b, 0x36, 0x2c, 0xca, 0x5e, 0xca, 0xe6, 0xe7, 0xe0, 0xcb, 0xe8, 0x1d,
0xa0, 0x09, 0x8f, 0x4d, 0xf9, 0x63, 0x97, 0xa2, 0x0a, 0xd8, 0x88, 0x1e,
0x6e, 0xd4, 0x0c, 0x30, 0xad, 0xf2, 0xc7, 0xa7, 0xa8, 0xe2, 0xce, 0x23,
0x3e, 0xa7, 0x02, 0x3d, 0xe3, 0xff, 0xe4, 0xf1, 0x7c, 0xdb, 0xad, 0x88,
0x1e, 0xcd, 0xc7, 0x0e, 0x90, 0xf3, 0xe5, 0xc2, 0x88, 0x37, 0x06, 0xd6,
0x92, 0x4f, 0x67, 0x77, 0xd6, 0x47, 0xc6, 0x59, 0x1a, 0x3a, 0xdf, 0x12,
0x79, 0x60, 0x5e, 0x68, 0x5d, 0x02, 0x81, 0x81, 0x00, 0xe5, 0x79, 0x43,
0xa6, 0x8a, 0x67, 0x71, 0xed, 0x3c, 0xec, 0x75, 0xa8, 0x56, 0x3d, 0x37,
0x39, 0x3d, 0xbd, 0x71, 0x98, 0x4f, 0x6c, 0x65, 0x02, 0x5c, 0xf6, 0x1f,
0xf1, 0x8c, 0xe5, 0x92, 0xd6, 0xe0, 0x60, 0x23, 0x3d, 0x90, 0x07, 0x9c,
0x4c, 0xa6, 0x1d, 0x6f, 0x94, 0x2a, 0x7c, 0x71, 0x40, 0xf3, 0x48, 0x89,
0xb3, 0xe0, 0x7f, 0x28, 0xf9, 0xc4, 0x57, 0xbf, 0x29, 0x9c, 0x74, 0xf1,
0x24, 0x31, 0xdb, 0xd3, 0x8b, 0x04, 0xfa, 0x1f, 0x2d, 0x37, 0x12, 0x96,
0xe2, 0x07, 0xd1, 0x6b, 0x2f, 0x0b, 0xc3, 0x52, 0x51, 0x23, 0x0a, 0x71,
0x5f, 0x44, 0xde, 0x93, 0x60, 0x91, 0x9b, 0x9a, 0x83, 0x0a, 0xc0, 0xd1,
0xaa, 0xbc, 0xc9, 0xab, 0x66, 0xb4, 0x20, 0x7c, 0x72, 0x17, 0x94, 0x9c,
0x3d, 0xd0, 0xc9, 0x08, 0x35, 0xfe, 0xb0, 0x07, 0x16, 0xf0, 0x98, 0xc7,
0x22, 0x6e, 0x83, 0xf4, 0x8f, 0x02, 0x81, 0x81, 0x00, 0xd9, 0x9c, 0xc3,
0x01, 0x27, 0x3c, 0xa6, 0xa1, 0xbe, 0xb1, 0x1e, 0xe8, 0x2e, 0x16, 0xc7,
0xcc, 0x70, 0x27, 0xe5, 0x84, 0xdb, 0xd0, 0x76, 0xdd, 0x45, 0x10, 0xf8,
0x80, 0x41, 0x60, 0x24, 0xfa, 0x04, 0x1e, 0x44, 0x29, 0x31, 0x2e, 0x63,
0x20, 0xe7, 0x44, 0xc2, 0x19, 0x39, 0x83, 0x49, 0xf7, 0x0b, 0x48, 0x76,
0xf0, 0x4a, 0xab, 0xad, 0xc9, 0xfc, 0xcf, 0x06, 0x5e, 0x5b, 0x1b, 0xb9,
0x33, 0xa8, 0xbe, 0x19, 0x23, 0x1f, 0x18, 0xe1, 0x74, 0xb5, 0x7b, 0xfd,
0x56, 0x2e, 0x08, 0xee, 0xe2, 0xa8, 0x2b, 0x8a, 0x24, 0x7f, 0x13, 0xc2,
0xb7, 0xd7, 0x32, 0x58, 0x75, 0xb5, 0x06, 0x8f, 0x40, 0x8d, 0xd8, 0x47,
0x5f, 0x0c, 0xa9, 0x08, 0x65, 0x06, 0x6d, 0x5f, 0xad, 0xa9, 0x1b, 0xcd,
0x7c, 0x4c, 0x49, 0xb7, 0x51, 0x0f, 0x40, 0xf2, 0x7c, 0x46, 0xcc, 0x7f,
0x46, 0xb3, 0x78, 0xab, 0x17, 0x02, 0x81, 0x81, 0x00, 0x9d, 0xaa, 0x8d,
0x0d, 0xcf, 0x88, 0xb5, 0xe1, 0x5f, 0xfb, 0xc3, 0xf7, 0x8e, 0x91, 0x6e,
0xf1, 0x18, 0x77, 0xa2, 0xa6, 0x18, 0xe4, 0x0c, 0x1e, 0xec, 0x8a, 0x7b,
0x76, 0x36, 0xed, 0xc1, 0xcf, 0x7b, 0xc8, 0xf2, 0x4d, 0xa9, 0x39, 0x61,
0x6d, 0xd4, 0xb0, 0xe2, 0xea, 0x35, 0xaa, 0xdd, 0x11, 0xd8, 0x56, 0x5d,
0xae, 0xc6, 0xaf, 0xf8, 0x12, 0x6c, 0x92, 0x31, 0x99, 0x40, 0x93, 0xa4,
0xdf, 0xce, 0x96, 0x10, 0xaa, 0x33, 0x18, 0x3b, 0xf5, 0x90, 0x22, 0x68,
0xa3, 0x12, 0xe6, 0x13, 0xb3, 0xf6, 0x6c, 0x14, 0x92, 0x04, 0xf6, 0x76,
0xe1, 0x13, 0x6b, 0xae, 0x6d, 0x2a, 0x7e, 0x74, 0x52, 0x57, 0x40, 0x16,
0x8f, 0x2e, 0x39, 0x8e, 0x57, 0xf9, 0xa9, 0x5c, 0x77, 0xf3, 0xb5, 0xbb,
0x08, 0x49, 0xfc, 0xe6, 0x74, 0x5a, 0xf2, 0xcd, 0x5c, 0x38, 0xa1, 0x70,
0x29, 0x3b, 0x2f, 0xd5, 0x07, 0x02, 0x81, 0x81, 0x00, 0xa9, 0xe0, 0xa7,
0x96, 0x89, 0xe3, 0xde, 0x0d, 0x1c, 0x49, 0x36, 0xe0, 0x77, 0xc2, 0x4e,
0xdc, 0xf8, 0x9d, 0x1c, 0x9e, 0xb7, 0xde, 0xa8, 0x3c, 0x1a, 0x03, 0xa2,
0x8a, 0xb4, 0xfe, 0x72, 0x3f, 0x3e, 0xe1, 0xc5, 0xc2, 0x06, 0x63, 0xb8,
0xfc, 0xe1, 0xad, 0x9a, 0x7c, 0x88, 0x9a, 0x46, 0x2e, 0x75, 0xff, 0x6e,
0xe2, 0x2c, 0xd8, 0x92, 0xc5, 0xc0, 0xf6, 0x78, 0x79, 0x46, 0x54, 0x81,
0x22, 0xa3, 0xd3, 0x2a, 0xda, 0x71, 0x17, 0x42, 0x41, 0x92, 0xbf, 0xa5,
0x48, 0x16, 0x8d, 0xe0, 0xb6, 0xce, 0x23, 0x97, 0x26, 0xe0, 0x91, 0x33,
0x8b, 0xc2, 0x91, 0xc9, 0xde, 0xb1, 0x9f, 0xda, 0x4a, 0xc1, 0xb0, 0x9a,
0x1e, 0xc8, 0x4a, 0x58, 0x84, 0x4d, 0x1d, 0x2a, 0xf8, 0xed, 0xb0, 0x07,
0x9c, 0xc6, 0x0d, 0x31, 0xef, 0x34, 0xa2, 0x35, 0xe9, 0xf0, 0x77, 0x09,
0xd0, 0xce, 0xa0, 0x1f, 0xa7, 0x02, 0x81, 0x81, 0x00, 0xb0, 0x9d, 0xd2,
0x7f, 0xff, 0xe0, 0x86, 0x3e, 0x5f, 0xfe, 0x83, 0xf6, 0x51, 0xa3, 0x09,
0xb2, 0xb6, 0x4a, 0xe0, 0xdf, 0xd9, 0xdd, 0x2a, 0x9f, 0x68, 0x4c, 0xb2,
0x4f, 0x12, 0x1d, 0x07, 0xb8, 0x75, 0x70, 0x28, 0x7a, 0x49, 0xaa, 0x56,
0x53, 0x7a, 0xc7, 0xbf, 0xbd, 0xea, 0x38, 0x2c, 0xf0, 0x91, 0xf6, 0x71,
0x1e, 0x97, 0x10, 0x20, 0x79, 0x2b, 0x24, 0x6c, 0x1c, 0x7b, 0x2e, 0x96,
0x8c, 0x72, 0x13, 0xc1, 0x60, 0x7c, 0x41, 0x20, 0x8b, 0x36, 0x4c, 0xe2,
0x65, 0x8d, 0xc5, 0x0e, 0x1e, 0x34, 0x01, 0x6d, 0x45, 0x48, 0x86, 0x6e,
0x45, 0x43, 0xf4, 0xff, 0xb8, 0xa0, 0xa8, 0x07, 0x49, 0x54, 0x92, 0x0f,
0x53, 0xe9, 0x2c, 0xd3, 0xdb, 0x6a, 0x8a, 0xeb, 0xc4, 0x15, 0x51, 0xdf,
0x9c, 0x1a, 0x1a, 0x20, 0x8a, 0xed, 0xfe, 0xef, 0xe8, 0xe1, 0x04, 0x14,
0x05, 0xfd, 0x71, 0xb0, 0x3e
};
unsigned int jwt_test_private_der_len = 1216U;
#else /* CONFIG_JWT_SIGN_ECDSA */
/* Here's how to generate the key in the correct format:
* - generate the key using OpenSSL:
* $ openssl ecparam -name prime256v1 -genkey | openssl ec -outform der | xxd -ps
* - copy the content to https://lapo.it/asn1js/
* - get the first OCTECT STRING, which is the private key, and copy it here
*/
unsigned char jwt_test_private_der[] = {
0xAA, 0xE2, 0xA4, 0x5F, 0x3B, 0xC4, 0xCB, 0xA5, 0x0B, 0x17, 0xAE, 0x55,
0x4D, 0x21, 0x1B, 0xB0, 0xCC, 0x71, 0x42, 0x74, 0xBF, 0x1D, 0xC6, 0x5B,
0xF9, 0x50, 0x93, 0x06, 0x7B, 0xCE, 0x9D, 0x75
};
#endif
unsigned int jwt_test_private_der_len = sizeof(jwt_test_private_der);

View file

@ -23,10 +23,6 @@
#include <zephyr/data/json.h>
#include <zephyr/data/jwt.h>
#include <mbedtls/pk.h>
#include <mbedtls/rsa.h>
#include <mbedtls/sha256.h>
extern unsigned char jwt_test_private_der[];
extern unsigned int jwt_test_private_der_len;

View file

@ -1,6 +0,0 @@
#define MBEDTLS_AES_ROM_TABLES
#define MBEDTLS_HAVE_TIME
#define MBEDTLS_HAVE_TIME_DATE
#define MBEDTLS_PLATFORM_TIME_ALT
#define MBEDTLS_PLATFORM_MS_TIME_ALT

View file

@ -1,11 +1,32 @@
common:
filter: CONFIG_FULL_LIBC_SUPPORTED
min_ram: 96
min_flash: 72
timeout: 120
tags: jwt
integration_platforms:
- frdm_k64f
extra_configs:
- CONFIG_TEST_RANDOM_GENERATOR=y
tests:
libraries.encoding.jwt:
min_ram: 96
min_flash: 72
timeout: 120
tags: jwt
filter: CONFIG_ENTROPY_HAS_DRIVER
integration_platforms:
- frdm_k64f
libraries.encoding.jwt.ecdsa.legacy:
extra_configs:
- CONFIG_JWT_SIGN_ECDSA=y
- CONFIG_JWT_USE_LEGACY=y
libraries.encoding.jwt.ecdsa.psa:
extra_configs:
- CONFIG_JWT_SIGN_ECDSA=y
- CONFIG_JWT_USE_PSA=y
- CONFIG_MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG=y
- CONFIG_MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG_ALLOW_NON_CSPRNG=y
libraries.encoding.jwt.rsa.legacy:
filter: CSPRNG_ENABLED
extra_configs:
- CONFIG_JWT_SIGN_RSA=y
- CONFIG_JWT_USE_LEGACY=y
libraries.encoding.jwt.rsa.psa:
extra_configs:
- CONFIG_JWT_SIGN_RSA=y
- CONFIG_JWT_USE_PSA=y
- CONFIG_MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG=y
- CONFIG_MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG_ALLOW_NON_CSPRNG=y