Browse the Community
OPTIGA™ Trust
High-end easy to use security solutions that provide an anchor of trust for your application, connecting IoT devices to the cloud, giving billons of device its own unique identity, pre-personalized turnkey solutions, zero-touch onboarding, high performance, ... We did not meet your expectations? Let us know!
OPTIGA™ TPM
OPTIGA™ TPM (Trusted Platform Module) offers a broad portfolio of standardized security controllers to protect the integrity and authenticity of embedded devices and systems. With a secured key store and support for a variety of encryption algorithms, OPTIGA™ TPM security chips provide robust protection for critical data and processes through their rich functionality. OPTIGA™ TPM security controllers are ideal for platforms running both Windows and Linux and its derivatives (SLB 9645 product versions for Chrome OS available). Based on Trusted Computing Group (TCG) standards, they support the TPM 1.2 or the latest innovative TPM 2.0 standard.
Recent discussions
I am playing this example from NordicSemi here:
https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.3.0%2Fifx_optiga_custom_example.html&cp=5_1_4_3_1_2
In this example, there is a test regarding key derivation as:
static void uc_key_derivation(void)
{
optiga_lib_status_t optiga_lib_status;
uint8_t info[100] = { 0 };
uint16_t info_len = 100;
uint16_t oid = 0xF1D0;
uint8_t shared_secret[64] = { 0 };
// Check if key derivation is supported (OPTIGA Trust X after version 1.20.1048)
optiga_lib_status = optiga_util_read_data(0xE0C2, 0, info, &info_len);
DEMO_OPTIGA_ERROR_CHECK(optiga_lib_status);
if (info[25] == 0x10 && info[26] == 0x48) // !!!! THIS CONDITION RETURNS TRUE
{
NRF_LOG_INFO("Key derivation not supported!\r\n");
NRF_LOG_FLUSH();
return;
}
As I understand, it checks the fw version of the OptigaX for if key derivation is supported or not. According to the reply of the TrustX device, the function returns with 'Key derivation not supported!' message.
The thing is that, in the datasheet (revision 2.6), it clearly says OptigaX supports key derivation in the first page.
Crypto ToolBox with ECC NIST P256, P384, SHA-256 (sign, verify, key generation, ECDH, key derivation)
I appreciate if anybody has any suggestion with that, if this is the case or not, and how to use key derivation with optigaX.
Best regards,
Vedat Show Less
I am planning to use Optiga TrustX module in my project. One requirement in that project is to comply with the 802.1AR standard (Secure Identity Key).
I know that TPM modules are for that purpose, but I am not sure about Trust X. what is the exact difference between them? Why isn't optiga trust X marked TCG TPM? I checked the documentation but the only remark about the difference is that TrustX is for embedded systems but TPM modules are for more powerful PC or linux-based systems.
I appreciate if you can share your thoughts about TrustX for 802.1AR compatibility.
Best regards,
Vedat Show Less
as shown in this log snippet:
TBOOT: tboot: supported alg count = 2
TBOOT: tboot: hash alg = 00000004
TBOOT: tboot: hash alg = 0000000B
TBOOT: TPM:CreatePrimary creating hierarchy handle = 40000007
(10 to 40 seconds elapse here)
TBOOT: TPM:CreatePrimary created object handle = 80000000
TBOOT: TPM attribute:
TBOOT: extend policy: 2
TBOOT: current alg id: 0x4
TBOOT: timeout values: A: 750, B: 2000, C: 75000, 😧 750
I'm puzzled as to why the time this takes varies so widely. The longer times are killing us as we have some bootup time deadlines, and the unpredictability complicates things even more. Sometimes it's fast, sometimes it's slow.
There doesn't seem to be any pattern, nor is it influenced by whether the system is starting from a powered-off state or
just a warm reboot. I suspect it may have to do with the TPM trying to gather enough entropy to generate the random number that forms the seed for the NULL hierarchy although that's just a guess. Can anyone from inside
or outside Infineon comment on why the time is so variable? Show Less
TPM2 Tools demonstrates generating an Endorsement Credential Certificate using an endorsement public key and an ekcertservice URL;
https://github.com/tpm2-software/tpm2-tools/blob/3.X/test/system/test_tpm2_getmanufec.sh
Is there a similar URL for Infineon Optiga URLs? Or how is the endorsement certificate generated for these TPMs?
The following page appears to document the relevant CA's but not how to generate the EK certificate, as far as I can understand. https://www.infineon.com/cms/en/product/promopages/optiga_tpm_certificates/ Show Less
- « Previous
- Next »