STRUCT SGX_SIGSTRUCT(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay bestie, this is struct sgx_sigstruct(9) from the Kernel API Manual β€” the enclave signature page, and it's giving signed-struct main character energy πŸ”₯

πŸŽ€ NAME πŸŽ€

struct sgx_sigstruct β€” an enclave signature. That's the whole vibe: it's the signature struct for an enclave, periodt. πŸ’–


✨ SYNOPSIS ✨

struct sgx_sigstruct {
    struct sgx_sigstruct_header header;
    u8 modulus[SGX_MODULUS_SIZE];
    u32 exponent;
    u8 signature[SGX_MODULUS_SIZE];
    struct sgx_sigstruct_body body;
    u8 reserved4[12];
    u8 q1[SGX_MODULUS_SIZE];
    u8 q2[SGX_MODULUS_SIZE];
};

πŸ‘‘ Members πŸ‘‘

  • header β€” defines author of the enclave. Okay so this is the "who made this" part ✨
  • modulus β€” the modulus of the public key. Big RSA math energy πŸ”₯
  • exponent β€” the exponent of the public key. The other half of the public-key moment πŸ’…
  • signature β€” the signature calculated over the fields except modulus, (and yes, that comma is in the original, bestie β€” we're keeping it πŸ’…)
  • body β€” defines contents of the enclave. This is the "what's inside" part 🫢
  • q1 β€” a value used in RSA signature verification. Cryptography bestie behavior πŸ”
  • q2 β€” a value used in RSA signature verification. q1's little verification partner, no cap 🌸
psst: the synopsis also has u8 reserved4[12]; β€” it's in the struct, but this page doesn't give it its own member line, so we are absolutely not inventing lore for it πŸ™ˆ

πŸ’œ Description πŸ’œ

The header and body are the parts that are actual signed. The remaining fields define the signature of the enclave. That's it, that's the tea β€” header + body get signed, and the rest of the struct is the signature situation ✨


🌈 SEE ALSO 🌈

Kernel file ./arch/x86/include/asm/sgx.h β€” yes, that exact path, bestie πŸ¦‹

  • SGX_ENCLS_FAULT_FLAG(9)
  • enum sgx_return_code(9)
  • enum sgx_miscselect(9)
  • enum sgx_attribute(9)
  • struct sgx_secs(9)
  • enum sgx_tcs_flags(9)
  • struct sgx_tcs(9)
  • struct sgx_pageinfo(9)
  • enum sgx_page_type(9)
  • enum sgx_secinfo_flags(9)
  • struct sgx_secinfo(9)
  • struct sgx_pcmd(9)
  • struct sgx_sigstruct_header(9)
  • struct sgx_sigstruct_body(9)

mwah πŸ’‹ β€” source/version-line vibes: ./arch/x86/include/asm, date October 2026, page struct sgx_sigstruct(9). That's the whole footer, periodt 🫢

πŸ“¦ where this page comes from