[CFRG] Re: Random-access authenticated encryption (raAE) draft

Nick Sullivan <nicholas.sullivan@gmail.com> Wed, 15 July 2026 13:04 UTC

Return-Path: <nicholas.sullivan@gmail.com>
X-Original-To: cfrg@mail2.ietf.org
Delivered-To: cfrg@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id EC9621172E879 for <cfrg@mail2.ietf.org>; Wed, 15 Jul 2026 06:04:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1784120655; bh=QfY94leRyQ+Tzg2Vv8TOP46ipA/zHJ5WHPJUCKRDXLA=; h=References:In-Reply-To:From:Date:Subject:To:Cc; b=tI0VYtViKQGr6esXP8DlDTy7sr94djNdSW3vxzBPdC8YtUIz2qTQ+h768dYd4Js8F Nq9BF+6IVhLFfvz5pZ8bhwTqli9o7mA2sx6DkbZb8Yw45DvErrpu5IaACU/GYFqhBB W8huYJL4f/mKwE4a2CprbyFsBWvbKEpcDu9cElvg=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Gdi3QuWmPHeZ for <cfrg@mail2.ietf.org>; Wed, 15 Jul 2026 06:04:14 -0700 (PDT)
Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [IPv6:2607:f8b0:4864:20::1133]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id BFEDF1172DF02 for <cfrg@irtf.org>; Wed, 15 Jul 2026 06:02:54 -0700 (PDT)
Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-81e851aebeeso61028247b3.0 for <cfrg@irtf.org>; Wed, 15 Jul 2026 06:02:54 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1784120574; cv=none; d=google.com; s=arc-20260327; b=UFA63aLGseDshhB9C09j7xdjSe9js7jjRqgcyE8TfTuaJKtEit9umJlag6fuBrXcOt LZeM5xf9Wcmhxk1z+iwuAh/rYTz8FzPm+Oh1MSBx4A2rL1iWoom0ZVWQan3nL6nx7SBx q7zsVOoA1y1LZfisNrzVN0ueUnDi29hEK2qOhjaax52qO6hg57tO1sEXAD4vwF+TOHN/ 0m3fnZ9g6KJwm8H+slUdQh9L30VZSEf3uSuVW7QaD4f81UAH69ZNcXPpdSHlb6OUa7zj 2gf/q4BLUISaaDOLiArxrk0F0IVYrRiJqPuOf3wC9iFi/WB+zzh4WTdQ+lKfMvA21cVW XHnQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=+gZIgV3HoZm7wJEZHXiwma87c0uHyMyEkvabQn16eUw=; fh=sjX9F5DsWEJ2u60gNOG2rQzMNygqHg+xTFgSH3nCU4Y=; b=UfsBXkWlfiDAPGiW6n78sOl8sHtt4c8ngn5PpjEU1gLZvkFKLoV0jRJ8FM4fHkhPlU ApCAxMWYbxZmVTshoRTuj2FC/FuN3DQiARiVygcFv7pCYeVBBLIyLO1Z53A/lzenwS7F DEu8wOd2Kl/3sN1D5c1PqakLYCMs33F8+ILkl7UffT9orpnwOwILgKIhaW+S9Vgg6Xd7 UfxyyT42d/jI946jSl4i2YSOcH7lAFVnRnJo8nStn113pkmLpkvTxydEsUwJrD4Wzg+5 AACZeswSKCqM1FBtjClzzfjEL6Q+3tAUPY+BqZjeOdl34c9rT0rkMDOiVDaFtIXZBLt2 kF8w==; darn=irtf.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784120574; x=1784725374; darn=irtf.org; h=content-type:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:from:to:cc:subject:date:message-id:reply-to :content-type; bh=+gZIgV3HoZm7wJEZHXiwma87c0uHyMyEkvabQn16eUw=; b=qjgGU5IrC2MLQZMcyIcnZ0g3rFb6JZtlw/s+RgwZjP0iLe/+8UNwQCcezy8Zv7waWU Jy7Lgn3IdZUq6x2vrZI8h540shWWkLWziD0xhgr3hzSsS+cEn0ixpdod4VZyPczrnk/V 5Ac5oDgJyliTxIlAOPx4BRJs+7UN+tPoT1nwNBe8AafNEWhMosnr+7muWf6ob2oSZUVP vwMB+5ejchDLcL0RzoKXA3647gGIVlNTkuP4dmK2YMtZX7iijUD2vN0bSKz8hLrWniYj NUv3o9r9yuH7s9JnlEztM1/CYRtSw0gK7VWkAkVNRRq1uKXpCQgUhmwDo8NiqTGr7E8F dC9Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784120574; x=1784725374; h=content-type:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to:content-type; bh=+gZIgV3HoZm7wJEZHXiwma87c0uHyMyEkvabQn16eUw=; b=izjitEi1Bkx7j9yi4CwtUlAIHzoDPly51AAQFm5udEvvkrc/VAMnZIlt3PaGhpQTXj X56qzEeUKNrKhMzRF3qyZK9E/YKR2Pvl7i9XGp49V0qJw/wF439o7f9OsK0xMCWhrmfn FiIOuKH7oyNuotksYtLCT1cLf6aiJJ1QUfLa6ZgtJRdOENxvnWq+18E5+GlN7NbFS7I4 mYz43RagjrO2mCCxTN82PigsZDNCw7GyDtuM0cN1szTtx9OhQ0/EEPQoPFaIKrzHOOAQ V+5o6QzMtEFdm2hFvqxBSDCc6Tx7YYxuaJQtAgvEuCbiNrFZU7ACMwYbf5b9EZ5fgeJM L19Q==
X-Forwarded-Encrypted: i=1; AHgh+RomSO3RQD3Hv6K4ymO5c8/Q/wkeQe0jTTXr0hcAcxDggAQXongIMCOl9YKs7ikKs9gi9/j1@irtf.org
X-Gm-Message-State: AOJu0YzwaKv1S6GBBWBqnPl17dpu/R/0CV4TJHCX9drVP8d0SxCMFEeD exVm3W57F1Pa9Bl9x8QaYtoKhwMl5DJVFZrAGlJcQzBpne5hGvbXsm9KqC3ieREt/4Hsl85dxz9 WRGbf8/WF3XsvlkDJuYcLc8vkj7gBm7A=
X-Gm-Gg: AfdE7ck6nzc9Pgi6VOc5izqisAukfiHTGMAZUhkGUeqiVRSui55lcuf9x1kxhnFu60j bJc1vPvtTqTkBmKxGGDnvYz5c+SVINCnthXdi1NIzcgKS6CoiDRHYtzcITbUsYog+37caP6p6Sv o5/VIr9DUN6gzMDGwu6t+buMddfr7/5yUvZw54K0dLXoFjRiGQhVHHaH3flQbMiChrGfwa2eWTm fP1QROEfLJbOsVIXcW8+KNf7p0FpUhaM+kPt9LbYKBm25BCfRSQEjPY0PR5yIXxybTPLCNiopBB Qk8yhi+ZeUWgDFUpjsgSoNsGmbQKgnAVp+sKUWE4/7Z01nLG31qHgBHqKGIPjRLUCGWLh8DXt6k o6bYPMeZfsN1F7xUdbBy5OL3DARjI6dvdw0JlwB8l
X-Received: by 2002:a05:690c:348a:b0:81e:5e:8ff with SMTP id 00721157ae682-81ebb23b5eemr55395897b3.41.1784120573763; Wed, 15 Jul 2026 06:02:53 -0700 (PDT)
MIME-Version: 1.0
References: <CAOjisRximY8dNJVFkYyHogh6UyH6HOUK==yt8+b-Muy9VntX9Q@mail.gmail.com> <ef6adb6e-cc5e-4021-96c7-4691404c9b1b@app.fastmail.com> <CAOjisRwvAKwgWnsV_niRUcBwTsu4hFVANSSYV4vqeye1BeX=mw@mail.gmail.com>
In-Reply-To: <CAOjisRwvAKwgWnsV_niRUcBwTsu4hFVANSSYV4vqeye1BeX=mw@mail.gmail.com>
From: Nick Sullivan <nicholas.sullivan@gmail.com>
Date: Wed, 15 Jul 2026 14:02:41 +0100
X-Gm-Features: AUfX_mzYgj6ra1vUWrfJhVvm1FOGu0nPPFZsXnqIZX45h-bqksu1y_zMemPYW00
Message-ID: <CAOjisRzKCtkbu2LJnAwCNg5C=k3CM+Xs=TAL_0LCnK80jg7TZA@mail.gmail.com>
To: Martin Thomson <mt@lowentropy.net>, cfrg@irtf.org
Content-Type: multipart/alternative; boundary="0000000000000926700656a5f123"
Message-ID-Hash: 2LFCTFMKZIUKJMRSBW2AVL6CWTGLFCBE
X-Message-ID-Hash: 2LFCTFMKZIUKJMRSBW2AVL6CWTGLFCBE
X-MailFrom: nicholas.sullivan@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-cfrg.irtf.org-0; header-match-cfrg.irtf.org-1; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: draft-ietf-moq-secure-objects@ietf.org, draft-ietf-openpgp-crypto-refresh@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [CFRG] Re: Random-access authenticated encryption (raAE) draft
List-Id: Crypto Forum Research Group <cfrg.irtf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/cfrg/jA9OdZBmAzqX3fwqiPZXHOIFmH0>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cfrg>
List-Help: <mailto:cfrg-request@irtf.org?subject=help>
List-Owner: <mailto:cfrg-owner@irtf.org>
List-Post: <mailto:cfrg@irtf.org>
List-Subscribe: <mailto:cfrg-join@irtf.org>
List-Unsubscribe: <mailto:cfrg-leave@irtf.org>

