On Sep 10, 2024, at 10:01 AM, Toerless Eckert <[email protected]> wrote:
> 
> On Fri, Sep 06, 2024 at 10:38:12PM -0400, Erik Nygren wrote:
>> I think that the non-muggle-friendly-names may be a core problem to solve
>> first for many of these use-cases.
>> For example, ADD doesn't need its names to be muggle-friendly.
> 
> Great to know! 
> 
> There actually seem to be a lot of DNS names these days that are not 
> appropriate
> for muggles (and hence arguably not for entering into browser URL bar). Alas,
> we still have normative  documents such as RFC6763 that do a great job in 
> outlining
> all the aspects to make URLs muggle friendly - but no updates to explain that 
> the
> scope of our solution deployments has expanded beyond that (which IMHO is 
> primarily
> an issue re. our discuss with W3C as explained in my other reply in this 
> thread).
> 
>> There may be ways to layer things to wrap a better user experience on top.
>> For example, providing a way for a user to locally associate a
>> human-friendly bookmark for an underlying endpoint identity.
> 
> Why ask to use some non-defined magical system such as "bookmarks" when we 
> could instead
> simply ask to push CNAMEs into DNS. Thats something we can define.

As suggested in (*), a device with a long name can also advertise a short name 
(e.g., mDNS), allowing the user to visit "https://router.local"; (or 
"https://printer.local"; or "https://printer.home.example.net";, which is a CNAME 
to the long name.  The client, encountering the long name, can then initiate 
the its bootstrapping to trusting (*) the long name 
("https://router.ejfkejfkejfejkejfkjkej.local";), or if bootstrapping has 
already occurred the client would immediately see the router's (or printer's) 
HTTPS configuration page.

The long names are not a severe problem.

