¿Cómo maneja un nodo los contratos inteligentes durante la sincronización?

Estaba pensando en configurar un nodo completo de Ethereum, pero tengo algunas preguntas para las que no puedo encontrar las respuestas.

¿Mi nodo tiene que ejecutar todos los contratos inteligentes que se colocaron en la cadena de bloques en los últimos años para verificar si el resultado fue el mismo? Si es así, ¿eso no hace que el costo de la electricidad aumente mucho con el tiempo, también para los nodos en el futuro? Por lo que entiendo, solo al minero se le paga por un contrato inteligente, pero mi nodo también tendría que funcionar.

Si no tengo que ejecutar todos esos contratos inteligentes, ¿cómo sabe mi nodo qué sucedió en el pasado y cómo se ve la cadena de bloques ahora?

¿Qué sucede si la entrada de datos de un contrato inteligente se modificó o ya no está disponible? ¿Cómo se sincroniza mi nodo con el resto de la red?

gracias de antemano

para las dos preguntas sobre electricidad y recompensa de nodo completo, puede obtener algunas respuestas aquí: ethereum.stackexchange.com/questions/4108/…

Respuestas (1)

Los contratos inteligentes siguen el mismo patrón de validación que las transacciones normales. Pero no hay saldo que comprobar necesariamente. En cambio, la validación se basa en entradas y salidas deterministas. Lo que significa que cada minero ejecuta el código con la entrada establecida en la transacción, cada nodo debe alcanzar la misma salida.

Un artículo que leí afirma que puede haber llamadas dinámicas e indeterministas. Eso me lleva de nuevo a mi última pregunta. Si tengo un contrato inteligente que recurre a un servicio externo, todos los nodos de la red ejecutan el contrato inteligente. Luego, el servicio externo desaparece, ¿cómo manejan esta situación los nuevos nodos?
El artículo está mal. Ilustración: medium.com/@promentol/…
No puede llamar a servicios externos, solo puede solicitar cosas en la cadena de bloques.
¿Qué pasa con los contratos inteligentes en los que las personas apuestan por el clima, los juegos deportivos? Hacen uso de los oráculos, ¿qué pasa cuando los oráculos se van?
Usar un oráculo no lo hace no determinista. Un oráculo es una fuente de datos externa. Como dije, pone datos en cadena de la misma manera que tú y yo, por transacciones. ¿Qué sucede cuando pierdes tus llaves y tu cuenta se pierde? Exactamente, ya no podrá poner datos en cadena con ese par de llaves.
Entonces, el oráculo simplemente publica metadatos en la cadena de bloques a través de una transacción, de acuerdo con un formato previamente acordado, ¿y luego esta transacción activa el contrato inteligente? Ningún artículo que he visto ha sido claro en esta parte, gracias.
Esa transacción puede desencadenar el contrato o puede ser desencadenada por una de las otras partes después de que el oráculo haya establecido la variable. Es simplemente un tercero que pone datos en la cadena de bloques. Aún debe confiar en esa parte (humana o IoT) para poner los datos correctos en la cadena. Echa un vistazo a chainlink u Oraclelize.It, por ejemplo.