IOTA Storage
IOTA Storage es una red de almacenamiento descentralizado de archivos grandes (blobs) construida sobre IOTA Rebased. La coordinan contratos Move en IOTA: registran y cobran los blobs, llevan la cuenta de los nodos de almacenamiento y de su stake, y certifican que cada blob está disponible. Los datos están en los nodos de almacenamiento, repartidos entre ellos con códigos de borrado. Encima de la red hay un aggregator y un publisher (HTTP), y Sites: sitios web estáticos guardados en la red y accesibles con IOTA Names.
IOTA Storage funciona solo en la testnet de IOTA: 4 nodos de almacenamiento operados por el proyecto, 100 shards, épocas de 1 día y precios de prueba. La red puede volver a desplegarse y los datos pueden perderse. Todo lo que se guarda en la red es público.
Por qué
IOTA Rebased tiene contratos inteligentes en Move y objetos, pero no una red donde guardar archivos grandes como imágenes, vídeos, conjuntos de datos o sitios web enteros. IOTA Storage añade esa capa, para que baste con una wallet de IOTA para guardar datos:
- Todo en IOTA. El almacenamiento se paga en IOTA y los nodos hacen stake en IOTA. No interviene ningún otro token ni ninguna otra cadena.
- Los blobs son tuyos. Cada blob guardado tiene un objeto
Bloben tu wallet. Lo renuevas, lo transfieres o lo borras con transacciones normales de IOTA. - Verificado en la cadena. Un blob se certifica en IOTA con la firma BLS agregada de nodos que suman un quórum de shards. El contrato comprueba la firma y el quórum.
- Resistente. Cualquier blob se reconstruye con más o menos un tercio de los shards, así que los datos aguantan aunque se caigan nodos de almacenamiento.
- Una tesorería del proyecto. Una parte de lo que se paga por el almacenamiento va a una tesorería del proyecto.
Qué se puede hacer hoy
- Guardar archivos como blobs, pagando en IOTA desde tu wallet, y renovarlos, transferirlos o borrarlos.
- Leer cualquier blob por HTTP con el aggregator público,
https://aggregator.iotastorage.com. - Publicar sitios web estáticos (Sites), servidos en
https://<ID del sitio en base36>.iotastorage.com/o enhttps://<nombre>.iotastorage.com/con un nombre de IOTA Names.
Hay dos maneras de usar la red:
- La app, en app.iotastorage.com, con una wallet de IOTA en el navegador. Ver Primeros pasos.
- Las herramientas de referencia: una línea de comandos en Node.js para los sitios
(
sitio.mjs, ver CLI de sitios) y un cliente en JavaScript. Están en el repositorio del proyecto, que todavía no es público.
Arquitectura
usuario (wallet IOTA) nodos de almacenamiento
│ 1. codifica en local: slivers + metadatos + blob ID
│ 2. reserve_space + register_blob, paga en IOTA ─────▶ · BlobRegistered → aceptan datos
│ 3. metadatos y slivers de sus shards a cada nodo ───▶ · comprueban metadatos ↔ blob ID
│ 4. confirmaciones firmadas con BLS ◀───────────────── · firman (época, blob ID)
│ 5. certify_blob: firma agregada + bitmap ─▶ IOTA verifica quórum (2f+1 shards) y firma
│ 6. leer: slivers primarios de ≥ n−2f shards ◀──────── · sirven slivers
▼ decodifica y comprueba el blob ID
IOTA ── almacen: System (comité BLS, precios), Staking (stake en IOTA, épocas), Blob, Treasury
· el Blob es del usuario: extend (renovar), transferir, borrar
aggregator (HTTP, lee de los nodos) · publisher (HTTP, sube y paga por quien no habla con los nodos)
encima: Sites (objeto Site en IOTA → portal → aggregator)
- El cliente codifica el archivo en local en slivers y calcula su blob ID, sin conectarse a la red.
- Registra el blob en IOTA (
reserve_spaceyregister_blob) y paga en IOTA en la misma transacción. - Envía los metadatos y los slivers de cada shard al nodo de almacenamiento que tiene ese shard.
- Cada nodo comprueba los metadatos frente al blob ID y devuelve una confirmación firmada con BLS.
- Con las confirmaciones de nodos que suman un quórum de shards, el cliente llama a
certify_blob. El contrato verifica la firma agregada. Desde ese momento, el blob está disponible. - Para leer, un cliente (o el aggregator) baja suficientes slivers primarios, los decodifica y comprueba que el resultado tiene el blob ID esperado.
Direcciones públicas
| URL | Qué es |
|---|---|
https://aggregator.iotastorage.com/v1/… | Aggregator: lee blobs por HTTP. Público. |
https://publisher.iotastorage.com/v1/… | Publisher: guarda blobs por HTTP. Pide un token; lo usa el proyecto. |
https://nodo-1.iotastorage.com … nodo-4 | Nodos de almacenamiento. |
https://<ID del sitio en base36>.iotastorage.com/ | Portal de sitios. |
https://<nombre>.iotastorage.com/ | Portal de sitios por IOTA Names (<nombre>.iota). |
https://app.iotastorage.com | La app. |
IOTA Storage es un proyecto independiente, sin relación con la IOTA Foundation, que no lo respalda.