Re: [openpgp] Overhauling User IDs / Standardizing User Attributes

Leo Gaspard <ietf@leo.gaspard.ninja> Wed, 27 June 2018 10:07 UTC

Return-Path: <ietf@leo.gaspard.ninja>
X-Original-To: openpgp@ietfa.amsl.com
Delivered-To: openpgp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 40974130EF7 for <openpgp@ietfa.amsl.com>; Wed, 27 Jun 2018 03:07:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=leo.gaspard.ninja
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 BvFF_JIpj1S1 for <openpgp@ietfa.amsl.com>; Wed, 27 Jun 2018 03:07:19 -0700 (PDT)
Received: from smtp.gaspard.ninja (grym.ekleog.org [94.23.42.210]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6D78A1277CC for <openpgp@ietf.org>; Wed, 27 Jun 2018 03:07:18 -0700 (PDT)
Received: by smtp.gaspard.ninja (OpenSMTPD) with ESMTP id 0a3ac3e2 for <openpgp@ietf.org>; Wed, 27 Jun 2018 10:07:15 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=leo.gaspard.ninja; h=subject:to:references:from:message-id:date:mime-version :in-reply-to:content-type:content-transfer-encoding; s= grym-20170528; bh=w3PaDvttOCz3aXOOg1+6gJSlEQA=; b=ErjFI2u/caDHMd iXtCjfv9oi8Fo6yRDm0/RlRlwW5rl9B0rSoPt7HmvPVpZrveWt8SRAne84ncKitl lmmKZAhlQ0TynZbCgkDZdi99h7qW7aPn6cOFeROYgQON74FA321xSy+24LYMejW1 lQ7f/yUg+kvMN/8mJZEhO+28UWs2w=
Received: by smtp.gaspard.ninja (OpenSMTPD) with ESMTPSA id 9dd59664 (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128:NO) for <openpgp@ietf.org>; Wed, 27 Jun 2018 10:07:15 +0000 (UTC)
To: openpgp@ietf.org
References: <39e598e1-2bc0-32c9-3489-4bb6ca2a631b@leo.gaspard.ninja> <871sdw24yd.wl-neal@walfield.org> <c2e6bbe7-0694-8193-bb76-dd50fde7d967@leo.gaspard.ninja> <d28d8f8b-b261-eb29-97bc-9c7159a62ce6@leo.gaspard.ninja> <67153bb3-8ec7-5b30-3d11-22fce0681b47@metacode.biz> <2d737acb-0ce9-b703-ceb9-29c9a2ef2c0e@leo.gaspard.ninja> <6f540f57-637c-f94c-4001-96ea9d14007f@metacode.biz>
From: Leo Gaspard <ietf@leo.gaspard.ninja>
Message-ID: <fcb5b381-b8d2-79a2-383c-b9eb7b556307@leo.gaspard.ninja>
Date: Wed, 27 Jun 2018 12:07:15 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0
MIME-Version: 1.0
In-Reply-To: <6f540f57-637c-f94c-4001-96ea9d14007f@metacode.biz>
Content-Type: text/plain; charset="utf-8"
Content-Language: en-US
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/openpgp/IM2dXp_QTGkDa-3MdU4Ga1jIdx8>
Subject: Re: [openpgp] Overhauling User IDs / Standardizing User Attributes
X-BeenThere: openpgp@ietf.org
X-Mailman-Version: 2.1.26
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: Wed, 27 Jun 2018 10:07:22 -0000

On 06/27/2018 10:07 AM, Wiktor Kwapisiewicz wrote:
> Hi Leo,
> 
> Okay, after your explanations and thinking about this through the night
> I can see some benefits. Especially to the split of names (people
> usually have only one name and it's usually verified using government
> issued IDs) and e-mails (that can be automatically verified).
> 
> There are projects [0] that want to verify e-mails and add signatures to
> indicate "verified e-mail" but because e-mail and name are joined the
> signature also covers the name (that wouldn't be necessary in your design).
> 
> Sometimes the name in UID is not welcome (see "mailbox-only" in WKD [1]).

Yes, that's exactly what I'm thinking of.

> But I'm not in favor of other attributes:
>   - "role" (e.g. "Qubes OS developer"), who would verify that? Probably
> only some kind of master Qubes key should sign it but then how do we
> know if this is a correct master Qubes key? Wouldn't e-mail in form of
> user@developers.qubes.com better express that? (for the record I also
> don't like "project X signing key" comments but that's another story),
>   - "pseudonym", also not clear what are the rules of signing this ID,

Well, I don't really like them either, but that'd be a way for people to
have a place to put the information they currently appear to want to put
in their User ID fields. The aim of these fields is mostly to avoid
misuse of other fields.

> E-mail ID could be generalized to an URI ID (e.g. e-mail would be
> "mailto:user@example.com"), then your "account-on" ID could also be a
> URI (e.g. https://github.com/user, or XMPP account:
> xmpp:user@example.com) [2].

Indeed that's possible too. I was more thinking that the XMPP account
would be set as one of the “free form tag=value” (with
`xmpp=user@example.com` for your example), but the two sound just as
flexible to me, so no strong opinions here.

Actually the “role” and “pseudonym” could also be of the “free form
tag=value”, but I was thinking, when adding them specifically, that
encouraging standardization to things that already appear “in the wild”
would make sense. Without strong opinions either :)

> But I think the most severe issue with your proposal is the ripple
> effect it would have on the trust system. Currently one valid User ID is
> necessary to mark the key as valid. And that valid User ID means both
> the name and the e-mail (in most scenarios). But with split names and
> e-mails a more elaborate design would be needed. And that's just one case.

Indeed that is a big issue with implementation of this proposal.

I'd think the concept of saying “a key is valid” is likely a problem
anyway, as a key is always valid, and the only thing that can be checked
is the validity of the association between a User ID and a key (for the
WoT, there is no need to have a key “valid” for trusting it, so I guess
the change shouldn't generate any issue).

So this would require quite some changes especially around the user
interface, that couldn't just display a valid User ID as “key handle” as
is currently done by at least GnuPG and Enigmail, but would also have to
reconstruct something intelligent to display based on the set of
validated User Attributes.

Cheers,
Leo