From d5754cbe76d63f07b19daa50640c0fe6af3fb08f Mon Sep 17 00:00:00 2001
From: Li Zhou
Date: Fri, 10 Feb 2023 10:56:36 +0800
Subject: [PATCH] secure boot: move pub keys to this git repo
New git repo cgcs-root/public-keys is available now for public
keys used in secure boot process.
This commit moves below keys to this git repo:
boot_pub_key
tis-boot.crt
tis-shim.der
TiBoot.crt
Please pay attention to that tis-boot.crt(pem) and TiBoot.crt(der)
are the same pub key with different formats in fact, which are used
in different user cases.
Test plan:
The tests are done with all the changes which involve
public-keys/integ/root repos for this enhancement about pub keys.
- PASS: rebuild gurb-efi/efitools/shim packages;
- PASS: follow the process to build iso image for secure boot;
- PASS: installation test on AIO-DX lab with secure boot enabled;
- PASS: check that the CERTS/TiBoot.crt in the disk mounted from
the efi.img in the iso image is same with the one in
this git repo.
Story: 2009221
Task: 47358
Signed-off-by: Li Zhou
Change-Id: I540875293548d4b3e191ea50445ad4dfc5d53a51
---
README | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++
TiBoot.crt | Bin 0 -> 830 bytes
boot_pub_key | Bin 0 -> 1172 bytes
tis-boot.crt | 20 ++++++++++++++++++
tis-shim.der | Bin 0 -> 865 bytes
5 files changed, 76 insertions(+)
create mode 100644 README
create mode 100644 TiBoot.crt
create mode 100644 boot_pub_key
create mode 100644 tis-boot.crt
create mode 100644 tis-shim.der
diff --git a/README b/README
new file mode 100644
index 0000000..47011c0
--- /dev/null
+++ b/README
@@ -0,0 +1,56 @@
+ The keys under this directory are the public keys used in
+the verification process of secure boot process for StarlingX
+debian.
+
+Keys Introduction:
+ tis-boot.crt: it is the public key flashed into BIOS to verify
+ bootx64.efi (signed shim image shimx64.efi) and mmx64.efi
+ (signed shim tool image);
+ tis-shim.der: it is the public key used by shim to verify
+ grubx64.efi (signed grub image);
+ boot_pub_key: it is the public key used by grub to verify signed
+ kernel image and initramfs image and efitools image and so on.
+ TiBoot.crt: it is the same pub key with tis-boot.crt (pem) as a
+ der format. It is installed as /CERTS/TiBoot.crt in the efi.img
+ which is in the iso image.
+
+The following ways can be used to create substitute keys:
+(1)example to create tis-boot.crt/TiBoot.crt
+openssl req -new -x509 -newkey rsa:2048 -keyout BOOT.priv -outform DER -out BOOT.der -days 36500 -subj "/CN=My Boot/" -nodes
+openssl x509 -inform der -in BOOT.der -out BOOT.pem
+cp BOOT.pem tis-boot.crt
+cp BOOT.priv tis-boot.key
+cp BOOT.der TiBoot.crt
+The tis-boot.crt and tis-boot.key are used to sign images mentioned above.
+
+The tis-shim.crt/tis-shim.der/tis-shim.key can be created in the same way.
+
+(2)example to create boot_pub_key
+************
+#!/bin/bash
+key_dir="./"
+priv_key="${key_dir}/BOOT-GPG-PRIVKEY-SecureBootCore"
+pub_key="${key_dir}/BOOT-GPG-KEY-SecureBootCore"
+name_real="SecureBootCore"
+pw="PASSWORD"
+USE_PW="Passphrase: PASSWORD"
+
+cat >"${key_dir}/gen_keyring" < "${pub_key}"
+gpg --homedir "${key_dir}" --export-secret-keys --pinentry-mode=loopback --passphrase "${pw}" --armor "${name_real}" > "${priv_key}"
+gpg --homedir "${key_dir}" --export "${name_real}" > ${key_dir}/boot_pub_key
+************
+The BOOT-GPG-PRIVKEY-SecureBootCore is used to sign images mentioned above.
diff --git a/TiBoot.crt b/TiBoot.crt
new file mode 100644
index 0000000000000000000000000000000000000000..2b30d2daa4ae4cc1f2c1369c7a3ef96dfab7d09e
GIT binary patch
literal 830
zcmXqLVzx49Vp3w_WLRGED?cu6EwceH8>d#AN85K^Mn+av27`D*ZUas>=1>+kVJ2rs
zLjeOm5Ql?@-9N7+u_!a&kRPZ6D8kOe=3i2hSe|GoZy*a2;NlSr&&*3v2+Ax=Em8=s
zEG|jSEmrW%OE%;&-~uUN=3x%W3^tGx=QT7lG%_$WG&i+0Hi#1EH8L|aG_r(pY43n0
zMkQoVGqN%;H!<=v7&I|*F*PwVG8|)xUA+1HwC{5lf88H#%e1U|Zf4a?+p}?1C8bLf
zYS{f3Z*=E85x8vE`NrET5*%xmTZJu?c(VTd46`3sO&=(8F6QG&|8VC=*nW+YHGh;2
zUztAnv&&s?ku}xc4^lU8dSuNnDUc@o`eR+|Dmq?T{FLOkjIJB(w9`GgEEzy&HvUuIyfXVAYfE^w#%04SmaNzGyG6N^rT-
zw)>dKmy)LVDb3}-K4iQKJezB
z&61}LbA2Yv>n)UCvagM8R+JYh`Yg!6D`E
zUYcg9qAn%Nk}RyQ=5M!YTpN_7^1t*=k>>vi+l!tVzMJ5(aC*}bQ7IpWI)?+))z|fn6?~5H!sQ+_FECHM_+Pd(
zC{6+{%UTfROND({H|kdpJsGh#-!=CPZVOz*8i!v1mNXm@-gE43y`I+p;T3GnOTai{
zVy#a2=_%#k=&|`+nCL*cwjgz@F9xBUa>Vh(Hl+@E{>0bGl7=;FORhJ)O8b8ML|*nV
zXm$$9I_2MFhh-8l_bC+yxu!$8a@#&l?7t!3-VDy53KqFdruS}RK92$O{dS)bH=4rrU?U9
zxUk