Re: [MLS] Purpose of path_secret in the Welcome message?

Richard Barnes <> Thu, 22 April 2021 12:30 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id E447E3A1720 for <>; Thu, 22 Apr 2021 05:30:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.896
X-Spam-Status: No, score=-1.896 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id qnwOxDRxljJo for <>; Thu, 22 Apr 2021 05:29:58 -0700 (PDT)
Received: from ( [IPv6:2607:f8b0:4864:20::829]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 995F43A1725 for <>; Thu, 22 Apr 2021 05:29:58 -0700 (PDT)
Received: by with SMTP id y12so33606127qtx.11 for <>; Thu, 22 Apr 2021 05:29:58 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=purgFZGP3jpbrbxSjZxMSn0Un0U7akonOufscTTmhCE=; b=mR8N8hsTgSi7I85Gz0RJx4m6Yla3hwBbRQTMBii7v5dWQ42AzKoMO376sj5spQuWac wqBGM6JjQzMjI1VnQ0ym1T8OJyTyqbzoWReqtE76F/Q0XENDYj5AD+W1VyXn6psM5WHJ dqCCprkFoh7grC0zKLTzenxcSDvsGD3seLbiWzgtBhCh/jJTiFPB3bioPZKY8sc9VHZC uU5q6cXCXcpk/SWI3sGojEf+IEsuvh1dPXinfHJWNp071mx0wtoVtuMumyHzK+LroS9m 3kuu4s7aCMlBdTxE4YwfK7VKnSkzZCbfNHYlRXtU+XUhtqtTOlRVu1v7vsBMgDnNzsQf VM0g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=purgFZGP3jpbrbxSjZxMSn0Un0U7akonOufscTTmhCE=; b=t9+JkqL+9FBfu7d5POctCYykkb3Dy18nWoy3m5sUgb3XCAEjbWxrEQ2XU999D1pkPU DVUKMq1iKNuHuTDdGrsMWNDi3ulC6qkB0nFWrRuZj15YUE5TRk/4vCJzvDzGgFnOx+fh 9FYRWWZfXRj86KxOl1hxDbY8gwWv2+lnDp5dNP5FFhFoJ/6pBVl7u6VKpRED54BSdu6a 87JF/o5tlWKZeR95xdNIqWBYU1WR1mzOj8yQc5JqQOlwTUkuL/dYhSKwGplMsTTlxdes Y4IF43qmtRm/8luQZoDZRIpHVMiqvw1TdtZ8nreOeKU1QfXIyD2B3n5B52kmXOKBmYpz FG8Q==
X-Gm-Message-State: AOAM5327ASZFnrWYYUalMVXT2rwemMuHM2B/DaxyYEXae+KKlFioj4XV ch4xlh7CIH6ZcaVIbGM01kpauyIQUblkUK6vXDyfEAZ+vx09wA==
X-Google-Smtp-Source: ABdhPJxaAfuEA1P/yiMNnEcYn4sEfaPFzCj2DvE2ynq7BQlilUkFrbPM5L7Xy2a9PpIbEyDY0hSqY5mmRHekRJT7MVQ=
X-Received: by 2002:a05:622a:148f:: with SMTP id t15mr2959359qtx.191.1619094595870; Thu, 22 Apr 2021 05:29:55 -0700 (PDT)
MIME-Version: 1.0
References: <>
In-Reply-To: <>
From: Richard Barnes <>
Date: Thu, 22 Apr 2021 08:29:37 -0400
Message-ID: <>
To: =?UTF-8?Q?Th=C3=A9ophile_Wallez?= <>
Cc: Messaging Layer Security WG <>
Content-Type: multipart/alternative; boundary="0000000000003eb8fe05c08ed636"
Archived-At: <>
Subject: Re: [MLS] Purpose of path_secret in the Welcome message?
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Messaging Layer Security <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 22 Apr 2021 12:30:03 -0000

Hi Théophile,

You're correct that the `path_secret` isn't used in the process of joining
the group (decrypting the Welcome message and initializing group state).
It is used the next time there's a group operation and an UpdatePath is
sent.  It's optional because the sender of an all-Add Commit message
doesn't have to send an Update Path.  In that case, the path above a
joiner's leaf will be all-blank; there's no path secret to communicate.

Hope that helps,

On Thu, Apr 22, 2021 at 7:49 AM Théophile Wallez <>

> Hello,
> I am a PhD student currently writing a formalization of MLS, and I was
> wondering about the use of the `path_secret` field in `GroupSecrets`.
> To communicate with the group during the current epoch, it is sufficient
> to know `joiner_secret`.
> Also, thanks to the concept of unmerged leaves, a newly added leaf don't
> need to know any path secret to handle an UpdatePath: knowing a path
> secret early would simply result in the fact that the leaf could decrypt
> two different `encrypted_path_secret` in `UpdatePathNode`, which does
> not seem useful.
> Can someone give me some intuition for when and why this optional
> `path_secret` is used?
> Best,
> Théophile.
> _______________________________________________
> MLS mailing list