(*) Martin Thomson's "HTTPS for Local Domains" 
(https://docs.google.com/document/d/170rFC91jqvpFrKIqG4K8Vox8AL4LeQXzfikBQXYPmzU)
 
(**) QR, type magic codes, TOFU, NFC, etc.



> Makes me just
> wonder if we have a standard practice way for reverse resolution - if i have
> the serial-number domain name -> how would i find all the CNAMEs for it... ?

Could you detail why that is necessary?

-d


>> I wonder if this would make sense to start as a BOF (or even a workshop) of
>> its own, first focused on use-cases
>> and exploring the space?  It may be too early to jump into the "should this
>> get a new URL scheme".
> 
> Maybe just starting to write / collect the different aspects of this problem.
> Such as some other (like martin thomson) have done from their side. ...
> 
>> It might help to try and factor up the various pieces here, many of which
>> are interrelated.
>> For example:
>> 
>> * Having endpoints names (eg, the Web Origin) include a public
>> cryptographic identity
>> * How to represent this in URIs at a protocol layer
>> * How to handle important corner cases (crypto agility, multiple
>> algorithms, key rotations, etc)
> 
> I'd hope this point would hopefully be separate from anything URL, or else
> we'd have to chew way too much.
> 
>> * If a trust web is needed, how to establish it and represent it
> 
> I think it would be lovely if we would find some DNS anchored registry for
> IDEVID CA certificates so that it would become easy for arbitrary 3rd party
> vendors to build IOT controller applications that could validate IDEVID
> certificates for any type of bootstrap workflows. Might be possible to expand
> into LDEVID space as well...
> 
>> * How to expose the endpoint identities, URIs, etc to human users in a way
>> that provides a good user experience
> 
> I think you always need some process for binding a user-friendly names.
> RFC6763 has some good suggestions for useful vendor defaults though. And
> if we go through DNS with above inquired reverse resolution, one might even
> automate default name disambiguation (aka "Vendor Type Printer #22" - where
> #22 is generated by figuring that #1..#21 already exist in the local domain).
> 
>> * How this relates to W3C concepts (eg, "secure origins") and user-agent
>> experience (eg, the "lock icon" and URL bar and such)
> 
> Right.
> 
>> * The user experience for any trust hierarchy establishment.
>> 
>> If a trust web is needed, it would be nice to be able to plug into models
>> like Matter/Thread,
>> but I think a key aspect is that we want to avoid any need for a global
>> hierarchical trust system.
> 
> Maybe turn it around and wonder if/what type of delegation of trust may need
> to be supported.
> 
> Cheers
>    Toerless
> 
>> The pieces here are going to be cross-domain, so success likely will
>> require bringing
>> a few different communities together, but also keeping scope bounded enough
>> to keep
>> complexity under control.
>> 
>>     Erik
>> 
>> 
>> 
>> 
>> 
>> On Thu, Sep 5, 2024 at 8:02 PM Toerless Eckert <[email protected]> wrote:
>> 
>>> Some 22cents here (Cc'ing ANIMA/IOTOPS):
>>> 
>>> I think we should foremost distinguish between two main use-case arenas:
>>> 
>>> A) In one set of use-cases, we can and want to create muggle friendly
>>> names for devices,
>>> except that those are (for debatable reasons) not global and hence we can
>>> not use off-hand
>>> our pre-existing WebPKI approach to authenticate name ownership.
>>> 
>>> B) In another set of use cases we can not or we do not want/need to create
>>> muggle friendly
>>> names for devices - but we still want to use TLS to talk to them. And
>>> (alas) browsers.
>>> 
>>> For example https://_NPNE4IG2GJ4VAL4DCHL64YSM5BII4A2X.printer.local (from
>>> Martin Thomsons doc,
>>> i'll call it "Martins URL") is IMHO not muggle friendly. It totally
>>> violates the whole WebPKI
>>> idea that a muggle can feel safe that it is talking to the right/desired
>>> device via its browser.
>>> Heck. You do indeed need magic for the WebPKI assertion (i am talking to
>>> the right device) to hold
>>> true for such domain names.
>>> 
>>> It seems all the existing approaches proposed to far are A), and some at
>>> least seem
>>> to think that Martins URL is suitable for A). And i think neither is true.
>>> I for once would be very happy if we first had a solution for B).
>>> 
>>> In ANIMA for example, we do deal with CPE that come with certificates
>>> (IDEVID), and
>>> if a user is crazy enough to talk to such a device (in that IDEVID-only
>>> state) via a browser,
>>> then that user is not a muggle, but an experienced network operator, so
>>> Martins URL
>>> would actually be oki (because the experienced network operator would not
>>> rely only on the
>>> domain name in the browser address field).
>>> 
>>> A muggle instead (of a browser) is typically given an "App" (see "google",
>>> "apple" store)
>>> to talk to these devices and those apps would be able to take away the
>>> problems of Martins URL.
>>> The muggle would never need to see it. Except that the poor developer of
>>> such an App is today
>>> faced with TLS libraries that mandate the use of WebPKI certificates to
>>> even allow you to
>>> use TLS. Which strikes me as completely silly when i do not want to.
>>> 
>>> Even assuming the wishfull thinking case of an app that can help me deal
>>> with a variety
>>> of vendor devices not belonging to a specific SDO realm (like not limited
>>> to thread or
>>> othrer SDOs solution that may have come up with more specific solutions):
>>> An app could
>>> perfectly well know/find trustworthy root-CA for all the relevant CA of
>>> all the
>>> relevant vendors. And if that's a problem, then we can figure out a DNS
>>> scheme to
>>> carry those root CA certificates of IOT vendors in DNS to find them
>>> easier. But: there
>>> seems to be no easily useable TLS library to let go of the WebPKI domain
>>> name validation
>>> and replace it with a list of vendor IDEVID root-CA validation (and
>>> returning which
>>> vendors root-CA was used!).
>>> 
>>> So, before going any further into possible solution, i think we should try
>>> to be clear
>>> about what specific problem each of us wants to solve:
>>> 
>>> If i want to go through all the trouble of A), assigning muggle friendly
>>> names first,
>>> then i really wonder if we're promoting the best solution by first looking
>>> into
>>> .local solutions instead of trying to figure out what's missing so that i
>>> can run
>>> my own ACME certification on e.g.: my home (or private
>>> industry/enterprise) network's
>>> router for my own global domain. And how to get this all auto-configured
>>> so that
>>> muggles can operate it. I for once am not aware of any easily deployable
>>> self-hosted
>>> ACME server solution, and if whatever we come up with for .local would not
>>> be a heck
>>> of a lot easier than ACME, then we're not going to get that deployed
>>> either in the
>>> networks where we would like it.
>>> 
>>> In other words: I'd love to see good solutions for B), and i'd challenge
>>> the priority
>>> of A) (for .local) over solutions that do make global domain names more
>>> easy to use in non-internet
>>> use-cases. After all, it could be piece of cake to add my own networks
>>> root-CA to
>>> my browsers web-pki trust-anchor list if we wanted that to be the solution.
>>> 
>>> Cheers
>>>    toerless
>>> 
>>> On Wed, Aug 28, 2024 at 01:24:27AM +0000, Ben Schwartz wrote:
>>>> After the session we had a brief chat about this topic, and talked a bit
>>> about the Matter/Thread ecosystem, which is an example of an ecosystem that
>>> has attempted to solve the problem of bootstrapping trusted identities for
>>> physically nearby network hardware.  Notably, it does not appear to rely on
>>> X.509 certificates for globally unique DNS names, like a typical TLS PKI.
>>>> 
>>>> I would be interested in whether the Matter/Thread device identity model
>>> could be used to identify the CPE itself (which is often a "Thread border
>>> router"), and whether that identity could be extended into web browsers
>>> (for accessing the router management console) and the operating system (for
>>> verifying the router's identity at the link layer, and potentially building
>>> up verification from there to higher layer services like DNS).
>>>> 
>>>> --Ben
>>>> ________________________________
>>>> From: Chris Box <[email protected]>
>>>> Sent: Saturday, August 24, 2024 10:25 AM
>>>> To: Dan Wing <[email protected]>
>>>> Cc: [email protected] <[email protected]>
>>>> Subject: [Add] Re: Hosting Encrypted Servers on CPEs / HTTPS for Local
>>> Domains
>>>> 
>>>> Hi everyone After a burst of discussion in Vancouver, this list has now
>>> been silent for a month. My impression from the meeting is that we have a
>>> widespread feeling that ADD isn't the correct venue for this problem. Ben
>>> was quoted in the
>>>> 
>>>> Hi everyone
>>>> 
>>>> After a burst of discussion in Vancouver, this list has now been silent
>>> for a month.
>>>> 
>>>> My impression from the meeting is that we have a widespread feeling that
>>> ADD isn't the correct venue for this problem.
>>>> Ben was quoted in the minutes with:
>>>> I think the right answer here requires deeper
>>>> thought, and possibly going to the W3C and finding a new URI
>>>> scheme instead of "https" to represent local network
>>>> devices.
>>>> 
>>>> In an effort to try and move this along, I'll ask: where do you think
>>> this should go?
>>>> 
>>>> Chris
>>>> 
>>>> On Wed, 24 Jul 2024 at 21:24, Dan Wing <[email protected]<mailto:
>>> [email protected]>> wrote:
>>>> ADD WG,
>>>> 
>>>> While working to provide TLS for encrypted DNS on CPE, Tiru Reddy's
>>> IETF119 ADD presentation made it clear ADD had bumped into a larger
>>> problem: IETF and the industry has not documented how to best get
>>> certificates onto CPE.  A few companies (McAfee, Mozilla, Cujo) have
>>> deployed a system where a unique FQDN is assigned to each CPE (e.g., to the
>>> DNS server) and the CPE requests a vendor-operated cloud service to get
>>> that certificate signed by a CA and returned to the CPE and CPE uses that
>>> CA-signed certificate for incoming TLS connections.  Such a system works
>>> but the disadvantages are needing to get millions of certificates
>>> continually signed by the CA (short-lived certificates) and continued
>>> reliance on the vendor to operate the certificate-signing service.
>>> Experience is that an exception is necessary to overcome the CA's normal
>>> rate limit.
>>>> 
>>>> There are two documents that discuss such a system, its drawbacks, and
>>> also explore some other system designs:
>>>>  - Martin Thomson's "HTTPS for Local Domains" (*, below), and
>>>>  - draft-rbw-add-encrypted-dns-forwarders (**, below).
>>>> 
>>>> Please read them prior to Thursday's ADD meeting, as I will only spend
>>> 3-4 minutes presenting and the rest of the time will be microphone
>>> discussion.
>>>> 
>>>> 
>>>> I am hoping there are authors interested in writing a problem statement
>>> document (if consensus is existing practice is too difficult) or writing a
>>> BCP/Informational document on such a vendor-operated service (if consensus
>>> is continue existing practice).
>>>> 
>>>> -d
>>>> 
>>>> 
>>>> (*) Martin Thomson's "HTTPS for Local Domains",
>>> https://docs.google.com/document/d/170rFC91jqvpFrKIqG4K8Vox8AL4LeQXzfikBQXYPmzU/edit
>>> <
>>> https://urldefense.com/v3/__https://docs.google.com/document/d/170rFC91jqvpFrKIqG4K8Vox8AL4LeQXzfikBQXYPmzU/edit__;!!Bt8RZUm9aw!7NrFT-OD2YA0YvBly3H9PFhBLw2gdmCZmfBpntETQE0TJhHRYMFrMva9wtxbgyiZw6H1PiBRbeV8W2_JF3YS$>,
>>> https://tinyurl.com/https-for-local-domains<
>>> https://urldefense.com/v3/__https://tinyurl.com/https-for-local-domains__;!!Bt8RZUm9aw!7NrFT-OD2YA0YvBly3H9PFhBLw2gdmCZmfBpntETQE0TJhHRYMFrMva9wtxbgyiZw6H1PiBRbeV8W1lu4Aod$
>>>> 
>>>> 
>>>> (**) "Hosting Encrypted Servers on CPEs" slide deck for IETF120 ADD
>>> meeting, https://datatracker.ietf.org/meeting/120/session/add<
>>> https://urldefense.com/v3/__https://datatracker.ietf.org/meeting/120/session/add__;!!Bt8RZUm9aw!7NrFT-OD2YA0YvBly3H9PFhBLw2gdmCZmfBpntETQE0TJhHRYMFrMva9wtxbgyiZw6H1PiBRbeV8WwG8mYuZ$
>>>> 
>>>>      "Hosting Encrypted DNS Forwarders on CPEs",
>>> https://datatracker.ietf.org/doc/draft-rbw-add-encrypted-dns-forwarders/<
>>> https://urldefense.com/v3/__https://datatracker.ietf.org/doc/draft-rbw-add-encrypted-dns-forwarders/__;!!Bt8RZUm9aw!7NrFT-OD2YA0YvBly3H9PFhBLw2gdmCZmfBpntETQE0TJhHRYMFrMva9wtxbgyiZw6H1PiBRbeV8WypLQL9h$
>>>> 
>>>> 
>>> 
>>> --
>>> ---
>>> [email protected]
>>> 
>>> --
>>> Add mailing list -- [email protected]
>>> To unsubscribe send an email to [email protected]
>>> 
> 
> -- 
> ---
> [email protected]

_______________________________________________
Anima mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to