Ethereum en 30 minutos por Vitalik Buterin
Vitalik Buterin sobre la evolución de Ethereum como una computadora mundial descentralizada, cubriendo la prueba de participación, el escalado de capa 2, la abstracción de cuentas y el camino a seguir.
Date published: 12 de noviembre de 2024
Vitalik Buterin, fundador de Ethereum, inaugura la Devcon SEA con una descripción general exhaustiva de la evolución de Ethereum como una computadora mundial descentralizada. Vitalik cubre la prueba de participación (PoS), el escalado de capa 2 (l2), la diversidad de clientes y las aplicaciones que definen hacia dónde se dirige el ecosistema de Ethereum.
Esta transcripción es una copia accesible de la transcripción original del video (opens in a new tab) publicada por la Fundación Ethereum. Ha sido ligeramente editada para facilitar su lectura.
Introducción (0:02)
Genial, así que Ethereum en 30 minutos. Esta es una presentación que he dado en básicamente cada Devcon desde el lanzamiento. Lo interesante es cómo, a medida que el ecosistema de Ethereum cambia, y a medida que el protocolo de Ethereum cambia, conforme cambian los tiempos, los contenidos también terminan cambiando bastante. Si retrocedes al equivalente de esto en 2015, escucharás mucho sobre los bloques tío (uncle blocks). Por supuesto, los bloques tío son una característica de la prueba de trabajo (PoW). Ahora tenemos la prueba de participación (PoS), por lo que ya no tenemos bloques tío. Por supuesto, Ethereum ahora también tiene capas 2 (l2), y en aquel entonces esto no contendría capas 2 en absoluto. Ahora sabemos que las capas 2 son la mitad de la historia. Ethereum es, ante todo, un ecosistema en evolución, y los contenidos de esto van a seguir cambiando a medida que cambie la tecnología, y también a medida que el énfasis del ecosistema pase de construir infraestructura básica a poner una gran cantidad de enfoque en las aplicaciones.
Entonces, ¿qué es Ethereum? Primero, Ethereum es la computadora mundial. ¿Quién aquí recuerda que Ethereum era la computadora mundial? Este es el lugar donde se supone que debo poner ese meme donde está el tipo con el arma en el espacio diciendo "siempre lo ha sido", pero nunca entendí por qué darle a alguien una revelación tan increíble y hermosa debe ocurrir al mismo tiempo que le disparan en el espacio a 20.000 kilómetros de casa. Así que no voy a hacer eso hoy. Ethereum es la computadora mundial. Siempre lo ha sido, siempre lo será.
Además de esto, Ethereum es una economía en cadena increíblemente grande y diversa. Afortunadamente, Josh, justo antes que yo, hizo una presentación increíblemente buena hablando sobre todos los diferentes aspectos de la economía. Ethereum también es una comunidad global increíblemente grande y diversa. Ethereum es muchas cosas. Creo que probablemente también se supone que debo poner un letrero intermitente que diga "ETH es dinero", pero Ethereum es muchas cosas.
¿Cómo funciona la computadora mundial? La forma en que pienso sobre esto es que la capa 1 (l1) es la máquina de confianza, y la capa 2 (l2) es la GPU. La capa 1 de Ethereum, es decir, la cadena de bloques principal de Ethereum, es el ancla que mantiene seguro al resto del ecosistema y lo mantiene unido. La capa 1 es la razón por la cual las capas 2 pueden comunicarse entre sí sin necesidad de confianza. Al menos una vez que todo se actualice a la Etapa 2, podrás tomar un activo, emitirlo en Optimism, y luego moverlo y mantenerlo dentro de un contrato inteligente en Arbitrum, y hacerlo con cero riesgo de contraparte. La capa 1 no está ahí para ser ultrarrápida; no está ahí para hacer un millón de transacciones por segundo. La capa 1 está ahí, ante todo, para ser descentralizada, para ser robusta y para ser algo confiable.
La capa 2 es la GPU. La capa 2 son todos ustedes en la sala que forman parte de cualquier capa 2. ¿Quién aquí es parte de una capa 2? ¡Yupi! ¿Quién aquí ha usado una capa 2? ¿Quién aquí ha usado la capa 1? Bien, todos somos usuarios aquí. Hay muchas de estas diferentes GPU, y Ethereum, la computadora mundial, es capaz de mantenerse unida porque todas y cada una de estas GPU están conectadas a la máquina de confianza a través de sistemas de pruebas optimistas, pruebas de conocimiento cero, SNARKs, STARKs, plonk, o cualesquiera que sean las palabras de moda. Todos estos sistemas garantizan que la capa 1 sea capaz de verificar sin confianza lo que sucede dentro de las capas 2, y las capas 2 también son capaces de leer sin confianza lo que sucede en la capa 1.
Descentralización y diversidad (5:11)
Hay una interacción importante entre estos dos componentes, y juntos conforman el Ethereum que está aquí hoy. ¿Qué es la l1? Es una cadena. Ejecuta la prueba de participación. No se rompe. ¿Qué significa esto? La l1 de Ethereum es una cadena que ha existido en total durante más de nueve años, y ha existido en su forma actual de prueba de participación durante un poco más de dos años. Una de las cosas realmente importantes que debe tener una capa base es evidencia clara de que estás construyendo sobre una capa base que es descentralizada, abierta, robusta y que probablemente mantendrá esos rasgos en el futuro.
Una parte de eso es ser lento para cambiar. No quieres un sistema que de repente se despierte un martes, tenga una nueva administración y luego decida que va a comenzar a eliminar un montón de aplicaciones, cambiar todo su modelo, aumentar las tarifas por un factor de 10 o hacer otras cosas sin previo aviso. Otra parte de la descentralización y la resiliencia es la recuperación. Cada vez que surge un problema, ser realmente capaz de recuperarse de él y mejorar las cualidades de la capa 1 con el tiempo.
Si miramos un gráfico de los grupos de minería de prueba de trabajo de Bitcoin frente a los grupos de staking de prueba de participación de Ethereum, estoy siendo deliberadamente generoso aquí, porque antes de La Fusión, la descentralización de la prueba de trabajo de Ethereum estaba aún más concentrada. Lo que vemos en el lado de la prueba de participación de Ethereum es un conjunto bastante diverso de grupos de staking. Si te acercas a Lido, tiene un poco menos del 30 %, pero Lido no es un solo actor. Es una DAO. Técnicamente, los depósitos se dividen entre aproximadamente 40 operadores de nodos diferentes. Es razonable pensar que se encuentra en algún lugar entre un actor y 40 actores.
Luego tenemos a los "no identificados". Los no identificados no son un actor, al igual que la tecla "cualquiera" (any) en tu teclado no es realmente una tecla. En realidad no sabemos qué es. Probablemente haya muchos stakers individuales, stakers de pequeñas empresas y varios grupos de staking diminutos. La l1 de Ethereum hoy en día tiene en realidad un grado sorprendentemente alto de descentralización en su diseño de prueba de participación, y esta es una propiedad que solo ha mejorado con el tiempo.
Una propiedad que en realidad ha mejorado mucho es la diversidad de clientes. Ethereum hace unos cinco años era básicamente solo Go Ethereum (Geth). Cuando tienes un ecosistema que está dominado por un solo cliente, eso en sí mismo se convierte en un punto central de falla. ¿Quién aquí recuerda los ataques DoS de 2016? Te despiertas a las 5:17 a. m., recibes una llamada de atención al estilo militar, bajas a la sala de guerra y alguien descubrió un error en el cliente. Toda la cadena se detiene. Lo arreglamos, y luego dos o tres días después alguien encuentra otro error. Eso continúa durante todo un mes hasta que finalmente tenemos que hacer una bifurcación dura. Pero durante ese período, la capacidad de Ethereum de tener dos clientes diferentes (en ese momento eran Geth y Parity) básicamente salvó la cadena. Hubo momentos en que un error afectaba a Geth pero no a Parity, y momentos en que un error afectaba a Parity pero no a Geth. Ethereum ganó mucho al tener múltiples implementaciones de software, y esto es algo que a partir de 2024 probablemente esté en su mejor momento en la historia de Ethereum.
Múltiples clientes y robustez (10:40)
Si observamos los clientes de consenso, que manejan la parte de prueba de participación de Ethereum, y los clientes de ejecución, que manejan la parte de la EVM de Ethereum, podemos ver que el cliente individual con la mayor cuota de mercado es Geth, que ronda el 50 %. ¿Qué pasa si hay un error en cualquier cliente de Ethereum literalmente hoy, en este momento? Comprueba si Ethereum sigue funcionando. Supongo que sí; apostaría un 99,99 % en PolyMarket.
Caso uno: ¿Qué pasa si el cliente es Geth? Ese es el peor de los casos. Si el cliente es Geth y hay un error, siendo realistas, la cadena se divide por la mitad. Una mitad sigue a Geth, la otra mitad sigue a los otros clientes, pero en ambos lados, la cadena deja de finalizar. Para finalizar, necesitas dos tercios. Si tienes menos de dos tercios, se siguen creando bloques, pero la cadena deja de finalizar. Si eres un usuario, una aplicación o una empresa que espera la confirmación de alguna transacción, vas a detectar que ninguna de las cadenas está finalizando y te quedarás en espera. Lo que de manera realista va a suceder es que los desarrolladores principales se pondrán en alerta máxima, descubrirán qué cliente tiene realmente el error y el error se solucionará. La única vez que esto sucedió en Ethereum (dato curioso, yo mismo envié la transacción que lo causó en 2016) básicamente todo se solucionó en 12 horas.
Ese es el peor de los casos. En cualquier otro caso, básicamente si Prysm o Lighthouse tienen un error, lo único que sucede es que Ethereum deja de finalizar durante aproximadamente un día como máximo, y luego básicamente vuelve a la normalidad. Con cualquier otro cliente, no vas a notar nada en absoluto. En términos de descentralización práctica, tener múltiples clientes es extremadamente útil. Diversifica el poder y el control sobre el ecosistema de Ethereum, especialmente en cualquier tipo de situación polémica. Si volviera a ocurrir algún tipo de incidente como la bifurcación de la DAO, y un equipo de desarrollo tomara una decisión impopular, los usuarios podrían cambiar muy fácilmente a otros clientes y evitarlos por completo.
Esto no es práctico en un ecosistema de un solo cliente. Tener un ecosistema diverso de múltiples clientes es difícil de lograr. Aparte de Ethereum, ninguna otra cadena ha logrado realmente nada parecido a esto. Incluso fuera de Ethereum, como los navegadores web: se supone que los navegadores web son un estándar abierto. La realidad es que más del 80 % se ejecuta en alguna bifurcación de WebKit, y el resto se ejecuta en Firefox, que intenta valientemente mantenerse firme. Ethereum ha logrado oponerse a esta tendencia.
Hace dos años, este gráfico era peor. La descentralización de Ethereum no solo es capaz de no empeorar, sino que también es capaz de responder activamente a los problemas y presionar agresivamente para mejorarlos con el tiempo. Si estás construyendo una aplicación que necesitas que exista dentro de 5 o 10 años, propiedades como estas son exactamente lo que estarías buscando.
Si tienes 32 ETH, o menos si te unes a un grupo, cada vez aparecen más opciones de grupos realmente interesantes, como el staking en escuadrón de Obol, que te permite crear grupos más pequeños con tus amigos. Hay muchas formas diferentes de convertirte en un staker, y si lo haces, pasas a formar parte de esta red de nodos que aseguran la cadena de bloques de Ethereum.
Verificación de nodos y escala (15:06)
Supongo que así es como lo describe la propaganda de la fundación: tiene un lindo elefante. ¡Así que un aplauso para el elefante! Tú también puedes unirte a la red y ayudar a asegurarla. Incluso si no eres un staker, también puedes ejecutar un nodo de Ethereum en tu computadora y verificar voluntariamente la cadena.
Supongo que en estos días nadie tiene siquiera computadoras de escritorio que se vean así. Metí "computadora de escritorio" en Stable Diffusion 3.5 y sacó esto, así que esa es la computadora que obtienes. Pero puedes ejecutar un nodo de Ethereum en tu computadora para verificar la cadena. Esto es realmente importante porque si tienes usuarios verificando la cadena, entonces ni siquiera una mayoría o supermayoría de los stakers actuando juntos pueden cambiar las reglas a las personas sin que todo se rompa. Las reglas de Ethereum solo pueden cambiar a través de una bifurcación dura que se acuerde mediante un amplio consenso de la comunidad.
Creo que esta es una de esas cosas que es realmente valioso preservar. Entre los ecosistemas de cadenas de bloques, son básicamente Bitcoin y Ethereum los que realmente tienen una fuerte cultura de tratar de hacerlo posible y seguir mejorando la capacidad de las personas para verificar la cadena. Vienen muchas actualizaciones del protocolo con el objetivo preciso de hacerlo aún más fácil.
El día de mañana podrás ejecutar un nodo sin requerir más que una pequeña cantidad de almacenamiento utilizando clientes sin estado. Esta es la parte "The Verge" de la hoja de ruta. También tenemos clientes ligeros. Hay un proyecto llamado Helios que hace una forma de verificación ligera. La verificación ligera no es perfecta, pero significa que no tienes que confiar en un nodo RPC para que te dé información sobre la cadena. El futuro a más largo plazo es que queremos aplicar SNARK a toda la cadena. Una vez que apliquemos SNARK a toda la cadena, podrás verificar las reglas de Ethereum en hardware extremadamente grande o diminuto.
Hacer staking con menos ETH también es un requisito de investigación muy activo. 32 ETH sigue siendo alto. Me gustaría que las personas fueran stakers con 1 ETH. Hay diferentes formas de hacer esto, como Orbit, o haciendo mejoras en la agregación. En general, vienen muchas mejoras en el protocolo específicamente para hacer que el staking y la ejecución de un nodo sean más fáciles y accesibles.
¿Qué se ejecuta en la l1 de Ethereum? Algunas aplicaciones de alto valor. Muchas finanzas descentralizadas (DeFi) de alto valor se ejecutan en la l1. ENS se encuentra actualmente en la l1, aunque cada vez hace más con las capas 2. Las personas mantienen activos en la capa 1. Además, la capa 1 gestiona las raíces de los bloques, las raíces de estado y los sistemas de prueba para las capas 2. Asegura las capas 2. La capa 1 debe ser lo suficientemente potente como para manejar operaciones entre capas, especialmente en el caso de que falle una capa 2. La diferencia entre una capa 2 y una cadena independiente es que incluso si tu capa 2 sufre un ataque del 51 % o el equipo cierra, la capa 1 sigue ahí para proteger a los usuarios. Los usuarios pueden demostrar su propiedad y estado dentro de la capa 2 y migrarlo de regreso a la capa 1.
Velocidades de l2 y hojas de ruta (20:33)
Recientemente, hubo un experimento en vivo con esto. dYdX v3 cerró recientemente, y la gente de L2Beat escribió su propia implementación de software de mecanismo de salida. Sin ninguna participación del equipo de dYdX, los usuarios pudieron tomar cualquier activo que tuvieran dentro de dYdX v3 y llevarlo de regreso a la l1 de Ethereum. Salir de una capa 2 sin la participación del equipo no es solo teoría, es una realidad.
Si la l1 ejecuta aplicaciones y protege las l2, ¿qué hacen las l2? Las l2 proporcionan velocidad y escala. Este año, las tarifas de la capa 2 han bajado de unos 50 centavos a menos de 1 centavo. Básicamente, para una clase increíblemente amplia de aplicaciones, Ethereum ha pasado de la noche a la mañana de ser básicamente inasequible a ser completamente asequible.
¿Qué pasa con los tiempos de inclusión de las transacciones? ¿Quién aquí recuerda la experiencia de enviar una transacción y esperar un número arbitrario de minutos (como 10, 40 o 90 minutos) para que se incluyera? ¿Quién aquí recuerda haber tenido esta experiencia en Ethereum en los últimos 6 meses? Ethereum ha mejorado enormemente. Durante la era de la prueba de trabajo, el tiempo de bloque promedio en Bitcoin era de 10 minutos, pero en Ethereum el tiempo de bloque promedio es de 12 segundos. Sin embargo, había un fenómeno molesto en el que si tenías mala suerte con el precio del gas, tenías que esperar 10 o 20 minutos. El EIP-1559, que llegó en 2021, básicamente resolvió eso.
Luego La Fusión. Debido a una interesante peculiaridad matemática, aunque el tiempo promedio entre bloques solo se redujo de 13 segundos a 12 segundos, el tiempo promedio entre el envío de una transacción y su inclusión se redujo de un poco más de 13 segundos a un poco más de seis segundos. Problema de matemáticas para ti: averigua por qué esto es cierto. Después de La Fusión, la inclusión básicamente se reduce a entre 6 y 30 segundos. Finalmente, con las capas 2, tienes preconfirmaciones, por lo que las capas 2 son lo suficientemente rápidas como para confirmar tu transacción en un par de cientos de milisegundos. Como usuario, puedes ser parte de una aplicación donde suceden muchas cosas y, al mismo tiempo, las tarifas de tus transacciones siguen siendo baratas.
La historia de Ethereum: noviembre de 2013 fue el documento técnico. Julio de 2015 fue el lanzamiento. Alrededor de 2018, Ethereum se decidió por su diseño aproximado para la prueba de participación y el muestreo de disponibilidad de datos. Los artículos originales sobre el muestreo de disponibilidad de datos y la codificación de borrado los escribí en 2017.
Casper y escalado de rollups (25:27)
Si indagas en GitHub, puedes buscar el directorio llamado simple_casper y encontrar contratos escritos en Serpent. ¿Quién aquí recuerda a Serpent? ¿Quién aquí usa Serpent? Quiero decir, creo que Python es realmente hermoso, pero si quieres eso, deberías programar en Vyper. Vyper es realmente genial y ha seguido mejorando bastante. Dentro de ese repositorio en 2017, intentamos hacer una abstracción completa y escribir la lógica de la prueba de participación directamente como un contrato inteligente. Lanzamos una demostración a las 11:20 p. m., hora de Bangkok, el 31 de diciembre de 2017 (queríamos sacar algo antes de Año Nuevo) y la demostración terminó rompiéndose bastante rápido. Eran los primeros días.
Desde entonces, ya no son los primeros días. A principios de 2018, comenzó un esfuerzo masivo para construir el sistema de prueba de participación y el sistema de escalado de Ethereum, que desde entonces se ha convertido en los blobs que tenemos hoy. En 2022 fue La Fusión, cambiando de la prueba de trabajo a la prueba de participación. En 2024, la primera parte de "The Surge". Si miras el diagrama de la hoja de ruta, verás dos hitos: escalado básico de rollups y escalado completo de rollups. El escalado básico de rollups significa que necesitas que las principales capas 2 alcancen la Etapa 1, y necesitas que existan los blobs. Para 2024, en realidad logramos eso. El siguiente paso es tener un muestreo de disponibilidad de datos en pleno funcionamiento y que las principales l2 alcancen la Etapa 2. Creo que eso sucederá antes de lo que la gente piensa.
Todavía quedan muchos problemas por resolver. Queremos actualizaciones para la descentralización. ¿Quién aquí quiere que Ethereum sea centralizado? De acuerdo, una persona quiere que Ethereum sea centralizado. Resistencia a la censura... ¿resistencia cuántica? De acuerdo, una mano. ¡Tal vez sientas que necesitas el colapso para que ocurra la renovación! Pero necesitamos más actualizaciones para asegurarnos de que la descentralización, la resistencia a la censura y la resistencia cuántica sigan ocurriendo.
También necesitamos actualizaciones continuas y progresivas para la eficiencia y la escala. La capa 2 va a escalar extremadamente rápido y su seguridad va a mejorar en los próximos años. También espero actualizaciones continuas progresivas, cautelosas pero definitivas en la capacidad de la capa 1. Necesitamos hacer esto para respaldar la actividad de la l1, y porque la l1 actúa como un respaldo. La capacidad máxima teórica segura de las l2 es proporcional a la capacidad de la l1.
Vamos a tener actualizaciones en el muestreo de disponibilidad de datos para aumentar la cantidad de blobs que Ethereum puede soportar. Hace aproximadamente una semana, Ethereum alcanzó el modo de descubrimiento de precios para los blobs, lo que significa que la cantidad de blobs que se utilizan es exactamente igual al objetivo a largo plazo. Ahora necesitamos escalar este número.
Hemos escalado lo suficiente como para que sea posible una amplia variedad de aplicaciones: ENS, pagos de consumidores, redes sociales. Una categoría que creo que será extremadamente importante durante la próxima década son las aplicaciones mixtas financieras y no financieras: aplicaciones que hacen uso del poder de las finanzas, pero en última instancia para servir a fines que van más allá de los objetivos financieros. Hay muchas aplicaciones muy poderosas aquí. Hemos pasado mucho tiempo mejorando la tecnología y continuaremos haciéndolo, pero está en el nivel en el que ahora es el momento de construir. Gracias. [Aplausos]