The Attestation SDK provides developers with a easy to use APIs for implementing attestation capabilities into their applications.
Project description
NVIDIA Attestation SDK
The Attestation SDK offers developers easy-to-use APIs for implementing attestation capabilities into their Python applications. With this SDK, you can seamlessly integrate secure and reliable attestation services into your software, thereby ensuring the authenticity, integrity, and trustworthiness of your system.
Features
- Local GPU Attestation (using NVIDIA NVML based Python libraries)
- Remote GPU Attestation (using NVIDIA Remote Attestation Service)
Note: Attestation SDK is still in Early Access Release (beta), and the APIs may undergo changes until the GA release.
Install Attestation SDK
From Wheel file
-
Download the latest Wheel file from the this directory.
-
Install the SDK in a Python virtual environment. Please make sure that you are using the same virtual environment that you used in Step 2 for the NVIDIA Local GPU verifier scripts.
pip3 install ./nv_attestation_sdk-<-version->-py3-none-any.whl
From Source
If you choose to install the Attestation SDK from the source code instead of a Wheel file, use the following commands:
cd attestation_sdk
pip3 install .
GPU Attestation
Pre-requisites
- Create a Confidential Virtual Machine with the following specifications:
- NVIDIA Hopper H100 GPU
- Driver version r535 installed.
- Ensure that the SKU is supported for Confidential Computing.
-
Follow the instructions in nvTrust/guest_tools/local_gpu_verifier/README.md to install the NVIDIA GPU Local Verifier Python SDK.
-
Run the following command and ensure that you have the 'verifier' Python module installed.
pip list | grep nv-local-gpu-verifier nv-local-gpu-verifier 1.4.0
Local GPU Attestation
Policy File
You can find a sample Attestation Result policy file for Local GPU Attestation here Please note that the Schema/EAT claim information is subject to change in future releases.
How to do Perform Attestation
Please refer to the sample implementation
Remote GPU Attestation
Pre-Requisites
NVIDIA Remote Attestation Service (NRAS) must be accessible from the machine.
Policy File
You can find a sample Attestation Result policy file for Remote GPU Attestation here
Please note that the Schema/EAT claim information is subject to change in future releases.
How to do Perform Attestation
Please refer to the sample implementation
Building Attestation SDK
python3 -m pip install --upgrade build
python3 -m build
APIs
nv_attestation_sdk import attestation
API | Description |
---|---|
Attestation(<-name->) | Create a new Attestation Object used to call other Attestation methods. |
set_name(<-name->) | Set a name for the Attestation SDK client |
add_verifier(<-attestation-device-type->, <-local/remote->, <-remote-attestation-service-url->, <-attestation-results-policy->) | Add a specific type of verifier for the client object. The verifier will be invoked during the attest operation |
attest() | Trigger the Attestation for client object, This uses the Attestation type configured in add_verifier method |
validate_token(<-attestation-results-policy->) | Validate the Attestation Claims against a policy |
nv_attestation_sdk.gpu.attest_gpu_remote
API | Description |
---|---|
generate_evidence(<-nonce->) | Generate GPU attestation evidence using the Local GPU Verifier Python SDK with a user-provided nonce. |
verify_evidence(<-nonce->, <-evidence->,<-nras_url->) | Verify the evidence with the NVIDIA Remote Attestation Service (NRAS) |
End-user License Agreement
By using the Attestation Suite Services, you affirm that you have read the Agreement and agree to its terms. If you do not have the required authority to enter into the Agreement or if you do not accept all Agreement terms and conditions, do not use the Attestation Suite Services. Please see the End-user License Agreement for more information on data collection.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file nv_attestation_sdk-1.4.0-py3-none-any.whl
.
File metadata
- Download URL: nv_attestation_sdk-1.4.0-py3-none-any.whl
- Upload date:
- Size: 15.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bacb8e305b1b98a2239340c7fd61a4428d21aa1fcc26366fb1280ac8afda8dd2 |
|
MD5 | 01424f619185d5f9650e73d2a2d35eef |
|
BLAKE2b-256 | 581ed9e516c36b050fe87dd123af74aad2359c72cb90bdaa5186626ccf54b956 |