Skip to Content.
Sympa Menu

sm-discuss - Re: [SM-Discuss] STRONGER POLICY for gpg signatures to replace MD5[*] and ALSO new SOURCE_HASH support

sm-discuss AT lists.ibiblio.org

Subject: Public SourceMage Discussion List

List archive

Chronological Thread  
  • From: "Jeremy Blosser (emrys)" <jblosser-smgl AT firinn.org>
  • To: sm-discuss AT lists.ibiblio.org
  • Subject: Re: [SM-Discuss] STRONGER POLICY for gpg signatures to replace MD5[*] and ALSO new SOURCE_HASH support
  • Date: Mon, 29 Aug 2005 07:27:50 -0500

On Aug 29, Sergey A. Lipnevich [sergey AT optimaltec.com] wrote:
> Quoting Seth Alan Woolley <seth AT positivism.org>:
>
> > DRAFT, although this is one case where we're actually moving on it
> > quickly, so it's more of a last call for objections.
> >
>
> So here goes: I object.
>
> 1. Hash collision is not a problem when it comes to source tarballs, so
> please
> don't use it as a reason to switch to signatures. We could've as easily
> hashed
> them with CRC32 or with 10K-bit hash. *Either* way provides *no* security.

If someone is able to modify the sources while keeping the hash intact, we
can't detect it just checking the hash. This is a problem. If we're using
signatures instead of just hashes, they have to modify the signature in
place instead of just the hash it's based on or subvert the private key and
re-sign. For guru-signed spells especially the private key is going to be
stored somewhere completely different from the upstream sources; the
attacker changing the upstream sources isn't likely to even be aware of our
signatures and keys.

> 2. There's no way I can sign a bunch of code I didn't read through and
> understand. It's an impossible task in a distribution, so it's shorter to
> say
> that I can't sign a bunch of code, period.

As we've said several times, guru signatures explicitly do not mean that
you've read the source, they only mean that a source which passes the
signature check is the same as what you downloaded. I don't think we can
say this any clearer than we have, so the fact it keeps coming up means to
me that people just don't want to hear it. There's simply no reason a
signature has to mean more than we tell our users it means. It's not even
uncommon for corporations to automatically sign various things before
sending them to other corporations, which is never used to mean the
corporation vouches for what's being sent, just confirms it wasn't modified
in transit.

Would people feel any better about this if we genericised the IDs used on
the keys? They could all use 'sourcemage-grimoire-key AT sourcemage.org' or
something.

> 3. Let's be frank Seth, tarballs that you, or anyone else besides the
> authors,
> signed are as *insecure* as they were before you did that. It didn't format
> your hard drive? Good for you. Maybe it's designed to format only *mine*. Or
> the drive of the guy who works for CIA ot Chinese government. You don't know
> that.

Of course they're just as insecure with the signature. That's not the
point. The point is that if I sign something at point in time A, and you
get it at point in time B and the signatures still match, then at point in
time B it is at least *not any more insecure* than it was at point in time
A.

> 4. Combination of #2 and #3 leads me to believe that we do not provide *any*
> additional security over unsigned tarballs, so let's focus on *integrity*.
> Integrity is *perfectly* verified by the hash. Stronger hash if necessary,
> but
> nevertheless a hash. Non-personified piece of information.

This is what we've been saying for quite some time. We make no guarantees
the source won't destroy someone's system, just that download integrity was
preserved. And we want to use GPG for that instead of a simple hash
because it a) requires an attacker to expend more resources to subvert the
integrity check, and b) lets us offload much of the check itself to people
better equipped to handle it than we are. The Unix way.

> 5. What people keep saying on the list amounts to: let's call it blue even
> though it's black. Meaning, let's call GPG signature a means to verify
> integrity even though it's a means to verify source and integrity. I don't
> buy
> that.

Again, there's no reason it has to mean this. If you sign for a package
delivered to your neighbor, does it bind you to any claims that the package
isn't a mail bomb? Signatures are used for all kinds of things in the real
world and digital world. What it means is what we say it means.

Attachment: pgp4YPnR9OHsu.pgp
Description: PGP signature




Archive powered by MHonArc 2.6.24.

Top of Page