Tspi_K...ateKey(3)
β¨ NAME β¨
okay so this is the Tspi_Key_CreateKey page from the TCG Software Stack Developer's Reference (that's the Tspi_K...ateKey(3) one, bestie, the name got squished in the header but it's her π
) β
Tspi_Key_CreateKey β makes a key pair inside the TPM, and wraps it with the key that hWrappingKey points at π
πΈ SYNOPSIS πΈ
#include <tss/platform.h>
#include <tss/tcpa_defines.h>
#include <tss/tcpa_typedef.h>
#include <tss/tcpa_struct.h>
#include <tss/tss_typedef.h>
#include <tss/tss_structs.h>
#include <tss/tspi.h>
TSS_RESULT Tspi_Key_CreateKey(TSS_HKEY hKey, TSS_HKEY hWrappingKey, TSS_HPCRS hPcrComposite);
π DESCRIPTION π
So TSS_Key_CreateKey literally calls the TPM command TPM_CreateWrapKey. That's the whole vibe. π¦
And here's the tea: if hPcrComposite is not set to NULL, the key blob she creates gets bound to those PCR values. No cap.
Also, the key object that hKey addresses? She has to already contain the key info needed for the creation. Like, she can't cook without ingredients, periodt. π
π PARAMETERS π
hKey
The handle of the key object you wanna create. π«Ά
hWrappingKey
The handle to the key that's gonna wrap the brand-new baby key. π―β¨
hPcrComposite
The handle to an object β and if the value of that handle doesn't equal NULL, the newly created key gets bound to the PCR values described by this object. π
π₯ RETURN CODES π₯
Tspi_Key_CreateKey returns TSS_SUCCESS when everything slays, otherwise one of these comes back at you:
TSS_E_INVALID_HANDLEβ eitherhKey,hWrappingKeyorhPcrCompositeare invalid parameters. πTSS_E_INTERNAL_ERRORβ an error occurred internal to the TSS. π
π CONFORMING TO π
Tspi_Key_CreateKey conforms to the Trusted Computing Group Software Specification version 1.1 Golden. iconic behavior, honestly β
π SEE ALSO π
Tspi_Key_WrapKey(3)Tspi_Key_CertifyKey(3)Tspi_Key_RegisterKey(3)
and that's the whole page, bestie π this one came out of TSS 1.1 and it's dated 2004-05-26 β she's vintage, she's a legend, she ate and left no crumbs π§π
π¦ 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) 2004 International Business Machines Corporation
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms