[Ssh] Re: I-D Action: draft-ietf-sshm-cert-00.txt

Simon Tatham <anakin@pobox.com> Fri, 24 April 2026 06:52 UTC

Return-Path: <anakin@pobox.com>
X-Original-To: ssh@mail2.ietf.org
Delivered-To: ssh@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 34346E22B902 for <ssh@mail2.ietf.org>; Thu, 23 Apr 2026 23:52:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1777013533; bh=pN4PEw0dPCLQ0OEjb9uIglXrsV2YYa92CKeIy7nBewc=; h=From:To:Subject:In-reply-to:References:Date; b=aLuSqbAGfEpOdIhneFvM4nQMc5SwYIRYpKS6aQ63wGkeWC6Y3uLTXEiW7lywoV2jt m/0L01Z6hSbAbVcijRSjeo4P4e+mphLf3cUDnse0uGLcVBKjoYkw/ZT6HElNt4+1iU TwMqfUAhZ80XMoK+wdx844acRQAyj2NXSEm96OMI=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.799
X-Spam-Level:
X-Spam-Status: No, score=-2.799 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=pobox.com header.b="c1P+stp5"; dkim=pass (2048-bit key) header.d=messagingengine.com header.b="JMJGuzuR"
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id EO6vnl3wwz3x for <ssh@mail2.ietf.org>; Thu, 23 Apr 2026 23:52:11 -0700 (PDT)
Received: from fhigh-b5-smtp.messagingengine.com (fhigh-b5-smtp.messagingengine.com [202.12.124.156]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 8CB56E22B777 for <ssh@ietf.org>; Thu, 23 Apr 2026 23:50:18 -0700 (PDT)
Received: from phl-compute-05.internal (phl-compute-05.internal [10.202.2.45]) by mailfhigh.stl.internal (Postfix) with ESMTP id 45B417A0137 for <ssh@ietf.org>; Fri, 24 Apr 2026 02:50:12 -0400 (EDT)
Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-05.internal (MEProxy); Fri, 24 Apr 2026 02:50:12 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pobox.com; h=cc :content-transfer-encoding:content-type:content-type:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm1; t=1777013412; x=1777099812; bh=7g13goIhmTHvqQ6Jqea+wXPgBbqbDg5748OqCrpXkEA=; b= c1P+stp5DRgjelVQnBIETxwHusuf8HjVDnZooDRWmEpSt5vew6GXvMxhM0Ln29j1 +ugAYje45C4wLL21BF0d+5qOlfdqI3oKIh4va0HKS4weF+FOUyockud+ZG5MtplT dUrd5LdhyBM15QkMQMMMw0xYsxi+FVo7eDJwICv/XxIoZWfQUAEMOq7JmKFHRT6M 1MRex9u2b2KFwaLUET7OGi2Xrk98inRFFVpjiGr0wrUeJ3aqVybyj325TVTYiJuu WCBtaYhPqiiBRoZxRFnHwyQjZCBpg++mQUzuUM6t6QzfaQEEThClHpv3K3VZCScU ++ik9JhIAZatmbXV0rwAWw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm2; t=1777013412; x=1777099812; bh=7 g13goIhmTHvqQ6Jqea+wXPgBbqbDg5748OqCrpXkEA=; b=JMJGuzuRnavibVLMZ /0WiQSB/VLjkFOOurozQFO0salMqFTppJ3/XQJHLOcMJbbmzEtzzWZRJZGQFPhov 2dXJf7Wy8ugbOKh8jpq9PxwgydGgXz+wWk4d232fm6o5JD7asJxFxlQbDHDMt5Dv hoGJbAY+MEUkd6HHk8V6I3ekCpCyh+TV8HZ4JxA7LRztcH9JoYrvs2jQs7DtefNs gJkNnQPFNY9JAjYDMV5iejeoNFj01Rd3yUjyxOq7UbjXXN8cKxeJXIv3XA9Jt885 b7/cbA7Fm/gefY2OvTEdzpQzNlIkSedINHvGf+e9rtEIQwZE9GcOox0SXK4KU90X X8RfA==
X-ME-Sender: <xms:oxLrae6Em54krBF9E4GgLHIn-mthVrCqRShV6kz7CB_twRZoKTgAYg> <xme:oxLradz-qqM1B1safYXbO3vO8Lc2jYqyjWHUhkm1JHaGwRw3HkBfN0CvZzyUPF579 UVfC4k0-hIn0WlSFrcp84_1TA5aAETvhwTYjbUQ1oFAb_GvK4HsfLs>
X-ME-Received: <xmr:oxLraYj4SBQmCDEEitB9zDxYUt9QLPcfn36-Th8-441mVJeVP81zhW0hIVerEaeA6OzBnUHUURw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefhedrtddtgdeileefhecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr ihhlohhuthemuceftddtnecunecujfgurheptgfhvffujghffffkfgfgggesthekredttd erjeenucfhrhhomhepufhimhhonhcuvfgrthhhrghmuceorghnrghkihhnsehpohgsohig rdgtohhmqeenucggtffrrghtthgvrhhnpeeuveehjedvudffgfekleegjedtudelkefhhf etffejffffueevkedvgfduffeiieenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgr mhepmhgrihhlfhhrohhmpegrnhgrkhhinhesphhosghogidrtghomhdpnhgspghrtghpth htohepuddpmhhouggvpehsmhhtphhouhhtpdhrtghpthhtohepshhshhesihgvthhfrdho rhhg
X-ME-Proxy: <xmx:pBLraX8WXOacRNciAQZUmdqsB3jj3Gwrg8PXEmIq2UeAqj3Sfa6Quw> <xmx:pBLraVsZoiyZdO78hz1hM5NACkGxI3FOH4vzw6u9Oo4DgGVllhdKIA> <xmx:pBLraeYOJlaMmEIBiV3JjgWdSO8PIX9UwjTjw_C6QwVEuEEM-Fu3IQ> <xmx:pBLraVrxw7DfRLsYFEtOrORCFv7EP-K9OuSOQsGF9vmWquIg89ue_w> <xmx:pBLraTpuxIZ3Z-Q7PE33ow83AP9gQMsWOpW_aPGHIxkRRQPCeQdgj5sP>
Feedback-ID: ib7394971:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA for <ssh@ietf.org>; Fri, 24 Apr 2026 02:50:11 -0400 (EDT)
Content-Type: text/plain; charset="UTF-8"
From: Simon Tatham <anakin@pobox.com>
To: ssh <ssh@ietf.org>
In-reply-to: <MEAPR01MB3654F1EF26DA7E72A3F96E21EE2B2@MEAPR01MB3654.ausprd01.prod.outlook.com>
References: <177694026124.1167663.14342393855069278288@dt-datatracker-b45949c58-5szpr>
Date: Fri, 24 Apr 2026 07:50:10 +0100
Message-Id: <1777012657-sup-6689@thyestes.tartarus.org>
User-Agent: Sup/git
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Message-ID-Hash: QHP5ZKRYRZU4IS36M3HLICJHJ3PF7UVB
X-Message-ID-Hash: QHP5ZKRYRZU4IS36M3HLICJHJ3PF7UVB
X-MailFrom: anakin@pobox.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Ssh] Re: I-D Action: draft-ietf-sshm-cert-00.txt
List-Id: "The SSH mail list will allow discussions on improving aspects of the Secure Shell (SSH) protocol." <ssh.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/ssh/EIMyBMAid7ag12D-1F-hBmjBIxY>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ssh>
List-Help: <mailto:ssh-request@ietf.org?subject=help>
List-Owner: <mailto:ssh-owner@ietf.org>
List-Post: <mailto:ssh@ietf.org>
List-Subscribe: <mailto:ssh-join@ietf.org>
List-Unsubscribe: <mailto:ssh-leave@ietf.org>