Hi Martin,

Following up on your point that this belongs in the IETF. After some
reflection, I propose a pressure test: run raAE and SEAL through the
two-lane model in draft-sullivan-crypto-publication (
https://datatracker.ietf.org/doc/draft-sullivan-crypto-publication/) the
pattern generalized from the HPKE WG. SEAL sits at the same abstraction
layer as HPKE, so it could be a good test of the model.

The two lanes:

  engineering lane (IETF)   |   research lane (CFRG)
                            |
  MLS (attachments)         |
  file encryption (TBD)     |
  MoQ (?)   OpenPGP (?)     |
           |                |
           v                |
         SEAL <------------------>  raAE
     concrete raAE          |    abstract primitive
     via dispatch           |    analogous to AEAD


Consumers pool their requirements into SEAL, the engineering piece, which
goes to dispatch to find its IETF home. raAE stays in CFRG as the security
foundation for SEAL: the abstract definition, requirements, and security
reductions for random-access authenticated encryption, building on
validated public research. The file encryption John suggested in this
thread could become its own working group or land in an existing one, with
SEAL under the hood.

There are concrete benefits over current designs for the potential
consumers marked with a question mark:
- MoQ adopted an SFrame-based scheme for end-to-end objects in March
(draft-ietf-moq-secure-objects). It encrypts a whole object in one AEAD
call, and the draft notes that a large object must arrive in full before
any validation can start. A SEAL payload validates segment by segment as
bytes arrive, and a reader can verify one segment of a cached object
without reading the rest.
- OpenPGP verifies a signature only after decrypting and hashing the entire
message. A SEIPD v3 built on SEAL would sign the one snapshot value, so a
reader verifies a signature over any part of a message without reading the
rest. raAE also helps with editing.

I've cc'd the authors of both in case there's interest. There are also
opportunities to consolidate other designs under the raAE primitive
interface, even if SEAL is not the exact raAE chosen.

What do you think?

Best,
Nick

On Tue, Jul 14, 2026 at 10:06 AM Nick Sullivan <nicholas.sullivan@gmail.com>
wrote:

> Hi Martin,
>
> I’m not sure I fully agree. Something like SEAL-simple or SEAL-attachment
> is probably pure engineering, but it seems like it would be useful to have
> a comprehensive research-adjacent document like this to lean on for
> analysis.
>
> Nick
>
> On Tue, Jul 14, 2026 at 9:01 AM Martin Thomson <mt@lowentropy.net> wrote:
>
>> Hi Nick,
>>
>> I'm going to suggest a DISPATCH outcome for this, which does not involve
>> CFRG.  I think that this is pure engineering and the IETF should be the
>> place to take it up.  The usual requirements apply, of course: we need to
>> see the receipts on customers for the mechanism, etc...
>>
>> On Tue, Jul 14, 2026, at 00:54, Nick Sullivan wrote:
>> > Hi all,
>> >
>> > Writing as an author, not a chair. I've been working on a draft I want
>> > to share with the group. This is not a call for adoption, just sharing
>> > the early draft in case there's interest. Comments and reviews welcome.
>> >
>> > *The **problem*. Applications dealing with large encrypted objects
>> > (encrypted backups, encrypted archives, object stores) need to read any
>> > part of the object without decrypting the whole thing. They also need
>> > to verify that each part read belongs to the current object at its
>> > claimed position, without processing the entire object. Mutable
>> > objects, like encrypted file formats, encrypted disk images, and object
>> > stores that accept partial updates, also need in-place modification of
>> > any part without re-encrypting the whole. The positional and inclusion
>> > proofs should also remain valid after each modification. Take an
>> > encrypted database file or an encrypted disk image: any block is read
>> > or written by index, and a reader wants to know that the block it reads
>> > really belongs at the offset it came from in the current image, without
>> > re-hashing every block on every write. No proven security notion in the
>> > literature covers all of this under one primitive. As such, each
>> > application ends up rolling its own segmented AE layer, mostly without
>> > security proofs for the rewrite and whole-object cases.
>> >
>> > Prior work covers pieces of the problem. CHAIN (Hoang, Reyhanitabar,
>> > Rogaway, Vizár 2015) is sequential. STREAM (same paper) supports
>> > random-access decryption of individual segments and encodes a
>> > final-segment bit for truncation detection, but has no whole-object
>> > snapshot and no in-place rewrite. Its deployed relatives (Tink
>> > Streaming AEAD, OpenPGP v2 SEIPD) are write-once streaming formats and
>> > don't expose rewrite at all. The v2 SEIPD design is itself the outcome
>> > of Efail (Poddebniak et al., USENIX 2018), where v1's whole-message
>> > integrity failed and applications acted on unauthenticated plaintext.
>> > FLOE (Fábrega, Len, Ristenpart, Rubin; ePrint 2025/2275) formalizes
>> > random-access AEAD security cleanly and gives a proven construction.
>> > This work builds on that formal foundation.
>> >
>> > I've posted draft-sullivan-cfrg-raae-02, "Random-Access Authenticated
>> > Encryption." It covers the primitive, the security notions, the prior
>> > constructions in the space, and a concrete family of instantiations
>> > with test vectors called SEAL (Segmented Encryption and Authentication
>> > Layer), as well as a security analysis (companion paper forthcoming)
>> > and write/rewrite budgets.
>> >
>> > The draft has two layers. raAE is the abstract primitive: the base
>> > interface and security notions come from Fábrega et al., which this
>> > document extends. SEAL is one concrete construction of raAE,
>> > parameterized by an AEAD, a KDF, and an epoch length. It has two
>> > profiles (immutable and mutable) and an optional snapshot authenticator
>> > that binds the whole segment set and updates cheaply on rewrite. A
>> > protocol that would previously have signed the whole encrypted object
>> > can sign the snapshot authenticator instead and get the same
>> > authentication scope without touching the segments. The snapshot
>> > authenticator is also not a single construction, different
>> > authenticators fit different consuming-protocol contexts. For example,
>> > settings that supply only a single CEKs and owner per object versus
>> > settings with a shared CEK (as in MLS) necessitate different
>> > authenticators.
>> >
>> > Freshness against whole-object rollback, storage transactions, and key
>> > management are explicitly out of scope. Those belong in a consuming
>> > protocol.
>> >
>> > The shortest path to a concrete, testable thing is to read
>> > SEAL-simple(AES-256-GCM, HKDF-SHA-256) in Appendix E
>> > <
>> https://www.ietf.org/archive/id/draft-sullivan-cfrg-raae-02.html#name-seal-simple-implementation->,
>>
>> > which is the degenerate case for SEAL with no rewrites or snapshot
>> > authentication and fixed legacy AEAD/KDF.
>> >
>> > Reviews and comments on the framing, the security notions, the
>> > construction, or the scope are all useful.
>> >
>> > Draft: https://www.ietf.org/archive/id/draft-sullivan-cfrg-raae-02.html
>> >
>> > Best,
>> > Nick
>> > _______________________________________________
>> > CFRG mailing list -- cfrg@irtf.org
>> > To unsubscribe send an email to cfrg-leave@irtf.org
>>
>> _______________________________________________
>> CFRG mailing list -- cfrg@irtf.org
>> To unsubscribe send an email to cfrg-leave@irtf.org
>>
>