> For the complete documentation index, see [llms.txt](https://definomicslabs.gitbook.io/papers/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://definomicslabs.gitbook.io/papers/filecoin/lecciones/direccionamiento-de-contenido-or-5-lecciones/hashing-criptografico-e-identificadores-de-contenido-cids-or-leccion-4-de-5.md).

# Hashing criptográfico e Identificadores de Contenido (CIDs) | Lección 4 de 5

## Hashing criptográfico e Identificadores de Contenido (CIDs)

Hasta ahora hemos estado discutiendo exclusivamente imágenes adorables por el bien de nuestra alegría general, pero el direccionamiento de contenido se puede utilizar en todos los tipos diferentes de archivos y datos, desde objetos JSON, documentos  hasta videos. Para que el hashing criptográfico funcione, necesitamos saber con qué formato de datos estamos trabajando y usar una herramienta apropiada.

### Descodificando estructuras de datos

Un CID ([Identificador de Contenido](https://docs.ipfs.tech/concepts/content-addressing/)) es una forma particular de direccionamiento de contenido utilizada en la web descentralizada. Fue desarrollado para [IPFS](https://ipfs.tech/) (un protocolo de la web descentralizada del que hablaremos en lecciones posteriores), pero tiene implicaciones muy amplias.

Un CID es un identificador único que contiene tanto un **hash criptográfico** como un **códec**, que mantiene información sobre cómo interpretar esos datos. Los códecs codifican y decodifican datos en ciertos formatos.

<figure><img src="/files/iqOpjnU6CXZPPMThO2QQ" alt=""><figcaption></figcaption></figure>

Muchos formatos y protocolos ya utilizan el direccionamiento de contenido. Herramientas como Git y protocolos como Ethereum y Bitcoin están entre ellos, pero difieren en cómo interpretar los datos y en qué función criptográfica usan para el hashing. CID nos permite crear un identificador universal para cualquiera de estos sistemas.

Cada CID es un identificador que contiene el [códec](https://github.com/multiformats/multicodec) para interpretar los datos y un [multihash](https://github.com/multiformats/multihash), que es un hash auto-descriptivo (un hash que te dice qué tipo de función de hashing se utilizó para crearlo).

<figure><img src="/files/u3gl78V7qjj6oxlHWre8" alt=""><figcaption></figcaption></figure>

Para obtener mucha más información sobre cómo se construyen los CIDs en IPFS, consulta nuestro lección de **Anatomía de un CID.**
