Step-by-Step Guide to Implementing fTPM Provisioning on Jetson AGX Orin for TLS Secure Communication

I am looking for a step-by-step user guide for fTPM provisioning on a Jetson AGX Orin (Initially NVIDIA Jetson AGX Orin Developer Kit).
The purpose of the fTPM provisioning is to set a private key for the use of TLS secure communication between the Jetson and another computer.
Any help would be appreciated.

Hi Derbados,

What’s the Jetpack version in use?

Please refer to Firmware TPM — NVIDIA Jetson Linux Developer Guide for the details about fTPM.

Thanks, KevinFFF

  1. The documentation in the provided link, discuses the provisioning of the fTPM with an Endorsement Key (EK) and an Endorsement Primary Seed (EPS).
    As far as I understand, the EK and the EPS are used for external parties to verify the authenticity and trustworthiness of the TPM/fTPM during key attestation and device identity operations.
    If I understand correctly, this is less relevant for the fTPM provisioning USE CASE IN DISCUSSION (i.e. setting a private key for the use of TLS secure communication between the Jetson and another computer).
    Please correct me if I’m wrong.
  2. Is there a documentation for for fTPM provisioning for the USE CASE IN DISCUSSION?
    B.T.W. this use case also involves a Certificate Authority (CA) server.

Some additional questions regarding the documentation in the link:
3. Regarding the “Offline provisioning method” (documentation says only this method is supported for this release), documentation says it “needs the fTPM manufacturer to pre-generate the EK certificates and encode it into the Encrypted Keyblob (EKB). This process needs to be completed during the device manufacturing process.”
Is a Jetson product owner (i.e. a customer who bought for example a Jetson AGX Orin Developer Kit product and is developing and deploying an application on that product), considered to be an “fTPM manufacturer”?
In other words, I am trying to verify that a Jetson product owner can perform the fTPM provisioning for the USE CASE IN DISCUSSION.
4. The documentation mentions a “provisioning tool”.
a. Where can the provisioning tool be found?
b. Does the provisioning tool support the USE CASE IN DISCUSSION?

Regarding the question about the Jetpack version in use, currently the Developer Kit is not in my possession.
What is the recommended Jetpack version to be used?

Sorry that we don’t verify such use case and can only provide you with limited support.

I would suggest using the latest Jetpack 5.1.5 and 6.2 so that you won’t miss any features and bug fix.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.