On Thu, Mar 13, 2025 at 03:17:24PM +0100, Daniel Kiper wrote:
> On Mon, Jan 13, 2025 at 11:07:11AM +0800, Gary Lin via Grub-devel wrote:
> > This commit implements the missing NV index mode support in
> > 'grub-protect'. NV index mode stores the sealed key in the TPM
> > non-volatile memory (NVRAM) instead of a file. There are two supported
> > types of TPM handles.
> >
> > 1. Persistent handle (0x81000000~0x81FFFFFF)
> >    TPM 2.0 Key File format (--tpm2key) is not supported due to the
> >    limitation of persistent handles. This 'grub-protect' command
> >    seals the key into the persistent handle 0x81000000.
> 
> It seems to me these two sentences are contradicting one another.
> I think at least one of them should be expanded or rephrased.
> 
I'll rephrase it like:

"Only the raw format is supported due to the limitation of persistent
handles"

> >   # grub-protect \
> >       --protector=tpm2 \
> >       --action=add \
> >       --tpm2-bank=sha256 \
> >       --tpm2-pcrs=7,11 \
> >       --tpm2-keyfile=luks-key \
> >       --tpm2-nvindex=0x81000000
> >
> > 2. NV index handle (0x1000000~0x1FFFFFF)
> >    Both TPM 2.0 Key File format and the raw format are supported by NV
> >    index handles. Here is the 'grub-protect' command to seal the key in
> >    TPM 2.0 Key File format into the NV index handle 0x1000000.
> >
> >   # grub-protect \
> >       --protector=tpm2 \
> >       --action=add \
> >       --tpm2key \
> >       --tpm2-bank=sha256 \
> >       --tpm2-pcrs=7,11 \
> >       --tpm2-keyfile=luks-key \
> >       --tpm2-nvindex=0x1000000
> >
> > Besides the 'add' action, the corresponding 'remove' action is also
> > introduced. To remove the data from a persistent or NV index handle,
> > just use '--tpm2-nvindex=HANDLE' combining with '--tpm2-evict'. This
> > sample command removes the data from the NV index handle 0x1000000.
> >
> >   # grub-protect \
> >       --protector=tpm2 \
> >       --action=remove \
> >       --tpm2-evict \
> >       --tpm2-nvindex=0x1000000
> >
> > Signed-off-by: Gary Lin <g...@suse.com>
> > Reviewed-by: Stefan Berger <stef...@linux.ibm.com>
> > ---
> >  util/grub-protect.c | 343 ++++++++++++++++++++++++++++++++++++--------
> >  1 file changed, 287 insertions(+), 56 deletions(-)
> >
> > diff --git a/util/grub-protect.c b/util/grub-protect.c
> > index 5b7e952f4..40d4a3fc5 100644
> > --- a/util/grub-protect.c
> > +++ b/util/grub-protect.c
> 
> [...]
> 
> > +static grub_err_t
> > +protect_tpm2_remove (protect_args_t *args)
> > +{
> >    grub_err_t err;
> >
> > -  if (args->tpm2_evict == 0)
> > +  if (args->tpm2_evict == false)
> 
> I am OK with changes like this one but they should be documented in the
> commit message.
> 
Sure, I'll address such changes in the commit message.

Gary Lin

_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to