Skip to content

Identificadors de Contingut (CID)

L'empremta digital única que rep cada fitxer IPFS.

Què és un CID?

Un Identificador de Contingut (CID) és una etiqueta auto-descriptiva que identifica de manera única una peça de dades a IPFS. Es deriva del hash criptogràfic del contingut del fitxer, combinat amb metadata sobre l'algorisme de hash i el format de codificació utilitzats.

bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi

Els CID que comencen amb bafy (o bafk per a contingut petit d'un sol bloc) utilitzen CIDv1, el format modern auto-descriptiu. Els CID heretats que comencen amb Qm utilitzen CIDv0 (SHA-256 codificat en base58) — encara vàlids, encara resolubles, però ja no són la sortida per defecte per a contingut nou.

Propietats clau

  • Determinista — El mateix fitxer sempre produeix el mateix CID. Pugeu la mateixa imatge dues vegades i obtindreu el mateix identificador.
  • Únic — Fins i tot un canvi d'un byte produeix un CID completament diferent. Això fa que els CID siguin detectables davant de manipulacions.
  • Auto-verificable — Qualsevol que rebi un fitxer pot recalcular el hash i confirmar que coincideix amb el CID que va sol·licitar.
  • Immutable — Un CID sempre apunta al mateix contingut. No podeu canviar allò a què resol un CID.

CID a IPFS.NINJA

Cada fitxer que pugeu retorna un CID en la resposta de l'API. Utilitzeu-lo per:

  • Accedir al fitxer via gateway: ipfs.ninja/ipfs/<CID>
  • Obtenir metadata del fitxer: GET /file/<CID>
  • Referenciar contingut on-chain (NFT, smart contracts)
  • Compartir amb qualsevol — poden verificar que el contingut coincideix

CIDv0 vs CIDv1

PropietatCIDv0CIDv1
PrefixQm...bafy... (dag-pb, directoris i fitxers multi-bloc), bafk... (raw, contingut petit d'un sol bloc), més d'altres segons el còdec
Funció hashNomés SHA-256Múltiples (SHA-256, Blake2b, etc.)
CodificacióBase58 (majúscules i minúscules barrejades)Multibase — base32 per defecte (minúscules, segura per a DNS)
Auto-descriptiuNoSí (inclou informació de còdec + hash)
Fragmentador (chunker)256 KiB per defecte heretat1 MiB segons IPIP-0499
Codificació de fullesEmbolcallat en dag-pbBytes en cru (raw-leaves=true)

Què emet IPFS.NINJA

Les pujades i fixacions fetes després del 13-07-2026 retornen CIDv1 per defecte: codificació CIDv1 en base32, blocs d'1 MiB, fulles en cru — el perfil IPIP-0499 unixfs-v1-2025. Implicacions pràctiques:

  • Els fitxers petits (≤ 1 MiB) tornen com a bafk... (CIDv1 raw d'un sol bloc)
  • Els fitxers i directoris més grans tornen com a bafy... (CIDv1 dag-pb)
  • Un fitxer pujat a través nostre obté el mateix CID que qualsevol eina moderna (Helia, la darrera versió de Kubo, ipfs-car) calcularia a partir dels mateixos bytes

Compatibilitat amb versions anteriors

Els CID Qm... heretats de pujades anteriors continuen sent completament resolubles — el gateway, POST /pin, GET /file/:cid, els resoledors IPNS, i tots els altres endpoints accepten ambdós formats indefinidament. Si teniu un CID Qm... d'una pujada anterior, res del que heu construït deixa de funcionar.