linux-integrity.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* tpm2key.asn1 parent identification
@ 2025-09-14 16:08 Jarkko Sakkinen
  2025-09-14 16:23 ` Jarkko Sakkinen
  2025-09-15  3:24 ` James Bottomley
  0 siblings, 2 replies; 16+ messages in thread
From: Jarkko Sakkinen @ 2025-09-14 16:08 UTC (permalink / raw)
  To: linux-integrity, tpm2; +Cc: James Bottomley

Hi,

In practice, while implementing tpm2sh and its self-contained TPM emulator
called "MockTPM", I've noticed that 'tpm2key.asn1.' has a major bottleneck,
but luckily it is easy to squash.

Parent handle should never be persisted, as it defies the existential
reason of having a file format in the first place.

To address this issue I just added couple of optional fields to TPMKey:

  parentName   [6] EXPLICIT OCTET STRING OPTIONAL,
  parentPubkey [7] EXPLICIT OCTET STRING OPTIONAL

By persisting this information TPM2_GetCapability + TPM2_ReadPublic can
be used to acquire an appropriate handle.

I'd highly recommend to add this quirk to anything that processes this
ASN.1 format.

BR, Jarkko

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2025-09-23 15:08 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-14 16:08 tpm2key.asn1 parent identification Jarkko Sakkinen
2025-09-14 16:23 ` Jarkko Sakkinen
2025-09-22 21:42   ` James Bottomley
2025-09-15  3:24 ` James Bottomley
2025-09-15 14:50   ` Jarkko Sakkinen
2025-09-15 18:08     ` Jarkko Sakkinen
2025-09-16  2:10       ` Jarkko Sakkinen
2025-09-16  2:19         ` Jarkko Sakkinen
2025-09-17  2:33       ` James Bottomley
2025-09-18 15:48         ` Jarkko Sakkinen
2025-09-18 17:35           ` Jarkko Sakkinen
2025-09-22  8:56             ` Jarkko Sakkinen
2025-09-22 21:31               ` James Bottomley
2025-09-23 14:25                 ` Jarkko Sakkinen
2025-09-23 14:37                   ` James Bottomley
2025-09-23 15:08                     ` Jarkko Sakkinen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).