News for hackers. Stuff that matters.
Re:What does a PGP signature on a Git commit prove? by globular-toast on Wednesday March 31, 2021 @05:43AM (#26645239)
Something that is not discussed: to verify the signature you need a copy of Linus's public key, but how do you know you have his actual public key? If you downloaded the key from some server somewhere, and that server was compromised, it could fool you into thinking the signature is valid, which undermines the whole thing.

One way to know the key is valid is if you meet Linus himself and verify it first hand (like when you verify Whatsapp keys, which you do, right?). But not everyone can do that. PGP implements a "web of trust" security model. That means if someone you trust has signed Linus's key, you can verify his key via their signature. This extends beyond one hop; it's up to you how much you trust it based on its signatures.

This is in contrast to centralised systems like SSL/TLS where you have no choice but to trust entities like Microsoft, Google, Verisign etc.

Re:What does a PGP signature on a Git commit prove? by waynesonfire on Wednesday March 31, 2021 @08:01AM (#26646106)
> Kernel.org web of trust PGP keys used by members of kernel.org are cross-signed by other members of the Linux kernel development community (and, frequently, by many other people). If you wanted to verify the validity of any key belonging to a member of kernel.org, you could review the list of signatures on their public key and then make a decision whether you trust that key or not. See the Wikipedia article on the subject of the Web of Trust.

https://www.kernel.org/signature.html

Looks like the kernel.org folks actually use the web of trust model.

Re:What does a PGP signature on a Git commit prove? by globular-toast on Wednesday March 31, 2021 @08:42AM (#26646489)
Yeah, they do. There's a video of Linus talking from many years ago about git where he says web of trust is the only way to do security.
Re:What does a PGP signature on a Git commit prove? by rdpintqogeogsaa on Wednesday March 31, 2021 @06:14AM (#26645452)
In practice, most people don't care if they have a copy of Linus's public key. They only care if they have a copy that is sufficiently likely to be Linus's public key.

This is the reason why the web of trust has, by and large, failed to reach any noteworthy amount of adoption. The web/operating system PKI is good enough for most purposes. Unless your usage scenario involves a massively critical government agency with good reason to be actually paranoid, "good enough" for the web means "good enough" to deliver a public key for the Linux kernel. Or more likely, "good enough" to deliver an installation image for the distribution of your choice that is theoretically signed with PGP/something actually reasonable, but whose signature you won't check anyway because the web PKI is, in fact, good enough.

The distribution of your choice may then possibly have verified the source of the public key, but that's so far upstream of you that, quite honestly, you have no way of checking anyway. Even if you bothered checking this being checked upstream, there are tons of other critical system components for which you would have to repeat this.