HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
multiformats
cid
Learning & Reference2017–2023
multiformats / cid · Archived

cid

This repository is outdated and kept for historical reference. The maintained CID specification used by IPFS now lives at https://specs.ipfs.tech/cid/

7Distinct people
7Mentions
0Explicit recommenders
484GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

This repository is outdated and kept for historical reference. The maintained CID specification used by IPFS now lives at https://specs.ipfs.tech/cid/

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year7 dated mentions

Observed mentions: 2017-01-19 23:06:04 UTC to 2023-03-06 01:55:05 UTC.

01232017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments20172018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2023

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC303
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC101
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC000
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC101
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC000
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC101
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC101

What Hacker News says

7 sources
Essentially it's a separation of concerns. The content "address" (i.e. how we specify the content that is desired) and the content "location" (i.e. the connections which serve the content associated with an "address") are distinct. An "address" is also self validating. Hash addressing, where a hash of the data is the address of the data, are use to accomplish this. This is useful in many contexts and an [extra few bits][1] on the the front allow an address to represent much much more. "location" is by default a distributed hash table enabling the fulling distributed routing of content and by uses [Kademlia][0]. But the software could easily be configured to with fixed values for the hash table mapping any "address" to the same location which happens to be a cloud provider. Could you elaborate on what you mean by "anyone who keeps their AP
Read the rest
I locked down is unlikely to adopt standard IPFS."? [1]: https://en.wikipedia.org/wiki/Kademlia [2]: https://github.com/multiformats/cid#how-does-it-work
In Filecoin: Proof of Storage Systems
The goals are laudable, and sometimes a backwards-looking implementation can get traction faster than a forward-looking one. But the reliance on Pods and URL location-based identifiers roots it firmly in the past. I think the future is the robust content addressable distributed web. Which could give developers the same flexibility, and users the same friendly experience, but with everything virtualized in a peer to peer mesh. I’d like to see the developer smoothness of Solid married to future-proof content identifiers like this: https://github.com/ipld/cid/blob/master/README.md
In Solid – Reshape the web as we know it
> Generally, and this is just my gut feeling, I think that for any hash code written to disk or stored in some way having an identifier for the hashing algorithm used is such a common bite you in the ass later thing that it makes sense to always just do it from day one. To that end it’s easier to do day one if everyone agrees to a standard set of numeric codes. Yes, that's the basic idea of all multiformats: "it's never gonna change" is considered harmful. > Unifying here might allow git objects to be served natively over IPFS. IPFS can already do that thanks to the CID format: https://github.com/ipld/cid There's no good examples for Git specifically yet, but there's a good bunch of working code for transporting e.g. Ethereum and Zcash transaction blobs over IPFS. For Git it's in principle the same: import the raw object into IPFS, and st
Read the rest
arts addressing it with /ipfs/<git-cid><original-git-hash>
In Git hash function transition plan
I want to ditch the Nar format as soon as possible. IPFS's unixfs format is too rich however. When will the IPFS people finish up https://github.com/ipld/cid so we can link whatever content addressable data we want? I'd use git tree objects, despite SHA-1, because it's widely supported. Or do a format identical tree objects but with the IPFS's multihash and SHA-1 banned. Point is, underlying protocol should be agnostic to hashing scheme, we should have a trait/type class like /// Node in try trait Payload { type Hash: HashingTrait; fn unpack(Payload) -> (Vec<u8>, Set<Hash>); fn pack(Vec<u8>, Set<Hash>) -> Payload; // Implement either and get the other for free! fn hash_packed(p: Payload) -> Hash { hash_unpacked(packed(p)) fn hash_unpacked(p: (Vec<u8>, Set<Hash>)) -> Hash { hash_packed(packed(p)) } } any `
Read the rest
(Hash, Payload)` than can define a `(binary blob, Set<Hash>) -> Hash` and Payload function should work.
In Distributing NixOS with IPFS

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.