Fixes for building RX TSIP with e2Studio project. Fixed tsip_Tls13GenEccKeyPair incorrect free of key if TSIP not used (ZD18222).

This commit is contained in:
David Garske
2024-07-05 07:44:00 -07:00
parent 7ad0248558
commit 4ae277d21e
6 changed files with 159 additions and 151 deletions

View File

@ -21,8 +21,8 @@
#include <wolfssl/wolfcrypt/wc_port.h> #include <wolfssl/wolfcrypt/wc_port.h>
#define YEAR 2023 #define YEAR 2024
#define MON 5 #define MON 7
static int tick = 0; static int tick = 0;

View File

@ -31,43 +31,43 @@ const st_key_block_data_t g_key_block_data =
{ {
/* uint8_t encrypted_provisioning_key[R_TSIP_AES_CBC_IV_BYTE_SIZE * 2]; */ /* uint8_t encrypted_provisioning_key[R_TSIP_AES_CBC_IV_BYTE_SIZE * 2]; */
{ {
0xDF, 0x78, 0x49, 0x28, 0xA9, 0x4C, 0x36, 0xD6, 0xC9, 0x89, 0x98, 0xDF, 0x68, 0x03, 0xA1, 0x95, 0x3B, 0x93, 0x12, 0xCC, 0x86, 0x5A, 0x3E, 0x24,
0xFF, 0xB1, 0xCB, 0xBC, 0x9F, 0xF4, 0x34, 0xCD, 0x81, 0x53, 0x67, 0xB3, 0xF7, 0xDD, 0x22, 0x31, 0xEC, 0xAB, 0x42, 0x8B, 0x90, 0xC2, 0x8E, 0xDF,
0xFC, 0x85, 0xC6, 0x0B, 0xA2, 0xC8, 0xF4, 0x83 0x56, 0xB3, 0xAE, 0x3A, 0x99, 0x05, 0x34, 0xCD
}, },
/* uint8_t iv[R_TSIP_AES_CBC_IV_BYTE_SIZE]; */ /* uint8_t iv[R_TSIP_AES_CBC_IV_BYTE_SIZE]; */
{ {
0xF6, 0xA9, 0x83, 0x5A, 0xA1, 0x65, 0x1D, 0x28, 0xC8, 0x1A, 0xA6, 0x9D, 0x01, 0x23, 0x45, 0x67, 0x89, 0x01, 0x23, 0x45, 0x67, 0x89, 0x01, 0x23,
0x34, 0xB2, 0x4D, 0x92 0x45, 0x67, 0x89, 0x01
}, },
/* uint8_t /* uint8_t
* encrypted_user_rsa2048_ne_key[R_TSIP_RSA2048_NE_KEY_BYTE_SIZE + 16]; * encrypted_user_rsa2048_ne_key[R_TSIP_RSA2048_NE_KEY_BYTE_SIZE + 16];
*/ */
{ {
0xC8, 0x12, 0x94, 0x44, 0x43, 0x35, 0x82, 0x09, 0xF2, 0x54, 0x69, 0xB6, 0x8F, 0xCE, 0xBA, 0x0C, 0xF6, 0x6F, 0x65, 0x7F, 0xF7, 0xB7, 0x31, 0x11,
0x9B, 0x8E, 0x6F, 0x92, 0xE3, 0x3A, 0xB2, 0x55, 0x63, 0x8D, 0xDB, 0x47, 0x20, 0x17, 0x7D, 0x8F, 0x5B, 0xA4, 0x43, 0x4F, 0x0A, 0x7C, 0x64, 0x24,
0x75, 0x8D, 0x9D, 0x56, 0xD7, 0x7F, 0x42, 0x3A, 0x04, 0x4C, 0xAA, 0xF1, 0x57, 0x03, 0xEB, 0xBB, 0xDD, 0xF4, 0x60, 0x1E, 0x30, 0x97, 0xB1, 0xC7,
0x94, 0x9C, 0x8C, 0x97, 0xAF, 0x5C, 0xBA, 0x0E, 0xBD, 0x8A, 0xE3, 0x67, 0xFA, 0xEF, 0x5D, 0x16, 0x93, 0x16, 0xD6, 0x24, 0xA8, 0xC3, 0xCA, 0x7C,
0x3E, 0xF8, 0x4C, 0x8E, 0xB7, 0x71, 0xB0, 0xCE, 0x09, 0x3C, 0xEC, 0x9C, 0xF4, 0x00, 0x77, 0x0E, 0x62, 0xB1, 0x7E, 0x8E, 0x57, 0x19, 0x91, 0xEC,
0xCC, 0x81, 0x9D, 0x37, 0x9E, 0x34, 0x39, 0x6D, 0xF0, 0x7D, 0x1A, 0x4A, 0x47, 0xE1, 0x81, 0x6F, 0x79, 0x43, 0x51, 0xB9, 0x0A, 0x3F, 0x6B, 0x38,
0xEB, 0xF5, 0x99, 0x91, 0xE1, 0xB0, 0x99, 0x72, 0xB3, 0xF3, 0x2B, 0xE1, 0x9A, 0xB6, 0x2F, 0x97, 0x59, 0xA2, 0x7C, 0x6B, 0xBD, 0x8A, 0xCC, 0x52,
0x6F, 0x5B, 0xD4, 0xA3, 0xB9, 0x9C, 0xEB, 0x95, 0xC3, 0xB2, 0x8F, 0x5C, 0x37, 0x2A, 0x22, 0xC9, 0x60, 0xB8, 0x99, 0x17, 0x2D, 0x94, 0x8B, 0x02,
0x58, 0xD5, 0x0A, 0xAA, 0x02, 0x01, 0xBF, 0xE1, 0xE9, 0x23, 0xFB, 0x03, 0x51, 0xAB, 0xD2, 0x09, 0xEE, 0x08, 0x92, 0x19, 0x68, 0x0F, 0xBB, 0xEE,
0xCF, 0x54, 0x6D, 0x29, 0xE7, 0x5E, 0x96, 0x51, 0x68, 0x6B, 0xDD, 0x06, 0x0F, 0xFF, 0xAF, 0x7F, 0x08, 0x55, 0x81, 0xE6, 0x12, 0x34, 0x12, 0xBD,
0x67, 0x5E, 0x84, 0x50, 0x21, 0x50, 0x78, 0x89, 0x80, 0xF8, 0x61, 0x9C, 0x2C, 0x8E, 0x8E, 0x9D, 0xC3, 0x34, 0x47, 0xF0, 0xF6, 0x01, 0x24, 0x05,
0xBE, 0xDA, 0x75, 0x55, 0x1A, 0xE6, 0x3C, 0xA5, 0x1C, 0xE4, 0x5A, 0x5C, 0x3D, 0x2E, 0x2E, 0x3E, 0x9C, 0x19, 0x8C, 0x99, 0x19, 0x06, 0x93, 0xD0,
0x68, 0x7C, 0x48, 0xC7, 0x6A, 0xC9, 0x80, 0x54, 0x31, 0xE7, 0x65, 0x8A, 0x14, 0x78, 0x89, 0x37, 0x2B, 0xA2, 0xD0, 0xBE, 0x67, 0x7C, 0xC6, 0xB3,
0x13, 0xF3, 0x6D, 0x0F, 0xB3, 0x62, 0x8D, 0x1B, 0xEA, 0x71, 0x12, 0x86, 0x61, 0x85, 0xF9, 0x4E, 0xC7, 0x33, 0x00, 0x45, 0x34, 0x1B, 0x3F, 0xD9,
0x50, 0x98, 0xA3, 0x8E, 0x64, 0x1D, 0x3E, 0xA4, 0x5A, 0x99, 0xB3, 0xBD, 0xF1, 0xA4, 0x4B, 0x82, 0x34, 0x69, 0xF0, 0xE5, 0x4D, 0xCF, 0xC7, 0xAD,
0x3E, 0x3D, 0xF5, 0x0F, 0x41, 0x09, 0xFB, 0x04, 0x7B, 0x8D, 0xA1, 0xCF, 0xD9, 0xF7, 0x86, 0x84, 0x1A, 0x5B, 0x7D, 0xBA, 0x7B, 0xC1, 0xF8, 0xB0,
0xBA, 0x71, 0x85, 0x86, 0x3C, 0x04, 0xDD, 0x74, 0x8D, 0xE3, 0x3C, 0x8E, 0xE4, 0xAB, 0xA3, 0x05, 0xE0, 0xF0, 0x14, 0xDE, 0x8D, 0x7A, 0x98, 0xCA,
0x52, 0x3C, 0x05, 0x7A, 0xBE, 0xCC, 0xEA, 0x9D, 0x57, 0x2C, 0x40, 0x05, 0x02, 0xDE, 0x02, 0xB6, 0xCC, 0xE4, 0xF9, 0x84, 0x1A, 0x1D, 0x5E, 0x00,
0xEE, 0x49, 0x1D, 0xD2, 0xA3, 0x5A, 0xFA, 0x25, 0x1D, 0x1F, 0xDD, 0xB5, 0x64, 0x80, 0x4F, 0x65, 0xDE, 0x48, 0x5D, 0x5C, 0x5C, 0x4B, 0x00, 0xD3,
0x36, 0x7D, 0x25, 0xD3, 0x34, 0x39, 0xC2, 0x59, 0x57, 0xAD, 0x3C, 0x9D, 0x03, 0xF0, 0x77, 0xB2, 0x8F, 0x2A, 0xFE, 0x38, 0x73, 0x2D, 0xFE, 0xDC,
0xC9, 0xBF, 0x09, 0x8D, 0xA0, 0x40, 0x5A, 0x14, 0x7B, 0xCF, 0xFE, 0x05, 0x18, 0xE0, 0x9A, 0xAC, 0x1D, 0x09, 0x41, 0x38, 0x99, 0x4C, 0xA6, 0x0E,
0x3E, 0xF3, 0xD1, 0x7D, 0xBB, 0x33, 0x96, 0x40, 0x79, 0xC2, 0x7B, 0x15, 0x0F, 0xB4, 0xC0, 0x59, 0x38, 0x31, 0xC7, 0x69, 0x8A, 0x6A, 0x94, 0x8E,
0x2E, 0xEE, 0xE3, 0x5B, 0x9C, 0x06, 0x72, 0x95, 0xFF, 0xCB, 0xC9, 0xE4, 0xEE, 0x38, 0x63, 0x2C, 0x4C, 0x0C, 0x65, 0x3F, 0xC6, 0xA2, 0x91, 0x48,
0x96, 0x97, 0x18, 0x0D, 0xE7, 0x78, 0xCD, 0xE9, 0xA7, 0xEA, 0xE9, 0xDF 0x0A, 0xE2, 0x09, 0x50, 0x8F, 0x9E, 0x91, 0xF8, 0xAC, 0x3B, 0xDA, 0xBA
}, },
/* uint8_t encrypted_user_update_key[R_TSIP_AES256_KEY_BYTE_SIZE + 16]; */ /* uint8_t encrypted_user_update_key[R_TSIP_AES256_KEY_BYTE_SIZE + 16]; */
{ {
@ -77,79 +77,79 @@ const st_key_block_data_t g_key_block_data =
* encrypted_user_rsa2048_public_key[R_TSIP_RSA2048_NE_KEY_BYTE_SIZE + 16] * encrypted_user_rsa2048_public_key[R_TSIP_RSA2048_NE_KEY_BYTE_SIZE + 16]
*/ */
{ {
0xAF, 0x8C, 0x78, 0xE3, 0x6C, 0x9E, 0xC6, 0x76, 0xE5, 0x86, 0x84, 0xBE, 0x98, 0x56, 0x6B, 0x74, 0x7E, 0x42, 0xEA, 0x98, 0x9E, 0x78, 0x4F, 0x65,
0xF5, 0x6C, 0xD7, 0x2B, 0x46, 0x24, 0x35, 0x99, 0xA5, 0x64, 0xDD, 0xFA, 0xBD, 0x09, 0x1A, 0xD4, 0x1D, 0xFE, 0xEF, 0x0D, 0x5A, 0xFB, 0x5E, 0x83,
0x35, 0x22, 0x5A, 0xB8, 0x5F, 0xD8, 0x1E, 0xCF, 0xCC, 0x73, 0x10, 0xD6, 0x9B, 0x0A, 0xFC, 0xBB, 0x4F, 0x25, 0xFA, 0x89, 0x5D, 0x9A, 0x0C, 0x84,
0x13, 0x69, 0x8F, 0x36, 0xA9, 0x8E, 0x09, 0xDF, 0x83, 0x20, 0x85, 0xBE, 0xBB, 0xED, 0x6B, 0x87, 0xDA, 0x20, 0x73, 0x6D, 0x1C, 0x5C, 0x81, 0x66,
0x81, 0x69, 0x51, 0x75, 0xCB, 0xA5, 0x90, 0x8C, 0xC1, 0x75, 0xBE, 0x0F, 0x8A, 0x18, 0xAC, 0x4F, 0xC0, 0x15, 0x5C, 0x93, 0x10, 0x5D, 0xA3, 0xAE,
0x8C, 0xB6, 0xFE, 0x73, 0x03, 0x37, 0x03, 0x41, 0xC0, 0x98, 0xC2, 0xEE, 0x2B, 0x2B, 0x82, 0xCE, 0x6E, 0x90, 0xC8, 0x48, 0xFB, 0xAC, 0xCC, 0xBE,
0x2D, 0x1B, 0xDA, 0x10, 0x8B, 0xF6, 0xB6, 0x67, 0xE9, 0x29, 0xCD, 0xEC, 0x70, 0xE7, 0x6C, 0x31, 0x50, 0x55, 0x78, 0xBB, 0x4F, 0xAF, 0xE0, 0x57,
0x4C, 0x4D, 0x84, 0x28, 0x61, 0x3A, 0xF5, 0x6D, 0xEE, 0x78, 0x45, 0xF3, 0x3D, 0x91, 0xCC, 0xB3, 0x80, 0x21, 0xA7, 0x4A, 0xEE, 0x5F, 0x9E, 0xB7,
0x17, 0xC9, 0x77, 0xAB, 0x56, 0x2C, 0x68, 0xCB, 0x14, 0x9F, 0x5A, 0xE7, 0x72, 0x11, 0x90, 0x6D, 0x46, 0x7A, 0xE8, 0xF1, 0xB1, 0xCA, 0xFA, 0x4A,
0x11, 0xC7, 0x13, 0x4B, 0xDC, 0x31, 0x60, 0x77, 0xDA, 0x56, 0x0C, 0x15, 0xA1, 0xBA, 0x1B, 0xEA, 0xD5, 0x8E, 0x02, 0xBF, 0x36, 0x65, 0xFC, 0x43,
0xB2, 0xA9, 0x73, 0x4C, 0xD3, 0x46, 0x29, 0x18, 0x1C, 0x8C, 0xFD, 0xCF, 0x94, 0x19, 0x49, 0xF3, 0x76, 0xD7, 0x84, 0xE5, 0x48, 0x98, 0xD3, 0x74,
0xAC, 0x4B, 0x55, 0x30, 0x96, 0xDC, 0xE9, 0xC0, 0x6A, 0x74, 0x68, 0x1D, 0x3A, 0xB4, 0x93, 0xB6, 0x54, 0xB2, 0x4E, 0x60, 0x8F, 0x9A, 0xA3, 0x1C,
0x6B, 0x25, 0xB0, 0x8F, 0x0C, 0xD7, 0xDD, 0xFC, 0xA8, 0x15, 0x87, 0x3E, 0x13, 0x37, 0x90, 0x63, 0x31, 0x9A, 0x44, 0xA1, 0xA6, 0x78, 0x13, 0x61,
0xA3, 0x91, 0x46, 0x25, 0x6C, 0x6F, 0xC4, 0xB2, 0xE1, 0xB8, 0x5F, 0xF3, 0x6C, 0x3B, 0x7A, 0xB5, 0x49, 0xEF, 0xD7, 0x26, 0x04, 0xA5, 0x27, 0x73,
0x6A, 0x0D, 0x9C, 0x29, 0x08, 0x6F, 0x5E, 0xFF, 0xA0, 0x81, 0x34, 0xA5, 0x0E, 0x1D, 0x35, 0x65, 0x4C, 0xD4, 0xC9, 0x43, 0x9F, 0x2B, 0x98, 0x0F,
0x2B, 0x2B, 0x47, 0xE0, 0x6D, 0x56, 0xD2, 0x52, 0xC7, 0x19, 0x63, 0x72, 0xCA, 0x94, 0x72, 0xE5, 0x41, 0xCC, 0x5F, 0x69, 0xCD, 0x09, 0x27, 0xDF,
0x84, 0x96, 0x64, 0xA5, 0xF2, 0x92, 0x3C, 0x38, 0x37, 0x9F, 0x6A, 0x2D, 0xDC, 0xA3, 0x33, 0x30, 0xFD, 0x9E, 0x66, 0xAE, 0xDA, 0x95, 0xFC, 0xC1,
0x58, 0x33, 0x8C, 0x5C, 0x27, 0x05, 0xCB, 0x4F, 0x62, 0x2F, 0x40, 0xE9, 0x73, 0xCA, 0x5E, 0xB4, 0x18, 0xDF, 0xA3, 0xDD, 0xF5, 0x73, 0xA5, 0x9E,
0x55, 0x2C, 0x75, 0x4B, 0x02, 0xB3, 0x61, 0xAD, 0x34, 0x14, 0x49, 0x26, 0x5C, 0x2E, 0x72, 0x85, 0xCE, 0x19, 0xCC, 0xF4, 0x7A, 0x02, 0x79, 0x7B,
0x94, 0x45, 0x9B, 0xB8, 0xDB, 0x1F, 0xCE, 0xE9, 0xB1, 0xBF, 0x47, 0xF3, 0x1F, 0xDF, 0xBE, 0x77, 0xA4, 0x94, 0x3E, 0x7D, 0x88, 0x2F, 0xF8, 0x2E,
0xD4, 0xAD, 0xEB, 0xBC, 0x4F, 0x61, 0xAD, 0x66, 0xAF, 0x10, 0x94, 0x5D, 0xE9, 0x5D, 0x34, 0xEA, 0x57, 0x8F, 0xF9, 0xB1, 0x22, 0xC6, 0x55, 0xEA,
0x25, 0x5B, 0x52, 0xF3, 0xBC, 0xCE, 0x10, 0x77, 0x76, 0xE4, 0x5C, 0xCF, 0x60, 0xF8, 0xFE, 0xD6, 0x95, 0x72, 0x32, 0x39, 0xBC, 0x54, 0x7C, 0xC4,
0xC3, 0xA4, 0xCC, 0x11, 0xD3, 0x1E, 0x02, 0x98, 0x33, 0xA5, 0xF7, 0xD9, 0x37, 0xD3, 0x82, 0x8B, 0xBF, 0x52, 0x6F, 0x5B, 0x0A, 0x1F, 0xF2, 0xF3,
0x43, 0xAB, 0x45, 0x9A, 0x97, 0x0D, 0x08, 0x03, 0xBD, 0xB2, 0xAB, 0x50 0x99, 0x84, 0x5E, 0x2B, 0xB9, 0x52, 0x7F, 0xF2, 0xF6, 0x30, 0x4D, 0x47
}, },
/* uint8_t /* uint8_t
* encrypted_user_rsa2048_private_key[R_TSIP_RSA2048_ND_KEY_BYTE_SIZE + 16] * encrypted_user_rsa2048_private_key[R_TSIP_RSA2048_ND_KEY_BYTE_SIZE + 16]
*/ */
{ {
0xAF, 0x8C, 0x78, 0xE3, 0x6C, 0x9E, 0xC6, 0x76, 0xE5, 0x86, 0x84, 0xBE, 0x98, 0x56, 0x6B, 0x74, 0x7E, 0x42, 0xEA, 0x98, 0x9E, 0x78, 0x4F, 0x65,
0xF5, 0x6C, 0xD7, 0x2B, 0x46, 0x24, 0x35, 0x99, 0xA5, 0x64, 0xDD, 0xFA, 0xBD, 0x09, 0x1A, 0xD4, 0x1D, 0xFE, 0xEF, 0x0D, 0x5A, 0xFB, 0x5E, 0x83,
0x35, 0x22, 0x5A, 0xB8, 0x5F, 0xD8, 0x1E, 0xCF, 0xCC, 0x73, 0x10, 0xD6, 0x9B, 0x0A, 0xFC, 0xBB, 0x4F, 0x25, 0xFA, 0x89, 0x5D, 0x9A, 0x0C, 0x84,
0x13, 0x69, 0x8F, 0x36, 0xA9, 0x8E, 0x09, 0xDF, 0x83, 0x20, 0x85, 0xBE, 0xBB, 0xED, 0x6B, 0x87, 0xDA, 0x20, 0x73, 0x6D, 0x1C, 0x5C, 0x81, 0x66,
0x81, 0x69, 0x51, 0x75, 0xCB, 0xA5, 0x90, 0x8C, 0xC1, 0x75, 0xBE, 0x0F, 0x8A, 0x18, 0xAC, 0x4F, 0xC0, 0x15, 0x5C, 0x93, 0x10, 0x5D, 0xA3, 0xAE,
0x8C, 0xB6, 0xFE, 0x73, 0x03, 0x37, 0x03, 0x41, 0xC0, 0x98, 0xC2, 0xEE, 0x2B, 0x2B, 0x82, 0xCE, 0x6E, 0x90, 0xC8, 0x48, 0xFB, 0xAC, 0xCC, 0xBE,
0x2D, 0x1B, 0xDA, 0x10, 0x8B, 0xF6, 0xB6, 0x67, 0xE9, 0x29, 0xCD, 0xEC, 0x70, 0xE7, 0x6C, 0x31, 0x50, 0x55, 0x78, 0xBB, 0x4F, 0xAF, 0xE0, 0x57,
0x4C, 0x4D, 0x84, 0x28, 0x61, 0x3A, 0xF5, 0x6D, 0xEE, 0x78, 0x45, 0xF3, 0x3D, 0x91, 0xCC, 0xB3, 0x80, 0x21, 0xA7, 0x4A, 0xEE, 0x5F, 0x9E, 0xB7,
0x17, 0xC9, 0x77, 0xAB, 0x56, 0x2C, 0x68, 0xCB, 0x14, 0x9F, 0x5A, 0xE7, 0x72, 0x11, 0x90, 0x6D, 0x46, 0x7A, 0xE8, 0xF1, 0xB1, 0xCA, 0xFA, 0x4A,
0x11, 0xC7, 0x13, 0x4B, 0xDC, 0x31, 0x60, 0x77, 0xDA, 0x56, 0x0C, 0x15, 0xA1, 0xBA, 0x1B, 0xEA, 0xD5, 0x8E, 0x02, 0xBF, 0x36, 0x65, 0xFC, 0x43,
0xB2, 0xA9, 0x73, 0x4C, 0xD3, 0x46, 0x29, 0x18, 0x1C, 0x8C, 0xFD, 0xCF, 0x94, 0x19, 0x49, 0xF3, 0x76, 0xD7, 0x84, 0xE5, 0x48, 0x98, 0xD3, 0x74,
0xAC, 0x4B, 0x55, 0x30, 0x96, 0xDC, 0xE9, 0xC0, 0x6A, 0x74, 0x68, 0x1D, 0x3A, 0xB4, 0x93, 0xB6, 0x54, 0xB2, 0x4E, 0x60, 0x8F, 0x9A, 0xA3, 0x1C,
0x6B, 0x25, 0xB0, 0x8F, 0x0C, 0xD7, 0xDD, 0xFC, 0xA8, 0x15, 0x87, 0x3E, 0x13, 0x37, 0x90, 0x63, 0x31, 0x9A, 0x44, 0xA1, 0xA6, 0x78, 0x13, 0x61,
0xA3, 0x91, 0x46, 0x25, 0x6C, 0x6F, 0xC4, 0xB2, 0xE1, 0xB8, 0x5F, 0xF3, 0x6C, 0x3B, 0x7A, 0xB5, 0x49, 0xEF, 0xD7, 0x26, 0x04, 0xA5, 0x27, 0x73,
0x6A, 0x0D, 0x9C, 0x29, 0x08, 0x6F, 0x5E, 0xFF, 0xA0, 0x81, 0x34, 0xA5, 0x0E, 0x1D, 0x35, 0x65, 0x4C, 0xD4, 0xC9, 0x43, 0x9F, 0x2B, 0x98, 0x0F,
0x2B, 0x2B, 0x47, 0xE0, 0x6D, 0x56, 0xD2, 0x52, 0xC7, 0x19, 0x63, 0x72, 0xCA, 0x94, 0x72, 0xE5, 0x41, 0xCC, 0x5F, 0x69, 0xCD, 0x09, 0x27, 0xDF,
0x84, 0x96, 0x64, 0xA5, 0xF2, 0x92, 0x3C, 0x38, 0x37, 0x9F, 0x6A, 0x2D, 0xDC, 0xA3, 0x33, 0x30, 0xFD, 0x9E, 0x66, 0xAE, 0xDA, 0x95, 0xFC, 0xC1,
0x58, 0x33, 0x8C, 0x5C, 0x27, 0x05, 0xCB, 0x4F, 0x62, 0x2F, 0x40, 0xE9, 0x73, 0xCA, 0x5E, 0xB4, 0x18, 0xDF, 0xA3, 0xDD, 0xF5, 0x73, 0xA5, 0x9E,
0x55, 0x2C, 0x75, 0x4B, 0x02, 0xB3, 0x61, 0xAD, 0x34, 0x14, 0x49, 0x26, 0x5C, 0x2E, 0x72, 0x85, 0xCE, 0x19, 0xCC, 0xF4, 0x7A, 0x02, 0x79, 0x7B,
0x94, 0x45, 0x9B, 0xB8, 0xDB, 0x1F, 0xCE, 0xE9, 0xB1, 0xBF, 0x47, 0xF3, 0x1F, 0xDF, 0xBE, 0x77, 0xA4, 0x94, 0x3E, 0x7D, 0x88, 0x2F, 0xF8, 0x2E,
0xD4, 0xAD, 0xEB, 0xBC, 0x4F, 0x61, 0xAD, 0x66, 0xAF, 0x10, 0x94, 0x5D, 0xE9, 0x5D, 0x34, 0xEA, 0x57, 0x8F, 0xF9, 0xB1, 0x22, 0xC6, 0x55, 0xEA,
0x25, 0x5B, 0x52, 0xF3, 0x44, 0xBA, 0x28, 0xF8, 0xF2, 0x01, 0x41, 0x61, 0x60, 0xF8, 0xFE, 0xD6, 0x2C, 0x66, 0x49, 0xC1, 0x30, 0x3B, 0xA0, 0xD2,
0xF3, 0xE5, 0x91, 0x44, 0xF9, 0xA3, 0x56, 0xD8, 0xE9, 0x43, 0x0F, 0x78, 0x75, 0x26, 0x72, 0x26, 0x63, 0x90, 0x7B, 0x4A, 0x1D, 0x5A, 0x0F, 0xC5,
0x7E, 0x1C, 0x01, 0xA6, 0xD7, 0x47, 0x87, 0x7C, 0xC5, 0xAF, 0x2A, 0xD3, 0xC5, 0xA1, 0x41, 0x85, 0x46, 0x30, 0x89, 0xC9, 0x59, 0x47, 0x3A, 0xED,
0x71, 0x3A, 0x3E, 0x96, 0xF5, 0x8E, 0xA8, 0x1A, 0x89, 0x17, 0xCD, 0x52, 0x7A, 0xC8, 0x8A, 0x80, 0x78, 0x77, 0x1D, 0x01, 0xDA, 0x25, 0x2F, 0x9F,
0x7E, 0x98, 0x70, 0xB3, 0x57, 0x22, 0x59, 0x1C, 0xB7, 0x61, 0xD3, 0x32, 0x24, 0x75, 0x8D, 0x11, 0xE2, 0x71, 0xAE, 0xD6, 0xBB, 0x87, 0xFC, 0x8F,
0xE5, 0x2E, 0x6B, 0x6F, 0x2B, 0xD2, 0xAB, 0x27, 0x62, 0x65, 0xBE, 0x0B, 0x9F, 0x2C, 0xE4, 0xD7, 0xF0, 0x34, 0xA9, 0xC5, 0x38, 0xAF, 0xD4, 0xC7,
0x8B, 0xFC, 0x9D, 0xB7, 0x3B, 0x4F, 0xA7, 0x35, 0xA6, 0xB3, 0x10, 0x98, 0x2E, 0xE3, 0x67, 0x19, 0x81, 0xE0, 0x07, 0x22, 0x34, 0x63, 0x9D, 0xEE,
0x6D, 0x47, 0x12, 0x16, 0x89, 0x33, 0x9A, 0x87, 0x85, 0x50, 0x21, 0x2B, 0x1E, 0x25, 0xCD, 0x18, 0x94, 0xB4, 0x61, 0x99, 0x52, 0x9E, 0x72, 0x9A,
0x03, 0xD0, 0x0C, 0x25, 0x52, 0xC1, 0xA4, 0xD9, 0x50, 0x57, 0x0A, 0x88, 0xF8, 0x39, 0x4C, 0xBD, 0x9C, 0xD5, 0x1B, 0x81, 0xFE, 0xC5, 0x32, 0x56,
0x67, 0xE9, 0x55, 0x78, 0xFF, 0x23, 0xC0, 0xD1, 0xB6, 0xF4, 0xBD, 0x64, 0x1F, 0x1F, 0x33, 0x11, 0x38, 0xE3, 0x1D, 0x44, 0x84, 0x0C, 0x45, 0x52,
0x38, 0x9A, 0x59, 0xD8, 0x0C, 0xCA, 0x3C, 0x44, 0xBB, 0x31, 0x40, 0xF3, 0x0C, 0xB3, 0x4E, 0x54, 0xDD, 0xB0, 0x43, 0x2C, 0xA2, 0x19, 0xFE, 0xE3,
0x3F, 0x84, 0x74, 0x1A, 0x1B, 0xFB, 0x81, 0x22, 0x20, 0x0E, 0x68, 0x48, 0x5F, 0x70, 0x72, 0x36, 0x35, 0x09, 0x8C, 0x34, 0x1A, 0xA0, 0x6B, 0xE8,
0x7F, 0xBF, 0xBB, 0xE2, 0xF7, 0xEA, 0x1C, 0xDD, 0x63, 0xAA, 0x3E, 0xFE, 0xEC, 0x10, 0x4F, 0x46, 0x4F, 0x40, 0xD2, 0x0A, 0xCC, 0xC5, 0xDD, 0xAC,
0x7A, 0xBD, 0x6C, 0x2A, 0x2C, 0x6C, 0x8E, 0x3C, 0xB6, 0x42, 0x2F, 0x42, 0x64, 0xBC, 0x3D, 0x44, 0x91, 0x5D, 0x5C, 0x65, 0xF2, 0xFC, 0x12, 0xF2,
0xF2, 0x17, 0x07, 0x2F, 0x4F, 0xAA, 0x4B, 0xA0, 0xE7, 0x98, 0xAE, 0x95, 0x15, 0xA9, 0x4F, 0x71, 0xEB, 0x41, 0x59, 0x49, 0x3B, 0xA1, 0x2C, 0x6A,
0x21, 0x2A, 0xF8, 0x1C, 0x33, 0x81, 0xC2, 0x64, 0xEC, 0xF3, 0xD7, 0x75, 0xAD, 0xA6, 0x88, 0x37, 0xB5, 0xE5, 0x0B, 0xF2, 0x74, 0x09, 0x5D, 0xBF,
0x81, 0x61, 0x8C, 0xDF, 0x7F, 0x76, 0x6B, 0x44, 0x22, 0x36, 0xD3, 0x7F, 0x8A, 0x04, 0x9E, 0x74, 0x0C, 0xB4, 0xC8, 0xE1, 0xA4, 0xD9, 0x4B, 0x52,
0x17, 0x40, 0x84, 0xF8, 0xA8, 0x4B, 0xD5, 0xD4, 0x4E, 0xA1, 0x86, 0xDB, 0xC8, 0xDB, 0x9D, 0xD0, 0xC5, 0x5A, 0xEE, 0x8F, 0xFE, 0xC3, 0x64, 0x55,
0x9B, 0xCD, 0xB6, 0x6C, 0xDF, 0x35, 0x0C, 0x0D, 0x7E, 0x0F, 0x01, 0x9C, 0x68, 0x95, 0xFA, 0x0B, 0x8B, 0x7C, 0x01, 0x08, 0x3C, 0xEB, 0xA1, 0x32,
0xF7, 0x6E, 0x89, 0xE6, 0x2F, 0x0E, 0xC5, 0xF3, 0xEA, 0x69, 0x8C, 0xA5, 0x15, 0xB4, 0x67, 0xBA, 0x52, 0x0F, 0xEA, 0x29, 0x57, 0xB5, 0xA0, 0x9D,
0xD5, 0x48, 0xEE, 0x5B, 0x77, 0x04, 0xFE, 0xC7, 0x56, 0x87, 0x27, 0xD4, 0x58, 0xEE, 0xAB, 0xAF, 0xD6, 0xF1, 0x57, 0x25, 0x49, 0x21, 0x41, 0x56,
0xF9, 0xCC, 0xB4, 0xB4, 0xB7, 0x1A, 0x85, 0x38, 0x0B, 0x93, 0xD2, 0x1D, 0xFB, 0xAC, 0xD1, 0x00, 0xBD, 0xBD, 0x54, 0x85, 0x03, 0xF4, 0x98, 0x7E,
0xD3, 0xDE, 0x7E, 0x45, 0xAF, 0x82, 0x46, 0x65, 0xFE, 0x59, 0x55, 0x83 0xE3, 0x73, 0x63, 0xE2, 0xC6, 0x43, 0xAD, 0xDD, 0xF6, 0xF0, 0x75, 0x2B
}, },
/* uint8_t /* uint8_t
* encrypted_user_ecc256_public_key[R_TSIP_ECC_PUBLIC_KEY_BYTE_SIZE + 16]; * encrypted_user_ecc256_public_key[R_TSIP_ECC_PUBLIC_KEY_BYTE_SIZE + 16];
@ -214,28 +214,32 @@ const int sizeof_ca_ecc_cert_sig = sizeof(ca_ecc_cert_der_sig);
/* ./ca-cert.der.sign, */ /* ./ca-cert.der.sign, */
const unsigned char ca_cert_der_sig[] = const unsigned char ca_cert_der_sig[] =
{ {
0x97, 0x8f, 0x90, 0x03, 0x0b, 0xca, 0xdf, 0x8f, 0xe8, 0x51, 0x23, 0xba, 0x3C, 0x99, 0x92, 0x6F, 0x0A, 0xE7, 0xC1, 0x31, 0x1F, 0xC2,
0x14, 0xfb, 0x28, 0xb8, 0x5c, 0x58, 0x0d, 0x6e, 0x8b, 0x97, 0x0f, 0x89, 0x60, 0xFD, 0x26, 0x54, 0x2F, 0xEA, 0xA4, 0xB6, 0x99, 0x8F,
0x63, 0xc2, 0xd6, 0xb3, 0xf0, 0x16, 0x35, 0x74, 0x9d, 0xb9, 0xd7, 0x18, 0xCF, 0x01, 0x6F, 0x37, 0x7A, 0xF5, 0xB7, 0xD1, 0xCC, 0x51,
0x14, 0x86, 0x91, 0xe0, 0xcd, 0xb3, 0x28, 0x63, 0x16, 0xf4, 0x6c, 0xb1, 0x0B, 0x34, 0xF1, 0xF4, 0xF0, 0x48, 0xCF, 0x53, 0xD3, 0xE1,
0xd3, 0x93, 0xb6, 0x6e, 0xd9, 0x66, 0xcd, 0x65, 0x39, 0x7b, 0x1b, 0x74, 0xF1, 0x08, 0xD1, 0x3F, 0x2B, 0x9A, 0x0E, 0x5A, 0x15, 0xB7,
0x5c, 0xde, 0x20, 0xd4, 0x46, 0x60, 0x2f, 0xc0, 0x10, 0xf5, 0x49, 0x4a, 0xAD, 0x14, 0x27, 0x24, 0x70, 0xE8, 0x02, 0x68, 0x21, 0xA2,
0x8d, 0x31, 0x29, 0x9b, 0x8a, 0xea, 0xf4, 0x8a, 0xaf, 0xc4, 0x84, 0xd7, 0xA2, 0x9D, 0x63, 0x41, 0x6A, 0xE3, 0xD2, 0xC9, 0x48, 0x7B,
0x42, 0xef, 0xaf, 0x14, 0x17, 0x44, 0xed, 0x6e, 0x2b, 0xd9, 0x70, 0xed, 0xF2, 0x6E, 0x7A, 0x80, 0xB8, 0xA9, 0x28, 0x61, 0x7B, 0x93,
0x3e, 0x40, 0xf0, 0xef, 0x75, 0x4c, 0x05, 0x1f, 0xc3, 0x37, 0xec, 0xc2, 0x93, 0x18, 0x68, 0x19, 0x6A, 0x6F, 0x78, 0x53, 0x32, 0xBF,
0xcd, 0xcc, 0xce, 0x39, 0x61, 0xa0, 0xea, 0x16, 0x84, 0x6d, 0xde, 0xe7, 0xAB, 0x28, 0x10, 0x44, 0xAC, 0xB9, 0x15, 0xFD, 0x51, 0xFE,
0xf4, 0x0d, 0x8c, 0xf7, 0x69, 0x81, 0x64, 0x09, 0x16, 0xa7, 0x5b, 0x34, 0x5E, 0x47, 0x07, 0xCD, 0xAF, 0x94, 0x69, 0x7A, 0x66, 0x31,
0x83, 0xe5, 0x73, 0xcf, 0x02, 0xf4, 0x37, 0x96, 0x93, 0x27, 0x72, 0x47, 0x3E, 0xED, 0x1B, 0x93, 0x97, 0x1A, 0x83, 0xA2, 0xC7, 0x5B,
0x71, 0xca, 0x56, 0xcd, 0xd2, 0x85, 0x48, 0xe5, 0x9e, 0x1f, 0x39, 0x52, 0xD3, 0x34, 0xAE, 0x24, 0xC8, 0xE9, 0xA9, 0x9E, 0x64, 0xEA,
0xc1, 0xc3, 0x9c, 0x6b, 0x98, 0x41, 0xc2, 0x0a, 0x77, 0x94, 0xe5, 0x84, 0x57, 0xA8, 0xA8, 0xD8, 0xA2, 0x74, 0x5F, 0xDB, 0x70, 0xCC,
0x44, 0xe7, 0x94, 0xee, 0x5f, 0x05, 0x62, 0xad, 0xe5, 0xe5, 0xc9, 0x7e, 0x07, 0x1D, 0xD0, 0xA7, 0x91, 0x61, 0xD6, 0x9F, 0x6F, 0x77,
0x02, 0x31, 0x85, 0xca, 0x28, 0x2d, 0x0d, 0x7f, 0x30, 0x5d, 0xb5, 0xaa, 0x80, 0xE9, 0x6C, 0x2F, 0x90, 0xF1, 0xBE, 0x25, 0x3F, 0x1C,
0x12, 0x81, 0x25, 0x37, 0x4a, 0xf2, 0x95, 0x81, 0xda, 0x76, 0xb4, 0x89, 0x76, 0xB6, 0xAC, 0xD7, 0xD1, 0x1E, 0x97, 0x15, 0x94, 0x96,
0x76, 0x8a, 0x0c, 0x8d, 0xdf, 0xed, 0xd5, 0x48, 0xa8, 0xc8, 0x6d, 0xf4, 0xD6, 0xF6, 0xBF, 0x39, 0x6D, 0xC7, 0xF5, 0x13, 0xE0, 0xBB,
0xbf, 0x98, 0xa3, 0xc5, 0x42, 0x7d, 0xd2, 0x21, 0x2c, 0x8d, 0x57, 0xd0, 0xC4, 0xDC, 0x18, 0x13, 0x65, 0x2B, 0x80, 0x23, 0x9A, 0x6A,
0x91, 0x16, 0xee, 0x83, 0xd0, 0xa1, 0x8f, 0x05, 0x50, 0x2b, 0x6e, 0xe8, 0x70, 0x30, 0x9A, 0xB3, 0xE5, 0x2D, 0xC1, 0xCB, 0xBF, 0x5A,
0x52, 0xf7, 0xbe, 0x96, 0x89, 0x40, 0xca, 0x9c, 0x19, 0x5a, 0xfc, 0xae, 0xC2, 0xEE, 0xF6, 0x65, 0x50, 0xD4, 0xF2, 0xA3, 0xD5, 0xF9,
0x1d, 0xdb, 0x57, 0xb8 0xF8, 0x16, 0xD3, 0x05, 0xAC, 0xE9, 0x8B, 0x5A, 0x75, 0xD7,
0xF9, 0xB9, 0x05, 0xF3, 0x9C, 0xD0, 0xCE, 0x39, 0xA5, 0x7D,
0xB6, 0xC6, 0x78, 0x6A, 0x31, 0x6C, 0xD2, 0xBB, 0x6F, 0x8E,
0x11, 0xD4, 0x84, 0x8B, 0x21, 0x65, 0xFC, 0x2D, 0xD3, 0x51,
0xC6, 0x31, 0x80, 0xCD, 0xE9, 0x5F
}; };
const int sizeof_ca_cert_sig = sizeof(ca_cert_der_sig); const int sizeof_ca_cert_sig = sizeof(ca_cert_der_sig);
/* ./client-cert.der.sign, */ /* ./client-cert.der.sign, */

View File

@ -245,8 +245,7 @@
*/ */
#define WOLFSSL_RENESAS_TSIP_TLS #define WOLFSSL_RENESAS_TSIP_TLS
#if !defined(NO_RENESAS_TSIP_CRYPT) #if !defined(NO_RENESAS_TSIP_CRYPT)
#define WOLFSSL_RENESAS_TSIP_CRYPTONLY
#define HAVE_PK_CALLBACKS #define HAVE_PK_CALLBACKS
#define WOLF_CRYPTO_CB #define WOLF_CRYPTO_CB
#if defined(WOLFSSL_RENESAS_TSIP_TLS) #if defined(WOLFSSL_RENESAS_TSIP_TLS)

View File

@ -416,11 +416,15 @@ WOLFSSL_LOCAL int tsip_Tls13GenEccKeyPair(WOLFSSL* ssl, KeyShareEntry* kse)
} }
} }
if (ret != 0) { if ((ret != 0) && (ret != CRYPTOCB_UNAVAILABLE)) {
if (kse->key != NULL) if (kse->key != NULL) {
XFREE(kse->key, ssl->heap, DYNAMIC_TYPE_PRIVATE_KEY); XFREE(kse->key, ssl->heap, DYNAMIC_TYPE_PRIVATE_KEY);
if (kse->pubKey != NULL) kse->key = NULL;
}
if (kse->pubKey != NULL) {
XFREE(kse->pubKey, ssl->heap, DYNAMIC_TYPE_PUBLIC_KEY); XFREE(kse->pubKey, ssl->heap, DYNAMIC_TYPE_PUBLIC_KEY);
kse->pubKey = NULL;
}
} }
WOLFSSL_LEAVE("tsip_Tls13GenEccKeyPair", ret); WOLFSSL_LEAVE("tsip_Tls13GenEccKeyPair", ret);
return ret; return ret;

