SNPHOST(1)
π SNPHOST(1) π β snphost, aka ur fave AMD SEV-SNP bestie β¨
okay so real talk, this page is SNPHOST(1) from the manual, and it's literally all about snphost β the command line tool that manages the AMD SEV-SNP environment. grab a boba, we're getting into it π
πΈ NAME πΈ
snphost β command line tool for managing the AMD SEV-SNP environment. that's it, that's the whole vibe π«Ά
β¨ SYNOPSIS β¨
snphost [GLOBAL_OPTIONS] [COMMAND] [COMMAND_ARGS]
snphost [-h, --help]
snphost command --help
π¦ DESCRIPTION π¦
snphost is a CLI utility for managing and interacting with the AMD SEV-SNP firmware device of a host system. lowkey iconic of it ngl π
π GLOBAL OPTIONS π
-q,--quietβ don't print any output to the console. silence is golden, main character energy π
π COMMANDS π
π snphost export
usage: snphost export [der, pem] CERT-FILE DIR-PATH
this command exports the SEV-SNP certificate chain to the directory provided by DIR-PATH. you have to provide the CERT-FILE where the certs are currently stored in (in GHCB format) β like, that's not optional bestie. you also gotta specify if you want the certs exported in PEM or DER certificate format. these are the only two encoding formats supported in this tool, periodt. currently only AMD chain certificates (ARK, ASK, VCEK and VLEK) are supported for export.
options:
-h,--helpβ show a help message.
π snphost import
usage: snphost import DIR-PATH CERT-FILE
this command imports serialized SEV-SNP certificates to the specified CERT-FILE. this CERT-FILE can then be provided to QEMU to perform extended attestation on guest β slay. currently, only the ASK, ARK, VCEK and VLEK are supported to serialize in the tool. note that there are a few user requirements for this command to work as intended π
all certificates must be located in the same directory with specific names:
- ARK certificate =>
ark.{pem, der} - ASK certificate =>
ask.{pem, der} - VCEK certificate =>
vcek.{pem, der} - VLEK certificate =>
vlek.{pem, der}
not all certificates are needed in the directory, only the ones that a user is looking to import to the CERT-FILE. so don't stress about collecting them all like they're pokΓ©mon π§
options:
-h,--helpβ show a help message
π snphost ok
usage: snphost ok
this command probes the processor, sysfs, and KVM for AMD SEV-SNP related capabilities on the host and emits the results. it's giving health check, it's giving vibe check πΈ
options:
-s,--shortβ show only failures with summary counts-v,--verboseβ show detailed test descriptions grouped by category with detected issues summary-f,--featuresβ include optional feature tests (skipped by default)-o,--output <OUTPUT>β controls how test results are rendered. supported formats:defaultβ human-readable output (default)jsonβ machine-readable JSON output
-h,--helpβ show a help message
π snphost commit
usage: snphost commit
this command commits the current firmware and SNP platform config versions to the PSP.
π no cap, read this twice: this can't be undone and will not allow rollbacks to older versions. once it's done it's done, no take-backs, no ctrl+z.
options:
-h,--helpβ show a help message.
π snphost config set
usage: snphost config set BOOTLOADER TEE SNP-FW MICROCODE MASK-CHIP
this command allows the user to change the config of the SNP platform. the user can provide the desired versions of the different TCB parameters they would like to modify. the command will change the reported values by the PSP. in order to have these changes committed, the user would have to use snphost commit. the user can also provide a new mask-chip value that will change the mask chip bit field values in the config.
explanation of the different parameters:
BOOTLOADERβ desired reported bootloader versionTEEβ desired reported PSP OS versionSNP-FWβ desired reported SNP Firmware levelMICROCODEβ desired reported patch level of all the coresMASK-CHIPβ change the CHIP ID and CHIP KEY settings by changing the MASK-CHIP bits. valid values range from0-3depending on what bits the user wants enabled.Bit[0]-> CHIP ID: indicates that the CHIP_ID field in the attestation report will always be0.Bit[1]-> MASK KEY: indicates that the VCEK is not used in attestation and guest key derivation.
FMCβ current FMC firmware version
for example, if the user would like MASK KEY to be enabled and CHIP ID disabled, then they would pass in a 2. math is mathing, iykyk π
options:
-h,--helpβ show a help message.
π snphost config reset
usage: snphost config reset
this command resets the SEV-NP platform β wait, SEV-SNP platform π. anyway: this will clear all persistent data managed by the platform and reset the platform configuration to its last committed version. it's giving factory reset but make it firmware π
options:
-h,--helpβ show a help message.
π snphost show
usage: snphost show [guests, identifier, tcb, vcek-url, version ]
this command describes the state of the SEV-SNP platform. there are several platform details to describe:
- Guest count:
snphost show guests - Platform identifier:
snphost show identifier - TCB version:
snphost show tcb - VCEK URL:
snphost show vcek-url - Firmware version:
snphost show version
options:
-h,--helpβ show a help message
π snphost verify certs
usage: snphost verify certs DIR-PATH
this command verifies the full SEV-SNP certificate authority (CA) chain using the certificates stored in the specified directory. there are two possible CA chains that can be verified:
- the VCEK chain: ark, ask, vcek.
- or the VLEK chain: ark, asvk, vlek.
if both chains are present, the tool will default to verifying the VLEK chain. the certificates must be named as one of the following: ark, ask, asvk, vlek, vcek, followed by the format in which they're stored (cert.pem or cert.der). only PEM and DER formats are supported.
options:
-h,--helpβ show a help message
π snphost verify vlek-hashstick
usage: snphost verify vlek-hashstick HASHSTICK-PATH
this command verifies the provided VLEK hashstick against the current system configuration. there are 2 verifications the hashstick needs to pass before being loaded.
one relates to the authentication of the actual wrapped vlek content, but this authentication can only be done at fw level.H15 β yeah, that trailing bit is literally what the page says, don't come for me π
the other is matching the reported TCB version in the VLEK vs the one in the system. this command compares the TCB version in the hashstick against the TCB version in the system, making sure these fields match. once the TCB is verified the user can load the vlek hashstick using the vlek-load command. chef's kiss π
options:
-h,--helpβ show a help message
π snphost fetch vcek
usage: snphost fetch vcek [ der, pem ] DIR-PATH [url]
this command fetches the host system's versioned chip endorsement key (VCEK) and writes the encoded certificate to the directory at path DIR-PATH. users must specify which format they would like the certificate to be encoded in (DER or PEM). the URL of the VCEK can be explicitly set. if not explicitly set, the URL will be generated based on firmware data β it just knows β¨
options:
-h,--helpβ show a help message
π snphost fetch crl
usage: snphost fetch crl DIR-PATH
this command fetches the host system's certificate revocation list (CRL) and writes the encoded list to the directory at path DIR-PATH.
options:
-h,--helpβ show a help message
π snphost vlek-load
usage: snphost vlek-load $HASHSTICK-FILE
this command attempts to load the provided VLEK-HASHSTICK into the system. when requesting a VLEK from the KDS, the user should receive both a VLEK certificate and a Wrapped Hashtick. this command uses the hashstick file to initiate the load process. if the hashstick fails verification, the command will return an error π users are encouraged to pre-verify the hashstick using the verify vlek-hashstick command β like, do urself a favor bestie π«Ά
options:
-h,--helpβ show a help message
π REPORTING BUGS π
please report all bugs to https://github.com/virtee/snphost/issues β they wanna hear from u, fr fr π
and that's the whole page!! xoxo, this was 1980-01-01-vintage content filed under SNPHOST(1), stay hydrated and don't run snphost commit unless u mean it πβ¨
π¦ where this page comes from
- nixpkgs unstable: snphost 0.9.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms