Re: [openpgp] New fingerprint: which hash algo

Daniel Kahn Gillmor <dkg@fifthhorseman.net> Fri, 23 October 2015 20:16 UTC

Return-Path: <dkg@fifthhorseman.net>
X-Original-To: openpgp@ietfa.amsl.com
Delivered-To: openpgp@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 80F921A8A62 for <openpgp@ietfa.amsl.com>; Fri, 23 Oct 2015 13:16:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LArliOFWcfJC for <openpgp@ietfa.amsl.com>; Fri, 23 Oct 2015 13:16:42 -0700 (PDT)
Received: from che.mayfirst.org (che.mayfirst.org [209.234.253.108]) by ietfa.amsl.com (Postfix) with ESMTP id 87C8A1A8A55 for <openpgp@ietf.org>; Fri, 23 Oct 2015 13:16:42 -0700 (PDT)
Received: from fifthhorseman.net (unknown [38.109.115.130]) by che.mayfirst.org (Postfix) with ESMTPSA id 0C0A7F984; Fri, 23 Oct 2015 16:16:38 -0400 (EDT)
Received: by fifthhorseman.net (Postfix, from userid 1000) id C6FC71FF82; Fri, 23 Oct 2015 16:16:10 -0400 (EDT)
From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
To: Phillip Hallam-Baker <phill@hallambaker.com>, "Daniel A. Nagy" <nagydani@epointsystem.org>
In-Reply-To: <CAMm+LwjtzNzq-B78XwGoXFBRyJT4_6ZE0_-fojbw7=gbR9yvJw@mail.gmail.com>
References: <878u84zy4r.fsf@vigenere.g10code.de> <55FD7CF0.8030200@iang.org> <87io742kz7.fsf@latte.josefsson.org> <87mvw4ctv5.fsf_-_@vigenere.g10code.de> <CA+cU71n1OUq4TtmY+8S2yfu2bvjAr+=DwtN-4xRW4xitjDpFXg@mail.gmail.com> <20151006110330.38b38ea4@latte.josefsson.org> <5616F2AE.5050106@iang.org> <561BAB91.8040104@epointsystem.org> <CAMm+LwjtzNzq-B78XwGoXFBRyJT4_6ZE0_-fojbw7=gbR9yvJw@mail.gmail.com>
User-Agent: Notmuch/0.20.2 (http://notmuchmail.org) Emacs/24.5.1 (x86_64-pc-linux-gnu)
Date: Fri, 23 Oct 2015 16:16:10 -0400
Message-ID: <87twph8ho5.fsf@alice.fifthhorseman.net>
MIME-Version: 1.0
Content-Type: text/plain
Archived-At: <http://mailarchive.ietf.org/arch/msg/openpgp/Imcq7QmgHTuh8cMUsNmxOl8WmVY>
Cc: IETF OpenPGP <openpgp@ietf.org>
Subject: Re: [openpgp] New fingerprint: which hash algo
X-BeenThere: openpgp@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "Ongoing discussion of OpenPGP issues." <openpgp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/openpgp>, <mailto:openpgp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/openpgp/>
List-Post: <mailto:openpgp@ietf.org>
List-Help: <mailto:openpgp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/openpgp>, <mailto:openpgp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 23 Oct 2015 20:16:49 -0000

On Fri 2015-10-23 14:00:56 -0400, Phillip Hallam-Baker wrote:
> Due to the way OpenPGP works, it is not possible to have a recommended
> algorithm for fingerprints. Every client has to be able to process any
> recommended algorithm, so recommended means 'mandatory to accept'. But
> there should definitely be two algorithms to choose from.

In earlier discussions, i think people have made pretty convincing
arguments that "two algorithms to choose from" is not a useful
arrangement for OpenPGP fingerprints.

In particular, fingerprints are used in verification contexts where the
user has a bit of paper and sees something on the screen and is asked a
question "do these things match?"

If there are two algorithms to choose from, there are potentially two
fingerprints to choose from, and this process becomes more complicated.
the tool now has to either (a) first, ask the user which form of
fingerprint is on the bit of paper before displaying the fingerprint
(making fingerprint comparison a multi-roundtrip operation), or
(b) present both and hope the user knows to ignore one or the other
(similarly to how web browser certificate dialogs look, and we know how
well that works).

Either of these outcomes make this particular use case -- which already
has bad usability -- worse.

Arguably, we shouldn't encourage this use case at all, and should
replace it with something like "type in the expected fingerprint and
we'll tell you if it matches".  If we make that decision, the argument
for multiple fingerprint algorithms might be OK.  But while i use this
workflow myself, i think most users would find it too burdensome.
Reading high-entropy hexadecimal (or base64 or whatever) is bad enough.
typing it in is even worse.

    --dkg