View File

@ -259,12 +259,6 @@ typedef struct TsipUserCtx {
uint8_t tsip_clientRandom[TSIP_TLS_CLIENTRANDOM_SZ]; uint8_t tsip_clientRandom[TSIP_TLS_CLIENTRANDOM_SZ];
uint8_t tsip_serverRandom[TSIP_TLS_SERVERRANDOM_SZ]; uint8_t tsip_serverRandom[TSIP_TLS_SERVERRANDOM_SZ];
/* installed key handling */
tsip_aes_key_index_t user_aes256_key_index;
uint8_t user_aes256_key_set:1;
tsip_aes_key_index_t user_aes128_key_index;
uint8_t user_aes128_key_set:1;
/* TSIP defined cipher suite number */ /* TSIP defined cipher suite number */
uint32_t tsip_cipher; uint32_t tsip_cipher;
@ -296,22 +290,26 @@ typedef struct TsipUserCtx {
uint8_t session_key_set:1; uint8_t session_key_set:1;
#endif /* WOLFSSL_RENESAS_TSIP_TLS */ #endif /* WOLFSSL_RENESAS_TSIP_TLS */
/* installed key handling */
tsip_aes_key_index_t user_aes256_key_index;
uint8_t user_aes256_key_set:1;
tsip_aes_key_index_t user_aes128_key_index;
uint8_t user_aes128_key_set:1;
/* for tsip crypt only mode */ /* for tsip crypt only mode */
#ifdef WOLFSSL_RENESAS_TSIP_CRYPTONLY #ifdef WOLFSSL_RENESAS_TSIP_CRYPTONLY
union { #ifndef NO_RSA
#ifndef NO_RSA tsip_rsa1024_private_key_index_t* rsa1024pri_keyIdx;
tsip_rsa1024_private_key_index_t rsa1024pri_keyIdx; tsip_rsa1024_public_key_index_t* rsa1024pub_keyIdx;
tsip_rsa1024_public_key_index_t rsa1024pub_keyIdx; tsip_rsa2048_private_key_index_t* rsa2048pri_keyIdx;
tsip_rsa2048_private_key_index_t rsa2048pri_keyIdx; tsip_rsa2048_public_key_index_t* rsa2048pub_keyIdx;
tsip_rsa2048_public_key_index_t rsa2048pub_keyIdx; #endif
#ifdef HAVE_ECC
#ifdef HAVE_ECC_SIGN
tsip_ecc_private_key_index_t eccpri_keyIdx;
#endif #endif
#ifdef HAVE_ECC tsip_ecc_public_key_index_t eccpub_keyIdx;
#ifdef HAVE_ECC_SIGN #endif
tsip_ecc_private_key_index_t eccpri_keyIdx;
#endif
tsip_ecc_public_key_index_t eccpub_keyIdx;
#endif
};
/* sign/verify hash type : /* sign/verify hash type :
* md5, sha1 or sha256 * md5, sha1 or sha256
@ -323,7 +321,7 @@ typedef struct TsipUserCtx {
uint32_t chr; uint32_t chr;
struct tsip_keyflgs_cryt bits; struct tsip_keyflgs_cryt bits;
} keyflgs_crypt; } keyflgs_crypt;
#endif #endif /* WOLFSSL_RENESAS_TSIP_CRYPTONLY */
} TsipUserCtx; } TsipUserCtx;
@ -420,7 +418,7 @@ WOLFSSL_API void tsip_inform_user_keys(
/*----------------------------------------------------*/ /*----------------------------------------------------*/
#ifdef HAVE_PK_CALLBACKS #ifdef HAVE_PK_CALLBACKS
WOLFSSL_LOCAL int tsip_VerifyRsaPkcsCb( WOLFSSL_LOCAL int tsip_VerifyRsaPkcsCb(
WOLFSSL* ssl, struct WOLFSSL* ssl,
unsigned char* sig, unsigned int sigSz, unsigned char* sig, unsigned int sigSz,
unsigned char** out, unsigned char** out,
const unsigned char* keyDer, unsigned int keySz, const unsigned char* keyDer, unsigned int keySz,

View File

@ -21,11 +21,14 @@
#ifndef __RENESAS_CMN_H__ #ifndef __RENESAS_CMN_H__
#define __RENESAS_CMN_H__ #define __RENESAS_CMN_H__
#ifndef WOLFSSL_RENESAS_TSIP_CRYPTONLY
#include <wolfssl/ssl.h> #include <wolfssl/ssl.h>
#ifndef WOLFSSL_RENESAS_TSIP_CRYPTONLY
#include <wolfssl/internal.h> #include <wolfssl/internal.h>
/* Common Callbacks */ /* Common Callbacks */
WOLFSSL_LOCAL int Renesas_cmn_RsaSignCb(WOLFSSL* ssl, WOLFSSL_LOCAL int Renesas_cmn_RsaSignCb(WOLFSSL* ssl,
const unsigned char* in, unsigned int inSz, const unsigned char* in, unsigned int inSz,