¿Persisten los mensajes OP_RETURN en la cadena de bloques?

He estado leyendo mucho sobre OP_RETURN y quiero entender algo que aún no parece claro. Cuando creamos una transacción con OP_RETURN (que entiendo que no contaminará eternamente la RAM del nodo ya que la transacción no se coloca en la base de datos de UTXO), ¿se replican los datos de OP_RETURN en la cadena de bloques?

Esta respuesta de una pregunta relacionada aquí ( límite de longitud del mensaje de transacción de Blockchain ) establece que OP_RETURN no es parte del protocolo de Bitcoin, y solo se puede acceder a los datos de OP_RETURN usando blockchain.info, que no tiene sentido de lo que he leer, ya que el código para estandarizar la cantidad de bytes para los mensajes OP_RETURN está directamente dentro del código fuente de Bitcoin y, por lo tanto, es parte del protocolo, ¿verdad?

TL;DR: Estoy tratando de crear una aplicación que utilice OP_RETURN, y me gustaría saber si los datos de OP_RETURN existen en la cadena de bloques para siempre y se pueden recuperar mediante API que no sean blockchain.info.

Respuestas (1)

Sí, la salida OP_RETURN es parte de la cadena de bloques para siempre.

Esto es fácil de mostrar: OP_RETURN y el mensaje que sigue es parte del conjunto de salida de la transacción, por lo tanto, cambiar el mensaje cambia la ID de la transacción, que a su vez cambiará el hash del bloque. Si el mensaje se eliminara después de cierto tiempo, los nuevos nodos en la red no se sincronizarían, ya que no podrían validar ese bloque. Por lo tanto, todos los nodos completos conservarán su mensaje para siempre (como mencionó, no en la RAM, sino enterrado en lo profundo de un archivo en su disco duro).

En cuanto al acceso real a los datos, además de la API Blockchain.info, supongo que podría ejecutar un nodo Toshi localmente (en su propio hardware). Dado que utiliza PostgreSQL, puede consultar la cadena de bloques como lo haría con cualquier base de datos. De esta manera, no depende de ninguna API externa que pueda volverse malvada o cerrarse. Sin embargo, los requisitos del disco duro son enormes (incluso peores que un nodo completo de Bitcoin Core).

Gracias por la respuesta, eso aclara mucho las cosas. En cuanto a Toshi, ese es un proyecto realmente interesante, definitivamente voy a investigarlo. Dice que el servicio de Toshi se retirará en unos días y parece que la API tiene muchos errores. ¿Conoce algún proyecto autohospedado similar que permita consultar la cadena de bloques de alguna manera?