On Fri, Oct 23, 2015 at 4:16 PM, Daniel Kahn Gillmor
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.
As I pointed out, it isn't really a choice. Every client has to be
able to verify any fingerprint that can be generated.
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?"
Again, I did point out that issue. If you have more than one digest
algorithm, each has to result in a unique presentation. Hence the need
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).
Only if either you do it wrong or decide on one algorithm and pick the
That is the same problem that comes up with attacks involving
presenting a SSH key to OpenPGP or vice versa.
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.
I don't think that is right either. I would prefer to make comparison
a lot easier by going for visual comparisons. Base32 is a lowest
common denominator approach. I would like to have an alphabet of 2^16
words and 2^16 images as well.
openpgp mailing list