#include <mcuxClCore_Examples.h>
#include <mcuxClExample_ELS_Helper.h>
#include <mcuxClExample_ELS_Key_Helper.h>
static uint8_t master_key_string[] = "master secret";
static uint8_t key_expansion_string[] = "key expansion";
{
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
KeyGenOptions,
keyIdxPrivClient,
GenKeyProp,
NULL,
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
KeyGenOptions,
keyIdxPrivServer,
GenKeyProp,
NULL,
ecc_public_key_server
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
keyIdxPrivClient,
ecc_public_key_server,
sharedSecretIdx,
SharedSecretProp));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data,
key_expansion_string,
sizeof(key_expansion_string),
sizeof(key_expansion_string)
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data+sizeof(key_expansion_string),
server_random,
sizeof(server_random),
sizeof(server_random)
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data+sizeof(key_expansion_string)+32U,
client_random,
sizeof(client_random),
sizeof(client_random)
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data+sizeof(key_expansion_string)+32U+32U,
0x80,
1U,
1U
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data+sizeof(key_expansion_string)+32U+32U+1U,
0x00,
2U,
2U
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data,
tlsMasterKeyProp,
sharedSecretIdx
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data,
master_key_string,
sizeof(master_key_string),
sizeof(master_key_string)
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data+sizeof(master_key_string),
client_random,
sizeof(client_random),
sizeof(client_random)
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data+sizeof(master_key_string)+32U,
server_random,
sizeof(server_random),
sizeof(server_random)
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data+sizeof(master_key_string)+32U+32U,
0x80,
1U,
1U
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data+sizeof(master_key_string)+32U+32U+1U,
0x00,
2U,
2U
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
derivation_data,
GenKeyProp,
sharedSecretIdx
));
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
if(!mcuxClExample_Els_KeyDelete(keyIdxPrivClient))
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
if(!mcuxClExample_Els_KeyDelete(keyIdxPrivServer))
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
for(uint8_t i = sharedSecretIdx;i<sharedSecretIdx + 6;i++)
{
if(!mcuxClExample_Els_KeyDelete(i))
{
return MCUXCLEXAMPLE_STATUS_ERROR;
}
}
return MCUXCLEXAMPLE_STATUS_OK;
}