From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by mx.groups.io with SMTP id smtpd.web08.3354.1627470460784527694 for ; Wed, 28 Jul 2021 04:07:40 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=WzQzK1Qb; spf=pass (domain: kernel.org, ip: 198.145.29.99, mailfrom: ardb@kernel.org) Received: by mail.kernel.org (Postfix) with ESMTPSA id 4797560FDB for ; Wed, 28 Jul 2021 11:07:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1627470460; bh=znY2dcH/6bH3EFot+g4fc1Ve5TQczcrDbcV5TEdjU7U=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=WzQzK1QbNelVtwWTkfIB/C8MpIl3AkFWpKsuxcHmylADk/jTIXct+leut9sgOtfHZ YSEXpBRV1kJ34g+PilGN6QtVjrQs2j/cy/JQZssa7kgNL0H36XKEXUp/vnXPiQ0Fj3 WmwbWGyUts+UbUNF+plHQ0y7/nvISDVAqC1iXkk+wyjXgSFzNBVbXBVx06i98YGi8P u3S6e6M+Oj6BYYHYNN0cPpEiHuL6Q0jE/tjD0PqNFVt6lN+tn8IvrWD6YQGM1DGRdI ETBFWvNw6VvTjQJ/EXpG4ZvccdIXwj2gBwusolTldq55YmTLifZcU3lje48x9PteK1 Dio/A8l6iiBIQ== Received: by mail-oi1-f182.google.com with SMTP id w6so3228461oiv.11 for ; Wed, 28 Jul 2021 04:07:40 -0700 (PDT) X-Gm-Message-State: AOAM533c4+DxbZBvw2tBIth6Lv6oAm8WsCY99kQGZo8cQRid8YD26IrU k6cjcotgZh5VuPmUVvuTadZmqodeN0jhbxOCro4= X-Google-Smtp-Source: ABdhPJyNdZ0llwKEl5axDHaD9yxDBo6q6claP3wwVytyRKZ8dUsprFT7BldMa5zKXXOKeqODd8xKuUNbD9PXMIH7i7E= X-Received: by 2002:aca:4c49:: with SMTP id z70mr17601295oia.174.1627470459494; Wed, 28 Jul 2021 04:07:39 -0700 (PDT) MIME-Version: 1.0 References: <20210714122952.1340890-1-gjb@semihalf.com> <020201d78384$57add210$07097630$@byosoft.com.cn> In-Reply-To: From: "Ard Biesheuvel" Date: Wed, 28 Jul 2021 13:07:28 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [edk2-devel] [PATCH v6 00/11] Secure Boot default keys To: edk2-devel-groups-io , "Liming Gao (Byosoft address)" Cc: Sunny Wang , Samer El-Haj-Mahmoud , Grzegorz Bernacki , Ard Biesheuvel , Ray Ni , Leif Lindholm , Marcin Wojtas , upstream@semihalf.com, Jiewen Yao , Jian J Wang , Min Xu , Laszlo Ersek , Sami Mujawar , Andrew Fish , Jordan Justen , Rebecca Cran , Peter Grehan , Thomas Abraham , Chasel Chiu , Nate DeSimone , Eric Dong , Michael Kinney , zailiang.sun@intel.com, yi.qian@intel.com, Graeme Gregory , Radoslaw Biernacki , Peter Batard Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, 28 Jul 2021 at 12:39, Ard Biesheuvel wrote: > > On Wed, 28 Jul 2021 at 09:44, gaoliming wrote= : > > > > Sunny: > > Yes. This patch set is ready to be merged. > > > > Samer: > > Would you help merge this patch set? > > > > I can pick it up if you could please create the release notes entry? Tha= nks. > Submitted here: https://github.com/tianocore/edk2/pull/1839 and failed with some errors. Could someone please diagnose/fix and submit = a v7? > > Thanks > > Liming > > > -----=E9=82=AE=E4=BB=B6=E5=8E=9F=E4=BB=B6----- > > > =E5=8F=91=E4=BB=B6=E4=BA=BA: devel@edk2.groups.io =E4=BB=A3=E8=A1=A8 Sunny Wang > > > =E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: 2021=E5=B9=B47=E6=9C=8821=E6= =97=A5 11:41 > > > =E6=94=B6=E4=BB=B6=E4=BA=BA: Samer El-Haj-Mahmoud ; > > > devel@edk2.groups.io; gjb@semihalf.com; Ard Biesheuvel > > > ; gaoliming@byosoft.com.cn; ray.ni@intel.= com > > > =E6=8A=84=E9=80=81: leif@nuviainc.com; mw@semihalf.com; upstream@sem= ihalf.com; > > > jiewen.yao@intel.com; jian.j.wang@intel.com; min.m.xu@intel.com; > > > lersek@redhat.com; Sami Mujawar ; > > > afish@apple.com; jordan.l.justen@intel.com; rebecca@bsdio.com; > > > grehan@freebsd.org; Thomas Abraham ; > > > chasel.chiu@intel.com; nathaniel.l.desimone@intel.com; > > > eric.dong@intel.com; michael.d.kinney@intel.com; zailiang.sun@intel.= com; > > > yi.qian@intel.com; graeme@nuviainc.com; rad@semihalf.com; pete@akeo.= ie; > > > Sunny Wang > > > =E4=B8=BB=E9=A2=98: Re: [edk2-devel] [PATCH v6 00/11] Secure Boot de= fault keys > > > > > > Ard, Liming, Ray, Thanks for your review for ArmVirtPkg, ArmPlatform= Pkg, > > and > > > EmulatorPkg patches. > > > > > > As for the patch for Intel Platforms below, it is in another series = for > > > edk2-platforms. > > > - [edk2-platforms PATCH v6 1/4] Intel Platforms: add > > > SecureBootVariableLib class resolution > > > https://edk2.groups.io/g/devel/message/77781 > > > > > > Therefore, I think this series already got all the necessary Reviewe= d-By > > and > > > Acked-By of all parts and is ready to be pushed now. > > > > > > Best Regards, > > > Sunny Wang > > > > > > -----Original Message----- > > > From: Samer El-Haj-Mahmoud > > > Sent: Friday, July 16, 2021 8:00 PM > > > To: devel@edk2.groups.io; gjb@semihalf.com > > > Cc: leif@nuviainc.com; ardb+tianocore@kernel.org; Sunny Wang > > > ; mw@semihalf.com; upstream@semihalf.com; > > > jiewen.yao@intel.com; jian.j.wang@intel.com; min.m.xu@intel.com; > > > lersek@redhat.com; Sami Mujawar ; > > > afish@apple.com; ray.ni@intel.com; jordan.l.justen@intel.com; > > > rebecca@bsdio.com; grehan@freebsd.org; Thomas Abraham > > > ; chasel.chiu@intel.com; > > > nathaniel.l.desimone@intel.com; gaoliming@byosoft.com.cn; > > > eric.dong@intel.com; michael.d.kinney@intel.com; zailiang.sun@intel.= com; > > > yi.qian@intel.com; graeme@nuviainc.com; rad@semihalf.com; pete@akeo.= ie; > > > Samer El-Haj-Mahmoud > > > Subject: RE: [edk2-devel] [PATCH v6 00/11] Secure Boot default keys > > > > > > The v6 of this series seems to have all the necessary Reviewed-By (a= nd > > some > > > Tested-By) of all parts, except the following platform specific part= s. > > Could we > > > get help from maintainers to review these please? > > > > > > Much appreciated! > > > > > > - ArmVirtPkg : https://edk2.groups.io/g/devel/message/77772 > > > - ArmPlatformPkg: https://edk2.groups.io/g/devel/message/77775 > > > - EmulatorPkg: https://edk2.groups.io/g/devel/message/77773 > > > - Intel Platforms (Platform/Intel/QuarkPlatformPkg, > > > Platform/Intel/MinPlatformPkg, Platform/Intel/Vlv2TbltDevicePkg): > > > https://edk2.groups.io/g/devel/message/77781 > > > > > > Thanks, > > > --Samer > > > > > > > > > > > > > > > > > > > -----Original Message----- > > > > From: devel@edk2.groups.io On Behalf Of > > > > Grzegorz Bernacki via groups.io > > > > Sent: Wednesday, July 14, 2021 8:30 AM > > > > To: devel@edk2.groups.io > > > > Cc: leif@nuviainc.com; ardb+tianocore@kernel.org; Samer > > > El-Haj-Mahmoud > > > > ; Sunny Wang > > > > ; mw@semihalf.com; upstream@semihalf.com; > > > > jiewen.yao@intel.com; jian.j.wang@intel.com; min.m.xu@intel.com; > > > > lersek@redhat.com; Sami Mujawar ; > > > > afish@apple.com; ray.ni@intel.com; jordan.l.justen@intel.com; > > > > rebecca@bsdio.com; grehan@freebsd.org; Thomas Abraham > > > > ; chasel.chiu@intel.com; > > > > nathaniel.l.desimone@intel.com; gaoliming@byosoft.com.cn; > > > > eric.dong@intel.com; michael.d.kinney@intel.com; zailiang.sun@inte= l.com; > > > > yi.qian@intel.com; graeme@nuviainc.com; rad@semihalf.com; > > > > pete@akeo.ie; Grzegorz Bernacki > > > > Subject: [edk2-devel] [PATCH v6 00/11] Secure Boot default keys > > > > > > > > This patchset adds support for initialization of default > > > > Secure Boot variables based on keys content embedded in > > > > flash binary. This feature is active only if Secure Boot > > > > is enabled and DEFAULT_KEY is defined. The patchset > > > > consist also application to enroll keys from default > > > > variables and secure boot menu change to allow user > > > > to reset key content to default values. > > > > Discussion on design can be found at: > > > > https://edk2.groups.io/g/rfc/topic/82139806#600 > > > > > > > > Built with: > > > > GCC > > > > - RISC-V (U500, U540) [requires fixes in dsc to build] > > > > - Intel (Vlv2TbltDevicePkg (X64/IA32), Quark, MinPlatformPkg, > > > > EmulatorPkg (X64), Bhyve, OvmfPkg (X64/IA32)) > > > > - ARM (Sgi75,SbsaQemu,DeveloperBox, RPi3/RPi4) > > > > > > > > RISC-V, Quark, Vlv2TbltDevicePkg, Bhyve requires additional fixes = to be > > > built, > > > > will be post on edk2 maillist later > > > > > > > > VS2019 > > > > - Intel (OvmfPkgX64) > > > > > > > > Test with: > > > > GCC5/RPi4 > > > > VS2019/OvmfX64 (requires changes to enable feature) > > > > > > > > Tests: > > > > 1. Try to enroll key in incorrect format. > > > > 2. Enroll with only PKDefault keys specified. > > > > 3. Enroll with all keys specified. > > > > 4. Enroll when keys are enrolled. > > > > 5. Reset keys values. > > > > 6. Running signed & unsigned app after enrollment. > > > > > > > > Changes since v1: > > > > - change names: > > > > SecBootVariableLib =3D> SecureBootVariableLib > > > > SecBootDefaultKeysDxe =3D> SecureBootDefaultKeysDxe > > > > SecEnrollDefaultKeysApp =3D> EnrollFromDefaultKeysApp > > > > - change name of function CheckSetupMode to GetSetupMode > > > > - remove ShellPkg dependecy from EnrollFromDefaultKeysApp > > > > - rebase to master > > > > > > > > Changes since v2: > > > > - fix coding style for functions headers in SecureBootVariableLib.= h > > > > - add header to SecureBootDefaultKeys.fdf.inc > > > > - remove empty line spaces in SecureBootDefaultKeysDxe files > > > > - revert FAIL macro in EnrollFromDefaultKeysApp > > > > - remove functions duplicates and add SecureBootVariableLib > > > > to platforms which used it > > > > > > > > Changes since v3: > > > > - move SecureBootDefaultKeys.fdf.inc to ArmPlatformPkg > > > > - leave duplicate of CreateTimeBasedPayload in PlatformVarCleanupL= ib > > > > - fix typo in guid description > > > > > > > > Changes since v4: > > > > - reorder patches to make it bisectable > > > > - split commits related to more than one platform > > > > - move edk2-platform commits to separate patchset > > > > > > > > Changes since v5: > > > > - split SecureBootVariableLib into SecureBootVariableLib and > > > > SecureBootVariableProvisionLib > > > > > > > > Grzegorz Bernacki (11): > > > > SecurityPkg: Create SecureBootVariableLib. > > > > SecurityPkg: Create library for enrolling Secure Boot variables. > > > > ArmVirtPkg: add SecureBootVariableLib class resolution > > > > OvmfPkg: add SecureBootVariableLib class resolution > > > > EmulatorPkg: add SecureBootVariableLib class resolution > > > > SecurityPkg: Remove duplicated functions from SecureBootConfigDx= e. > > > > ArmPlatformPkg: Create include file for default key content. > > > > SecurityPkg: Add SecureBootDefaultKeysDxe driver > > > > SecurityPkg: Add EnrollFromDefaultKeys application. > > > > SecurityPkg: Add new modules to Security package. > > > > SecurityPkg: Add option to reset secure boot keys. > > > > > > > > SecurityPkg/SecurityPkg.dec > > > | 14 + > > > > ArmVirtPkg/ArmVirt.dsc.inc > > > | 2 + > > > > EmulatorPkg/EmulatorPkg.dsc > > > | 2 + > > > > OvmfPkg/Bhyve/BhyveX64.dsc > > > | 2 + > > > > OvmfPkg/OvmfPkgIa32.dsc > > > | 2 + > > > > OvmfPkg/OvmfPkgIa32X64.dsc > > > | 2 + > > > > OvmfPkg/OvmfPkgX64.dsc > > > | 2 + > > > > SecurityPkg/SecurityPkg.dsc > > > | 5 + > > > > SecurityPkg/EnrollFromDefaultKeysApp/EnrollFromDefaultKeysApp.inf > > > > | 48 ++ > > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.i= nf > > > > | 80 +++ > > > > > > > > > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= ePro > > > > visionLib.inf | 80 +++ > > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootCo= nfi > > > > gDxe.inf | 3 + > > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureB= oot > > > > DefaultKeysDxe.inf | 46 ++ > > > > SecurityPkg/Include/Library/SecureBootVariableLib.h > > > | 153 > > > > ++++++ > > > > SecurityPkg/Include/Library/SecureBootVariableProvisionLib.h > > > > | 134 +++++ > > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootCo= nfi > > > > gNvData.h | 2 + > > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootCo= nfi > > > > g.vfr | 6 + > > > > SecurityPkg/EnrollFromDefaultKeysApp/EnrollFromDefaultKeysApp.c > > > > | 110 +++++ > > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.c > > > > | 511 ++++++++++++++++++++ > > > > > > > > > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= ePro > > > > visionLib.c | 491 +++++++++++++++++++ > > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootCo= nfi > > > > gImpl.c | 344 ++++++------- > > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureB= oot > > > > DefaultKeysDxe.c | 69 +++ > > > > ArmPlatformPkg/SecureBootDefaultKeys.fdf.inc > > > | 70 > > > > +++ > > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.u= ni > > > > | 17 + > > > > > > > > > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= ePro > > > > visionLib.uni | 16 + > > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootCo= nfi > > > > gStrings.uni | 4 + > > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureB= oot > > > > DefaultKeysDxe.uni | 16 + > > > > 27 files changed, 2043 insertions(+), 188 deletions(-) > > > > create mode 100644 > > > > SecurityPkg/EnrollFromDefaultKeysApp/EnrollFromDefaultKeysApp.inf > > > > create mode 100644 > > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.in= f > > > > create mode 100644 > > > > > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= ePro > > > > visionLib.inf > > > > create mode 100644 > > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureB= oot > > > > DefaultKeysDxe.inf > > > > create mode 100644 > > > SecurityPkg/Include/Library/SecureBootVariableLib.h > > > > create mode 100644 > > > > SecurityPkg/Include/Library/SecureBootVariableProvisionLib.h > > > > create mode 100644 > > > > SecurityPkg/EnrollFromDefaultKeysApp/EnrollFromDefaultKeysApp.c > > > > create mode 100644 > > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.c > > > > create mode 100644 > > > > > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= ePro > > > > visionLib.c > > > > create mode 100644 > > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureB= oot > > > > DefaultKeysDxe.c > > > > create mode 100644 ArmPlatformPkg/SecureBootDefaultKeys.fdf.inc > > > > create mode 100644 > > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.un= i > > > > create mode 100644 > > > > > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= ePro > > > > visionLib.uni > > > > create mode 100644 > > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureB= oot > > > > DefaultKeysDxe.uni > > > > > > > > -- > > > > 2.25.1 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > IMPORTANT NOTICE: The contents of this email and any attachments are > > > confidential and may also be privileged. If you are not the intended > > recipient, > > > please notify the sender immediately and do not disclose the content= s to > > any > > > other person, use it for any purpose, or store or copy the informati= on in > > any > > > medium. Thank you. > > > > > > > > > > > > > > > > > > > > > > > >=20 > > > >