暗号レイヤ

CID

Content Identifier — multiformats

コンテンツ自身から導出される自己記述的な識別子。multihash・multicodec・multibase の組み合わせで、ハッシュアルゴリズム・符号化形式・データ型を識別子に直接埋め込む。

定義

CID は IPFS / IPLD エコシステムを起点に multiformats プロジェクトで標準化された。CIDv0 は Qm... 形式 (base58btc + SHA-256 multihash) の単純形式、CIDv1 は multibase prefix + version + multicodec + multihash の柔軟構造。

自己記述性により、識別子から逆引きでハッシュアルゴリズム・データ形式が判明する。プロトコル進化 (SHA-256 → SHA-3、JSON → CBOR) に対して識別子のフォーマット側を変えずに移行できる。

内容アドレッシング (content-addressing) のため、同じバイト列は誰がアップロードしても必ず同じ CID になる。逆に CID が一致すれば内容は一致しているという強い保証が得られる。

Lemma Oracle での実装

Lemma は分散ストレージ上のオブジェクト (RAG 文書・来歴メタデータ・ライセンスファイル) を CID で参照する。docHash が内部ハッシュ表現であるのに対し、CID は外部互換のためのコンテンツ識別子。

プロヴナンス グラフの各ノードは CID で前段にリンクされる。来歴の永続性と検証可能性を、分散ストレージレベルでも担保する設計。

ZK 回路内では CID 文字列ではなく Poseidonハッシュ 化された短い値で扱う。外部識別子と内部識別子を分離することで、両方の利便性を取る。

始める

コンテンツに、内容由来の名前を。