Skip to content

Add NVIDIA remote attestation scheme - #434

Open
jraman567 wants to merge 4 commits into
veraison:mainfrom
jraman567:upstream/development/nvidia-scheme
Open

Add NVIDIA remote attestation scheme#434
jraman567 wants to merge 4 commits into
veraison:mainfrom
jraman567:upstream/development/nvidia-scheme

Conversation

@jraman567

Copy link
Copy Markdown
Collaborator

This scheme adds verification code for NVIDIA attestation reports. I have verified it using NRAS (verifier_mode: "remote") and Trust Outpost (verifier_mode: "local").

There are a couple of issues:

  • Build system needs to have NVAT library installed (as "nvat.h" is required). Is this OK, and could we updated our CI build image? Or should I make the build of this scheme conditional on availability of NVAT
  • The scheme advertises RATSd's broader evidence format as supported media type. We should probably narrow it down with a profile.

add skeletal code for NVIDIA scheme

Signed-off-by: Jagannathan Raman <jag.raman@oracle.com>
Adds a cgo-backed nvatInterface.go that dynamically loads libnvat.so.1,
resolves the NVAT SDK entry points at runtime, and exposes helper functions
for the plugin to verifier claims.

Assisted-by: OpenAI Codex
Signed-off-by: Jagannathan Raman <jag.raman@oracle.com>
Decode NVIDIA GPU evidence from the RATSd CMW collection and pass the
attestation report and session nonce to the NVAT verifier.

Return a bad-evidence error when NVAT verification fails and only mark
the hardware and runtime as trustworthy after successful appraisal.

Make the NVAT integration tests configurable for local and remote
verification. Require a service token only for NRAS remote mode, allow
tokenless local verification through Trust Outpost, and fail attempted
initialization or verification instead of hiding failures as skips.

Read integration settings from NVAT_VERIFIER_MODE,
NVAT_SERVICE_TOKEN, and NVAT_REMOTE_HOST.

Assisted-by: OpenAI Codex
Signed-off-by: Jagannathan Raman <jag.raman@oracle.com>
Derive the NVIDIA GPU nonce from the session nonce using the adjustment
parameters carried in the RATSd claims before passing it to NVAT.

Assisted-by: OpenAI Codex
Signed-off-by: Jagannathan Raman <jag.raman@oracle.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant