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

View File

@ -245,8 +245,7 @@
*/
#define WOLFSSL_RENESAS_TSIP_TLS
#if !defined(NO_RENESAS_TSIP_CRYPT)
#define WOLFSSL_RENESAS_TSIP_CRYPTONLY
#if !defined(NO_RENESAS_TSIP_CRYPT)
#define HAVE_PK_CALLBACKS
#define WOLF_CRYPTO_CB
#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 (kse->key != NULL)
if ((ret != 0) && (ret != CRYPTOCB_UNAVAILABLE)) {
if (kse->key != NULL) {
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);
kse->pubKey = NULL;
}
}
WOLFSSL_LEAVE("tsip_Tls13GenEccKeyPair", ret);
return ret;

View File

@ -259,12 +259,6 @@ typedef struct TsipUserCtx {
uint8_t tsip_clientRandom[TSIP_TLS_CLIENTRANDOM_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 */
uint32_t tsip_cipher;
@ -296,22 +290,26 @@ typedef struct TsipUserCtx {
uint8_t session_key_set:1;
#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 */
#ifdef WOLFSSL_RENESAS_TSIP_CRYPTONLY
union {
#ifndef NO_RSA
tsip_rsa1024_private_key_index_t rsa1024pri_keyIdx;
tsip_rsa1024_public_key_index_t rsa1024pub_keyIdx;
tsip_rsa2048_private_key_index_t rsa2048pri_keyIdx;
tsip_rsa2048_public_key_index_t rsa2048pub_keyIdx;
#ifndef NO_RSA
tsip_rsa1024_private_key_index_t* rsa1024pri_keyIdx;
tsip_rsa1024_public_key_index_t* rsa1024pub_keyIdx;
tsip_rsa2048_private_key_index_t* rsa2048pri_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
#ifdef HAVE_ECC
#ifdef HAVE_ECC_SIGN
tsip_ecc_private_key_index_t eccpri_keyIdx;
#endif
tsip_ecc_public_key_index_t eccpub_keyIdx;
#endif
};
tsip_ecc_public_key_index_t eccpub_keyIdx;
#endif
/* sign/verify hash type :
* md5, sha1 or sha256
@ -323,7 +321,7 @@ typedef struct TsipUserCtx {
uint32_t chr;
struct tsip_keyflgs_cryt bits;
} keyflgs_crypt;
#endif
#endif /* WOLFSSL_RENESAS_TSIP_CRYPTONLY */
} TsipUserCtx;
@ -420,7 +418,7 @@ WOLFSSL_API void tsip_inform_user_keys(
/*----------------------------------------------------*/
#ifdef HAVE_PK_CALLBACKS
WOLFSSL_LOCAL int tsip_VerifyRsaPkcsCb(
WOLFSSL* ssl,
struct WOLFSSL* ssl,
unsigned char* sig, unsigned int sigSz,
unsigned char** out,
const unsigned char* keyDer, unsigned int keySz,

View File

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