Re: [Identity-discuss] What are the problems we are solving?

Phillip Hallam-Baker <phill@hallambaker.com> Fri, 28 July 2023 17:01 UTC

Return-Path: <hallam@gmail.com>
X-Original-To: identity-discuss@ietfa.amsl.com
Delivered-To: identity-discuss@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BF167C15155F for <identity-discuss@ietfa.amsl.com>; Fri, 28 Jul 2023 10:01:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.406
X-Spam-Level:
X-Spam-Status: No, score=-1.406 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.25, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UukmIz2yD3Rj for <identity-discuss@ietfa.amsl.com>; Fri, 28 Jul 2023 10:01:15 -0700 (PDT)
Received: from mail-oi1-f174.google.com (mail-oi1-f174.google.com [209.85.167.174]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DF680C151552 for <Identity-discuss@iab.org>; Fri, 28 Jul 2023 10:01:15 -0700 (PDT)
Received: by mail-oi1-f174.google.com with SMTP id 5614622812f47-3a36b52b4a4so1443548b6e.1 for <Identity-discuss@iab.org>; Fri, 28 Jul 2023 10:01:15 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1690563675; x=1691168475; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=uN4FhLLuHkr0XgorbGHJWhwhP0Ej8fDrMcdDcKs9vMc=; b=dvzaUvSphYLUHzvHBu7lRpYTAdMv+EqsNXPHr4EGnuljoZE20+dTnoA526fdAzm4Z7 RZ8vCTe/inHniey3E1loFEshjbxu5c0vk48KoCYerz8k6sYns0seLgRn6ZLWmRKpe7oN dRoqb4/jAJl9XlSU1TO/9RlA0mE7pSizC/4s/+V1wetFAFXDaDRIeoStEu1/CZL9d54s nDe8ntaHm3P9q8i2n7+zKusrK3bzADC9Kh7JRU9eZBZlwrOoL6Sy4j7H5mfKeiXcLD6B MwYWrRtoiOQJ53AWAwaaIJbbzM3E9PMo4mYTUkgpTTEbIEdFWsI9vhwnHN21JTCVrIH5 nERw==
X-Gm-Message-State: ABy/qLaoT38Kf/R70cyaTTHwWJywUo6L3K4R+jxxlCOQucyJ/g6m22iY RwD9znyESxmEmuBwRxQ6V+qmZCQpprfo50SNtj1tG9V9973XrQ==
X-Google-Smtp-Source: APBJJlFdSEe9fS/u7/8NMofLLwBuuwX0i+0gM9q06Z5NOil0euofn2n7T0Mc0I2cZ73Tk8+7BzPZyO4VmnZ0c32/QSw=
X-Received: by 2002:a05:6808:19a6:b0:3a0:650b:f17c with SMTP id bj38-20020a05680819a600b003a0650bf17cmr4944649oib.4.1690563674921; Fri, 28 Jul 2023 10:01:14 -0700 (PDT)
MIME-Version: 1.0
References: <CAMm+LwgK-db9s6KD3+cv5_nZ7ukdJGCHyGs-bxEYDOzyGChtOQ@mail.gmail.com> <FA2583A0-486A-4277-9241-7D7AF54C820F@sphericalcowconsulting.com>
In-Reply-To: <FA2583A0-486A-4277-9241-7D7AF54C820F@sphericalcowconsulting.com>
From: Phillip Hallam-Baker <phill@hallambaker.com>
Date: Fri, 28 Jul 2023 10:01:02 -0700
Message-ID: <CAMm+LwigDuYRqN-xXRO0U1g9_9GUFMug37WhHyp3TOud1HxjGQ@mail.gmail.com>
To: Heather Flanagan <hlf@sphericalcowconsulting.com>
Cc: Identity-discuss@iab.org
Content-Type: multipart/alternative; boundary="00000000000050647b06018f073a"
Archived-At: <https://mailarchive.ietf.org/arch/msg/identity-discuss/pRb2_4FPfIa6qXFLL3xixi5AXU4>
Subject: Re: [Identity-discuss] What are the problems we are solving?
X-BeenThere: identity-discuss@iab.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "Proposed IAB Program on Wholistic Human-Oriented Discussions on Identity Systems \(WHODIS\)" <identity-discuss.iab.org>
List-Unsubscribe: <https://www.iab.org/mailman/options/identity-discuss>, <mailto:identity-discuss-request@iab.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/identity-discuss/>
List-Post: <mailto:identity-discuss@iab.org>
List-Help: <mailto:identity-discuss-request@iab.org?subject=help>
List-Subscribe: <https://www.iab.org/mailman/listinfo/identity-discuss>, <mailto:identity-discuss-request@iab.org?subject=subscribe>
X-List-Received-Date: Fri, 28 Jul 2023 17:01:19 -0000

There are some problems where the problem is we have no solution.

There are others where the problem is we have too many solutions and they
don't really work together.

DNS has many faults. But it has established itself as a single namespace
for providers of Internet services. There is no similar namespace for
people.

I have dozens and dozens of Internet identifiers which all refer to me and
many more that refer to avatars. And the problem for me is that I don't
have control or the cost of that control is a DNS name registration, they
are all subordinate to another third party or they only work in a walled
garden.


Nöth's trichotemy of symbols may be of use:

Firstness: The signifier is the signified itself, e.g. a raw X25519 key, a
data: URI

Secondness: The signifier bears an indexical relationship to the signified,
e.g. SHA-2 hash of a data object

Thirdness: The signifier is only related to the signified by convention. It
is a 'name'.


Before applying that, let us also look at use cases for identifiers:

* Passed in speech
* Passed as a QR code
* Activated by clicking on a contact entry in an address book
* Presented to the user when receiving a communication


A signifier that is a name 'i.e. thirdness' can be user friendly. It can be
easily typed in or read. But that comes at the cost of being issued by some
form of registry. This may be a public body like ICANN, a private body like
Meta, Twitter, Mastodon instance etc. or it can be local to the user
themself.

Only a signifier of type firstness or secondness can be 'owned' by the user
who uses it. If we insist that only the user should be able to use the
signifier, we have defined a public key cryptosystem: We have two roles,
the signified role and the relying party role. The ability to act in the
relying party role must not allow someone to impersonate the user. Ergo, we
have defined the requirements for a public key cryptosystem. This means
that our signifiers must necessarily be rather long and rather user
unfriendly.

Mesh identifiers are Base32 fingerprints, e.g.
MASN-NAYB-IY7F-JCFZ-RFWV-UIT4-MSEZ

That is as short as I could make them and present an acceptable work
factor. We could make use of a natural language dictionary in which case we
get ~12 bits per word. So 'horse, battery, staple, boomerang, nut, .... '

So looking back at the set of requirements, to meet the 'user sovereign'
criteria, we have two options:

1) Only use signifiers of type firstness and limit exchange to modes where
the ugliness can be hidden from the user (QR code, click, etc.)

