Tspi_TPM_O...tSRKPubKey(3)
πΈ Tspi_TPM_OwnerGetSRKPubKey π
okay bestie, so this one lives in the TCG Software Stack Developer's Reference, and it's genuinely one of the cuter little calls in the TSS 1.1 era, iykyk. Buckle up, we're getting a public key π¦
β¨ NAME β¨
Tspi_TPM_OwnerGetSRKPubKey β get public key of the SRK
β¨ SYNOPSIS β¨
#include <tss/tspi.h>
TSS_RESULT Tspi_TPM_OwnerGetSRKPubKey(TSS_HTPM hTPM,
UINT32* pulPubKeyLength,
BYTE** prgbPubKey);
β¨ DESCRIPTION β¨
so basically Tspi_TPM_OwnerGetSRKPubKey returns the public key of the key object, and it does that using owner authorization. main character energy fr fr π₯
but okay, important: this can only be used on 1.2 TPMs, and it can only be used to return the public key of the SRK. That's it. That's the whole vibe. No other key, no other TPM version, no exceptions, periodt π
β¨ PARAMETERS β¨
hTPM
the hTPM parameter is used to specify the handle of the TPM object. it's giving "which TPM are we even talking to" π«Ά
pulPubKeyLength
the pulPubKeyLength parameter is the length (in bytes) of the prgbPubKey parameter. it's the lil size tag on the blob, ngl π
prgbPubKey
the prgbPubKey parameter is the pointer to the memory block containing the public key blob retrieved for the key object referenced by hKey. yes bestie, it says hKey right there in the original, we don't ask questions, we just pass it along π
β¨ RETURN CODES β¨
Tspi_TPM_OwnerGetSRKPubKey returns TSS_SUCCESS on success π otherwise one of the following values is returned:
TSS_E_INVALID_HANDLEβhTPMis not a valid handle. bestie the handle is fake πTSS_E_BAD_PARAMETERβ one or more parameters is bad. not bad as in "bad bitch", bad as in broken πTSS_E_INTERNAL_ERRORβ an internal SW error has been detected. something deep inside said no πTSS_E_TPM_UNSUPPORTEDβ the TPM is not version 1.2 or later - (Note: still unimplemented) β
heads up: that last one literally comes with the note that it's still unimplemented. the source said it, so we say it. no cap.
β¨ CONFORMING TO β¨
Tspi_TPM_OwnerGetSRKPubKey conforms to the Trusted Computing Group Software Specification version 1.2 π
β¨ SEE ALSO β¨
go read those too, they're part of the lore π§
and that's the whole page, bestie!! this one comes to you from TSS 1.1, dated 2007-07-19 β yes, an elder, but she ate and left no crumbs π β¨ take care of your SRK and she'll take care of you ππ¦
π¦ where this page comes from
- debian bookworm: libtspi-dev 0.3.15-0.3 Β· BSD-3-Clause
- debian trixie: libtspi-dev 0.3.15-0.4 Β· BSD-3-Clause
- epel 10: trousers-devel 0.3.15-11.el10_0 Β· BSD
- epel 9: trousers-devel 0.3.15-5.el9 Β· BSD
- fedora 43: trousers-devel 0.3.15-15.fc43 Β· LicenseRef-Callaway-BSD
- fedora 43: trousers-devel 0.3.15-15.fc43 Β· LicenseRef-Callaway-BSD
- fedora 43: trousers-devel 0.3.15-16.fc43 Β· LicenseRef-Callaway-BSD
- fedora 43: trousers-devel 0.3.15-16.fc43 Β· LicenseRef-Callaway-BSD
- fedora 44: trousers-devel 0.3.15-17.fc44 Β· LicenseRef-Callaway-BSD
- fedora 44: trousers-devel 0.3.15-17.fc44 Β· LicenseRef-Callaway-BSD
- nixos 26.05: trousers 0.3.15
- nixpkgs unstable: netbsd-source 11.0
- nixpkgs unstable: trousers 0.3.15
- opensuse-leap 16.0: trousers-devel 0.3.15-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: trousers-devel 0.3.15-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: trousers-devel 0.3.15-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: trousers-devel 0.3.15-160000.2.2 Β· BSD-3-Clause
- ubuntu jammy: libtspi-dev 0.3.15-0.2 Β· BSD-3-Clause
- ubuntu noble: libtspi-dev 0.3.15-0.3build2 Β· BSD-3-Clause
- ubuntu questing: libtspi-dev 0.3.15-0.4
- ubuntu resolute: libtspi-dev 0.3.15-1 Β· BSD-3-Clause
- ubuntu stonking: libtspi-dev 0.3.15-1ubuntu2 Β· BSD-3-Clause
- Copyright (C) 2007 International Business Machines Corporation
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms