Merge lp:~xnox/ubuntu-archive-publishing/migrate-dist-upgrade-to-4k into lp:ubuntu-archive-publishing

Proposed by Dimitri John Ledkov
Status: Merged
Merged at revision: 91
Proposed branch: lp:~xnox/ubuntu-archive-publishing/migrate-dist-upgrade-to-4k
Merge into: lp:ubuntu-archive-publishing
Diff against target: 47 lines (+14/-19)
1 file modified
publish-distro.d/10-sign-releases (+14/-19)
To merge this branch: bzr merge lp:~xnox/ubuntu-archive-publishing/migrate-dist-upgrade-to-4k
Reviewer Review Type Date Requested Status
Adam Conrad Pending
Brian M Murray Pending
Steve Langasek Pending
Ubuntu Package Archive Administrators Pending
Review via email: mp+311181@code.launchpad.net

Description of the change

* Use full fingerprints throughout for signing
* Migrated utopic..yakkety upgrade tarballs to a single 4k key

To post a comment you must log in.
Revision history for this message
Steve Langasek (vorlon) :
92. By Dimitri John Ledkov

Drop digest specification, for single key sigs, use key's prefered default.

Revision history for this message
Dimitri John Ledkov (xnox) :
Revision history for this message
Steve Langasek (vorlon) wrote :

On Fri, Nov 18, 2016 at 02:34:35PM -0000, Dimitri John Ledkov wrote:

> I have no way to check the key preferences. I assume they are sane.
> Removed the extra arg. Hopefully, we will soon transition to 8K keys and
> SHA3.

In fact, the current prefs on the key will *not* do what we want without
this argument:

     Digest: SHA256, SHA1, SHA384, SHA512, SHA224

I wasn't asking you to drop this arg, now the branch is not in a state that
we can merge :) I was asking whether this was the way we want to do this
going forward or if we should fix the digest preferences on the key.

I'm not sure which is the more obvious place for us to enforce this.

Revision history for this message
Adam Conrad (adconrad) wrote :

> I'm not sure which is the more obvious place for us to enforce this.

I think the more transparent place to enforce it is in the code. Maybe the keys in the keyring should have better defaults, but if we want a specific digest, we should be explicit about that in the code, not implicitly hope that the keyring has it set how we want (even if/when it does).

Revision history for this message
Steve Langasek (vorlon) wrote :

On Mon, Nov 21, 2016 at 04:47:59PM -0000, Adam Conrad wrote:
> > I'm not sure which is the more obvious place for us to enforce this.

> I think the more transparent place to enforce it is in the code. Maybe
> the keys in the keyring should have better defaults, but if we want a
> specific digest, we should be explicit about that in the code, not
> implicitly hope that the keyring has it set how we want (even if/when it
> does).

Ok, then Dimitri should revert the last change and we should land this :)

93. By Dimitri John Ledkov

Encode digest-algo in the code, update comments for consistency and clarity.

94. By Dimitri John Ledkov

Merge trunk

Revision history for this message
Dimitri John Ledkov (xnox) wrote :

Encoded all ubuntu) digests into the command lines, and updated comments to match that we are encoding digests in the code from now on.

Hopefully, the transition to 8k key with SHA-3 digest algo will go more smooth.

Revision history for this message
Dimitri John Ledkov (xnox) wrote :

Could this please be merged, and dist-upgrade tarballs: xenial, yakkety and zesty resigned?

Revision history for this message
Brian Murray (brian-murray) wrote :

We decided, in #ubuntu-release, that I'd reupload ubuntu-release-upgrader that way we can have it in -proposed for testing rather than resigning.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'publish-distro.d/10-sign-releases'
2--- publish-distro.d/10-sign-releases 2016-11-03 22:59:49 +0000
3+++ publish-distro.d/10-sign-releases 2016-11-25 16:19:29 +0000
4@@ -33,29 +33,24 @@
5 case $LPCONFIG in
6 ftpmaster-publish)
7 case "$series:$1" in
8- # Use 1024 key for old releases
9+ # Use single-signature 1024 key SHA1 for old releases
10 warty:*|hoary:*|breezy:*|dapper:*|edgy:*|feisty:*|gutsy:*|hardy:*|intrepid:*|jaunty:*|karmic:*|lucid:*|maverick:*|natty:*|oneiric:*|precise:*)
11- printf '%s\n' "-u 437D05B5"
12- ;;
13- # Use single-signature, old 1024 key, for dist-upgrade tarballs (historical)
14- quantal:*/dist-upgrader*|raring:*/dist-upgrader*|saucy:*/dist-upgrader*|trusty:*/dist-upgrader*|utopic:*/dist-upgrader*|vivid:*/dist-upgrader*|wily:*/dist-upgrader*|xenial:*/dist-upgrader*|yakkety:*/dist-upgrader*)
15- printf '%s\n' "-u 437D05B5"
16- ;;
17- # Use dual-signatures for the archive, for a transitioning period
18+ printf '%s\n' "-u 0x630239CC130E1A7FD81A27B140976EAF437D05B5 --digest-algo SHA1"
19+ ;;
20+ # Use single-signature 1024 key SHA1 for upgrades from distributions with 1k key only
21+ quantal:*/dist-upgrader*|raring:*/dist-upgrader*|saucy:*/dist-upgrader*|trusty:*/dist-upgrader*)
22+ printf '%s\n' "-u 0x630239CC130E1A7FD81A27B140976EAF437D05B5 --digest-algo SHA1"
23+ ;;
24+ # Use single-signature 4096 key SHA512 for upgrades from distributions with 4k present
25+ utopic:*/dist-upgrader*|vivid:*/dist-upgrader*|wily:*/dist-upgrader*|xenial:*/dist-upgrader*|yakkety:*/dist-upgrader*)
26+ printf '%s\n' "-u 0x790BC7277767219C42C86F933B4FE6ACC0B21F32 --digest-algo SHA512"
27+ ;;
28+ # Use dual-signatures 1024 & 4096 keys SHA512 for the archive, for a transitioning period, to allow e.g. precise .0 to bootstrap any of these
29 quantal:*|raring:*|saucy:*|trusty:*|utopic:*|vivid:*|wily:*|xenial:*|yakkety:*)
30- # 437D05B5 and C0B21F32 have different digest
31- # preferences. GnuPG refuses to consider multiple
32- # signatures unless they use the same signature
33- # class and digest algorithm. We must therefore
34- # force the digest algorithm to something both keys
35- # can do. Fortunately, gpg supports SHA-512 hashes
36- # with 1024-bit DSA keys by way of taking the
37- # leftmost 160 bits of the hash; so we can use
38- # SHA-512 for both.
39- printf '%s\n' "-u 437D05B5 -u C0B21F32 --digest-algo SHA512"
40+ printf '%s\n' "-u 0x630239CC130E1A7FD81A27B140976EAF437D05B5 -u 0x790BC7277767219C42C86F933B4FE6ACC0B21F32 --digest-algo SHA512"
41 ;;
42 *)
43- # For zesty and up, including dist-upgrade tarballs, use 2012 4k RSA key only
44+ # Use single-signature 4096 key SHA512 for zesty and up, including dist-upgrade tarballs
45 printf '%s\n' "-u 0x790BC7277767219C42C86F933B4FE6ACC0B21F32 --digest-algo SHA512"
46 ;;
47 esac

Subscribers

People subscribed via source and target branches