Re: [xmpp] [Technical Errata Reported] RFC7622 (5769)

Florian Schmaus <flo@geekplace.eu> Mon, 22 July 2019 08:55 UTC

Return-Path: <fschmaus@gmail.com>
X-Original-To: xmpp@ietfa.amsl.com
Delivered-To: xmpp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 68CD71201B0 for <xmpp@ietfa.amsl.com>; Mon, 22 Jul 2019 01:55:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.558
X-Spam-Level:
X-Spam-Status: No, score=-1.558 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.091, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
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 6hfFtEIET2Yb for <xmpp@ietfa.amsl.com>; Mon, 22 Jul 2019 01:55:04 -0700 (PDT)
Received: from mail-wr1-f46.google.com (mail-wr1-f46.google.com [209.85.221.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D7B671201A1 for <xmpp@ietf.org>; Mon, 22 Jul 2019 01:55:03 -0700 (PDT)
Received: by mail-wr1-f46.google.com with SMTP id n4so38571209wrs.3 for <xmpp@ietf.org>; Mon, 22 Jul 2019 01:55:03 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:openpgp:autocrypt :message-id:date:user-agent:mime-version:in-reply-to; bh=/YoZPtYXIIFe/LvAxYHD1DB+SOivyph2RPfmjdl82dM=; b=iVUIgcUO9drqTAc9YYy/axjVr7flGDPfZIw4VErgLB8DAfkINc1ygc/2A7ufh/gk9R +/VaHBT/YwF3mU9lNbMPW+Nc6C0a1FRXv60GfovXbhaIFsooDzT1nKvAgxt/KqbtdmgP 4RSzoPG3fmZ8njWVdxeo35LZw+kZjUqJPXyWm2cgvXGgkcbI8s5GFdJxEM5Gm4H5f2TP xUyjGUAIQoFtNU5bX/is0prCQQQLgkUWkWAUKnxucCjf/jFP7vHgZbqU9B04L5o0NJbU RC9WQUMbequU8NmrN2O9TPka+6pMlwGFHxRt/7pMI6+aEJ3jC87UpvSZowQyJ3EVkows 06BA==
X-Gm-Message-State: APjAAAWbsgNLOV4mTsxPDkycmT4vROHoW75LZr1FWBjWUuiGjsvMb55u Y8bVx6ysEFoUxqpbURy1+bgViDDYPTI=
X-Google-Smtp-Source: APXvYqwqFSmbQpYOuPqLAjdhzpBI1keHG4VH0gZAHeQFVML3njC9JkgGGW06ahKgAdwolc/ZWzdj1w==
X-Received: by 2002:a5d:4309:: with SMTP id h9mr71264005wrq.221.1563785701686; Mon, 22 Jul 2019 01:55:01 -0700 (PDT)
Received: from [10.188.34.160] (nat-inf.rrze.uni-erlangen.de. [131.188.6.45]) by smtp.googlemail.com with ESMTPSA id e19sm51539031wra.71.2019.07.22.01.55.00 for <xmpp@ietf.org> (version=TLS1_3 cipher=AEAD-AES128-GCM-SHA256 bits=128/128); Mon, 22 Jul 2019 01:55:00 -0700 (PDT)
To: xmpp@ietf.org
References: <20190630214921.40238B81D6A@rfc-editor.org> <CALaySJJ0t58BgMYE6G9XLFc-ydskvV6CS48d9++8xBfNZ_cLDg@mail.gmail.com> <9c33c9d6-3bfb-78bb-f684-0a8fc078ac4a@geekplace.eu> <CALaySJKztZ40OLNL6Jsvt1wzFgjYzqxUNq3Xj60KwOkAvJGxZA@mail.gmail.com> <CAKHUCzwg6sPtN0Dp6zPfKT75+DbfE0xies3Wv7GujXes6jY0Ng@mail.gmail.com> <9150b28a-d773-853e-845f-6de4632ed836@geekplace.eu> <059429f5-c456-5c8d-84cd-1e3569daf757@babelmonkeys.de> <16f8e609-18f7-7381-b76f-2ddb39b1338c@geekplace.eu> <e59db180-63d8-a426-7dd6-ba6f389cdbb9@babelmonkeys.de>
From: Florian Schmaus <flo@geekplace.eu>
Openpgp: preference=signencrypt
Autocrypt: addr=flo@geekplace.eu; prefer-encrypt=mutual; keydata= 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 wmAlqFE=
Message-ID: <a50b3245-72c9-2658-d4ba-983cc5f9b834@geekplace.eu>
Date: Mon, 22 Jul 2019 10:54:59 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1
MIME-Version: 1.0
In-Reply-To: <e59db180-63d8-a426-7dd6-ba6f389cdbb9@babelmonkeys.de>
Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="S1LCxRKY2YKrb88IWJOwbFt8bbCstXaIn"
Archived-At: <https://mailarchive.ietf.org/arch/msg/xmpp/F_oxqaM2M8sd09gd2ulRdrWo-eU>
Subject: Re: [xmpp] [Technical Errata Reported] RFC7622 (5769)
X-BeenThere: xmpp@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: XMPP Working Group <xmpp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/xmpp>, <mailto:xmpp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/xmpp/>
List-Post: <mailto:xmpp@ietf.org>
List-Help: <mailto:xmpp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/xmpp>, <mailto:xmpp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 22 Jul 2019 08:55:08 -0000

On 09.07.19 15:14, Florian Zeitz wrote:
>>> The intend of 7622 (in particular Section 3.2.1) as I recall it was that
>>> A-labels would generally be valid in JIDs.
>>
>> The question here is: Do you mean A-label or "a string which is (also) a
>> valid A-label"?
>>
> Maybe you want to enlighten me what the distinction is you make here,
> and how it is useful?

Of course. As I wrote in a previous mail, I want to avoid PRECIS for the
domainpart to require anything more heavyweight besides what is most of
the time a codepoint-by-codepoint validation routine. Otherwise
implementations have to perform a semantic analysis of the given string
in order determine if they are dealing with a DNS Name consisting of
only A-labels or an IPv4/v6 address, or something which is potentially
forbidden. I think that adds unnecessary complexity and is overkill, as
validating XMPP implementations would perform that on every inbound JID
they encounter.

> I can only imagine that it is one of intent. Yet, I'm having a hard time
> imagining people creating labels that consist of 'xn--' followed by a
> valid punycode encoding of IDNA-valid codepoints, but insisting these
> are not an A-label.
> 
>>> However, software would be
>>> required to process (user) input containing A-labels so that any
>>> JID-slots would only contain U-labels on the wire.
>>
>> Exactly. This is an important insight: Any string which is a valid
>> A-label may be valid in the domainpart of a Jid. However, if this string
>> got derived from an U-label, then you did something wrong. As JID
>> domainparts constructed from DNS names which contain U-label(s) should
>> conserve the U-label presentation (and not use the ACE/A-label form).
>>
> It seems to me that you are implying that software should not convert
> something that looks like an A-label to a U-label either?
> I.e. each label of a domainpart always has to remain in the
> representation provided by the user?

Not at all. I am only talking about what is allowed on the wire. We are
also in the fortunate situation that domainparts do not require ASCII
compatible encoding (ACE), and users are used to enter the IDNA/U-label
representation of a DNS name in their XMPP (client) software. Whether or
not software checks if the entered string into its UI is an A-label, is
not part of what I am considering. Although if I would, then I'd
probably argue that users do usually not enter ACE / A-label into UIs.
How often have you entered xn--ber-goa.de into your browser? Of course,
it potentially can not hurt if the software tries to convert those to
U-labels. But that is not a concern of the wire protocol which RFC7622
describes, although a note about this would probably be helpful.

- Florian