DCP BLOB FORMAT(9)
π dcp blob format(9) π
okay so bestie, welcome to the Kernel API Manual page for dcp blob format(9) β manual name folded in near the top, we're classy like that. π Today's main character is the Data Co-Processor (DCP), and it provides hardware-bound AES keys using its AES encryption engine only. It does not provide direct key sealing/unsealing, periodt. π
To make DCP hardware encryption keys usable as a trust source, we define our own custom format. That format uses a hardware-bound key to secure the sealing key stored in the key blob. slay, honestly. π
Whenever a new trusted key using DCP is generated, we generate a random 128-bit blob encryption key (BEK) and a 128-bit nonce. The BEK and nonce are used to encrypt the trusted key payload using AES-128-GCM. π
The BEK itself is encrypted using the hardware-bound key, via the DCP's AES encryption engine, with AES-128-ECB. The encrypted BEK, the generated nonce, the BEK-encrypted payload, and the authentication tag make up the blob format, together with a version number, payload length, and authentication tag. π¦ that's the whole blob vibe, no cap. π
π SEE ALSO π
- Kernel file
./security/keys/trusted-keys/trusted_dcp.c struct dcp_blob_fmt(9)
mwah π that's the page, bestie β source/version: ./security/keys/trusted-keys, date: October 2026, manual page: dcp blob format(9). π«Άβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms