[svsm-devel] GUIDs in the GHCB and SVSM specifications
Tom Lendacky
thomas.lendacky at amd.com
Wed Feb 26 23:40:17 CET 2025
All,
There has been some talk about how the GUIDs in the GHCB and SVSM
specifications should be encoded [1]. The term GUID brings encoding
ambiguity with it.
- RFC 4122 specifies the format of a GUID/UUID and the encodingas
network byte order.
- The UEFI specification says that their GUID format is that of RFC
4122, but that the encoding is different. UEFI has time_low, time_mid,
and time_hi_and_version as little-endian encoded.
Given this, the GHCB and SVSM specifications need to be updated to
specify the expected encoding of the GUIDs.
The GHCB specification will add that the certificate GUIDs follow RFC
4122 in format and encoding (network byte order). This is based on
existing users and tools that have already (likely) been using network
byte order.
The SVSM specification, however, because support has already been added
to the Linux kernel using guid library APIs, will follow RFC 4122 in
format with an encoding of time_low, time_mid, and time_hi_and_version
as little-endian. In Linux, the guid library APIs are guid_parse(),
guid_gen(), etc.
If there are no objections, I'll make those changes.
Thanks,
Tom
[1] https://github.com/coconut-svsm/svsm/pull/541#discussion_r1963201009
More information about the Svsm-devel
mailing list