MicrosoftVendor.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /** @file
  2. Declare the GUID that is expected:
  3. - as EFI_SIGNATURE_DATA.SignatureOwner GUID in association with X509 and
  4. RSA2048 Secure Boot certificates issued by/for Microsoft,
  5. - as UEFI variable vendor GUID in association with (unspecified)
  6. Microsoft-owned variables.
  7. Copyright (C) 2014-2019, Red Hat, Inc.
  8. SPDX-License-Identifier: BSD-2-Clause-Patent
  9. @par Specification Reference:
  10. - MSDN: System.Fundamentals.Firmware at
  11. <https://msdn.microsoft.com/en-us/ie/dn932805(v=vs.94)>.
  12. **/
  13. #ifndef MICROSOFT_VENDOR_H_
  14. #define MICROSOFT_VENDOR_H_
  15. #include <Uefi/UefiBaseType.h>
  16. //
  17. // The following test cases of the Secure Boot Logo Test in the Microsoft
  18. // Hardware Certification Kit:
  19. //
  20. // - Microsoft.UefiSecureBootLogo.Tests.OutOfBoxVerifyMicrosoftKEKpresent
  21. // - Microsoft.UefiSecureBootLogo.Tests.OutOfBoxConfirmMicrosoftSignatureInDB
  22. //
  23. // expect the EFI_SIGNATURE_DATA.SignatureOwner GUID to be
  24. // 77FA9ABD-0359-4D32-BD60-28F4E78F784B, when the
  25. // EFI_SIGNATURE_DATA.SignatureData field carries any of the following X509
  26. // certificates:
  27. //
  28. // - "Microsoft Corporation KEK CA 2011" (in KEK)
  29. // - "Microsoft Windows Production PCA 2011" (in db)
  30. // - "Microsoft Corporation UEFI CA 2011" (in db)
  31. //
  32. // This is despite the fact that the UEFI specification requires
  33. // EFI_SIGNATURE_DATA.SignatureOwner to reflect the agent (i.e., OS,
  34. // application or driver) that enrolled and therefore owns
  35. // EFI_SIGNATURE_DATA.SignatureData, and not the organization that issued
  36. // EFI_SIGNATURE_DATA.SignatureData.
  37. //
  38. #define MICROSOFT_VENDOR_GUID \
  39. { 0x77fa9abd, \
  40. 0x0359, \
  41. 0x4d32, \
  42. { 0xbd, 0x60, 0x28, 0xf4, 0xe7, 0x8f, 0x78, 0x4b }, \
  43. }
  44. extern EFI_GUID gMicrosoftVendorGuid;
  45. #endif /* MICROSOFT_VENDOR_H_ */