Skip to content

コンテンツ識別子 (CID)

すべての IPFS ファイルが受け取る固有のフィンガープリント。

CID とは?

コンテンツ識別子 (CID) は、IPFS 上のデータを一意に識別する自己記述型のラベルです。ファイルの内容の暗号学的ハッシュと、使用されたハッシュアルゴリズムおよびエンコーディング形式のメタデータを組み合わせて導出されます。

QmXk7VRz4qoG5Dg8sFL4bYWHpKe4F

Qm で始まる CID は CIDv0(base58 エンコードの SHA-256)を使用しています。新しい CIDv1 識別子は bafy で始まり、複数のハッシュ関数とエンコーディングをサポートしています。

主要な特性

  • 決定性 — 同じファイルは常に同じ CID を生成します。同じ画像を2回アップロードしても、同じ識別子が得られます。
  • 一意性 — 1バイトの変更でもまったく異なる CID が生成されます。これにより CID は改ざん検出可能になります。
  • 自己検証 — ファイルを受け取った人は誰でもハッシュを再計算し、要求した CID と一致することを確認できます。
  • 不変性 — CID は常に同じコンテンツを指します。CID が解決する先を変更することはできません。

IPFS.NINJA での CID

アップロードしたすべてのファイルは API レスポンスで CID が返されます。以下に使用できます:

  • ゲートウェイ経由でファイルにアクセス:ipfs.ninja/ipfs/<CID>
  • ファイルメタデータを取得:GET /file/<CID>
  • オンチェーンでコンテンツを参照(NFT、スマートコントラクト)
  • 誰とでも共有 — コンテンツが一致するか検証可能

CIDv0 と CIDv1

特性CIDv0CIDv1
プレフィックスQm...bafy...
ハッシュ関数SHA-256 のみ複数(SHA-256、Blake2b など)
エンコーディングBase58Multibase(base32、base58 など)
自己記述型いいえはい(コーデック + ハッシュ情報を含む)