[Cbor] Re: Working Group Last Call on Serialization draft

Joe Hildebrand <hildjj@cursive.net> Wed, 02 September 2026 19:09 UTC

Return-Path: <hildjj@cursive.net>
X-Original-To: cbor@mail2.ietf.org
Delivered-To: cbor@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 04BB913420748 for <cbor@mail2.ietf.org>; Wed, 2 Sep 2026 12:09:34 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1788376174; bh=Hxq5IizpL5XDPt9twF7FERW2dSy9tz2szv6EYXIaGeg=; h=Subject:From:In-Reply-To:Date:Cc:References:To; b=cvs92OIun/lA/nPOzv5dEr04oFvrwVecByM0iju6VRgffpmP7YJ9QXbJ/UxYOco3s 5CXfD/yr0DIEJG8cFt2QpiNvwyKP9d3QjZ8oT/XEcz8kzocDsGkSsnt9iCyN42GVmr VHOMzOq69Mu/yAG9oBRVOSNpS6l9JWBBT86wLIHQ=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.1
X-Spam-Level:
X-Spam-Status: No, score=-2.1 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, 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 (1024-bit key) header.d=cursive.net
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 kKBggrKE_WpR for <cbor@mail2.ietf.org>; Wed, 2 Sep 2026 12:09:33 -0700 (PDT)
Received: from mail-oa1-x34.google.com (mail-oa1-x34.google.com [IPv6:2001:4860:4864:20::34]) (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 4D56113420740 for <cbor@ietf.org>; Wed, 2 Sep 2026 12:09:33 -0700 (PDT)
Received: by mail-oa1-x34.google.com with SMTP id 586e51a60fabf-43bf9548df4so1232691fac.0 for <cbor@ietf.org>; Wed, 02 Sep 2026 12:09:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cursive.net; s=google; t=1788376172; x=1788980972; darn=ietf.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:content-type:from:to:cc :subject:date:message-id:reply-to:content-type; bh=7JSfQQ5KBG3JfH/ux+4eWXOuQ6hk434JOaTjJ96PpGo=; b=hjO6tAyKq6RVTk2eWjNXa4sSNagoAz8PnCjZvboswUTctYKOo/aR2Rb64WpoM/Kxrl 2KeozJr156rHE8yTMndtqjdBgnUTMkd8oDCYPtEkhcZMg2sj8wAXjWkedmlbko2ehYsc tdHunn79PBsfdJOYbylPpKmDRRnGZfmX7dGew=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788376172; x=1788980972; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:content-type:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=7JSfQQ5KBG3JfH/ux+4eWXOuQ6hk434JOaTjJ96PpGo=; b=qQ35zFGjXMRVZ7Xy7aGDOMQCgAfASnUq1RimOQ5OAJkw0hqIMJJefIrCyXVsaZO137 VrJxTapwqQ5bfyfBzn1Ach7AqASEzZCQJark7YLodBlulY+R8DO2E2YkOn9AgLwKtmjo awTzYwZwHHeuKulcoOH7yaia4eOVJ7fuVrdi4eDM4BqrcHGmFBzLVgeEp/2hd6xtLzRi lQcvAYlG5baLBrXj4s9A5PZhoUf+QL2sP+EnYZOcDcYMcg0PEbX7828JREZi5S5OYnmB lGAK/Y11tCRloLC8hiBAQLdiyrg3Tk8TC3//cPOQD3JJhUsunggKLzNv9qA6tHlTGgD9 SBGQ==
X-Forwarded-Encrypted: i=1; AHgh+RotJlEky8kWt8L5pTagJo4xFZ8f60Aux/clYLsD1bGOc0gD3xm+rsrbsuVWfMn5QFkcM9cX@ietf.org
X-Gm-Message-State: AFuF++nusoPrDSyw4V7X1UkcOarY2ZjI/HU0IMwaaXXHo5j8WjZUd1NO K+YqnvvhSv5fdbXWPA2VYdXmZX8JaXUPLqn8gyQx04US8B1DNi8OImgo6Qptpx9XPw==
X-Gm-Gg: AR+sD13Dx7Ep6NbtbMjsPGmkSitwlqObUJCVbi37zNvxef1etL4Wx0/zjZdl4IPgDBv MbVT+ba7MrI/pRXyDUZQgDI4a355co8tKXVXKwlSi4cM8kQF10oSWvHWZD5GfcV7p98SyixJGSF BcB9c/wBXumGAnu0WkcddVR1YgPt/0MoYcMTxpb9huV9B/TyfdqHcj2nAue8C2pPSJ3uSDx8A6a KsA/VoOoZ1f85WQt7FIWBsJttpyiX1X3x28sV5DV4gWWiB1JmViGsGs1ilSs30ty1NQNMOGtZ1q /YP+GYVXys7cC3WxWBIDiNuHLYNsKhCOVljUIoPCk5wwRWBJhNvdWLgfQ/o6yKUA0J0s34qQMqu 1cUBrNwBAUOcOrUrI8aJitMMpKBuxbC+fcvaE8BbfbrwcQo6Fh/35hwVAWDgRYJXvQA6lrCcodb hxBkLJkjyEDLfYZmf9CK2NMAiI9Gel8Tfj9DuB9HfTsWF1ZURFZNBqN+2Kbq6aasEX0HDqDI5Ia yi9xTQx
X-Received: by 2002:a05:6820:209:b0:6b3:6444:46e with SMTP id 006d021491bc7-6b47c4ae7demr6153151eaf.8.1788376172310; Wed, 02 Sep 2026 12:09:32 -0700 (PDT)
Received: from smtpclient.apple ([50.172.192.236]) by smtp.gmail.com with ESMTPSA id 006d021491bc7-6b40f81f374sm3671805eaf.14.2026.09.02.12.09.31 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 02 Sep 2026 12:09:31 -0700 (PDT)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3864.700.51.1.1\))
From: Joe Hildebrand <hildjj@cursive.net>
In-Reply-To: <7D242660-39F1-4CC0-A0F3-45A37DD3B448@island-resort.com>
Date: Wed, 02 Sep 2026 14:09:18 -0500
Content-Transfer-Encoding: quoted-printable
Message-Id: <488C9C74-7DD4-4D46-836D-D88FE29198B0@cursive.net>
References: <CALaySJJa=QjUM5B6d8boiFb8qyRwf6LO32WVVWBGuCWtSmEFCQ@mail.gmail.com> <876653A4-6425-45E1-A77A-F0A6A1315BDD@cursive.net> <7D242660-39F1-4CC0-A0F3-45A37DD3B448@island-resort.com>
To: Laurence Lundblade <lgl@island-resort.com>
X-Mailer: Apple Mail (2.3864.700.51.1.1)
Message-ID-Hash: 23VDUIWAR2QBIX2OYMJBHF2KHTXFNZ6W
X-Message-ID-Hash: 23VDUIWAR2QBIX2OYMJBHF2KHTXFNZ6W
X-MailFrom: hildjj@cursive.net
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-cbor.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: Barry Leiba <barryleiba@gmail.com>, CBOR Working Group <cbor@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Cbor] Re: Working Group Last Call on Serialization draft
List-Id: "Concise Binary Object Representation (CBOR)" <cbor.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/cbor/p4S40FrWLjZxObsTUdNxe5n-yaY>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cbor>
List-Help: <mailto:cbor-request@ietf.org?subject=help>
List-Owner: <mailto:cbor-owner@ietf.org>
List-Post: <mailto:cbor@ietf.org>
List-Subscribe: <mailto:cbor-join@ietf.org>
List-Unsubscribe: <mailto:cbor-leave@ietf.org>

