Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 10 additions & 27 deletions ERCS/erc-8326.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ title: Canonical Document Bundle Anchor
description: A deterministic document-entry bundle hash and subject-scoped anchoring interface with supersession history
author: Chris Turner <c.turner@kula.com>, David Hay (@david-hay), Reagan Simpson (@krumg111), Collins Musyimi (@Musyimi97)
discussions-to: https://ethereum-magicians.org/t/erc-8326-canonical-document-bundle-anchor/28935
status: Review
status: Last Call
last-call-deadline: 2026-10-19
type: Standards Track
category: ERC
created: 2026-07-05
Expand All @@ -13,8 +14,9 @@ requires: 165

## Abstract

This ERC defines a deterministic manifest and anchoring interface for
commitments to bundles of off-chain documents. Each document is represented by
This Ethereum Request for Comments (ERC) defines a deterministic manifest and
anchoring interface for commitments to bundles of off-chain documents. Each
document is represented by
a fixed-width entry containing a content hash, document role, media-type hash,
filename hash, and normalization-profile identifier. Entries are placed in a
total order and hashed under a schema-version prefix to produce one `bytes32`
Expand Down Expand Up @@ -245,6 +247,8 @@ total order.
### Anchor Interface

```solidity
pragma solidity ^0.8.20;

interface IDocumentBundleAnchor {
struct AnchorRecord {
bytes32 bundleHash;
Expand Down Expand Up @@ -384,6 +388,8 @@ Administrative slot recovery is OPTIONAL. A registry that supports principal
reassignment MUST implement:

```solidity
pragma solidity ^0.8.20;

interface IDocumentBundleAnchorRecovery {
event SlotPrincipalAssigned(
bytes32 indexed subjectId,
Expand Down Expand Up @@ -527,13 +533,6 @@ those files.

### Prior Art

The Document Management proposal numbered 1643 defines document references for security tokens. It stores individual
named documents rather than a deterministic, schema-versioned bundle manifest.

[ERC-5289](./eip-5289.md) defines document signing and verification. This ERC
defines deterministic bundle commitments and supersession rather than a signing
workflow.

[ERC-5732](./eip-5732.md) defines a generic commit-reveal mechanism. It can be
used as a privacy layer around publication but does not define document entries
or bundle hashing.
Expand All @@ -548,22 +547,6 @@ redemption flow but does not define deterministic bundle manifesting.
flow. It can retrieve material referenced by an anchor but does not determine
how a document bundle commitment is derived.

The Ethereum Attestation Service provides generic schema-based attestations.
Such attestations can reference a bundle hash, but they do not define this
manifest or supersession model.

[RFC 8785](https://www.rfc-editor.org/rfc/rfc8785) defines deterministic JSON
serialization and is used directly by `PROFILE_JSON_RFC8785`.

[Canonical XML 1.1](https://www.w3.org/TR/2008/REC-xml-c14n11-20080502/)
defines deterministic XML serialization and is used directly by
`PROFILE_XML_C14N11`.

W3C Verifiable Credential Data Integrity defines proof transformation,
canonicalization, hashing, and verification pipelines for verifiable
credentials. This ERC applies a document-entry manifest and Ethereum anchoring
interface to arbitrary document commitments rather than credential proofs.

## Backwards Compatibility

This ERC introduces new interfaces and does not change existing token or
Expand Down Expand Up @@ -717,7 +700,7 @@ profile and reproduce the exact transformation.
### Canonicalization Boundary

The Solidity hashing library receives document-entry fields and does not parse
or canonicalize JSON, XML, PDF, images, filenames, or MIME types. A caller can
or canonicalize JSON, XML, PDF, images, filenames, or media types. A caller can
submit a hash while falsely claiming that a profile was followed. Consumers
must reproduce normalization and entry derivation off-chain.

Expand Down
Loading