News

Runes se activa en el bloque 840.000, en una salida descartable

Un segundo protocolo de tokens arrancó en el bloque del halving. Su decisión interesante es dónde pone los datos: una salida OP_RETURN, que ningún nodo tiene que recordar.

3 min de lecturaConjunto de UTXO
Runes se activa en el bloque 840.000, en una salida descartable

Qué pasó

Runes, un protocolo para emitir tokens fungibles sobre Bitcoin, entró en funcionamiento en el bloque 840.000, minado a las 00:09 UTC del 20 de abril de 2024 por ViaBTC. Su especificación fija el límite sin ceremonia: "The Runes protocol activates on block 840,000. Runestones in earlier blocks are ignored."

Es el mismo bloque del cuarto halving, que redujo el subsidio a 3,125 bitcoin. El bloque pagó 37,63 bitcoin en comisiones, doce veces su subsidio.

Un mensaje de Runes, llamado runestone, no se guarda en una firma ni en un árbol de scripts. La especificación indica "Find the first transaction output whose script pubkey begins with OP_RETURN OP_13", y después leer los empujes de datos que siguen como una secuencia de enteros.

Qué cambia

Dónde se asientan los datos, y por lo tanto quién tiene que guardarlos.

Una salida que empieza con OP_RETURN no se puede gastar nunca, y Bitcoin Core lo reconoce. En src/coins.cpp, la función que agrega una salida nueva al conjunto de monedas gastables empieza rechazando cualquier script que pueda demostrar que es ingastable. La salida se escribe en el bloque, se valida y después simplemente no se recuerda.

Esa es la distinción que importa: todo nodo debe conservar para siempre el conjunto de salidas no gastadas, porque lo necesita para validar el bloque siguiente, pero nunca tiene que conservar un OP_RETURN. La cadena de bloques es un archivo que un nodo puede podar. El conjunto UTXO es memoria de trabajo que no puede.

Ese era el objetivo declarado. Al anunciar la idea en septiembre de 2023, Casey Rodarmor criticó el enfoque existente por su "undesirable consequence of UTXO proliferation" y sostuvo que un protocolo debería promover "UTXO set minimization by avoiding the creation of 'junk' UTXOs". No era entusiasta de la categoría: abre observando que los tokens fungibles son "99.9% scams and memes".

El contraste es con BRC-20, donde un saldo se mueve enviando una salida real y gastable de un dueño a otro, y cada una de esas salidas es algo que todos los nodos cargan hasta que se gasta.

Qué no cambia

Bitcoin no tiene idea de qué es una rune. Un nodo ve una salida ingastable con unos bytes adentro, decide no guardarla y sigue. No hay regla nueva y no se activó nada en el sentido del consenso: la altura es una convención que el software de indexación acuerda respetar.

Tampoco hay una especificación en el sentido habitual de la palabra. La página del propio proyecto sobre el tema dice que la implementación de referencia, ord, "is the normative specification of the Runes protocol", y advierte que quien use implementaciones alternativas lo hace por su cuenta y riesgo. Los saldos son lo que diga un indexador.

Tampoco abarata el espacio de bloque. Un runestone es más chico que una inscripción, pero igual ocupa peso e igual puja contra todas las demás transacciones, como muestra el total de comisiones de su primer bloque.

Contexto

Las inscripciones llegaron en enero de 2023 y pusieron contenido en el witness, donde se cobra a un cuarto de tarifa. Sobre ellas se construyeron esquemas de tokens, y el pico de comisiones de mayo de 2023 fue el resultado.

OP_RETURN es mucho más viejo, y se introdujo justamente por esta razón. Las notas de publicación de Bitcoin Core 0.9.0, de 2014, explican que el cambio "creates a provably-prunable output, to avoid data storage schemes" que estaban "bloating bitcoin's UTXO database". Las mismas notas agregan que guardar datos arbitrarios en la cadena "is still a bad idea". Las dos mitades de esa postura han sido la línea del proyecto durante una década.

Boletín

Bitcoin, sin ruido

Qué ha pasado en Bitcoin, qué cambia de verdad, y las fuentes para que puedas comprobarnos. Un número cada vez, directo a tu correo.

  • Un correo por número, nunca una secuencia automática
  • Sin píxeles de seguimiento y sin compartir direcciones
  • Baja desde cualquier número con un clic

Recibe el próximo número

Un correo por número, sin píxeles de seguimiento, y te puedes dar de baja desde cualquiera de ellos. No compartimos tu dirección. Política de privacidad