Re: [MLS] UPKE and Epoch Forward Secrecy

Benjamin Beurdouche <benjamin.beurdouche@inria.fr> Thu, 31 October 2019 08:37 UTC

Return-Path: <benjamin.beurdouche@inria.fr>
X-Original-To: mls@ietfa.amsl.com
Delivered-To: mls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 87C37120882 for <mls@ietfa.amsl.com>; Thu, 31 Oct 2019 01:37:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.897
X-Spam-Level:
X-Spam-Status: No, score=-6.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham 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 CUVTQkC1sKiI for <mls@ietfa.amsl.com>; Thu, 31 Oct 2019 01:37:47 -0700 (PDT)
Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3FF5B120876 for <mls@ietf.org>; Thu, 31 Oct 2019 01:37:47 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="5.68,250,1569276000"; d="scan'208,217";a="325203234"
Received: from aannecy-653-1-78-207.w90-41.abo.wanadoo.fr (HELO [192.168.1.19]) ([90.41.199.207]) by mail3-relais-sop.national.inria.fr with ESMTP/TLS/AES256-GCM-SHA384; 31 Oct 2019 09:37:44 +0100
Content-Type: multipart/alternative; boundary="Apple-Mail-EACF21CC-5E71-4E71-8AA2-151CF29E2FA0"
Content-Transfer-Encoding: 7bit
From: Benjamin Beurdouche <benjamin.beurdouche@inria.fr>
Mime-Version: 1.0 (1.0)
Date: Thu, 31 Oct 2019 09:37:44 +0100
Message-Id: <E1A50840-7F20-49ED-9878-D446B735159E@inria.fr>
References: <2E73A0A5-1D4A-4E76-A2FA-AFFE51598407@gmail.com>
Cc: Messaging Layer Security WG <mls@ietf.org>
In-Reply-To: <2E73A0A5-1D4A-4E76-A2FA-AFFE51598407@gmail.com>
To: Karthikeyan Bhargavan <karthik.bhargavan@gmail.com>
X-Mailer: iPhone Mail (17A878)
Archived-At: <https://mailarchive.ietf.org/arch/msg/mls/TXSOvcgmrPdJVxoS1n9QGGNTU7E>
Subject: Re: [MLS] UPKE and Epoch Forward Secrecy
X-BeenThere: mls@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Messaging Layer Security <mls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mls>, <mailto:mls-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mls/>
List-Post: <mailto:mls@ietf.org>
List-Help: <mailto:mls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mls>, <mailto:mls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 31 Oct 2019 08:37:50 -0000

I think I perfectly agree with most of what’s been discussed in the mailing list about rtreekem but even though, I agree with Karthik that I don’t fully understand how to break epoch level FS here...

I might not have understood something either :) input very very welcome !
B.

> On Oct 31, 2019, at 8:28 AM, Karthikeyan Bhargavan <karthik.bhargavan@gmail.com> wrote:
> 
> I must begin by saying that I have been enjoying reading Alwen et al’s work [1] and they make some excellent points.
> I particularly like the idea of using a primitive like UPKE (or SkuPke as [2] calls it) to improve the forward secrecy guarantees of TreeKEM.
> If this can be made to work with standards-compliant EC implementations, we should definitely consider adding this mechanism to MLS.
> 
> For my own better understanding, however, I am trying to figure out the exact forward secrecy improvement this will bring to the protocol.
> It is clear from [1] that the *update secret* and each *subgroup secret* in TreeKEM provides weak Forward Secrecy (since each update
> only modifies one leaf key, leaving the attacker N-1 members to compromise.)
> 
> However, the public key part of TreeKEM is only part of the Forward Secrecy story, we must also account for the “init_secret” which
> changes with every update. As far as I can see, the discussion in [1] appears to ignore the “init_secret -> update_secret -> epoch_secret+init_secret”
> ratchet which has always been part of MLS. So I don’t fully see how the attack of [1] works, and maybe someone can explain.
> 
> One may argue that the goal of TreeKEM is to provide FS and PCS for the epoch_secret, not the update_secret.
> If every member of the group is honest, then A sends an update , then B accepts the update (ratcheting forward its init_secret), 
> and then B is compromised, then how can the attacker learn the new epoch secret?
> 
> Perhaps we are worried about post-compromise forward secrecy (PCFS), but I don’t see any attack on that either.
> It is likely I am missing something, so do chime in and explain.
> 
> Best,
> Karthik
> 
> 
> [1] https://eprint.iacr.org/2019/1189.pdf
> [2] https://eprint.iacr.org/2018/954
> _______________________________________________
> MLS mailing list
> MLS@ietf.org
> https://www.ietf.org/mailman/listinfo/mls