You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<linkrel="stylesheet" href="spec.css"><linkrel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 100 100%22><rect x=%220%22 y=%220%22 width=%22100%22 height=%22100%22 fill=%22%2300ff75%22></rect></svg>"><metaname="twitter:card" content="summary_large_image"><metaname="twitter:title" property="og:title" content="DASL: Big DASL (BDASL)"><metaname="twitter:description" property="og:description" content="BDASL extends DASL CIDs with a new hash type that works better for large files but isn't available by default in browsers, and therefore not an appropriate option in most situations."><metaname="twitter:image" property="og:image" content="https://dasl.ing/bdasl.png"><metaname="twitter:image:alt" content="Very colourful stripes, so colourful it hurts"><metaname="twitter:url" property="og:url" content="https://dasl.ing/"><metaproperty="og:site_name" content="DASL"><metaproperty="og:locale" content="en"><metaname="theme-color" content="#00ff75"></head>
22
-
<body><divclass="nav-back">A specification of the <ahref="/">DASL Project</a>.</div><main><header><h1>Big DASL (BDASL)</h1><table><tbody><tr><th>date</th><td>2025-09-29</td></tr><tr><th>editors</th><td><ahref="https://berjon.com/">Robin Berjon</a> <<ahref="mailto:[email protected]">[email protected]</a>><br><ahref="https://bumblefudge.com/">Juan Caballero</a> <<ahref="mailto:[email protected]">[email protected]</a>></td></tr><tr><th>issues</th><td><ahref="https://github.com/darobin/dasl.ing/issues">list</a>, <ahref="https://github.com/darobin/dasl.ing/issues/new">new</a></td></tr><tr><th>abstract</th><td><divid="abstract">
22
+
<body><divclass="nav-back">A specification of the <ahref="/">DASL Project</a>.</div><main><header><h1>Big DASL (BDASL)</h1><table><tbody><tr><th>date</th><td>2025-10-02</td></tr><tr><th>editors</th><td><ahref="https://berjon.com/">Robin Berjon</a> <<ahref="mailto:[email protected]">[email protected]</a>><br><ahref="https://bumblefudge.com/">Juan Caballero</a> <<ahref="mailto:[email protected]">[email protected]</a>></td></tr><tr><th>issues</th><td><ahref="https://github.com/darobin/dasl.ing/issues">list</a>, <ahref="https://github.com/darobin/dasl.ing/issues/new">new</a></td></tr><tr><th>abstract</th><td><divid="abstract">
23
23
<p>
24
24
BDASL extends DASL CIDs with a new hash type that works better for large files but isn't
25
25
available by default in browsers, and therefore not an appropriate option in most
@@ -53,4 +53,4 @@ <h2>Parsing BDASL CIDs</h2>
53
53
</section>
54
54
55
55
56
-
<section><h2>References</h2><dl><dtid="ref-blake3">[blake3]</dt><dd>J-P. Aumasson, S. Neves, J. O'Connor, Z. Wilcox. <ahref="https://www.ietf.org/archive/id/draft-aumasson-blake3-00.html"><cite>The BLAKE3 Hashing Framework</cite></a>. July 2024. URL: <ahref="https://www.ietf.org/archive/id/draft-aumasson-blake3-00.html">https://www.ietf.org/archive/id/draft-aumasson-blake3-00.html</a></dd><dtid="ref-cid">[cid]</dt><dd>Robin Berjon & Juan Caballero. <ahref="https://dasl.ing/cid.html"><cite>Content IDs (CIDs)</cite></a>. 2025-09-29. URL: <ahref="https://dasl.ing/cid.html">https://dasl.ing/cid.html</a></dd></dl></section></main></body></html>
56
+
<section><h2>References</h2><dl><dtid="ref-blake3">[blake3]</dt><dd>J-P. Aumasson, S. Neves, J. O'Connor, Z. Wilcox. <ahref="https://www.ietf.org/archive/id/draft-aumasson-blake3-00.html"><cite>The BLAKE3 Hashing Framework</cite></a>. July 2024. URL: <ahref="https://www.ietf.org/archive/id/draft-aumasson-blake3-00.html">https://www.ietf.org/archive/id/draft-aumasson-blake3-00.html</a></dd><dtid="ref-cid">[cid]</dt><dd>Robin Berjon & Juan Caballero. <ahref="https://dasl.ing/cid.html"><cite>Content IDs (CIDs)</cite></a>. 2025-10-02. URL: <ahref="https://dasl.ing/cid.html">https://dasl.ing/cid.html</a></dd></dl></section></main></body></html>
<linkrel="stylesheet" href="spec.css"><linkrel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 100 100%22><rect x=%220%22 y=%220%22 width=%22100%22 height=%22100%22 fill=%22%2300ff75%22></rect></svg>"><metaname="twitter:card" content="summary_large_image"><metaname="twitter:title" property="og:title" content="DASL: Content-Addressable aRchives (CAR)"><metaname="twitter:description" property="og:description" content="The CAR format offers a serialized representation of set of content-addressed resources in one single concatenated stream, alongside a header that describes that content."><metaname="twitter:image" property="og:image" content="https://dasl.ing/car.png"><metaname="twitter:image:alt" content="Very colourful stripes, so colourful it hurts"><metaname="twitter:url" property="og:url" content="https://dasl.ing/"><metaproperty="og:site_name" content="DASL"><metaproperty="og:locale" content="en"><metaname="theme-color" content="#00ff75"></head>
22
-
<body><divclass="nav-back">A specification of the <ahref="/">DASL Project</a>.</div><main><header><h1>Content-Addressable aRchives (CAR)</h1><table><tbody><tr><th>date</th><td>2025-09-29</td></tr><tr><th>editors</th><td><ahref="https://berjon.com/">Robin Berjon</a> <<ahref="mailto:[email protected]">[email protected]</a>><br><ahref="https://bumblefudge.com/">Juan Caballero</a> <<ahref="mailto:[email protected]">[email protected]</a>></td></tr><tr><th>issues</th><td><ahref="https://github.com/darobin/dasl.ing/issues">list</a>, <ahref="https://github.com/darobin/dasl.ing/issues/new">new</a></td></tr><tr><th>abstract</th><td><divid="abstract">
22
+
<body><divclass="nav-back">A specification of the <ahref="/">DASL Project</a>.</div><main><header><h1>Content-Addressable aRchives (CAR)</h1><table><tbody><tr><th>date</th><td>2025-10-02</td></tr><tr><th>editors</th><td><ahref="https://berjon.com/">Robin Berjon</a> <<ahref="mailto:[email protected]">[email protected]</a>><br><ahref="https://bumblefudge.com/">Juan Caballero</a> <<ahref="mailto:[email protected]">[email protected]</a>></td></tr><tr><th>issues</th><td><ahref="https://github.com/darobin/dasl.ing/issues">list</a>, <ahref="https://github.com/darobin/dasl.ing/issues/new">new</a></td></tr><tr><th>abstract</th><td><divid="abstract">
23
23
<p>
24
24
The CAR format offers a serialized representation of set of content-addressed
25
25
resources in one single concatenated stream, alongside a header that describes
@@ -238,4 +238,4 @@ <h2>Appendix: Media Type</h2>
238
238
</section>
239
239
240
240
241
-
<section><h2>References</h2><dl><dtid="ref-cid">[cid]</dt><dd>Robin Berjon & Juan Caballero. <ahref="https://dasl.ing/cid.html"><cite>Content IDs (CIDs)</cite></a>. 2025-09-29. URL: <ahref="https://dasl.ing/cid.html">https://dasl.ing/cid.html</a></dd><dtid="ref-drisl">[drisl]</dt><dd>Robin Berjon & Juan Caballero. <ahref="https://dasl.ing/drisl.html"><cite>DRISL — Deterministic Representation for Interoperable Structures & Links</cite></a>. 2025-09-29. URL: <ahref="https://dasl.ing/drisl.html">https://dasl.ing/drisl.html</a></dd><dtid="ref-masl">[masl]</dt><dd>Robin Berjon & Juan Caballero. <ahref="https://dasl.ing/masl.html"><cite>MASL — Metadata for Arbitrary Structures & Links</cite></a>. 2025-09-29. URL: <ahref="https://dasl.ing/masl.html">https://dasl.ing/masl.html</a></dd><dtid="ref-varint">[varint]</dt><dd><ahref="https://github.com/multiformats/unsigned-varint"><cite>unsigned varint</cite></a>. URL: <ahref="https://github.com/multiformats/unsigned-varint">https://github.com/multiformats/unsigned-varint</a></dd></dl></section></main></body></html>
241
+
<section><h2>References</h2><dl><dtid="ref-cid">[cid]</dt><dd>Robin Berjon & Juan Caballero. <ahref="https://dasl.ing/cid.html"><cite>Content IDs (CIDs)</cite></a>. 2025-10-02. URL: <ahref="https://dasl.ing/cid.html">https://dasl.ing/cid.html</a></dd><dtid="ref-drisl">[drisl]</dt><dd>Robin Berjon & Juan Caballero. <ahref="https://dasl.ing/drisl.html"><cite>DRISL — Deterministic Representation for Interoperable Structures & Links</cite></a>. 2025-10-02. URL: <ahref="https://dasl.ing/drisl.html">https://dasl.ing/drisl.html</a></dd><dtid="ref-masl">[masl]</dt><dd>Robin Berjon & Juan Caballero. <ahref="https://dasl.ing/masl.html"><cite>MASL — Metadata for Arbitrary Structures & Links</cite></a>. 2025-10-02. URL: <ahref="https://dasl.ing/masl.html">https://dasl.ing/masl.html</a></dd><dtid="ref-varint">[varint]</dt><dd><ahref="https://github.com/multiformats/unsigned-varint"><cite>unsigned varint</cite></a>. URL: <ahref="https://github.com/multiformats/unsigned-varint">https://github.com/multiformats/unsigned-varint</a></dd></dl></section></main></body></html>
<linkrel="stylesheet" href="spec.css"><linkrel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 100 100%22><rect x=%220%22 y=%220%22 width=%22100%22 height=%22100%22 fill=%22%2300ff75%22></rect></svg>"><metaname="twitter:card" content="summary_large_image"><metaname="twitter:title" property="og:title" content="DASL: Content IDs (CIDs)"><metaname="twitter:description" property="og:description" content="DASL CIDs are a simple structured identifier format for content addressing. They encapsulate a hash with enough metadata to be extensible (to add new hash types in the future) and to indicate whether they are pointing to raw bytes or to structured data."><metaname="twitter:image" property="og:image" content="https://dasl.ing/cid.png"><metaname="twitter:image:alt" content="Very colourful stripes, so colourful it hurts"><metaname="twitter:url" property="og:url" content="https://dasl.ing/"><metaproperty="og:site_name" content="DASL"><metaproperty="og:locale" content="en"><metaname="theme-color" content="#00ff75"></head>
22
-
<body><divclass="nav-back">A specification of the <ahref="/">DASL Project</a>.</div><main><header><h1>Content IDs (CIDs)</h1><table><tbody><tr><th>date</th><td>2025-09-29</td></tr><tr><th>editors</th><td><ahref="https://berjon.com/">Robin Berjon</a> <<ahref="mailto:[email protected]">[email protected]</a>><br><ahref="https://bumblefudge.com/">Juan Caballero</a> <<ahref="mailto:[email protected]">[email protected]</a>></td></tr><tr><th>issues</th><td><ahref="https://github.com/darobin/dasl.ing/issues">list</a>, <ahref="https://github.com/darobin/dasl.ing/issues/new">new</a></td></tr><tr><th>abstract</th><td><divid="abstract">
22
+
<body><divclass="nav-back">A specification of the <ahref="/">DASL Project</a>.</div><main><header><h1>Content IDs (CIDs)</h1><table><tbody><tr><th>date</th><td>2025-10-02</td></tr><tr><th>editors</th><td><ahref="https://berjon.com/">Robin Berjon</a> <<ahref="mailto:[email protected]">[email protected]</a>><br><ahref="https://bumblefudge.com/">Juan Caballero</a> <<ahref="mailto:[email protected]">[email protected]</a>></td></tr><tr><th>issues</th><td><ahref="https://github.com/darobin/dasl.ing/issues">list</a>, <ahref="https://github.com/darobin/dasl.ing/issues/new">new</a></td></tr><tr><th>abstract</th><td><divid="abstract">
23
23
<p>
24
24
DASL CIDs are a simple structured identifier format for content addressing. They encapsulate a hash
25
25
with enough metadata to be extensible (to add new hash types in the future) and to indicate whether
@@ -65,7 +65,7 @@ <h2>Introduction</h2>
65
65
<section>
66
66
<h2>Parsing CIDs</h2>
67
67
<p>
68
-
Use the following steps to <dfnid="dfn-parse-a-cid-string">parse a CID string</dfn>:
68
+
Use the following steps to <dfnid="dfn-parse-a-string-encoded-cid">parse a string-encoded CID</dfn>, i.e. translate it to a bytestring:
69
69
</p>
70
70
<ol>
71
71
<li>Accept a string <var>CID</var>.</li>
@@ -76,22 +76,7 @@ <h2>Parsing CIDs</h2>
76
76
<ahref="https://datatracker.ietf.org/doc/html/rfc4648#section-6">the base32 algorithm from
77
77
RFC4648</a> with a lowercase alphabet and store the result in <var>CID bytes</var> ([<ahref="#ref-rfc4648" class="ref">rfc4648</a>]).
78
78
</li>
79
-
<li>Return the result of applying the steps to <ahref="#dfn-decode-a-cid" class="dfn-ref">decode a CID</a> to <var>CID bytes</var>.</li>
80
-
</ol>
81
-
<p>
82
-
Use the following steps to <dfnid="dfn-parse-a-binary-cid">parse a binary CID</dfn>:
83
-
</p>
84
-
<ol>
85
-
<li>Accept an array of bytes <var>binary CID</var>.</li>
86
-
<li>
87
-
Remove the first byte in <var>binary CID</var> and store it in <var>prefix</var>.
88
-
</li>
89
-
<li>
90
-
If <var>prefix</var> is not equal to <code>0</code> (a null byte, the binary base256
91
-
prefix), throw an error.
92
-
</li>
93
-
<li>Store the rest of <var>binary CID</var> in <var>CID bytes</var>.</li>
94
-
<li>Return the result of applying the steps to <ahref="#dfn-decode-a-cid" class="dfn-ref">decode a CID</a> to <var>CID bytes</var>.</li>
79
+
<li>This results in <var>CID bytes</var>, which can be used to <ahref="#dfn-decode-a-cid" class="dfn-ref">decode a CID</a>.</li>
95
80
</ol>
96
81
<p>
97
82
Use the following steps to <dfnid="dfn-decode-a-cid">decode a CID</dfn>:
@@ -165,4 +150,4 @@ <h2>Relationship to IPFS</h2>
165
150
</section>
166
151
167
152
168
-
<section><h2>References</h2><dl><dtid="ref-drisl">[drisl]</dt><dd>Robin Berjon & Juan Caballero. <ahref="https://dasl.ing/drisl.html"><cite>DRISL — Deterministic Representation for Interoperable Structures & Links</cite></a>. 2025-09-29. URL: <ahref="https://dasl.ing/drisl.html">https://dasl.ing/drisl.html</a></dd><dtid="ref-rfc4648">[rfc4648]</dt><dd>S. Josefsson. <ahref="https://www.rfc-editor.org/rfc/rfc4648"><cite>The Base16, Base32, and Base64 Data Encodings</cite></a>. October 2006. URL: <ahref="https://www.rfc-editor.org/rfc/rfc4648">https://www.rfc-editor.org/rfc/rfc4648</a></dd><dtid="ref-sha256">[sha256]</dt><dd>National Institute of Standards and Technology, <cite>Secure Hash Algorithm. NIST FIPS 180-2</cite>. August 2002.</dd></dl></section></main></body></html>
153
+
<section><h2>References</h2><dl><dtid="ref-drisl">[drisl]</dt><dd>Robin Berjon & Juan Caballero. <ahref="https://dasl.ing/drisl.html"><cite>DRISL — Deterministic Representation for Interoperable Structures & Links</cite></a>. 2025-10-02. URL: <ahref="https://dasl.ing/drisl.html">https://dasl.ing/drisl.html</a></dd><dtid="ref-rfc4648">[rfc4648]</dt><dd>S. Josefsson. <ahref="https://www.rfc-editor.org/rfc/rfc4648"><cite>The Base16, Base32, and Base64 Data Encodings</cite></a>. October 2006. URL: <ahref="https://www.rfc-editor.org/rfc/rfc4648">https://www.rfc-editor.org/rfc/rfc4648</a></dd><dtid="ref-sha256">[sha256]</dt><dd>National Institute of Standards and Technology, <cite>Secure Hash Algorithm. NIST FIPS 180-2</cite>. August 2002.</dd></dl></section></main></body></html>
0 commit comments