Re: [Emailcore] RFC5322bis - Ensuring uniqueness of Message-ID

Julien ÉLIE <julien@trigofacile.com> Tue, 18 October 2022 14:55 UTC

Return-Path: <julien@trigofacile.com>
X-Original-To: emailcore@ietfa.amsl.com
Delivered-To: emailcore@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DB8A8C14F737 for <emailcore@ietfa.amsl.com>; Tue, 18 Oct 2022 07:55:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.908
X-Spam-Level:
X-Spam-Status: No, score=-1.908 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-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=ham 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 n3csB9Gq3u-9 for <emailcore@ietfa.amsl.com>; Tue, 18 Oct 2022 07:55:22 -0700 (PDT)
Received: from denver.dinauz.org (denver.dinauz.org [37.59.56.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0A6C5C14F6E5 for <emailcore@ietf.org>; Tue, 18 Oct 2022 07:55:20 -0700 (PDT)
Received: from localhost (localhost.localdomain [127.0.0.1]) by denver.dinauz.org (Postfix) with ESMTP id 6666A60587 for <emailcore@ietf.org>; Tue, 18 Oct 2022 16:55:17 +0200 (CEST)
Received: from denver.dinauz.org ([127.0.0.1]) by localhost (denver.dinauz.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KSPf92akqmtV for <emailcore@ietf.org>; Tue, 18 Oct 2022 16:55:17 +0200 (CEST)
Received: from [192.168.1.6] (176.143-2-105.abo.bbox.fr [176.143.2.105]) by denver.dinauz.org (Postfix) with ESMTPSA id 23AB96047E for <emailcore@ietf.org>; Tue, 18 Oct 2022 16:55:17 +0200 (CEST)
Message-ID: <9ba27cc4-7ab8-0954-5fe3-1f72197c7ab1@trigofacile.com>
Date: Tue, 18 Oct 2022 16:55:16 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.3.3
To: EmailCore WG <emailcore@ietf.org>
References: <cf3c0f45-f20d-a1b9-feec-d49a06ecc381@dcrocker.net>
From: Julien ÉLIE <julien@trigofacile.com>
In-Reply-To: <cf3c0f45-f20d-a1b9-feec-d49a06ecc381@dcrocker.net>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/emailcore/OZqab8d96esCTu3Sa5PpCCiy6P0>
Subject: Re: [Emailcore] RFC5322bis - Ensuring uniqueness of Message-ID
X-BeenThere: emailcore@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: EMAILCORE proposed working group list <emailcore.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/emailcore>, <mailto:emailcore-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/emailcore/>
List-Post: <mailto:emailcore@ietf.org>
List-Help: <mailto:emailcore-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/emailcore>, <mailto:emailcore-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 18 Oct 2022 14:55:25 -0000

Hi Dave,

> Does the domain portion of Message-ID have to be a registered and listed 
> name? That is, does it have to be live in the public DNS?

FWIW, for Message-IDs used in Netnews, it was said in RFC 5536:

    When generating a <msg-id>, implementations SHOULD use a domain name
    as the <id-right>.

       NOTE: Section 3.6.4 of [RFC5322] recommends that the <id-right>
       should be a domain name or a domain literal.  Domain literals are
       troublesome since many IP addresses are not globally unique;
       domain names are more likely to generate unique Message-IDs.

    Some software will try to match the <id-right> of a <msg-id> in a
    case-insensitive fashion; some will match it in a case-sensitive
    fashion.  Implementations MUST NOT generate a Message-ID where the
    only difference from another Message-ID is the case of characters in
    the <id-right> part.



> If the name is not registered and queryable, there is some chance two 
> entities could choose the same domain name and, therefore, potentially 
> the same Message-ID. Even if it is a sub-domain, this could happen 
> within a single organization.

Indeed, it could happen in a single organization with several mail 
servers using the same sub-domain.  We have the same potentiel issue 
with a cluster of news servers using the same name for their path 
identity or right-hand side of generated Message-IDs.



> I don't have text to suggest because a) I've never head any indication 
> that this is actually an issue, and b) it's easy to argue this issue 
> reasonably,but down several lines of thinking, and I don't have a strong 
> opinion, especially given (a).  But I thought it worth raising here.

I don't know whether a similar document has ever been created 
specifically for Message-IDs to be used in mails, but this one written 
in 1998 by the USEFOR WG may be worth reading for "Internet messages" in 
general:
   https://www.ietf.org/archive/id/draft-ietf-usefor-message-id-01.txt


We had a recent discussion on news.software.nntp to improve the 
generation of Message-IDs.  Some implementations currently do not use 
random numbers but information like time, PID, global counters, etc.

We came up with the idea that we could use the base64 result (without 
trailing "="s) of the date expressed in seconds since 2022/01/01 for 
instance (to save bytes compared with using the epoch time) and a 64-bit 
random number.  It should be enough to ensure uniqueness in the case 
some clients or news servers use the same right-hand part.
This currently results in 14 bytes for the left-hand part, like in 
<QzlcrZx0k8PldQ@news.spitfire-nntp.fr>.

-- 
Julien ÉLIE

« – Cet homme qui est sorti du palais, nous renseignera peut-être sur la
     façon d'y entrer. Suivons-le.
   – Mais… Il sait sortir d'accord, mais rien ne prouve qu'il sache
     entrer, et… » (Astérix)