This is close for me.  I'd like one more bit, which is that protocol designers can decide whether their protocol *requires* a checking decoder.  I agree that checking should not be the default.

— 
Joe Hildebrand

> On Aug 31, 2026, at 3:19 PM, Laurence Lundblade <lgl@island-resort.com> wrote:
> 
> Joe, I don’t quite get what you are after here yet. Which sections are inadequate?
> 
> I am thinking of adding this text to the decoder requirements for both preferred-plus and deterministic:
> 
> The above requirements are what the decoder MUST accept. A decoder complying to these requirements can also accept other well-formed serializations if it is being liberal in what it accepts. If a decoder chooses to accept only these requirements, then it is a “checking decoder” as described in appendix H.
> 
> I don’t think any CBOR library should default to a checking decoder. It should be a mode that is selectable when and end-end protocol specifies it, or a particular deployment wants it.
> 
> It’s never an input validation security issue. Non-checking decoders must do bullet-proof input validation.
> 
> LL
> 
>> On Aug 18, 2026, at 12:05 PM, Joe Hildebrand <hildjj@cursive.net> wrote:
>> 
>> - (most important) Make it clear in each section whether the rules apply to encoders or decoders.
>> - Make it clear that it is up to the protocol designer what to do when decoding inputs that are not in the expected encoding. This is good for protocols where encoding errors (attacks?) might have security consequences.  A couple of examples or criteria could help protocol designers decide.  There is some text in appendix H but it isn't directive enough.
>> - Make a note that even if the protocol designer did not specify that checking should be done, it may make sense to check on inputs on non-constrained devices to increase the likelihood of finding encoding errors before crashing constrained devices.
> 
>