TSPI_KEY_CERTIFYKEY(3)

πŸ’– NAME πŸ’–

Tspi_Key_CertifyKey β€” bestie, it signs a public key. That's it, that's the whole vibe ✨


πŸŽ€ SYNOPSIS πŸŽ€

First you gotta manifest the headers, no cap:

#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>

Then the actual queen herself:

TSS_RESULT Tspi_Key_CertifyKey(TSS_HKEY        hKey, TSS_HKEY hCertifyingKey,
                               TSS_VALIDATION* pValidationData);

🌸 DESCRIPTION 🌸

Okay so literally what this does is sign a public key. Sign. A. Public. Key. That's the whole assignment and she ate πŸ’…


πŸ¦‹ PARAMETERS πŸ¦‹

hKey

Handle of the key object to be loaded 🫢

hCertifyingKey

Handle to the certifying key β€” the one doing the signing β€” used to sign the key addressed by hKey. She's the notary, basically, main character energy πŸ‘‘

pValidationData

Pointer to a structure of the type TSS_VALIDATION πŸ“‹ After the call completes successfully, the member rgbValidationData of this structure contains the signature data of the command. And the member prgbData of the structure points to a buffer containing a TCPA_CERTIFY_INFO data stream, as specified within the TCPA 1.1b Main Specification β€” iykyk πŸ”₯


⭐ RETURN CODES ⭐

Tspi_Key_CertifyKey returns TSS_SUCCESS on success, otherwise one of the following values is returned:

  • TSS_E_INVALID_HANDLE β€” Either hKey or hCertifyingKey are invalid handles πŸ’€
  • TSS_E_BAD_PARAMETER
  • TSS_E_INTERNAL_ERROR β€” An error occurred internal to the TSS 😭

🌈 CONFORMING TO 🌈

Tspi_Key_CertifyKey conforms to the Trusted Computing Group Software Specification version 1.1 Golden πŸ‘‘


πŸ’œ SEE ALSO πŸ’œ

Tspi_Key_CreateKey(3), Tspi_Key_WrapKey(3).


okay bye ily, go sign some keys 🫢 this was TSS 1.1, dated 2004-05-26, from the TCG Software Stack Developer's Reference β€” no cap, that's fr the whole page πŸ’–βœ¨