[dispatch] Finding a home for Multibase and Multihash

Manu Sporny <msporny@digitalbazaar.com> Thu, 11 August 2022 21:40 UTC

Return-Path: <msporny@digitalbazaar.com>
X-Original-To: dispatch@ietfa.amsl.com
Delivered-To: dispatch@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A63C0C13CCC6 for <dispatch@ietfa.amsl.com>; Thu, 11 Aug 2022 14:40:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.106
X-Spam-Level:
X-Spam-Status: No, score=-2.106 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_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=digitalbazaar.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id h_w0NKsxO1g1 for <dispatch@ietfa.amsl.com>; Thu, 11 Aug 2022 14:40:12 -0700 (PDT)
Received: from mail-vk1-xa29.google.com (mail-vk1-xa29.google.com [IPv6:2607:f8b0:4864:20::a29]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 547B2C13CCCA for <dispatch@ietf.org>; Thu, 11 Aug 2022 14:40:12 -0700 (PDT)
Received: by mail-vk1-xa29.google.com with SMTP id w129so9590846vkg.10 for <dispatch@ietf.org>; Thu, 11 Aug 2022 14:40:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=digitalbazaar.com; s=google; h=to:subject:message-id:date:from:mime-version:from:to:cc; bh=U6lZMZHoBQGIF9tlJ2j+2gUFhmuDdFFwtfR54M8sNAE=; b=LudBQbArMX6Ea9ZInVOFuCeQpPWq7PQCTcfvdvb5kKGsIw+1SDosEwp38vRm5CSvJc 5XyiajLDLqHIfeyxjUVEXI1HE8pN4otUq0zlrOZG4Qs+wxUvP27xHj+t8n4nKE3u9Q5d 043CNZukUjVPILgPO5mv6xuUAmtXfJ5uOjVy2K0KtZFS+igeii+XsGbAxBPq+ZHwDEST gbGm5hQG9b6I/PzOqdiU6wDISsYL11QG05QqEeBlG52nNT8ecaWX3Nql6Fx5yASeEquY KNagPbqCEIleyMkykHdOf8Ac7jFR5v9SSUpBSFKG9ep0yZEPSTsWtcm64iMvHMJ0qGLa 6l8A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc; bh=U6lZMZHoBQGIF9tlJ2j+2gUFhmuDdFFwtfR54M8sNAE=; b=YmLSV1qEl5JHbAeLSUj23WM49BPbj2Sxy74RWcW/7QTOilrr26rJmR14sElI8m5eh9 oPDlcmaiXEzL7vYkE03BXptf3Cxi+nfYGqTBeLXfJFGfKl9444d6+3pfxFZo8pZ2bzLR JO7y9hsKn672/HPlV7yvbN/aopIFkKAn1DMKYEbpDXAEmhsy9/Chwhmul/a83QVCjwZ+ 5uAXremt8dCgBLsNKvXfmQn4TPIpjYDayVitohuVzcd1buH5rkeYSh7AxB7rOXS7Vebu SzP/fE16hZ+4UtBA5euXSJnLlIf2CqTF+uCORvkFhOCr31kqFD0D7XRPw8dTySaIZMbK UQGg==
X-Gm-Message-State: ACgBeo2WXqEXmXtqLqRqhkhWKWqy4xAnhbMJh+Dn5YOhYOubmnjVw2xG IiZKO5CvrAveI19wLrBxx1EcIiu3HW7E646cRlOGqeBZuCaMc691
X-Google-Smtp-Source: AA6agR7sKHgUh4RHMiMt53sJbTce+MdCTNPkxI2LnqLCCgiSGzUfhGh+w2px7NJTf86RYM09Jb7LX0FQXPAFl+EdpLc=
X-Received: by 2002:a1f:a856:0:b0:376:c61f:2f1e with SMTP id r83-20020a1fa856000000b00376c61f2f1emr612164vke.35.1660254010860; Thu, 11 Aug 2022 14:40:10 -0700 (PDT)
MIME-Version: 1.0
From: Manu Sporny <msporny@digitalbazaar.com>
Date: Thu, 11 Aug 2022 17:39:35 -0400
Message-ID: <CAMBN2CT8=V5diio=UwJO-rFiGPO1v3n7gp6_e4s7kENSBMLUmg@mail.gmail.com>
To: dispatch@ietf.org
Content-Type: text/plain; charset="UTF-8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dispatch/Q9aUoF01Upbvl7STjJvjoU8hlHM>
Subject: [dispatch] Finding a home for Multibase and Multihash
X-BeenThere: dispatch@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: DISPATCH Working Group Mail List <dispatch.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dispatch>, <mailto:dispatch-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dispatch/>
List-Post: <mailto:dispatch@ietf.org>
List-Help: <mailto:dispatch-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dispatch>, <mailto:dispatch-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Aug 2022 21:40:16 -0000

Dearest Majestys of Dispatching Things at IETF,

We would like to work towards publishing a few of the "Multiformats"
specifications as IETF RFCs. The Multiformats Project[1] describes a
collection of byte headers that are prepended to data values. These
headers aim to future-proof data values in a representation-agnostic
manner such that they can be used across a variety of data formats
such as JSON, CBOR, and YAML. The approach is used in systems such as
IPFS[2], W3C Decentralized Identifiers[3], the Data Integrity[4]
pre-standard (at W3C), and W3C Verifiable Credentials[5]. Multiformats
enable interoperability and agility at the data format layer.

To more narrowly focus on two classes of Multiformats, we'd like to
find a home for Multibase[6] and Multihash[7], to start.

The Multibase[6] specification prepends an ASCII byte to a
base-encoded value such that a processor can look at the first byte to
determine the base encoding of the rest of the string.

The Multihash[7] specification prepends a variable-length integer
which expresses a particular type of cryptographic hash (e.g., SHA-2,
256-bit value), to a cryptographic hash value such that a processor
can look at the header to determine what the value bytes represent.

Multibase and Multihash can be combined to provide multibase-encoded
multihash values.

The Multibase data format is used by:

* IPFS[2] to encode data values used by protocols on the network,
* W3C Decentralized Identifier[3] Methods to base-encode binary
identifiers and cryptographic public key values,
* W3C Verifiable Credentials[5] to base-encode cryptographic signature values,
* The `proofValue` Data Integrity[4] pre-standard (at W3C),
* The `proofValue` in the 2020 Ed25519 Cryptosuite[10] pre-standard (at W3C),
* The `proofValue` in the 2019 ECDSA Cryptosuite[11] pre-standard (at W3C).

The Multihash data format is used by:

* IPFS[2] to identify content on the network,
* An addition to W3C Verifiable Credentials for referencing external
content by hash.
* The Cryptographic Hyperlinks I-D[12] to provide content integrity
protection for URLs.

There exist 14 implementations[13] for Multibase, and 18
implementations for Multihash[14].

Which places at IETF would be appropriate homes for these two
specifications, noting that we will most likely want to standardize
other Multiformats specifications at IETF in the future?

-- manu (Digital Bazaar), bengo (Protocol Labs), and aaron (Project Bluesky)

[1]: https://multiformats.io/
[2]: https://ipfs.io/
[3]: https://www.w3.org/TR/did-core/
[4]: https://w3c.github.io/vc-data-integrity/
[5]: https://www.w3.org/TR/vc-data-model/
[6]: https://datatracker.ietf.org/doc/html/draft-multiformats-multihash-04
[7]: https://datatracker.ietf.org/doc/html/draft-multiformats-multibase-05
[8]: https://w3c-ccg.github.io/data-integrity-spec/
[9]: https://w3c.github.io/vc-wg-charter/
[10]: https://w3c-ccg.github.io/di-eddsa-2020/
[11]: https://w3c-ccg.github.io/di-ecdsa-secpr1-2019/
[12]: https://datatracker.ietf.org/doc/html/draft-sporny-hashlink-07
[13]: https://github.com/multiformats/multibase#implementations
[14]: https://multiformats.io/multihash/#implementations

-- 
Manu Sporny - https://www.linkedin.com/in/manusporny/
Founder/CEO - Digital Bazaar, Inc.
News: Digital Bazaar Announces New Case Studies (2021)
https://www.digitalbazaar.com/