2) Use signifiers of type firstness are the primary identifier and use
names as a means of exchange. So when Alice meets Bob, she gives him her
Mesh service address, alice@example.com and the contact exchange protocol
then maps that to her permanent private identifier MASN-NAYB-...


Of course at this point, people will start screaming I have glossed over
privacy issues. And actually, I haven't. If Alice wants to have multiple
identifiers and keep them separate, she is going to have to create multiple
identifiers and keep them separate.

The other major objection to my approach is that any system that relies on
public key cryptography for user authentication has to address the problem
of provisioning credentials to multiple devices: Alice has a phone, two
tablets, three laptops, a watch, four desktops and a cat. Which is the
problem I have used threshold to address.

Bottom line is that in 1993 when I first started looking at this problem,
my solution would be utterly beyond the capabilities of the machines of the
day. But technology has moved on since and a Raspberry Pi model 1 is more
than capable of doing what is necessary to manage a personal PKI with
hundreds of keys.



On Fri, Jul 28, 2023 at 9:18 AM Heather Flanagan <
hlf@sphericalcowconsulting.com> wrote:

>
> Hi,
>
>
> On Jul 27, 2023, at 17:51, Phillip Hallam-Baker <phill@hallambaker.com>
> wrote:
>
> 
> Rather than getting into definitional arguments, I would like to see
> discussion of problems that we are either trying to solve or looking to ask
> others to solve.
>
>
> I absolutely agree that falling into the trap of definitional arguments is
> a Very Bad Idea. I am less clear that discussions of the problems to solve
> at the level you’re describing below is a better path, though. Could you
> perhaps say more? When I look at your questions, I immediately think, “But
> there are already protocols that do that.”
>
> What I think is more interesting is to understand is why would anyone
> choose one protocol over another? What are the gaps that are driving people
> to different solutions? Can the IAB advise on how to evaluate identity
> protocols for a given architecture?
>
> I’m definitely interested in engaging in those conversations.
>
> -Heather
>
> These include:
>
> How does Alice initiate an instant messaging conversation with Bob?
>
> What forms of identifier can Alice use to specify the Bob she wishes to
> communicate with?
>
> How does Bob know the request comes from the person he knows as 'Alice'.
>
> At what times and to what extent are Alice and Bob reliant on third
> parties?
>
> How does Bob signal that he is ready to accept inbound contact on a
> particular device?
>
>
> --
> Identity-discuss mailing list
> Identity-discuss@iab.org
> https://www.iab.org/mailman/listinfo/identity-discuss
>
> --
> Identity-discuss mailing list
> Identity-discuss@iab.org
> https://www.iab.org/mailman/listinfo/identity-discuss
>