> internet-drafts@ietf.org <internet-drafts@ietf.org> writes:
>> This document presents a simple certificate format

Peter Gutmann <pgut001=40cs.auckland.ac.nz@dmarc.ietf.org> wrote:
> What's the purpose of this document?

A major purpose of this WG is to publish documents specifying things
that have been deployed in practice for many years, so that people
wanting to interoperate with existing implementations can find proper
documentation of how to do it.

This _has_ been deployed in practice for many years, and therefore it
needs documenting.

Your criticisms of it seem like the kind one would expect on seeing a
first draft of a _proposed_ specification, before any implementations
exist. (Particularly the way you say it "introduces", present tense, an
opportunity to repeat old mistakes.) A good time to make criticisms of
this specification on that kind of basis would have been at least
sixteen years ago.

I'm not saying this state of affairs is a _good_ thing, exactly. A great
weakness of SSH's vendor-namespace system is that it encourages a
workflow of unilateral deployment by one vendor, followed by de-facto
adoption by others, followed by it being too late to change anything
without breaking compatibility with all the existing implementations.
Multilateral discussion about the design questions _before_ there's a
weight of history behind one set of answers is missing from our system.

But the time to start on that is when we're introducing new pieces of
SSH that _haven't_ been around for decades already, like (some of) the
PQ algorithms. Even if there were consensus that we should develop an
entirely different certificate system starting now, the old one would
_still_ need documenting.

Cheers,
Simon

-- 
for k in [pow(x,37,0x1a1298d262b49c895d47f) for x in [0x50deb914257022de7fff,
0x213558f2215127d5a2d1, 0x90c99e86d08b91218630, 0x109f3d0cfbf640c0beee7,
0xc83e01379a5fbec5fdd1, 0x19d3d70a8d567e388600e, 0x534e2f6e8a4a33155123]]:
 print("".join([chr(32+3*((k>>x)&1))for x in range(79)])) # <anakin@pobox.com>