Re: [PATCH v9 06/19] x86: Add early SHA-1 support for Secure Launch early measurements

From: Matthew Garrett
Date: Mon Aug 19 2024 - 14:24:43 EST


On Mon, Aug 19, 2024 at 09:05:47PM +0300, Jarkko Sakkinen wrote:
> On Fri Aug 16, 2024 at 9:41 PM EEST, Matthew Garrett wrote:
> > On Fri, Aug 16, 2024 at 02:22:04PM +0300, Jarkko Sakkinen wrote:
> >
> > > For (any) non-legacy features we can choose, which choices we choose to
> > > support, and which we do not. This is not an oppositive view just saying
> > > how it is, and platforms set of choices is not a selling argument.
> >
> > NIST still permits the use of SHA-1 until 2030, and the most significant
> > demonstrated weaknesses in it don't seem applicable to the use case
> > here. We certainly shouldn't encourage any new uses of it, and anyone
> > who's able to use SHA-2 should be doing that instead, but it feels like
> > people are arguing about not supporting hardware that exists in the real
> > world for vibes reasons rather than it being a realistically attackable
> > weakness (and if we really *are* that concerned about SHA-1, why are we
> > still supporting TPM 1.2 at all?)
>
> We are life-supporting TPM 1.2 as long as necessary but neither the
> support is extended nor new features will gain TPM 1.2 support. So
> that is at least my policy for that feature.

But the fact that we support it and provide no warning labels is a
pretty clear indication that we're not actively trying to prevent people
from using SHA-1 in the general case. Why is this a different case?
Failing to support it actually opens an entire separate set of footgun
opportunities in terms of the SHA-1 banks now being out of sync with the
SHA-2 ones, so either way we're leaving people open to making poor
choices.