Skip to content

acompany-develop/py-snp-utils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

py-snp-utils

SemVer Python Version License

py-snp-utils (pysnputils) is a Python library for implementing attestation verification of AMD SEV-SNP confidential VMs. It provides functionality to parse SNP reports, fetch VCEK certificate chains and CRLs, and verify attestation evidences.

Compatibility

SEV-SNP Revision

  • SEV-SNP Firmware ABI Spec: Rev. 1.58 (May 2025)
  • KDS Interface Spec: Rev. 1.00 (January 2025)

Tested Environments

  • Ubuntu 24.04.1 + AMD64 (x86_64)
  • macOS 15.6.1 + Aarch64

Getting Started

Requirements

  • Python 3.12+

Install from Repository

pip install git+https://github.com/acompany-develop/py-snp-utils.git

What's Inside?

Submodules

The Python module pysnputils consists of the following submodules:

Submodules Descriptions
types attestation report types and parsers
fetch functions to fetch VCEK certificate chains from AMD KDS
verify functions to verify VCEK certificate chains and SNP reports

CLI Tools / Example Scripts

The examples/ directory contains scripts that serve as both usage examples and command-line tools.

Script Description
display.py Display SNP attestation report in JSON format
fetch.py Fetch ARK, ASK, VCEK and CRL from AMD KDS in PEM format
verify.py Verify VCEK certificate chain and SNP report signature

About

Python libraries for parsing SNP reports, fetching VCEK cert chains, and verifying them

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages