Re: HTML for email

Phillip Hallam-Baker <> Tue, 02 March 2021 18:28 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 7CF493A0BFF for <>; Tue, 2 Mar 2021 10:28:33 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.399
X-Spam-Status: No, score=-1.399 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.25, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id Ig1DNFVKNzrc for <>; Tue, 2 Mar 2021 10:28:31 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 982AC3A0BD7 for <>; Tue, 2 Mar 2021 10:28:31 -0800 (PST)
Received: by with SMTP id h82so7924800ybc.13 for <>; Tue, 02 Mar 2021 10:28:31 -0800 (PST)
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=TEHjznPjBF9YMwvLJ+gUYm4tG2yG3evhk+8a0rv+fZQ=; b=hYJTypLfXNYX1iHKcHk8YDPApP5lDdyUqrUolWkCI0wE300xW2/pxyrfPDZ10r5nbg vWEeV4H58NgQTa9yoThmX9arcLZSnERhX91Lc0uOqqnBQLByyNEFy070YJM0RMLl9UCZ J8b34BSQjtsSZA53IUES8NhIjUi3oXDqPG11pQQlNAbtB1wnY5vIWtjbOx/egEkW3gly +g8+YWb9vOXMiYmBGhn6xoGcvhiAp4nCJOMdU3Wim/3HzWiBexmY9x2veiO/rCWpj+PN g5L1lXXvNGjIinFSNn9TVT/bIXGUBcSpJ0R3/tsddbgowSkDr9RodzAz/q5JKOAA+CvF c18Q==
X-Gm-Message-State: AOAM5335u2JuNsBw8ZNWRK9MfqCXUWD4EFEtCjSFc4/YUgY3xF8Aeguk ci1ER/6lqbdG5vDuOOktmnIn9k6+8mVqnfSK0Nc=
X-Google-Smtp-Source: ABdhPJxh4f0R7l7qOmg48mMxnVNy/lmEFRBO0v1Y9cgf/C7UGA+jPKr/96BD24uDkTGLneLEivyi5i6vuQj8sFohyGk=
X-Received: by 2002:a25:2ac3:: with SMTP id q186mr34138471ybq.213.1614709710746; Tue, 02 Mar 2021 10:28:30 -0800 (PST)
MIME-Version: 1.0
References: <20210227190200.06ED46F10439@ary.qy> <4064.1614454347@localhost> <s1f0vo$ejp$> <> <> <> <> <20210301232237.GI30153@localhost> <> <> <> <> <085e01d70f8b$98c754f0$ca55fed0$>
In-Reply-To: <085e01d70f8b$98c754f0$ca55fed0$>
From: Phillip Hallam-Baker <>
Date: Tue, 2 Mar 2021 13:28:19 -0500
Message-ID: <>
Subject: Re: HTML for email
To: Larry Masinter <>
Cc: Nick Hilliard <>,, IETF Discussion Mailing List <>
Content-Type: multipart/alternative; boundary="000000000000b9771905bc91e63b"
Archived-At: <>
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IETF-Discussion <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 02 Mar 2021 18:28:33 -0000

On Tue, Mar 2, 2021 at 12:44 PM Larry Masinter <> wrote:

> There is a working group WPACK which could have taken on the problem of
> how to package HTML, embedded image, JavaScript libraries in a way that
> could be interpreted in a sandboxed environment. Maybe what they are doing
> could be retargeted for such a purpose?


And here is my objection to the current IETF approach of 'focused' WGs:
They are more likely to produce an output but it is very likely to be an
output that it would be better hadn't been created in the first place.

What I needed for my work is a packaging format that supports:

1) Incremental Encryption
2) Incremental Integrity
3) Authentication

What Google needed for their immediate commercial needs was a simple
archive technology that zips up a few Web page components delivered over
HTTP/TLS. So they wrote a very narrow spec that only addressed their use
case and then came to IETF to get it blessed as a niche solution. But it is
a solution that was designed with absolutely no thought to the wider
problem. They didn't want to consider the wider problem at all.

This is how PKIX got in the state it has. Instead of considering revocation
from a high level standpoint and building a scalable solution we had a
'make do' solution which led to another incremental solution which was
again curtailed and... That is how we ended up with five separate assertion
types in PKIX. TAXI which became the basis for XKMS and SAML was an attempt
to simplify and get back to basics.

What I fully expect will happen of course is that at some point we will
want to introduce DARE into IETF. Security of Data at Rest is starting to
become an enterprise concern. And of course there will be people asking
'why not build it on WPACK' and 'why not use CBOR' and the answer will be
that there are very specific requirements that apply to DARE which the
people working on those systems told me are out of scope and they do not
want to consider.

Oh and the reason DARE is designed the way it is is for backwards
compatibility with a different set of standards. JSON-B is a strict
superset of JSON encoding so that every valid JSON document is also JSON-B.
You need a separate serializer to make use of JSON-B encoding but a single
decoder will decode both and also the compressed version and the version
with binary encodings for extended binary data types.

Using DARE for HTML packaging is easy because I designed it to support HTML
packaging even though I had absolutely no need for that at the time I did
the work. Why did I design that spec to meet a use case I don't care about?
Well if you want your spec to support unexpected and new use cases you
cannot imagine, you had better start by meeting the use cases you can.

The SAML TC had a use cases sub-committee that spent hours arguing over
which use cases to include. Some of that argument was productive because it
resulted in a better statement of the use case. But a lot of it was
pointless discussion of whether a use case was important enough to generate
a requirement and I didn't care whether it was important enough, I worked
out a way to meet the requirement regardless.