From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 82B00138010 for ; Wed, 17 Oct 2012 00:05:25 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 8EE0FE04F2 for ; Wed, 17 Oct 2012 00:05:24 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 2556AE0458 for ; Tue, 16 Oct 2012 22:54:05 +0000 (UTC) Received: from grubbs.orbis-terrarum.net (localhost [127.0.0.1]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 6BC4F33D958 for ; Tue, 16 Oct 2012 22:54:04 +0000 (UTC) Received: (qmail 28942 invoked by uid 10000); 16 Oct 2012 22:54:04 -0000 Date: Tue, 16 Oct 2012 22:54:04 +0000 From: "Robin H. Johnson" To: gentoo-dev-announce@lists.gentoo.org Subject: [gentoo-dev-announce] PORTAGE_GPG_KEY strictness Message-ID: Reply-To: gentoo-dev@lists.gentoo.org Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo development announcement list X-BeenThere: gentoo-dev-announce@lists.gentoo.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="DrWhICOqskFTAXiy" Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) X-Archives-Salt: 65433f97-0602-4987-8231-e68b33fc5c74 X-Archives-Hash: 863cf88ccd5467d252cfbcf730491c9c --DrWhICOqskFTAXiy Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi all, One of the items that has come up in the Git conversion, and needs some attention. Previously, the PORTAGE_GPG_KEY variable has allowed ANY argument, and passed it to GPG, letting GPG use that. This was intended to explicitly be a unique identifier for a key (or subkey). However, it seems that there are signed commits with other values in the variable, and instead of something nice like: (Portage version: 2.2.0_alpha138/cvs/Linux x86_64, signed Manifest commit with key 0x586A3B1F) We have commits with: (Portage version: 2.2.0_alpha138/cvs/Linux x86_64, signed Manifest commit with key emailaddress) This makes validation harder, as we need to extract the identity of the key from the Manifest before we can proceed. Additionally, if a developer has multiple keys, possibly over time, we cannot use this string to identify what key was used easily. As such, we've decided to make the PORTAGE_GPG_KEY strictly enforce what was originally intended. - You must specify a key or subkey exactly. - The leading "0x" is optional. - If you want to use a subkey, per the PGP specifications, you must suffix your keyid with "!". - Your keyid is exactly: 8, 16, 24, 32 xor 40 hexdigits long. Additionally, while we are NOT enforcing the use of long key-ids presently, I strongly encourage ALL developers to move to using them, due to known attacks against short ids: http://www.asheesh.org/note/debian/short-key-ids-are-bad-news.html Long key-ids are the 16/24/32 hexdigit long versions of your key ids. Using your full fingerprint (40 hexdigit) is also possible, but doesn't allow you to select a subkey (subkeys don't have a full fingerprint). Additionally, we'll be chasing up LDAP to convert all entries there to long key-ids. Examples: --------- Recommended: PORTAGE_GPG_KEY=3D'0123456789ABCEF' PORTAGE_GPG_KEY=3D'0123456789ABCEF!' PORTAGE_GPG_KEY=3D'0x0123456789ABCEF' PORTAGE_GPG_KEY=3D'0x0123456789ABCEF!' Valid, but not recommended: PORTAGE_GPG_KEY=3D'01234567' PORTAGE_GPG_KEY=3D'ABCDEF01!' PORTAGE_GPG_KEY=3D'0x01234567' PORTAGE_GPG_KEY=3D'0xABCDEF01!' PORTAGE_GPG_KEY=3D'0123456789ABCEF0123456789ABCEF0123456789' Invalid: PORTAGE_GPG_KEY=3D'username' PORTAGE_GPG_KEY=3D'username@domain.com' --=20 Robin Hugh Johnson Gentoo Linux: Developer, Trustee & Infrastructure Lead E-Mail : robbat2@gentoo.org GnuPG FP : 11ACBA4F 4778E3F6 E4EDF38E B27B944E 34884E85 --DrWhICOqskFTAXiy Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) Comment: Robbat2 @ Orbis-Terrarum Networks - The text below is a digital signature. If it doesn't make any sense to you, ignore it. iEYEARECAAYFAlB95YsACgkQPpIsIjIzwixMYQCdH/A77qZmaQEtxnWzRcD5kkwN hkYAnAr2LCEzTbEGUwZn8nUraPI+EFHX =KzOH -----END PGP SIGNATURE----- --DrWhICOqskFTAXiy--