Re: [MLS] Key confirmation - Extra MAC needed?

Richard Barnes <rlb@ipv.sx> Tue, 23 October 2018 15:14 UTC

Return-Path: <rlb@ipv.sx>
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 D70E6130DD5 for <mls@ietfa.amsl.com>; Tue, 23 Oct 2018 08:14:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=ipv-sx.20150623.gappssmtp.com
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 1CbCtxgby3D8 for <mls@ietfa.amsl.com>; Tue, 23 Oct 2018 08:14:49 -0700 (PDT)
Received: from mail-oi1-x22b.google.com (mail-oi1-x22b.google.com [IPv6:2607:f8b0:4864:20::22b]) (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 45E4D130E37 for <mls@ietf.org>; Tue, 23 Oct 2018 08:14:49 -0700 (PDT)
Received: by mail-oi1-x22b.google.com with SMTP id w81-v6so1398857oiw.9 for <mls@ietf.org>; Tue, 23 Oct 2018 08:14:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipv-sx.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=LxYMYf4m2t+ujeENxnGmoPVaixrvHPgAQuMSx7PxGzA=; b=CyyzvRs6VxTxywSxtpvyTrLUfW4H5AodblkElQ1Lp3xKGKTiwd+cX+xJe0SAUfr+jL ctCHuPEqwRfgzpMGmnTHJPXkTTZejTq6abyr8QLcnomQGU2MeYRIoaQw8NJLpDmzXb5U 0mcrl5RvnsBvKzeoXEsgByDOeYV6tv8HsJDB/Q2+dWanMAqMtv5bXL6VFJJy1eSLQIvo dRkoFtqLkQcIypMdMCNZWL3Opf4BYgVR1yKPcDzPvcKNhAFk0Np40fnBNvSBsUZAe+O2 VprWkR+2RqbQpwICK3+/ZPaMFhRkLQ6lyYCAxhxe2iz1M5wqKD5ztTr2tWZtNnWPCpCn VKPw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=LxYMYf4m2t+ujeENxnGmoPVaixrvHPgAQuMSx7PxGzA=; b=b6mKwGtgWImOZgYTyP7UhQ0fxTAoA7XekzWUuIMt1oTlEPvjSlT7v/UqeK/09AB6kg m9MOEjEWKRgVztzIvZ7YIpW2FXDKqnqXTjrUUqYb+PYcKTeEMxNX29j1YRp7NBj99Df8 RjnTtyoE5Rh1RWRtaQ9CU5zluG4hf3Dyk9SHLnf65oO+6vglopt1TlaolgR/Bj5m2V/o 3xinM7I9fyGVxsG/HJ1reKjVAgoQfrFU9N6j76XzGH4LPyuHTaFkUPklqkgZ39ZmsWmj i9yhH2h42yBlQUD6TEk1Mh0V62LR6n/BERYuAks/EW4GwCZyTyHP3pcEBqfUsMYhgnnN 4fYg==
X-Gm-Message-State: ABuFfog4emZs98abIarcjgTmndmo9sI/XcwPpYkTxL6eYkzu8m2hfYwQ 2WmD6mZl5Hx0l/55p8xNj0i8LXHUoO2/0ooQlwL7wXGA
X-Google-Smtp-Source: ACcGV62th1bCRNph9de4j6wHgVf5+VzDSnMP2wGMwQ4okGB8aPRA/a0TPsaUCiYUXgFsOE0nMHsT9FZ36Huyf23FjrI=
X-Received: by 2002:aca:540c:: with SMTP id i12-v6mr27968656oib.49.1540307688387; Tue, 23 Oct 2018 08:14:48 -0700 (PDT)
MIME-Version: 1.0
References: <CAL02cgTk+mBNi8jDicN8jmpGZkixTOu541MVEFj7SSgroL8DHg@mail.gmail.com> <58A76FA7-6A4B-4E78-8631-A20CD20AE533@vigilsec.com> <CAL02cgT-x0DNVK-YOJZYUWs1j4nnsFRAv92gS9YkjOPzb7AbGg@mail.gmail.com> <1540307577.2861642.1551828416.05A754F2@webmail.messagingengine.com>
In-Reply-To: <1540307577.2861642.1551828416.05A754F2@webmail.messagingengine.com>
From: Richard Barnes <rlb@ipv.sx>
Date: Tue, 23 Oct 2018 08:14:30 -0700
Message-ID: <CAL02cgR=O94ZChQhyLRDNJrZov9tARnM6CwBHF=m-6467mhxsQ@mail.gmail.com>
To: Katriel Cohn-Gordon <me@katriel.co.uk>
Cc: mls@ietf.org
Content-Type: multipart/alternative; boundary="0000000000009cc1820578e6d4cf"
Archived-At: <https://mailarchive.ietf.org/arch/msg/mls/EMVt_jKYA1-hW29Xq2S1eX09KvU>
Subject: Re: [MLS] Key confirmation - Extra MAC needed?
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: Tue, 23 Oct 2018 15:14:52 -0000

Can you say more about how MAC'ing over "" makes things cleaner?

On Tue, Oct 23, 2018 at 8:13 AM Katriel Cohn-Gordon <me@katriel.co.uk>
wrote:

> I wouldn't die on this hill, but I prefer the MAC design just for
> cleanness reasons in analysis. Collapsing the final two MAC invocations in
> the derivation doesn't seem like it gets you very much.
>
> Note that we wouldn't have to MAC over the message transcript---over the
> constant zero might be enough.
>
> k
>
>
> On Tue, 23 Oct 2018, at 4:08 PM, Richard Barnes wrote:
>
>
>
> On Tue, Oct 23, 2018 at 6:34 AM Russ Housley <housley@vigilsec.com> wrote:
>
>
> Hey all,
>
> In the just-released -02 draft of MLS, I've added a key confirmation step
> to the handshake authentication process.  Important question after "====="
> below...
>
> In the previous draft, there was an authentication mechanism that ensured
> that if two group members ended up with different GroupState objects, then
> they would have different keys.  However, it did not provide any way for
> group members to recognize that this was the case, except for AEAD checks
> on encrypted messages failing..  With explicit key confirmation, the
> recipient of a Handshake message knows that if processing of the handshake
> message succeeds, then the recipient has the same GroupState as the sender.
>
> This provides a degree of protection against malicious insiders that send
> different TreeKEM values to different parts of the tree.  Namely, only the
> subset of the tree that got the key matching the key confirmation will
> accept the Handshake message; the others will be locked out. (Assuming a
> broadcast channel; if the sender can send different key confirmations to
> different recipients, then this is no help.). This isn't complete
> protection, but at least the locked-out members know they've been locked
> out, and can complain about it.
>
> =====
>
> The major question here is whether it's sufficient to derive a key
> confirmation value from the key schedule and publish it, or whether the
> value derived in the key schedule should be used as a MAC key to generate a
> MAC over the message transcript.   I've posted PRs for both; the latter is
> what I merged in -02
>
> Derive: https://github.com/mlswg/mls-protocol/pull/72
> MAC: https://github.com/mlswg/mls-protocol/pull/71
>
> On the one hand, the MAC-based approach is what is done in TLS.  It feels
> safer, because we never publish anything that's in the key schedule diagram.
>
> On the other hand, the Derive-Secret operation used to create the key
> confirmation value in the key schedule is **already** based on HMAC.  So it
> doesn't seem like the extra MAC step is adding that much value.
>
> If we can convince ourselves that the Derive approach (without the extra
> MAC) is sufficient, I would prefer to do that, since it's simpler.  But
> feedback on this point would be very much appreciated.
>
>
> The Derive approach is straightforward.  If this leaks in any surprising
> way, then draft-ietf-tls-exported-authenticator has a problem too, right?
>
>
> I don't think that necessarily follows.  That draft follows the MAC
> approach, in that the values it exports from the TLS key schedule are used
> as inputs to a MAC, and only the MAC output is published.
>
> That said, I agree it's instructive to look at uses of the TLS exporter to
> identify parallel risks here.  You would want to find some case where an
> exported value is used as a public value.  Unfortunately, the only other
> major usage of exporters that comes to mind is DTLS-SRTP, which exports a
> key and salt.  You could use that to argue either way, since the salt is
> notionally public, but in practice is never published.
>
> --Richard
>
> *_______________________________________________*
> MLS mailing list
> MLS@ietf.org
> https://www.ietf.org/mailman/listinfo/mls
>
>
> _______________________________________________
> MLS mailing list
> MLS@ietf.org
> https://www.ietf.org/mailman/listinfo/mls
>