网页
综合
更新时间 2026-11-13 17:51:19
The Linux Kernel Archives - Signatures
自动蜘蛛
www.kernel.org
正文约 4932 字
All kernel releases are cryptographically signed using OpenPGP-compliant signatures. Everyone is strongly encouraged to verify the integrity of downloaded kernel releases by verifying the corresponding signatures.
Every kernel release comes with a cryptographic signature from the person making the release. This cryptographic signature allows anyone to verify whether the files have been modified or otherwise tampered with after the developer created and signed them. The signing and verification process uses public-key cryptography and it is next to impossible to forge a PGP signature without first gaining access to the developer's private key. If this does happen, the developers will revoke the compromised key and will re-sign all their previously signed releases with the new key.
To learn more about the way PGP works, please consult Wikipedia.
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.
If the task of maintaining your own web of trust is too daunting to you, you can opt to shortcut this process by using the "Trust on First Use" (TOFU) approach and rely on the kernel.org Web Key Directory (WKD).
To import keys belonging to many kernel developers, you can use the following command:
For example, to import keys belonging to Linus Torvalds and Greg Kroah-Hartman, you would use:
This command will verify the TLS certificate presented by kernel.org before importing these keys into your keyring.
All software released via kernel.org has detached PGP signatures you can use to verify the integrity of your downloads.
To illustrate the verification process, let's use Linux 4.6.6 release as a walk-through example. First, use "curl" to download the release and the corresponding signature:
You will notice that the signature is made against the uncompressed version of the archive. This is done so there is only one signature required for .gz and .xz compressed versions of the release. Start by uncompressing the archive, using unxz in our case:
Now verify the .tar archive against the signature:
You can combine these steps into a one-liner:
It's possible that you get a "No public key error":
Please use the "gpg2 --locate-keys" command listed above to download the key for Greg Kroah-Hartman and Linus Torvalds and then try again:
To make the "WARNING" message go away you can indicate that you choose to trust that key using TOFU:
Note that you may have to pass "--trust-model tofu" the first time you run the verify command, but it should not be necessary after that.
If you need to perform this task in an automated environment or simply prefer a more convenient tool, you can use the following helper script to properly download and verify Linux kernel tarballs:
Please review the script before adopting it for your needs.
Here are key fingerprints for Linus Torvalds, Greg Kroah-Hartman, Sasha Levin, and Ben Hutchings, who are most likely to be releasing kernels:
Please verify the TLS certificate for this site in your browser before trusting the above information.
If at any time you see "BAD signature" output from "gpg2 --verify", please first check the following first:
If you repeatedly get the same "BAD signature" output, please email helpdesk@kernel.org, so we can investigate the problem.
We have a dedicated off-the-network system that connects directly to our central attached storage and calculates checksums for all uploaded software releases. The generated sha256sums.asc file is then signed with a PGP key generated for this purpose and that doesn't exist outside of that system.
These checksums are NOT intended to replace developer signatures. It is merely a way for someone to quickly verify whether contents on one of the many kernel.org mirrors match the contents on the master mirror. While you may use them to quickly verify whether what you have downloaded matches what we have on our central storage system, you should continue to use developer signatures for best assurance.
Prior to September, 2011 all kernel releases were signed automatically by the same PGP key:
Due to the kernel.org systems compromise, this key has been retired and revoked. It will no longer be used to sign future releases and you should NOT use this key to verify the integrity of any archives. It is almost certain that this key has fallen into malicious hands.
All kernel releases that were previously signed with this key were cross-checked and signed with another key, created specifically for this purpose:
The private key used for this purpose has been destroyed and cannot be used to sign any releases produced after 2011.
本页为82搜索生成的网页快照,内容来自站内索引;演示数据的原文链接仅作示例。