reenviar el título original 'we're all building the same thing'
esta publicación analiza lo siguiente
por último y lo más importante, veremos por quétodos estamos construyendo la misma maldita cosaasí que tal vez deberíamos simplemente...
construiremos desde lo básico para ver que el final para blockchains de alto rendimiento (por ejemplo, Solana, Monad, @patrickogrady/rys8mdl5p#mitigation-strategy-enable-profit-maximizing-builders-to-minimize-invalidtps">hypersdk) se aproxima a la de un secuenciador perezosopor ejemplo,@astriaorg/hj6ccpp9t">astria). más tarde volveremos para compararlos con rollups basados en ethereum + preconfs.
blockchains son máquinas de estado replicadas. los nodos descentralizados mantienen y actualizan cada uno su propia copia del estado del sistema. para avanzar en la cadena, los nodos ejecutan la función de transición de estado (stf) sobre el estado actual + nuevas entradas (por ejemplo, nuevas transacciones). esto produce el nuevo estado.
utilizaremos los siguientes términos a lo largo de esta sección:
enfoquémonos en la secuenciación y ejecución, porque estas son las tareas principales necesarias para calcular el estado de la cadena:
además, los nodos verifican y replican los datos en toda la red. Los nodos llegan a un consenso para mantener una vista consistente de la cadena.
sin embargo, las diferentes arquitecturas de cadena divergen significativamente en quién es responsable de estas tareas y cuándo lo hacen (por ejemplo, la construcción y verificación de bloques pueden o no incluir la ejecución). el tiempo de extremo a extremo del completo replicación de máquina de estados (smr)el bucle dicta los límites inferiores de la latencia del sistema. Diferentes construcciones pueden producir tiempos muy variables, por lo que un proceso smr que sea eficientetuberíasEstas tareas son necesarias para un rendimiento de baja latencia y alta capacidad de procesamiento.
en las siguientes secciones, veremos que una idea central del procesamiento eficiente en serie es centrarse en lograr consenso sobre las entradas de ejecución en lugar de los resultados de ejecución. esto requiere relajar ciertas restricciones sobre qué transacciones pueden incluirse. luego necesitaremos reintroducir algunas restricciones más débiles para asegurar que el sistema siga siendo útil y resistente a los ataques (por ejemplo, evitando vectores dos de transacciones que no paguen tarifas).
smr tradicional (por ejemplo, ethereum) acopla estrechamente la secuenciación y la ejecución. Los nodos completos secuencian y ejecutan continuamente todas las transacciones de la capa base, ambas son requisitos previos para que los nodos lleguen a un consenso. Además de verificar que todos los datos del bloque estén disponibles (y secuenciados), los nodos también deben ejecutar el bloque para verificar que:
los validadores solo votarán por un bloque y construirán sobre él una vez que hayan verificado de forma independiente su estado. Esto significa que la ejecución ocurre al menos dos veces antes de que se pueda llegar a un consenso (es decir, el productor de bloques ejecuta durante la construcción + los validadores receptores ejecutan nuevamente para verificar).
En este modelo tradicional, tanto la construcción como la verificación incluyen la ejecución.
fuente: @patrickogrady/rys8mdl5p#hacer-el-caso-para-la-replicación-de-máquina-de-estado-desacoplada-dsmr">vryx: fortaleciendo la replicación de máquina de estado desacoplada
streaming smr (por ejemplo, solana) es una forma eficiente de canalizaciónlos productores de bloques continuamente “transmiten” fragmentos de bloques (llamado tiraso fragmentos) a medida que se construyen. otros nodos reciben y verifican (incluida la ejecución) estos fragmentos continuamente, incluso mientras el resto del bloque aún se está construyendo. esto permite que el próximo líder comience a construir su bloque antes.
fuente: @patrickogrady/rys8mdl5p#making-the-case-for-decoupled-state-machine-replication-dsmr">vryx: fortifying decoupled state machine replication
en este modelo de transmisión, la construcción y verificación aún incluyen secuenciación y ejecución. esto aumenta la eficiencia de SMR en relación a SMR tradicional sin relajar ninguna restricción de que todas las transacciones incluidas sean tanto semántica como sintácticamente válidas.
enfoque integrado
¿Ahora, podemos obtener un rendimiento aún mejor si relajamos esas restricciones?
la ejecución asincrónica elimina la ejecución del camino principal del consenso: los nodos simplemente llegan a un consenso sobre el orden de los datos sin ejecutar primero esos datos. esto es más eficiente, por esoSolanayMonadambos planean implementar la ejecución asincrónica.
el líder construiría y replicaría un bloque (o fragmentos) sin necesidad de ejecutarlo. luego, otros validadores votarían sobre él sin ejecutarlo tampoco. los nodos solo llegan a un consenso sobre el orden y la disponibilidad de transacciones. esto es suficiente porque, dado un stf determinista, todos eventualmente calcularán el mismo estado. la ejecución no necesita detener el consenso, puede ejecutarse de forma asincrónica. esto puede abrir el presupuesto de ejecución para los nodos (dándoles más tiempo para gastar en la ejecución) al tiempo que se reducen los pasos requeridos (y por lo tanto el tiempo) para alcanzar un consenso.
el orden determina la verdad. la ejecución simplemente la revela. cualquier persona puede ejecutar los datos para revelar la verdad una vez que su ordenamiento está finalizado.
probablemente por eso Keone cree que en última instancia, cada cadena de bloques utilizará ejecución asincrónica, y es una pieza clave de La visión final de Toly para Solana:
"La ejecución síncrona requiere que todos los nodos que votan y crean bloques estén sobreaprovisionados para el peor de los casos de tiempo de ejecución en cualquier bloque... Los nodos de consenso pueden realizar menos trabajo antes de la votación. el trabajo se puede agregar a greGate.iod y por lotes, lo que hace que se ejecute de manera eficiente sin errores de caché. Incluso se puede ejecutar en una máquina completamente diferente a la de los nodos de consenso o líderes. Los usuarios que deseen una ejecución sincrónica pueden asignar suficientes recursos de hardware para ejecutar cada transición de estado en tiempo real sin esperar al resto de la red.
Actualmente, los validadores reproducen todas las transacciones lo más rápido posible en cada bloque y solo votan una vez que se ha calculado el estado completo del bloque. El objetivo de esta propuesta es separar la decisión de votar en un tenedor de la transición completa del estado para el bloque.
vale la pena señalar que también queremos asegurarnos de que la verdad se revele fácilmente a los usuarios, y eso significa un sólido soporte para clientes ligeros. Algunos de estos diseños que retrasan la ejecución significativamente harían que esto fuera un desafío (p. ej., Solana considerando requerirlo solo una vez por época) vs. otros que proporcionan una raíz de estado en un intervalo más corto (por ejemplo, como en el hypersdk).
enfoque modular
¡La separación de la secuenciación y la ejecución puede sonar muy familiar porque este es el enfoque "modular" también! Mezcle y combine diferentes capas que se especialicen en diferentes tareas. La separación de la secuenciación y la ejecución es el principio de diseño clave de los secuenciadores perezosos (por ejemplo, Astria):
La diferencia principal aquí es que los nodos de la cadena integrada ejecutan después de la secuenciación, mientras que los secuenciadores perezosos lo envían a un conjunto completamente diferente y diverso de actores. Los secuenciadores perezosos son completamente ignorantes de las máquinas de estado de rollups. Nunca ejecutan estas transacciones. Los rollups manejan la ejecución asincrónica.
El enfoque integrado proporciona una interoperabilidad más fluida entre los usuarios del entorno de ejecución, pero reduce la flexibilidad en cuanto a los desarrolladores de aplicaciones (por ejemplo, máquinas virtuales personalizadas, diferentes tiempos de ranura).reglas de precios y ordenamiento de transacciones específicas de la aplicación implementadas por consenso, etc.. El enfoque modular proporciona más flexibilidad y soberanía para que los desarrolladores posean dominios personalizados, pero es más difícil unificar la experiencia en todos ellos.
en cualquier caso, una tubería realmente grande y rápida para ordenar datos es la primitiva que necesitamos:
sin embargo, debes tener en cuenta que técnicamente puedes usar prácticamente cualquier cadena como un secuenciador perezoso. al final del día, es solo un gran conducto de datos. un rollup puede arrojar ingenuamente sus datos arbitrarios a su capa base de elección (ya sea ethereum, bitcoin, monad, etc.) para usarla implícitamente como su secuenciador. los nodos de rollup pueden ejecutar asincrónicamente los datos después del hecho.
La diferencia en la práctica es que las cadenas a las que nos referimos como "secuenciadores perezosos" están especializadas para esta tarea, lo cual es mucho más fácil decirlo que hacerlo (por ejemplo, admitir tipos de transacciones necesarios, exponer interfaces fáciles, implementar infraestructura MEV, tiempos de ranura rápidos, inclusión de transacciones confiable, alta velocidad de transferencia, etc.). Como resultado, los nodos para cadenas integradas terminan ejecutando la mayor parte de los datos que incluyen, mientras que los secuenciadores perezosos dejan eso principalmente a los rollups.
por eso no es tan simple como "¿por qué no usamos solana (o cualquier otra cadena cuando ese nunca ha sido el objetivo de diseño) como un secuenciador de rollup?" :
ahora, ¿podemos abordar esos problemas que surgen al relajar estas restricciones? En resumen, sí, las implementaciones ingenuas introducen problemas como permitir transacciones inválidas que no pueden pagar tarifas (lo cual sería un vector dos si se implementa ingenuamente), pero se pueden abordar de manera que no sean problemas graves.
no nos detendremos demasiado en los detalles aquí, pero puedes consultarPatrick o’grady’strabajo increíble en@patrickogrady/rys8mdl5p#fortaleciendo-dsmr-desacoplado-para-fortificar-smr-desacoplado,-tolysjuego final de ejecución asincrónicayImplementación de Monad de los costos de transportesobre cómo abordar estos problemas. Una vez más, las soluciones a estos problemas sorprendentemente se parecen casi en ambos lados, el lado modular y el lado integrado.
el resumen es que puedes reintroducir algunas restricciones mucho más débiles (en comparación con la ejecución sincrónica con verificación completa) que conservan la mayoría de los beneficios de rendimiento sin dejar abiertos un montón de ataques.
Es importante darse cuenta de que los procesos anteriores solo tuvieron en cuenta ingenuamente a los actores dentro del protocolo. En realidad, los actores fuera del protocolo juegan un papel enorme en estas cadenas de suministro de transacciones. Esto es lo que vimos anteriormente para los validadores (dentro del protocolo) en SMR tradicional:
fuente: @patrickogrady/rys8mdl5p#making-the-case-for-decoupled-state-machine-replication-dsmr">vryx: fortificando la replicación de máquina de estado desacoplada
en la práctica, sin embargo,casi todos los validadores de Ethereum externalizan la construcción de bloques a través de mev-boostcon los tres principales constructores (beaver, titan y rsync) construyendo casi todos estos bloques. tenga en cuenta que beaver y rsync censuran las transacciones de OFAC mientras que titan no lo hace.
fuente: mevboost.pics
Los relés se encargan de replicar estos bloques al resto de la red. También son relativamente pesados, con los cuatro principales operadores (ultra sound, bloxroute, agnóstico y flashbots) transmitiendo la gran mayoría de los bloques. Bloxroute y flashbots censuran las transacciones OFAC, mientras que agnóstico y ultra sound no lo hacen.
fuente:mevboost.pics
también debería ser no sorpresa que veamos tendencias muy similares en las optimizaciones de latencia aquí, como discutimos anteriormente. la tendencia es haciarelés optimistasque ya no realizan verificación de bloques antes de la replicación porque es simplemente más rápido. Los secuenciadores perezosos pueden considerarse como redes de retransmisión incentivadas.
estos ejemplos destacan cómo MEV distorsiona los incentivos de beneficio en estos sistemas. Los validadores externalizan la producción de bloques porque los constructores sofisticados pueden capturar más valor en comparación con los bloques secuenciados de manera ingenua.
incluso bajo ejecución asincrónica, a menudo habrá productores de bloques fuera del protocolo ejecutando transacciones durante la construcción para maximizar el valor. Por ejemplo, es muy probable que los secuenciadores perezosos tengan constructores de maximización de beneficios en alguna forma de PBS. El hecho de que un productor de bloques externo siempre esté incentivado a ejecutar completamente y optimizar el valor de un bloque puede ser útil en configuraciones donde relajamos las restricciones en la ejecución asincrónica. Aún así, otros validadores no tendrían que volver a ejecutar antes de votar.
¿Ahora, podemos obtener la soberanía y flexibilidad que ofrecen las cadenas modulares, pero reunirlas para que se sientan como una cadena integrada? ¿Podemos tener nuestro pastel y comérnoslo también, o simplemente terminamos construyendo Solana con pasos adicionales?
cuando escuchas a la gente hablar sobre arreglar la fragmentación de rollup, probablemente has escuchado las grandes palabras de moda alrededorcomposabilidad sincrónica universal (USC). Sin embargo, esta ha sido probablemente tu reacción:
Estos términos se utilizan con diferentes significados, y a menudo se utilizan incorrectamente de manera intercambiable. Necesitamos establecer algunas definiciones concretas. Definimos los términos necesarios a continuación en el contexto de la composibilidad entre cadenas.
ten en cuenta que discutiremos los 'rollups' en el resto de este informe, pero muchos de estos conceptos también se aplican a otros tipos de 'l2s' como los validiums.Simplemente no quiero pelear de nuevo por lo que diablos es un l2.
en los siguientes ejemplos:
ten en cuenta que aquí definimos el "tiempo" como la "altura de la ranura". El tiempo es puramente relativo al observador. La única noción objetiva de tiempo que tenemos es un ordenamiento relativo por un observador compartido, es decir, un consenso compartido (donde ese "consenso" puede ser un único actor o un mecanismo descentralizado).
si ambos rollups tienen un mecanismo de consenso que proporciona el ordenamiento, podemos afirmar:
sin embargo, la única manera de afirmar:
Por lo tanto, la composabilidad sincrónica entre cadenas requiere definicionalmente algún tipo de secuenciador compartido para esa altura de ranura. Las cadenas sin uno solo pueden tener composabilidad asincrónica.
sin embargo, tenga en cuenta que podemos tener composibilidad atómica asincrónica. lamentablemente, a menudo noto que las personas usan "atómico" y "sincrónico" indistintamente, pero son términos diferentes.
con eso fuera del camino, veamos si podemos reintroducir la composabilidad sincrónica en las cadenas modulares. Si podemos hacerlo, entonces eso puede parecerle a neGate.io el valor de las cadenas integradas. Este es el resumen que analizaremos:
La secuenciación compartida significa que para una altura de ranura dada, una sola entidad (el "secuenciador", también conocido como el "proponente") tiene derechos de monopolio para secuenciar (es decir, proponer bloques para) múltiples cadenas. Para reiterar, estos secuenciadores compartidos de los que generalmente hablamos son secuenciadores perezosos. llegan a un consenso sobre el orden y la disponibilidad de los datos de rollup, pero no los ejecutan. son completamente ignorantes de las máquinas de estado de los rollups.
Como escribí anteriormente, esto significa que los secuenciadores compartidos perezosos pueden proporcionar un compromiso creíble para incluir paquetes de cadena cruzada (es decir, un conjunto de transacciones):
esto permite una extracción de MEV más eficiente por súper constructores(es decir, constructores de cadena cruzada) al realizar acciones de cadena cruzada, ya que ya no tienen que tasar el riesgo de que una pierna del paquete de cadena cruzada pueda fallar. La sincronía aquí puede proporcionarles implícitamente atomicidad.
Ahora, ¿cómo hacemos esto sin confiar completamente en el constructor y/o proponente activo para el secuenciador compartido? Si solo enviamos dos transacciones firmadas de manera independiente (t1y t2) para cada rollup, el secuenciador compartido aún podría decidir incluir solo uno u otro.
por ejemplo, hoy en día no hay noción de un formato de paquete nativo en el EVM, por eso los buscadores confían totalmente en los constructores/relays para no desempaquetarlos. Cualquiera que vea un paquete de transacciones firmadas independientemente antes de que sean comprometidas por el líder actual puede desempaquetarlos. Esto generalmente está bien, porque los constructores y relays tienen incentivos para mantener sus reputaciones y proteger los paquetes de búsqueda, pero cuando se rompe esa confianza (o son engañados por participantes deshonestos para revelar las transacciones),desagregar puede ser increíblemente rentable.
aquí necesitamos una garantía de seguridad mucho más fuerte si queremos una verdadera interoperabilidad entre cadenas. no estamos hablando solo de tomar dinero de un buscador. si los contratos defi entre cadenas se diseñaran bajo la suposición de que los paquetes entre cadenas serán respetados, pero luego esta confianza se rompe, los resultados serían catastróficos para esos protocolos (por ejemplo, en un paquete de puente entre cadenas de quema y creación de monedas, podrías omitir la quema pero crear fondos en el otro lado).
necesitamos garantías de seguridad inquebrantables para implementar la interoperabilidad entre cadenas. esto significa que debemos definir un formato de transacción que asegure que múltiples transacciones en un paquete de intercambio de cadenas se incluyan juntas. si una se incluye sin la otra, necesitamos una garantía de seguridad de que la que se incluye es inválida.
Esto significa que necesitamos crear una nueva estructura de transacciones para paquetes de cadena cruzada que no pueden ser desagregado. la solución ingenua es "hagamos simplemente un nuevo tipo de transacción para estos rollups", pero eso no es tan fácil. requeriría cambios en la máquina virtual para estos rollups, perdiendo la compatibilidad hacia atrás. También acoplarías estrechamente los rollups al modificar sus máquinas de estado de manera que cada transacción solo sea válida junto con la otra al ser incluida.
Sin embargo, hay una forma más limpia de hacer esto. Puede hacer que cada transacción del paquete también firme el hash del paquete y, a continuación, anexe el resumen del hash a un campo de transacción libre (por ejemplo, calldata en la EVM). El paquete acumulativo debe modificar su canalización de derivación para comprobarlo, pero la máquina virtual puede permanecer sin cambios. Con esto en su lugar, los usuarios de Rollup podrían enviar paquetes de cadena cruzada que están seguros de que no se pueden desagregar. Intentar hacerlo los invalidaría.
fuente: Ben fisch
garantías de inclusión vs. garantías estatales
con lo anterior en su lugar, ahora hemos establecido cómo un secuenciador compartido perezoso:
Desafortunadamente, la inclusión atómica por sí sola es una garantía mucho más débil. Este compromiso con la inclusión atómica es suficiente para que el constructor tenga una gran confianza en que el bloque de acumulación cruzada que crea creará el estado resultante que desea si se confirma. El constructor necesariamente conoce el estado resultante del bloque, porque lo ejecutó para construirlo.
Aún así, tenemos un problema: ¿cómo sabe todo el mundo con certeza cuál será el estado?
considera un ejemplo:
si presentamos un paquete adecuado, el secuenciador perezoso puede garantizar que la transacción de quema se incluyó en el flujo de transacciones para ra, pero no se sabe, por ejemplo, si tal vez otra transacción llegó antes que ella y la invalidó (lo que significa que las fichas no se quemaron realmente).
El simple hecho de compartir un secuenciador diferido no es suficiente para permitir que las cadenas accedan a los estados de los demás durante la ejecución del paquete. La componibilidad sincrónica requiere la capacidad de la máquina de estados de cada cadena para acceder al estado de la otra cadena (por ejemplo, el propio contrato de puente en RB necesita conocer el estado de RA) en el momento de la ejecución. Esa capacidad es exactamente lo que permite la componibilidad completa dentro de una sola cadena integrada.
el constructor no puede simplemente decirle a los contratos 'confía en mí, hermano, saldrá bien'. Vemos que la inclusión atómica es una herramienta útil para los buscadores que confían en los constructores para ejecutar correctamente sus paquetes, pero no es suficiente para abstraer la interoperabilidad entre cadenas.
para solucionar esto, necesitamos agregar algún otro mecanismo además de la secuenciación compartida:
como mencionamos, el constructor personalmente sabe cuál será el estado resultante si el paquete se incluye atómicamente. ¿Entonces, cómo pueden proporcionar un compromiso creíble para convencer a todos los demás sobre cuál será el estado resultante si se incluyen sus transacciones?
ampliamente tienen dos opciones:
vamos a ver un ejemplo para ver cómo la criptoeconomía podría simular los efectos de la componibilidad síncrona. el ejemplo clásico utilizado es el de un préstamo relámpago entre cadenas. Quiero sacar un préstamo flash en ra, usarlo para un arbitraje en rb y devolverlo en ra en el mismo espacio de tiempo. Esto es posible si estos protocolos defi implementan una funcionalidad personalizada de cadena cruzada con lo que llamaremos 'contratos bancarios' en cada lado:
ahora, en cuanto a ese problema de seguridad, el contrato en ra y rb necesita conocer los estados de cadena del otro para hacer esto de manera segura, pero no hemos hecho nada al respecto. Bueno, la "solución" criptoeconómica aquí es en realidad bastante rudimentaria: haces que el superconstructor actúe como proveedor de liquidez y ponga el valor completo del préstamo flash. Si las transacciones fallaran, entonces el protocolo de préstamos simplemente se queda con su participación de todos modos. Puedes ver por qué esta no es la solución más satisfactoria.
qué es
el AggLayeres un protocolo descentralizado que proporciona tres beneficios principales:
fuente: Brendan farmer,Blockchain agregados
aclarar dos conceptos erróneos comunes sobre lo que no es el aglomerado:
ahora veamos cómo funciona.
la construcción de puentes apesta
conectar entre rollups hoy es complicado. Digamos que quieres conectar eth entre dos rollups optimistas de Ethereum (ORU).unay orob:
Puede pensar que los ZK Rollups resuelven esto desde el principio, pero en realidad no es así. Las implementaciones ingenuas aún requieren que envíe transacciones L1, lo que nuevamente es costoso y generalmente bastante lento (por ejemplo, debido a los tiempos de finalidad de Ethereum, los tiempos de generación de pruebas, la frecuencia con la que se publican las pruebas en la práctica, etcétera).
Los usuarios no quieren lidiar con esto. Quieren simplemente tener fondos y usar aplicaciones. El puenteo debería estar completamente abstraído - los activos deberían ser fungibles y moverse rápidamente, a bajo costo y de forma segura.
Aquí es donde entra en juego compartir un contrato puente. Un contrato de puente compartido abre la puerta a que las cadenas lo utilicen para tender puentes directamente entre sí sin pasar por la L1.
Los tokens también pueden ser fungibles en todas las aggchains como resultado. Conectando ETH desde Run → rb o rc → rb quema y acuña la misma ficha. No es un activo envuelto en cerradura y acuñación. Es ETH nativo. Esto es posible porque todos los activos se depositan juntos y se liquidan a través del puente unificado. Este es un punto débil importante para las L2 hoy en día que debe abordarse.
sin embargo, tenga en cuenta que un usuario que tenga eth en runa Vs. Rbpodría tener un perfil de riesgo diferente si las diferentes cadenas usan verificadores diferentes (por ejemplo, tal vez te hayas mudado de una cadena segura a una con un error de circuito). los perfiles de riesgo no cambian entre las cadenas que utilizan estándares comunes aquí (que en la práctica es la norma hoy en día). estándares más uniformes y verificación formal solo mejorarán esto con el tiempo incluso a medida que se agregan dominios heterogéneos.
pruebas pesimistas
Las aggchains envían sus actualizaciones de estado y pruebas a los nodos apostados de Agglayer que las organizan, generan compromisos con todos los mensajes y crean pruebas recursivas. a continuación, agglayer genera una única prueba de zk de aggreGate.iod (a la que llaman "prueba pesimista”) para establecer todo lo relacionado con las cadenas de agregación en ethereum. Debido a que la agregación de pruebas aquí amortiza los costos a través de cualquier cantidad de cadenas arbitrarias, es práctico desde una perspectiva de costos publicarlos en ethereum para un rápido establecimiento lo antes posible. El programa de prueba pesimista está escrito en código Rust regular, utilizando zkvm sp1 de Succinct para facilitar el desarrollo y el alto rendimiento.
estas pruebas pesimistas refuerzan:
con esto, el agglayer asegura que el asentamiento ocurra en ethereum solo si y solo si se cumplen las condiciones anteriores. si no se cumplen, entonces las cadenas respectivas no pueden liquidarse. como tal, el agglayer puede permitir que un coordinador (por ejemplo, un secuenciador compartido o un constructor) pase mensajes entre cadenas con baja latencia sin confiar en ese coordinador para la seguridad.
interoperabilidad rápida y segura entre cadenas cruzadas
Las cadenas de agregación pueden utilizar las garantías proporcionadas aquí tanto en entornos de interoperabilidad asincrónica como síncrona para expresar restricciones sobre la validez del bloque en relación con otros rollups.
Esto permitiría a los usuarios enviar paquetes de cadena cruzada que deben ejecutarse correctamente de manera atómica en ambos lados. No solo la inclusión atómica. De hecho, se está haciendo cumplir que el estado resultante de ellos debe ser exitoso. Esto es perfecto para complementar exactamente lo que describimos como deficiente en las garantías de inclusión atómica de un secuenciador compartido solo.
fuente:Brendan agricultor, Cadenas de bloques agregadas
tomando nuestro ejemplo anterior:
Para que esto se resuelva correctamente en Ethereum, ambas partes del paquete deben ejecutarse correctamente. Si falla uno de los lados, los bloques serían inválidos y no se podrían resolver. Eso significa que si el secuenciador compartido firmó un bloque en el que no se quemó ETH en R.unapero acuñado eth en rbSi se encontrara una prueba de trabajo más larga en otra cadena, se produciría una reorganización de ese bloque. Esto garantiza la seguridad de todas las cadenas y evita que se resuelvan acciones deshonestas entre cadenas.
hay dos puntos a tener en cuenta con respecto a estas reorganizaciones:
estas reorganizaciones deben ser extremadamente raras y mínimas debido a los puntos anteriores, pero debido a esto, las aggchains tendrán control total sobre qué cadenas desean componer de manera atómica y bajo qué supuestos de confianza. por ejemplo, runpuede aceptar un estado de cadena de rb para componer con basado en el consenso de su secuenciador, pero para rcpuede que también solicite una prueba enviada, y para rdquizás quieren que aseguren cripto-económicamente todas las dependencias atómicas entre cadenas cruzadas. cada cadena puede hacer sus propios compromisos personalizables aquí para baja latencia y vivacidad. agglayer simplemente proporciona la base máximamente flexible y mínimamente dogmática para que las cadenas tengan interacciones seguras entre cadenas cruzadas.
También puede ver aquí por qué un diseño de este tipo es en la práctica incompatible con un diseño basado en fallos. En teoría podrían hacer esto, pero en ese caso sería posible experimentar reorganizaciones increíblemente profundas. Probar y resolver rápidamente todas las cadenas hace que el peor de los casos sea muy corto, lo que también actúa como un elemento disuasorio natural para cualquier intento malicioso.
aislamiento de fallas para demostradores heterogéneos
Es importante destacar que el Agglayer permite de forma única cadenas completamente heterogéneas. Puede tener un AggChain con cualquier máquina virtual personalizada, Prover, capas DA, etcétera mientras comparte un puente de forma segura con todos.
¿Cómo es posible esto? La razón por la que esto normalmente no es aceptable es porque un único participante defectuoso (por ejemplo, con un error de circuito) normalmente podría engañar a un puente y drenarlo de todos los fondos. Bueno, ahí es donde entra la prueba de contabilidad intercadena mencionada anteriormente. Estas pruebas aseguran que se respeten todas las invarianzas del puente, de modo que incluso en el caso de un probador no válido, solo se podrían drenar los fondos depositados en la cadena afectada. La falla está completamente aislada.
neutralidad creíble
Este tipo de infraestructura se ve muy beneficiada por una neutralidad creíble, por lo que la Código totalmente abierto IFOR Agglayer es territorio neutral.En un espíritu similar, el AggLayer utilizará eth como el único token de gas para pagar las tarifas de agregación de pruebas.
sin embargo, ciertamente no es perfecto. especialmente al principio, no será totalmente neutralmente creíble. es probable que haya una capacidad de actualización del contrato en el camino hacia la inmutabilidad y la consagración como un bien público.
Dicho esto, no tiene que ser perfectamente neutralmente creíble, nada lo es. (Veremos esto de nuevo a continuación con los rollups basados). En la práctica, ofrece probablemente la visión técnica más convincente y competitiva, y adopta una actitud intencionalmente minimalista hacia el bloqueo y la extracción de alquileres. El objetivo es permitir que las aggchains mantengan tanta soberanía como sea posible, al tiempo que pueden abstraer la composabilidad intercadenas minimizada de confianza.
Las aggchains no necesitan ninguna máquina virtual específica, entorno de ejecución, secuenciador, capa de datos, token de participación, token de gas o gobierno común. Las cadenas pueden salir cuando lo deseen. No hay requisitos de reparto de ingresos. No necesitas desplegar como un l3 en la cadena de otra persona.
las razones para lanzar l3s encima de l2s generales han sido en su mayoría, en mi opinión, soluciones temporales mientras se construyen arquitecturas similares a la capa de agregación. Sin embargo, hay que dejar claro que esta es una razón totalmente válida para lanzarlos hoy. La capa de agregación v1 es solo un contrato de puente compartido simple. La v2, con agregación de pruebas y la capacidad de obtener una interoperabilidad segura y de baja latencia, ni siquiera está en funcionamiento. No se puede esperar que la gente espere durante años cuando tienen la urgencia de lanzar algo hoy que les brinde la distribución más rápida.
Si bien faltan varios años para ser práctico en cualquier configuración de baja latencia, debemos tener en cuenta que la prueba en tiempo real también podría usarse junto con la secuenciación compartida para la seguridad entre cadenas. También es genial, así que lo cubriremos brevemente. Más específicamente, la prueba "en tiempo real" se refiere a los tiempos de prueba que son más cortos que los tiempos de ranura de la cadena en cuestión. Consideremos de nuevo el ejemplo del puente de acuñación y quemadura entre cadenas:
Ya teníamos la garantía del secuenciador compartido de la inclusión del haz atómico síncrono, y ahora cada contrato puede verificar una prueba del estado de la otra cadena para saber que se ejecutará correctamente.
para la demostración en tiempo real, idealmente queremos que el tiempo de demostración sea solo una pequeña fracción del tiempo total de la ranura, maximizando así la "ventana de sincronía". esta es la parte del tiempo de la ranura en la que puedes procesar transacciones que operarían de forma sincrónica entre cadenas, ya que necesitas presupuestar suficiente tiempo en la ranura para crear la prueba y colocarla en el bloque.
fuente: Justin drake, demostración en tiempo real
Tenga en cuenta que implícitamente terminaríamos fusionando o colocando constructores y probadores aquí. Existe un claro incentivo para que los constructores optimicen las velocidades de prueba para que puedan construir hasta el último segundo y encajar tanto como sea posible en su bloque.
fuente: Justin Drake, demostrando en tiempo real
si este alto incentivo para la demostración en tiempo real se materializa en los próximos años, también debemos tener en cuenta que esto, por supuesto, no es en absoluto favorable para la demostración descentralizada. los probadores deberían ser relativamente centralizados, ya que se fusionan o se instalan junto con los constructores.
La componibilidad sincrónica universal es realmente genial, pero no está muy claro qué tan valiosa es en realidad. Internet es asincrónico y nunca lo sabrías. Esto se debe a que es rápido y la complejidad se abstrae. Eso es todo lo que quieren los usuarios.
Espero que la mayor parte del valor de usar algo como Agglayer no esté solo en la configuración síncrona. Más bien, es el hecho de que puede actuar como una forma de abstracción de cadena cruzada de rollup. Hacer que muchas cadenas se sientan más como una con los aspectos orientados al usuario que importan (por ejemplo, activos nativos más fungibles, funcionalidad de aplicación nativamente intercadenas, interoperabilidad rápida, etc.).
La componibilidad sincrónica es claramente valiosa desde el punto de vista financiero (por ejemplo, permitir liquidaciones, arbitraje más eficiente, refinanciamiento más eficiente mediante préstamos flash). Sin embargo, al igual que Internet es asíncrono y funciona bien, TradFi es, por supuesto, asíncrono. Es razonable querer ser incluso mejor que TradFi, pero debemos tener claro que la sincronicidad universal no es un requisito para una buena ejecución. También hay un costo real para construir y proporcionar infraestructura síncrona.
personalmente creo que el mejor argumento a favor de necesitar usc es que en la práctica conduce a una mejor experiencia de usuario y desarrollo. Es imposible negar el enorme beneficio que esto ha sido para ecosistemas como Solana. Sin embargo, esperemos que esto sea más un problema actual y no un problema eterno.
El simple hecho del asunto es que también es algo difícil para cualquiera razonar en esta etapa. Esto no es un binario "todo en cripto es sincrónico" o "todo es asincrónico." Creo que fundamentalmente tendremos que resolver y gravitar hacia este último, pero ambos pueden existir de manera ad hoc.
Bien, ahora deberíamos tener una buena idea del espacio de solución para abordar la fragmentación en los rollups. La siguiente pregunta es, ¿cómo deberíamos involucrar la capa base en todo esto? ¿Cuál es el papel de Ethereum aquí?
utilizaremos las siguientes abreviaturas a lo largo de:
a menos que se indique lo contrario, el bl en cuestión del que hablaremos es ethereum, y los brs son ethereum brs. Sin embargo, los conceptos básicos se aplican ampliamente, ya que podrías lanzar brs en cualquier lugar.
las implementaciones iniciales de rollup hace varios años fueron en realidadplaneado para ser brs, pero eran abandonado a favor de secuenciadores centralizados para baja latencia y alta eficiencia. Lo que ahora llamamos secuenciación basada, Vitalik se refiere a ella como "anarquía total“en ese momento. era relativamente impráctico e ineficiente antes de la evolución de la infraestructura de PBS de Ethereum (con constructores sofisticados).
Los brs fueron entonces llevados de vuelta al centro de atención en marzo de 2023,donde se definieron de la siguiente manera:
“Se dice que un rollup está basado, o secuenciado por L1, cuando su secuenciación es impulsada por la base L1. Más concretamente, un rollup basado es aquel en el que el próximo proponente L1 puede, en colaboración con los buscadores y constructores L1, incluir sin permiso el siguiente bloque de rollup como parte del próximo bloque L1.”
deberían ofrecer los siguientes beneficios:
“la secuenciación de dichos rollups, basada en la secuenciación, es máximamente simple y hereda la vitalidad y descentralización de l1. Además, los rollups basados están particularmente alineados económicamente con su base l1.”
Específicamente, obtienes la seguridad en tiempo real de ethereum:
«heredas la resistencia a la censura y la actividad de Ethereum. Entonces no solo tienes las garantías de liquidación de Ethereum, sino que también tienes la resistencia a la censura, la resistencia a la censura en tiempo real, no la retardada que conoces con la puerta de escape, sino la de tiempo real».
Ser un rollup basado es el diseño lógico una vez que hayas elegido una capa base:
"Ethereum está maximizando estas dos propiedades, seguridad y neutralidad creíble, es casi la definición de un derecho de rollup... Un rollup es aquel que ya ha comprado la suposición de seguridad de Ethereum. No está agregando una nueva suposición de seguridad. No estás cayendo en un eslabón más débil. simplemente está reutilizando la suposición de seguridad existente. Y dos, ya has aceptado Ethereum como una plataforma creíblemente neutral, de lo contrario habrías elegido otra cadena. Y ahora puedes preguntarte por qué no todo el mundo utiliza la secuenciación de la capa uno".
en su forma más simple, los brs ciertamente pueden lograr los objetivos de diseño anteriores. si el rollup no implementa su propio secuenciador, entonces implícitamente el proponente actual de ethereum decide qué se incluirá cada 12 segundos (tiempo de ranura de ethereum).
sin embargo, la secuenciación basada todavía tiene sus desventajas, que es exactamentepor qué los rollups suelen implementar su propio secuenciador:
¿Entonces, podemos tener nuestro pastel y comérnoslo también? entrar basado preconfs.
Aquí explicaremos brevemente la intuición detrás de los preconfs basados en BRS para que podamos compararlos con los rollups tradicionales. Más adelante, volveremos para analizar los preconfs con mayor detalle en general (es decir, tanto los preconfs de BR como los de BL en las transacciones de Ethereum L1).
La idea principal es que los preconfs de br deben provenir de los proponentes de bl. Para proporcionar preconfs, estos proponentes deben poner alguna garantía (por ejemplo, re-estacar) y optar por condiciones adicionales de reducción (es decir, que los preconfs que proporcionen realmente lleguen a la cadena, como se prometió). Cualquier proponente dispuesto a hacerlo puede actuar como un secuenciador de br y proporcionar preconfs.
debemos tener en cuenta que los proponentes (es decir, validadores) se espera que deleguen este papel de proporcionar preconfs a entidades más especializadas conocidas como “Gate.ioways”. la entrega de preconfs requerirá una entidad relativamente sofisticada, y ethereum quiere mantener a los proponentes poco sofisticados.
sin embargo, se espera que los relés existentes también asuman este papel. El Gate.ioway solo actuaría como interfaz entre el usuario y el relé, por lo que agregar otra entidad independiente solo agrega complejidad y latencia (aunque la latencia también podría abordarse con la co-ubicación). El relé ya es confiable para los constructores y proponentes, por lo que estaríamos agregando otro requisito de confianza en ellos por parte de los usuarios aquí.
ten en cuenta que si bien los validadores actualmente actúan como proponentes de bloques de Ethereum, se está considerando una actualización mediante la cual el propio protocolo subastaría directamente los derechos de propuesta a través deSubastas de ejecución. Esto permitiría a entidades sofisticadas comprar derechos de propuesta directamente, evitando así la necesidad de que los validadores (los proponentes actuales) deleGate.io a ellos como se contempla aquí.
en cualquier caso, el punto importante es que cualquier preconf más rápido que el consenso de ethereum (12s) requiere un tercero de confianza (ttp). ya sea que tu ttp sea un validador restante, apostadoSubasta de ejecuciónganador, deleGate.io de Gate.io, o cualquier otra cosa - fundamentalmente no puede proporcionar seguridad en tiempo real para ethereum. ya sea que coinbase te esté dando un "preconf basado" como proponente de ethereum o un "preconf tradicional" como secuenciador de rollup - estás confiando en coinbase. del mismo modo, pueden depositar una fianza de algunos eth, pero en cualquier caso esto es independiente de la seguridad del consenso de ethereum.
debemos notar entonces que cualquier diseño preconf basado necesariamente resta valor a los objetivos declarados de brs con los que comenzamos (simplicidad y seguridad bl).Las preconfs basadas son cada vez más complejas, y no pueden proporcionar las garantías de seguridad en tiempo real de ethereum.
sin embargo, deberías conservar la capacidad de forzar una transacción directamente a través de una transacción bl si estos preconfers se desconectan o comienzan a censurar. estas garantías de ethereum deberían ser aún más fuertes cuando listas de inclusión se implementan.
para brs - ttps proporciona preconfirmaciones rápidas, y el bl proporciona seguridad eventual.
ahora consideremos un rollup tradicional (es decir, no basado). su propio secuenciador (ya sea centralizado o descentralizado) brinda preconfirmaciones rápidas. más tarde, sus usuarios obtienen plena seguridad de ethereum con retraso. esto incluye la vivacidad (crecimiento del libro mayor + resistencia a la censura) que proviene de algún tipo deinclusión forzada o Respaldo de BLmecanismo.
Como señalé en ¿Los rollups heredan la seguridad?:
los rollups tienen la capacidad de exponer reglas de confirmación con propiedades de seguridad equivalentes a las de su cadena principal. Pueden recibir estas propiedades a lo sumo a la velocidad del consenso de su cadena principal (y en la práctica, a menudo es un poco más lento dependiendo de la frecuencia con la que el rollup publique en la cadena principal).
Los rollups también pueden proporcionar una regla de confirmación más flexible (es decir, los secuenciadores) para una mejor experiencia de usuario, pero conservan la opción de fallback en caso de fallo. Si tu secuenciador se detiene, puedes seguir avanzando.
ten en cuenta que la tiempo para seguridad eventuales la variable clave a optimizar aquí:
la suposición de que los usuarios de rollup pueden retroceder a una vivacidad equivalente a la cadena principal asume que se puede obtener inclusión forzada exactamente a la velocidad de los bloques de la cadena principal (por ejemplo, si el secuenciador de rollup te está censurando, que puedes forzar la inclusión de transacciones en el siguiente bloque de ethereum).
en la práctica, generalmente hay un breve retraso. si permites la inclusión forzada inmediata, podrías exponer censura rentable mev entre otras complejidades. sin embargo, hay diseños que pueden proporcionar garantías de vivacidad casi en tiempo realdesde la cadena de anfitrión (por ejemplo, tal vez a la velocidad de unos pocos bloques de la cadena de anfitrión en lugar de un bloque).
en este espíritu,Sovereign labs tiene un diseñoque hace lo siguiente:
para los no-brs: ttps proporciona preconfs rápidas y el bl ofrece seguridad eventual.
como podemos ver, ambos caminos descritos anteriormente producen el mismo resultado efectivo:
Estos brs con preconfs ya no proporcionan la simplicidad o la seguridad en tiempo real de Ethereum. Entonces, ¿cuál es el punto de todo esto ahora? ¿Por qué no simplemente reforzamos los fallbacks en los rollups “tradicionales”? ¿Qué diablos es un rollup “basado” en este punto?
esto realmente vuelve a míPrueba de gobernanza Publicación del año pasado en la que discutí los casos de uso fundamentales para el replanteamiento específico de Ethereum:
1) técnico (compromisos del proponente) - no hay forma de evitarlo - si quieres un compromiso creíble con el ordenamiento de un bloque de Ethereum, tiene que provenir de los validadores de Ethereum.MEV-Boost++es un ejemplo de una aplicación hipotética que podría caer en esta categoría.
2) social: considero que la alineación de Ethereum es el caso de uso principal para la mayoría de las aplicaciones de restaking hoy en día, no la agrupación de seguridad económica o descentralización. Está llegando a decir " mira, somos un proyecto de EthereumEs por la misma razón que las cadenas siguen llamándose ethereum l2s.independientemente de la arquitectura.
Podemos modernizar esto en el contexto de preguntarnos ¿cuál es el valor de un "br + preconfs" sobre un "rollup tradicional + reserva rápida"?
1) técnico (compromisos del proponente) - ethereum brs con preconfs tienen un beneficio técnico fundamental: pueden obtener un compromiso creíble del proponente actual de ethereum con respecto a la inclusión y el ordenamiento de los contenidos de un bloque de ethereum. Esto es potencialmente valioso por las mismas razones por las que potencialmente queremos que un montón de rollups compartan un secuenciador. Si el proponente de bl también es el proponente de br (es decir, el secuenciador), entonces pueden proporcionar las mismas garantías de inclusión atómica con el bl que se pueden obtener entre cualquier rollup que comparta el secuenciador. Tienen un monopolio en ambas cadenas. Ahora bien, ¿cuánto valor tiene esto? Volveremos a eso en un momento.
2) social (alineación/neutralidad creíble) - te encante o lo odies,Alineación de Ethereumes un punto de venta para ser un br. Voy a ser honesto, no sé mucho sobre taiko más allá de que son los chicos de br, y probablemente no sabría quiénes son si no fueran los chicos de br. Todos quieren un buen co-marketing. Hay valor en ser los primeros en moverse aquí, pero sospecho que este no es un valor duradero y no se aplica a muchos futuros posibles brs. De manera similar, todos hemos oído hablar de los primeros puñados de avs, pero ¿puedes nombrar todos los actuales? Yo no puedo.
A un nivel más alto, no lograrás que todos los rollups de Ethereum opten por el (hipotético) "optimism shared sequencer" o el "arbitrum shared sequencer". Sin embargo, tienes más posibilidades de lograr que todos opten por el "ethereum shared sequencer". Sin nuevo token, sin nueva marca, sin nuevo consenso. Si crees que es valioso que todos los L2 de Ethereum se unan en la secuenciación, entonces esta neutralidad creíble es potencialmente el punto de Schelling más fuerte para lograr ese objetivo.
Esta neutralidad creíble es probablemente la más valiosa para los desarrolladores de rollups que intentan atraer a usuarios de diferentes ecosistemas (por ejemplo, aplicaciones con infraestructura básica como ens). Pueden dudar en usar el secuenciador de Optimism si alienará a los usuarios de Arbitrum, o viceversa.
cubriremos cada uno de estos en más detalle a continuación.
Profundizando en ese punto social, los BR a menudo se ven como la opción más "alineada con Ethereum". Dejando a un lado el juicio de cualquiera sobre el valor de esto, el punto importante es que esto presupone un alto grado de neutralidad creíble para cualquier diseño de BR.
Un br neutralmente creíble es fácil de diseñar en el caso básico, pero como señalamos, nadie realmente los quiere. Por lo tanto, las preconfs requieren que el proponente opte por condiciones adicionales de slashing. Estas condiciones adicionales de slashing requieren que el proponente utilice algún sistema adicional (por ejemplo, potencialmente el restaking de la capa propia,Simbiótico, u otra norma) para asumir el compromiso. Un rollup puede estar feliz optando por el "secuenciador de Ethereum" creíblemente neutral en abstracto, pero es probable que se pierda la neutralidad creíble si está utilizando proyectos financiados con fondos privados, tal vez incluso con tokens propios.
hay varias preguntas abiertas sobre el colateral aquí:
tamaño del colateral
Los diseños iniciales han supuesto que los proponentes tendrían que poner personalmente una cantidad increíblemente alta de garantía de alrededor de 1000 eth. El problema es que fundamentalmente un proponente siempre puede retractarse de su promesa de delegar a Gate.io y construir un bloque por sí mismo, equívocamente en los prefijos. Esto puede ser increíblemente valioso, y 1000 eth está cómodamente por encima de los pagos más altos observados que han pasado por MEV-Boost desde su inicio. La desventaja es que esto, por supuesto, crea necesariamente una barrera alta para los proponentes más pequeños, mientras que los más grandes (por ejemplo, Coinbase) podrían poner razonablemente 1000 eth mientras ganan recompensas en todo su peso de inversión.>13% del total de eth apostado) porque los registrantes pueden presentar un solo bono para todos sus validadores. hay Otras ideas para permitir a los proponentes con bonos mucho más pequeños, aunque, por supuesto, vienen con compromisos. El espacio de diseño aquí es simplemente incierto.
vale la pena señalar quesubastas de ejecución aliviaría esta preocupación, ya que podemos suponer que todos los proponentes serían entonces actores sofisticados fácilmente capaces de esto.
fuente: Barnabé monnot, de mev-boost a epbs a aps
Sin embargo, incluso los grandes operadores dudan en poner grandes cantidades debido a posibles problemas de disponibilidad que podrían resultar en penalizaciones (un fallo en la disponibilidad por parte de un operador, que da lugar a que nuestras transacciones previas se pierdan antes de ser incluidas en un bloque, es un fallo de seguridad para los usuarios y debe ser penalizado severamente).
Tipo de colateral
Vanilla ETH es probablemente la única garantía creíblemente neutral en esta situación. Sin embargo, naturalmente existirá el deseo de utilizar activos más eficientes en términos de capital (por ejemplo, STETH). Hay algunas ideas para que un suscriptor se encargue de esta conversión, como se describe en mteam aquí.
plataforma
no sería muy 'crediblemente neutral' si las 'preconfs basadas en ethereum' son más como las 'preconfs basadas en eigenlayer' o las 'preconfs basadas en simbiótica'. hay equipos que planean ir en esta dirección, pero no es un requisito estricto utilizar tal plataforma. es posible crear un estándar general y neutral para que todos lo utilicen, y dicho sistema parecería estar mejor posicionado para su adopción general como la opción más basada.
Será necesario adoptar estándares de bien público para que los diseños previos basados sean "creíblemente neutrales".
ahora cubriremos preconfs en mayor detalle. si bien discutimos un tipo específico de preconf anteriormente (preconfs br en estado), debemos tener en cuenta que son un concepto totalmente general. puedes ofrecer preconfs en transacciones bl además de brs, y puedes ofrecer diferentes niveles de preconfs:
lo último (preconfs del estado) es, por supuesto, lo que los usuarios quieren que sus billeteras les muestren:
intercambié 1 eth por $4000 usdc y pagué 0.0001 eth en comisiones
no inclusión preconfs:
mi transacción intentando intercambiar 1 eth por $4000 usdc y pagando hasta 0.0001 eth en tarifas eventualmente aterrizará en la cadena, pero tal vez tenga éxito, tal vez falle, veremos
Sin embargo, debemos tener en cuenta que las inclusiones preconfs son efectivamente intercambiables con las inclusiones de estado en el caso de las acciones tomadas por el usuario en un estado no discutible (por ejemplo, transferencias simples donde solo el propio usuario puede invalidar la transacción). En este caso, una promesa de que, por ejemplo, "la transferencia de USDC de Alice a Bob se incluirá en los próximos bloques" es suficiente para que una billetera simplemente muestre al usuario "has enviado tus USDC a Bob".
no es sorprendente que los compromisos más fuertes (preconfs estatales) sean más difíciles de obtener. Fundamentalmente, requierencompromiso creíbledesde la entidad que actualmente tiene el monopolio de proponer bloques (es decir, un bloqueo de escritura en el estado de la cadena). en el caso de las preconfederaciones de ethereum l1, este es siempre el proponente actual de ethereum l1. en el caso de las preconfederaciones de br, esto es presumiblemente el próximo proponente de ethereum l1 en la anticipación de br (lo que los convierte en el proponente actual de br), como veremos a continuación. proponente y secuenciador son términos generalmente intercambiables, siendo el primero más utilizado en el contexto l1 y el segundo en el contexto l2.
otra gran distinción que debemos hacer es qué tipo de estado están tocando estos preconfs:
Las preconfs son restricciones sobre el bloque que se puede producir en última instancia. En igualdad de condiciones, restringir inherentemente el espacio de búsqueda para los constructores solo puede reducir el valor potencial que pueden capturar al pedirlo. Eso significa que se devolvería menos valor al proponente. para que sea compatible con los incentivos, Gate.ioway debe cobrar una tarifa de preconf ≥ el MEV potencial perdido por restringir el resultado.
esto es lo suficientemente simple cuando la pérdida de MEV es ~0 (por ejemplo, en una transferencia de USDC). En este escenario, cobrar una tarifa fija nominal podría ser razonable. Pero tenemos un gran problema: ¿cómo valoramos las preconfs en un estado controvertido? Valorar las preconfs con anticipación frente a justo a tiempo parece que pagaría menos. Con todo lo demás igual, es más rentable para un constructor esperar hasta el último segundo posible para capturar y valorar con precisión el MEV.
Sin embargo, supongamos que hay suficiente demanda de usuarios para preconfs rápidas en el estado contencioso (teniendo en cuenta tanto a los buscadores sofisticados como a los usuarios normies), de modo que a veces habrá un precio de liquidación que sea beneficioso para todos. Ahora bien, ¿cómo se fija exactamente el precio de una preconf para una transacción en un estado contencioso que, de otro modo, podría incluir en cualquier momento de los próximos 12 segundos, renunciando potencialmente a oportunidades más rentables que ya no serían posibles?
Las preconfs sobre el estado disputado que se transmite a lo largo del bloque entrarían en conflicto con la forma en que los constructores crean bloques. La fijación de precios requiere estimar con precisión el impacto de MEV de incluirlo ahora en lugar de retrasarlo, lo que significa ejecutar y simular los posibles resultados. eso significa que Gate.ioway ahora necesita ser un buscador/constructor altamente sofisticado.
ya asumimos que Gate.ioway y relay se fusionarían. si necesitan seguir fijando precios preconfs, entonces también se fusionarán con el constructor. también aceptamos que usc aceleraría la fusión del constructor y el probador. también parece queSubastas de ejecuciónvenderá los derechos de proponente directamente a actores sofisticados (probablemente constructores) capaces de fijarles un precio.
esto pone la totalidad de la cadena de suministro de transacciones ethereum l1 y br en una caja que tiene un monopolio de escritura bloqueado en el estado de todas las cadenas durante ese período.
las políticas de ordenamiento del servicio preconf son poco claras (por ejemplo, ¿siempre se ejecutan en orden de llegada o se ordenan de otra manera). También es posible que Gate.ioway realice una subasta de todas las preconfs (por ejemplo, permitiendo a los buscadores hacer ofertas por las preconfs), aunque no está claro cómo sería ese diseño y necesariamente significaría una mayor latencia.
hay un problema de intercambio justo con preconfs donde la forma de Gate.io en realidad no está directamente incentivada para liberar la preconf.
considere el siguiente ejemplo:
En este escenario, el usuario puede terminar pagando por la preconf aunque en realidad no la reciba hasta el final de la ranura. Gate.ioway también podría dejarlo al final de la ranura si deciden que no es rentable incluirlo. esta retención por parte de Gate.ioway no es una falta objetivamente imputable (pero podría ser atribuible intersubjetivamente).
de hecho, en realidad hay un incentivo para que Gate.io retenga las preconfs hasta el final.Donde hay asimetría de información, hay MEV. mantener las transacciones privadas permitiría a un constructor tener una visión más actualizada del estado del mundo, lo que les permitiría tasar mejor el riesgo y capturar mev. no hay consenso sobre el conjunto de preconfs que se les da a los usuarios, por lo que Gate.io no puede ser considerado responsable aquí.
Tendrían que haber normas establecidasy expectativas de que el preconferidor chisme inmediatamente en público todas las preconfs. esto daría a los usuarios lo que quieren de inmediato y permitiría a otros ver que Gate.ioway está proporcionando los servicios esperados. si no lo hacen en el futuro, entonces los usuarios no confiarían en ellos y no les pagarían por las preconfs. la reputación de Gate.ioway tiene valor. dicho esto, también puede serExtremadamente valioso Ser deshonesto aquí y volver en contra de las preconfsiones.
con los puntos generales de la preconf fuera del camino, ahora discutiremos los matices de las preconf L1. aunque no los mencionamos antes, hay proyectos construyendo estos, y su interacción con las preconf BR será importante.
por ejemplo,Perno es un protocolo que quiere permitir a los proponentes de ethereum hacer compromisos creíbles sobre el contenido de sus bloques. Los proponentes registrados pueden ejecutar el sidecar de bolt para recibir solicitudes previas de los usuarios, confirmarlas y luego enviar esta información a relays y builders que pueden devolver bloques que respeten estas restricciones (es decir, devuelven un bloque que incluye las transacciones a las que el proponente dio preconfs).
es importante destacar aquí queBolt v1La descripción aquí solo admite inclusiones de transacciones simples preconfs para un estado no controvertido en el que solo el usuario puede invalidar la preconf. Como discutimos anteriormente, estos son los compromisos más simples y débiles para proporcionar.
Todos estos equipos de preconf tienen ambiciones más grandes (por ejemplo, preconfs estatales, subastas de bloques parciales, subastas de tragamonedas o de tragamonedas parciales), entonces, ¿qué los detiene?
mev-boost, un producto más simple con años de experiencia que es increíblemente rentable para ejecutar,>92% de participaciónpara el contexto (probablemente incluso un poco más alto ya que esto no tiene en cuentamin-bid. un nuevo servicio de preconfiguración seguramente obtendría una tasa de participación mucho menor. pero incluso si pudiera llegar al ~90% range, esto no parece ser un producto útil para los usuarios normales. no se puede decir a los usuarios el 10% del tiempo “oh lo siento, no hay preconfiguraciones disponibles en este momento, vuelva a intentarlo en un momento.”
En el mejor de los casos, esto parece que las preconfs estatales solo serían una herramienta opcional para buscadores y comerciantes sofisticados que puedan querer obtener un compromiso antes en el bloque cuando ese espacio tiene un proponente optado. Eso puede ser valioso, pero no hay fragmentación o mejoras de UX aquí.
Las preconfs de BR deben provenir de los proponentes de BL (por eso están "basadas"). Esto requiere que apuesten por alguna garantía y opten por condiciones de recorte adicionales (es decir, que los preconfs que proporcionen lleguen a la cadena como se prometió). Cualquier proponente que desee hacerlo puede actuar como secuenciador BR y proporcionar preconfs.
Es importante destacar que estos br preconfs son preconfs de estado, no solo preconfs de inclusión. Esto es posible porque los brs optan por un diseño en el que otorgan un monopolio de secuenciador rotativo a los proponentes de bl que se registran para ser Gate.ioways.
hoy, un validador de ethereum sirve como proponente para cada ranura, y el programa del proponente siempre se conoce para la época actual y la siguiente. una época son 32 ranuras, por lo que siempre conocemos los próximos 32-64 proponentes en un momento dado. el diseño funciona otorgando al siguiente secuenciador activo (es decir, el siguiente secuenciador en la mirada hacia adelante) poderes de monopolio para secuenciar transacciones para los brs que optaron por este sistema de preconfiguración. Gate.ioways debe firmar para avanzar en el estado de las cadenas de br.
Tenga en cuenta que cada proponente (incluso aquellos que no han optado por ser un Gate.ioway) tiene el derecho pero no la obligación de incluir transacciones que han sido preconfirmadas por los secuenciadores (es decir, aquellos proponentes que han optado por ser un Gate.ioway). Pueden actuar como un incluidor siempre y cuando tengan la lista completa de transacciones que han sido preconfirmadas hasta ese momento (el secuenciador puede crear un bl blob que tenga las transacciones br y difundirlas).
fuente: Secuenciación de Ethereum, justin drake
el flujo de transacción funciona de la siguiente manera:
fuente: Secuenciación de Ethereum, justin drake
si los otros incluidores no incluyen los preconfs, entonces el secuenciador que los dio simplemente puede incluirlos onchain cuando sea su turno como el proponente bl. por ejemplo, en la imagen de arriba, digamos que el incluidor de la ranura n decidió no incluir los preconfs que el secuenciador de la ranura n+1 entregó. entonces el secuenciador de la ranura n+1 sería responsable de incluir todos los preconfs que entregó durante la ranura n y la ranura n+1 cuando presente su bloque bl para n+1. esto permite al secuenciador dar con confianza preconfs durante el período completo entre ellos y quienquiera que haya sido el último secuenciador.
para simplificar las explicaciones anteriores, simplemente asumimos que el proponente l1 cumpliría este papel preconferido. Sin embargo, como se describió anteriormente, esto no es probable que sea el caso. Se requerirá una entidad sofisticada para fijar los preconfs, ejecutar nodos completos para todos los BR, tener protección contra DOS y ancho de banda suficiente para todas las transacciones de BR, etc. Ethereum quiere mantener a los validadores muy poco sofisticados, por lo que es de suponer que los proponentes subcontratarán preconfs a otra entidad de la misma manera que subcontratan la producción de bloques L1 completa a través de MEV-Boost hoy en día.
Los proponentes pueden deleGate.io a Gate.ioways a través de mecanismos dentro o fuera de la cadena, y esto se puede hacer hasta justo antes de su ranura. Como se señaló anteriormente, es probable que en la práctica esta función sea asumida por los relés. También es posible que tengan que fusionarse con los constructores.
fuente: Secuenciación basada, Justin Drake
como se describió anteriormente, solo una entidad puede ser deleGate.iod para ser el Gate.ioway en un momento dado. esto es necesario para proporcionar preconfs de estado confiables. los uis (por ejemplo, billeteras como metamask) buscarían quién es el próximo Gate.ioway y enviarían las transacciones del usuario allí.
con suficiente contexto ahora en su lugar - ¿deberían basarse los rollups de Ethereum? hay realmente dos preguntas incrustadas aquí:
En primer lugar, es importante tener en cuenta que puede compartir un secuenciador con otras cadenas de forma ad hoc. Por ejemplo, el proponente de Ethereum puede secuenciar un bloque para usted si ofrece la oferta más alta, luego algún otro consenso bft podría secuenciar su próximo bloque si ofrece la oferta más alta. Sin embargo, esto aún requiere que una cadena se integre completamente en esta subasta uniforme compartida que puede ejecutarse sincrónicamente con estas otras cadenas, por lo que aún existen compensaciones en cuanto al control y la flexibilidad (por ejemplo, tiempos de bloque compartidos). Solo que la entidad secuenciadora ganadora puede cambiar.
De todos modos, supongamos simplemente que se cumple la condición 1. Creo que en este punto tenemos evidencia convincente de que existe suficiente demanda para utilizar un secuenciador compartido descentralizado. Incluso si les importa menos el "aspecto compartido", creo que hay un valor increíble en poder comprar un secuenciador descentralizado como servicio directamente (de hecho, creo que este es el mayor valor aquí).
Ahora, ¿debería este secuenciador compartido ser un secuenciador basado en Ethereum?
técnico (compromisos del proponente)
No veo un argumento técnico sólido para usar un secuenciador basado en Ethereum. Cualquier interoperabilidad entre BRS y Ethereum L1 sería increíblemente limitada debido a la incapacidad de ejecutarse de manera confiable contra el L1 (es decir, no tener consistentemente un bloqueo de escritura en el estado L1), largos tiempos de bloque (12s) y el hecho de que las transacciones de BR que desearan interactuar con el L1 tendrían que reorganizarse junto con él. Aquí no hay almuerzo gratis. Esto no desbloquea ningún producto valioso orientado al usuario en comparación con cualquier otro secuenciador compartido externo.
el valor principal que veo es que agregar el ethereum l1 a esta subasta combinatoria más grande puede resultar en un mayor valor agregado creado por Gate.iopermitir que el l1 capture más valorLlevando esta lógica al extremo, probablemente deberíamos poner todo en el mundo en la misma subasta. Esta subasta universal también debería secuenciar boletos para conciertos de Taylor Swift. Todavía no estoy del todo allí.
esto es solo para resaltar que hay una complejidad técnica y social real en la creación y la adopción de todos en esta subasta compartida, lo cual tiene un costo real, que en mi opinión probablemente supera cualquier valor adicional teórico creado aquí. Se puede construir fácilmente un diseño técnico mucho mejor para ejecutar esto desde los primeros principios si no intentamos colocarlo encima de ethereum l1 (por ejemplo, simplemente tener un mecanismo de consenso rápido y simple construido para este propósito). sin mencionar el hecho de que tal subasta combinatoria crearía un aumento exponencial en la complejidad.
En la práctica, existe un riesgo significativo para mí de que esto pueda ser severamente contraproducente para Ethereum, ya que esta arquitectura basada en preconf parecería ser potencialmente aceleracionista en relación a la infraestructura de MEV cuando la cadena de suministro de Ethereum ya es algo frágil. Esto pone en riesgo la descentralización y la resistencia a la censura de la red, que son precisamente las cosas que la hacen valiosa desde el principio.
social (neutralidad creíble)
Veo un argumento social válido para un secuenciador basado en Ethereum.
como se mencionó anteriormente, no hay duda de que la "alineación" es una venta para los primeros br. Eso está bien, pero no creo que dure. Es genial ser el primer br, no es genial ser el octavo. Debe haber algún otro valor agregado.
Creo que la neutralidad creíble de un secuenciador basado en Ethereum es potencialmente ese valor. Es probable que sea el argumento más fuerte a favor de tal diseño, al menos. Hay muchas cadenas que quieren tener un secuenciador descentralizado listo para usar. Si finalmente podemos diseñar suficiente infraestructura sobre esto que mejore la experiencia de usuario entre cadenas, entonces aún mejor. Sin embargo, de los proyectos que quieren un diseño de este tipo, imagino que muchos de ellos dudan en "elegir un bando" con cualquier protocolo de terceros. Como se indicó anteriormente, imagine que es una cadena de aplicaciones con una infraestructura general básica como ENS y desea un paquete acumulativo. No querrás elegir el (hipotético) secuenciador compartido de Arbitrum y apagar a la multitud de optimismo, o viceversa.
posiblemente la única solución al problema de coordinación social aquí es tener un secuenciador compartido creíblemente neutral, para lo cual Ethereum es claramente el candidato más fuerte. Tenga en cuenta que esto pone aún más énfasis en los puntos que mencioné anteriormente sobre la neutralidad creíble - si este es el principal valor agregado de tal servicio, ese debe ser un objetivo de diseño increíblemente prioritario al crearlo. No funcionará si tiene la apariencia de ser el proyecto personal de algún protocolo de terceros con sus propios motivos de lucro. Tiene que ser el secuenciador compartido de Ethereum en realidad.
Vale la pena señalar que también hay críticas razonables de que "neutral" aquí es un código para "ethereum", es decir, que su principal motivación es beneficiar a ethereum y su infraestructura nativa circundante. Y, por supuesto, dicho sistema beneficiaría a estas partes. Significaría una mayor captura de valor para el activo ether y más rentabilidad para los creadores, relays y buscadores de ethereum.
Ahora debemos entender que puedes tener brs en una bl lenta como Ethereum, puedes agregar preconfs confiables para una experiencia de usuario más rápida, e incluso puedes garantizar la seguridad al moverte entre cadenas a través de garantías criptoeconómicas o criptográficas.
como se señaló, ¿qué pasa si simplemente diseñamos esta cosa desde cero? sin lidiar con la deuda técnica y las decisiones de una cadena existente. ¿cuál es la forma obvia de construir la cosa...
Anteriormente, discutimos cómo la única razón técnica para ser un br con preconfs para un bl dado (por ejemplo, Ethereum) es para que su proponente pueda proporcionar compromisos creíbles en momentos respecto a la inclusión atómica síncrona con el bl.
Sin embargo, no discutimos seriamente la capacidad de ser un br sin preconfs. Básicamente descartamos esto porque Ethereum es lento y los usuarios son impacientes.
¿Entonces por qué no usamos simplemente un bl rápido para brs?
esto resuelve prácticamente todos los casos límite complejos y preocupaciones que teníamos antes. no queremos casos límite extraños donde Gate.ioways tenga fallas de vida (que tienen el mismo resultado que las fallas de seguridad aquí), no queremos que se retracten de preconfesiones prometidas (es decir, fallas de seguridad), y no queremos reorganizaciones de ethereum. es exactamente por eso que existe el consenso.
la mayor parte de la conversación sobre secuenciadores perezosos los considera como un secuenciador de rollup que luego deposita sus datos en alguna otra capa de datos. por ejemplo, los dos primeros rollups de Astria,FormayLlama) usarán Celestia como su capa DA. El consenso de Astria secuenciará estos rollups, y luego transmitirá sus datos a Celestia.
esta combinación es especialmente buena porque son complementos obvios: Astria proporciona toda la infraestructura de secuenciación y Celestia proporciona una verificación minimizada de confianza a través demuestreo de disponibilidad de datos (das).
Sin embargo, Astria también podría utilizarse para secuenciar un rollup que sea nativo de Ethereum, Bitcoin, Solana o cualquier otra cosa que desee. Por ejemplo, incluso podría configurarse para ser utilizado como un preconfer para Ethereum "BRS con preconfs" (por ejemplo, en lugar de un Gate.ioway centralizado, ya que un secuenciador perezoso es básicamente solo un relé incentivado y descentralizado).
Para ser claros, cada cadena es una capa da. Los nodos completos siempre pueden comprobar si hay da. Es una parte de las condiciones de validez de cualquier cadena que los datos estén disponibles, por lo que el consenso siempre está firmando que los datos están disponibles. Los nodos ligeros que comprueban su aprobación obtienen una suposición de mayoría honesta. La única diferencia es si la cadena proporciona otra opción para que los clientes ligeros muestren directamente para da en lugar de preguntar al consenso.
sin embargo, como señalé en ¿Los rollups heredan seguridad?Cadenas rápidas como Astria podrían técnicamente agregar un camino lento para Das (para mejorar la verificabilidad), y cadenas lentas como Celestia podrían agregar un camino rápido para la secuenciación (con una suposición de confianza mayoritaria y sin Das), llamado "..."bloques rápidos cuadrados lentos.”
moverse hacia la integración vertical de capas especializadas como la secuenciación o das estrecharía aún más la distinción entre blockchains modulares e integrados. esto se aplica de manera similar a la integración vertical del capa de liquidaciónmediante la adiciónLas cuentas verificadoras de ZK a la capa base de celestia.
Sin embargo, hay un valor significativo en mantener estos servicios separados en lugar de agruparlos. Este es el enfoque modular que permite a los rollups elegir qué características desean de la estantería (por ejemplo, quiero comprar secuenciación descentralizada con bloques rápidos, pero no quiero pagar por das, o viceversa). Los investigadores han demostrado que quieren das, pero hasta ahora los usuarios solo han demostrado que quieren bloques rápidos.
agrupar servicios como en elbloques rápidos cuadros lentos“sería muy opinado e integrado. esto necesariamente agregaría complejidad y costo. el efecto de la longitud de la ranura en juegos de tiempoLa descentralización (y potencialmente) que ahora es omnipresente en Ethereum también es un factor a considerar.
pero también puedes usar astria como el bl para los rollups. Los secuenciadores compartidos pueden considerarse como bls que están optimizados para los brs propios.
cuando su BL es rápida, su BR no necesita preconfs porque obtiene confirmaciones rápidas de manera predeterminada! Luego su rollup obtiene la seguridad en tiempo real de su BL, a diferencia de los BR + preconfs que necesariamente pierden esto.
Los BRS sin preconfs son de hecho la forma más lógica de construir un rollup. Por eso, todos los rollups de hoy en día comenzaron allí:
Está claro que un BL con bloques rápidos soluciona la mayoría de nuestros problemas en "based rollups + preconfs". Los secuenciadores compartidos se construyen naturalmente más desde un enfoque de primeros principios de "los desarrolladores de aplicaciones solo quieren lanzar una cadena rápida, confiable y descentralizada, ¿cómo se la doy?" Intentar agregar preconfs después del hecho en una capa base más lenta como Ethereum resulta en las complejidades que hemos descrito anteriormente.
Así que, vimos cómo podemos volver a unir cadenas modulares de Gate.io, proporcionando composabilidad síncrona universal (usc). Por supuesto, hay compensaciones, pero reintroducen un grado significativo de unidad mientras preservan mucha más flexibilidad que el uso de una sola máquina de estado. También hay un argumento muy convincente para mí de que la composabilidad asíncrona es todo lo que necesitamos para la gran mayoría de los casos de uso. Necesitamos baja latencia, rendimiento y buena experiencia de usuario. Internet es asíncrono y funciona bastante bien abstrayendo todo eso. La composabilidad es un gran valor añadido de la criptografía, pero composabilidad ≠ sincronía.
A pesar de los beneficios de flexibilidad y soberanía, la mayoría de las personas estarían de acuerdo en que eventualmente necesitaremos muchas cadenas para escalar de todos modos. Esto significa que terminaremos con muchos sistemas que necesitamos unificar, por lo que la dirección modular es inevitable aquí.
Ahora, comparemos los finales aquí. En particular, compararemos el final de Solana con el final de Ethereum si sigue este camino de maximizar la unidad y la experiencia de usuario con rollups basados en base + preconfs.
en esta visión, tenemos un montón de estos brs utilizando el secuenciador basado en Ethereum. Gate.ioways está transmitiendo continuamente preconfs prometidos por el proponente (es decir, sin ningún peso de consenso) a los usuarios con baja latencia, luego los proponentes de Ethereum los comprometen en un bloque completo de vez en cuando. Esto puede sonar familiar porque es prácticamente lo que describimos anteriormente para Solana con la transmisión de fragmentos.
Entonces, ¿es esto simplemente un Solana más complicado? La gran diferencia aquí está en los tiempos de ranura:
Ethereum intenta agregar esto encima de una cadena lenta claramente presenta problemas a primera vista:
todo esto se resuelve con un consenso rápido. todos estos sistemas son literalmente por qué creamos sistemas bft en primer lugar. entonces, ¿por qué no debería ethereum hacer que su consenso sea más rápido? ¿hay algunos compromisos menos obvios al tener tiempos de bloque de capa base de súper baja latencia?
Afortunadamente no tengo nada mejor que hacer que escribir un ensayo sobre si los tiempos de bloque más cortos son buenos. La gran preocupación con los tiempos de ranura más cortos está relacionada con la centralización de validadores y operadores. Específicamente, existen preocupaciones con respecto a la interacción de los tiempos de ranura cortos con juegos de tiempo:
ya vemos juegos de sincronización progresando en Ethereum. Los proponentes proponen bloques más tarde en sus espacios, ganando más dinero a expensas de otros. Los relés también ofrecen “juegos de sincronización como servicio"donde de manera similar retrasan los bloques más tarde en la ranura:
fuente: Datos siempre
los juegos de tiempo fueron un gran tema de discusión en el algo infamePodcast de Justin vs. toly banklessde hace algunas semanas:
por ejemplo, digamos que eres 100ms más rápido que los demás
si tienes ranuras de 1s, puedes ganar un 10% más que todos los demás
si tienes 10s slots, puedes ganar un 1% más que los demás
— jon charbonneau (@jon_charb) 4 de junio de 2024
Justin argumentó principalmente que los juegos de sincronización serán un problema, y las recompensas incrementales siempre serán relevantes. Toly argumentó principalmente que los juegos de sincronización no serán un problema, y que las recompensas incrementales obtenidas de la extracción adicional de MEV no son suficientes para preocuparse.
Personalmente, me resulta difícil ignorar la importancia de cronometrar los juegos aquí:
Creo claramente que hay una gran cantidad de valor en la dirección que están tomando tanto Solana como Ethereum. Si nada más, veremos cómo se desarrolla todo en la práctica. Estratégicamente, también creo que tiene sentido que Ethereum se incline hacia lo que lo hace diferente aquí. Maximizar la descentralización como medio para lograr la resistencia a la censura en circunstancias adversas. Ethereum ha hecho muchos sacrificios para mantener un protocolo increíblemente descentralizado porque es una necesidad para el largo plazo. Tiene una diversidad de clientes inigualable, distribución de propiedad de la red, partes interesadas del ecosistema, descentralización de los operadores y más. Si (y probablemente cuando) Solana enfrenta una seria presión de censura en el futuro, se volverá cada vez más evidente por qué Ethereum ha tomado las decisiones que ha tomado.
preconf.wtf acaba de suceder en zuberlin la semana pasada, y tal vez no sorprenda a nadie, todos estaban hablando de preconfs y based rollups. y todo eso fue realmente genial. pero personalmente encontré Charla de Vitalikenlistas de inclusión de un bit por atestadory la charla de barnabé sobreSobrecargar al proponente de ejecución en su lugar (de mev-boost a epbs a aps)ser lo más importante para el futuro de Ethereum.
fuente: Barnabé monnot, De mev-boost a epbs a aps
las conversaciones sobre preconf y based rollup han comenzado a ganar impulso recientemente, y definitivamente todavía estoy en el lado más cauteloso. Vitalik famosamente estableció lo siguienteEndgame:
Sin embargo, nos hemos adentrado bastante en la "producción centralizada" sin implementar aún protecciones más fuertes contra la censura, como listas de inclusión. Básicamente, Ethereum se encuentra en la mitad de la fila inferior de esta imagen. (Digo la mitad porque la censura no es realmente blanco y negro, y Ethereum solo tiene una "censura débil", es decir, la mayoría pero no todos los bloques están censurados, así que solo tienes que esperar un poco y luego serás incluido):
fuente: Prueba de gobernanza
Empíricamente, la cadena de suministro MEV de Ethereum L1 actualmente censura en tiempo real más bloques que cualquiera de estos L2 con secuenciadores centralizados.
l2s ya pueden obtener el cr eventual del l1 (que aún es muy bueno) sin estar basados. Las preconfirmaciones basadas no obtienen la seguridad en tiempo real del protocolo ethereum, obtienen la seguridad en tiempo real de un pequeño grupo de proveedores de infraestructura relativamente centralizados que lo rodean. Para obtener un cr en tiempo real mejorado, la mejor opción probablemente sea externalizar la secuenciación a algún tipo de secuenciador descentralizado que ejecute un consenso bft simple. Esto será mucho más sólido que centralizar muchas cadenas en un cuello de botella actualmente relativamente centralizado. Esta situación puede mejorar con cambios como subastas de ejecución y listas de inclusión, pero eso no está exactamente a la vuelta de la esquina.
Con todo esto considerado, no me queda claro que expandir la dependencia de la infraestructura de MEV de Ethereum L1 y luego afianzarla para L2 sea una gran idea en esta etapa, cuando hay un puñado de personas que construyen y transmiten todos los bloques de Ethereum, la mayoría de los bloques sin censura de Ethereum hoy dependen de un único constructor (Titán), y ninguna de las herramientas CR se ha implementado en el protocolo todavía. Esto se siente agresivamente aceleracionista en un punto frágil. Ethereum ciertamente debería estar trabajando para mejorar la experiencia de usuario de L2, pero no a expensas de todas las propiedades subyacentes que queríamos en primer lugar.
Todos estamos construyendo lo mismo.
bueno, más o menos. obviamente, estas cosas no son todas literalmente lo mismo. siempre habrá diferencias prácticas entre estos sistemas. sin embargo, la mega-tendencia general en cripto es clara, todos estamos convergiendo hacia arquitecturas cada vez más similares.
las diferencias técnicas matizadas entre ellos pueden tener implicaciones significativas en la práctica para dónde terminan, y no podemos subestimar el papel fundamental que juega la dependencia del camino en estos sistemas, incluso cuando convergen hacia juegos finales similares.
además, es bastante malditamente imposible razonar sobre algunas de estas cosas.Como dijo vitalik:
“Una nota de precaución que tengo para las AP es que creo que desde una perspectiva puramente técnica, en realidad creo que es bastante sencillo y que somos totalmente capaces de llevarlo a cabo con muy poca probabilidad de error técnico... pero desde una perspectiva económica hay muchas más oportunidades para que las cosas salgan mal...
Al igual que con eip-1559, pudimos averiguarlo con la teoría. Fuimos a algunas conferencias de economía encantadoras y aprendimos sobre los peligros de las subastas de precio inicial y lo malas que son, y descubrimos que las subastas de segundo precio no son creíbles, y luego descubrimos que, ¡hey, usemos un mecanismo de precio fijo localizado dentro de cada bloque, y pudimos hacer mucho con la microeconomía.
Pero aps no es así, ¿verdad? Y la pregunta de si aps llevará a Citadel o Jane Street o Justin Sun o quien sea a producir el 1% de todos los bloques de Ethereum o el 99%, es muy muy difícil, probablemente imposible de averiguar desde los primeros principios.
y por lo tanto, lo que quiero ver en este momento es experimentación en vivo... para mí personalmente, la diferencia entre hoy y sentirme realmente cómodo con las aps es básicamente que las aps funcionen correctamente en una capa 2 de Ethereum que tiene una cantidad media de valor, actividad, comunidad y disputas reales ocurriendo, y que eso dure durante un año, posiblemente más, y que realmente podamos ver algunas consecuencias en vivo.
así que sí, tampoco sé qué va a pasar. solo tendremos que esperar y ver. en cualquier caso, mientras todos convergimos hacia lo que sea este juego final, tenemos mucho más en común que diferencias, así que asegurémonos de por favor...
reenviar el título original 'we're all building the same thing'
esta publicación analiza lo siguiente
por último y lo más importante, veremos por quétodos estamos construyendo la misma maldita cosaasí que tal vez deberíamos simplemente...
construiremos desde lo básico para ver que el final para blockchains de alto rendimiento (por ejemplo, Solana, Monad, @patrickogrady/rys8mdl5p#mitigation-strategy-enable-profit-maximizing-builders-to-minimize-invalidtps">hypersdk) se aproxima a la de un secuenciador perezosopor ejemplo,@astriaorg/hj6ccpp9t">astria). más tarde volveremos para compararlos con rollups basados en ethereum + preconfs.
blockchains son máquinas de estado replicadas. los nodos descentralizados mantienen y actualizan cada uno su propia copia del estado del sistema. para avanzar en la cadena, los nodos ejecutan la función de transición de estado (stf) sobre el estado actual + nuevas entradas (por ejemplo, nuevas transacciones). esto produce el nuevo estado.
utilizaremos los siguientes términos a lo largo de esta sección:
enfoquémonos en la secuenciación y ejecución, porque estas son las tareas principales necesarias para calcular el estado de la cadena:
además, los nodos verifican y replican los datos en toda la red. Los nodos llegan a un consenso para mantener una vista consistente de la cadena.
sin embargo, las diferentes arquitecturas de cadena divergen significativamente en quién es responsable de estas tareas y cuándo lo hacen (por ejemplo, la construcción y verificación de bloques pueden o no incluir la ejecución). el tiempo de extremo a extremo del completo replicación de máquina de estados (smr)el bucle dicta los límites inferiores de la latencia del sistema. Diferentes construcciones pueden producir tiempos muy variables, por lo que un proceso smr que sea eficientetuberíasEstas tareas son necesarias para un rendimiento de baja latencia y alta capacidad de procesamiento.
en las siguientes secciones, veremos que una idea central del procesamiento eficiente en serie es centrarse en lograr consenso sobre las entradas de ejecución en lugar de los resultados de ejecución. esto requiere relajar ciertas restricciones sobre qué transacciones pueden incluirse. luego necesitaremos reintroducir algunas restricciones más débiles para asegurar que el sistema siga siendo útil y resistente a los ataques (por ejemplo, evitando vectores dos de transacciones que no paguen tarifas).
smr tradicional (por ejemplo, ethereum) acopla estrechamente la secuenciación y la ejecución. Los nodos completos secuencian y ejecutan continuamente todas las transacciones de la capa base, ambas son requisitos previos para que los nodos lleguen a un consenso. Además de verificar que todos los datos del bloque estén disponibles (y secuenciados), los nodos también deben ejecutar el bloque para verificar que:
los validadores solo votarán por un bloque y construirán sobre él una vez que hayan verificado de forma independiente su estado. Esto significa que la ejecución ocurre al menos dos veces antes de que se pueda llegar a un consenso (es decir, el productor de bloques ejecuta durante la construcción + los validadores receptores ejecutan nuevamente para verificar).
En este modelo tradicional, tanto la construcción como la verificación incluyen la ejecución.
fuente: @patrickogrady/rys8mdl5p#hacer-el-caso-para-la-replicación-de-máquina-de-estado-desacoplada-dsmr">vryx: fortaleciendo la replicación de máquina de estado desacoplada
streaming smr (por ejemplo, solana) es una forma eficiente de canalizaciónlos productores de bloques continuamente “transmiten” fragmentos de bloques (llamado tiraso fragmentos) a medida que se construyen. otros nodos reciben y verifican (incluida la ejecución) estos fragmentos continuamente, incluso mientras el resto del bloque aún se está construyendo. esto permite que el próximo líder comience a construir su bloque antes.
fuente: @patrickogrady/rys8mdl5p#making-the-case-for-decoupled-state-machine-replication-dsmr">vryx: fortifying decoupled state machine replication
en este modelo de transmisión, la construcción y verificación aún incluyen secuenciación y ejecución. esto aumenta la eficiencia de SMR en relación a SMR tradicional sin relajar ninguna restricción de que todas las transacciones incluidas sean tanto semántica como sintácticamente válidas.
enfoque integrado
¿Ahora, podemos obtener un rendimiento aún mejor si relajamos esas restricciones?
la ejecución asincrónica elimina la ejecución del camino principal del consenso: los nodos simplemente llegan a un consenso sobre el orden de los datos sin ejecutar primero esos datos. esto es más eficiente, por esoSolanayMonadambos planean implementar la ejecución asincrónica.
el líder construiría y replicaría un bloque (o fragmentos) sin necesidad de ejecutarlo. luego, otros validadores votarían sobre él sin ejecutarlo tampoco. los nodos solo llegan a un consenso sobre el orden y la disponibilidad de transacciones. esto es suficiente porque, dado un stf determinista, todos eventualmente calcularán el mismo estado. la ejecución no necesita detener el consenso, puede ejecutarse de forma asincrónica. esto puede abrir el presupuesto de ejecución para los nodos (dándoles más tiempo para gastar en la ejecución) al tiempo que se reducen los pasos requeridos (y por lo tanto el tiempo) para alcanzar un consenso.
el orden determina la verdad. la ejecución simplemente la revela. cualquier persona puede ejecutar los datos para revelar la verdad una vez que su ordenamiento está finalizado.
probablemente por eso Keone cree que en última instancia, cada cadena de bloques utilizará ejecución asincrónica, y es una pieza clave de La visión final de Toly para Solana:
"La ejecución síncrona requiere que todos los nodos que votan y crean bloques estén sobreaprovisionados para el peor de los casos de tiempo de ejecución en cualquier bloque... Los nodos de consenso pueden realizar menos trabajo antes de la votación. el trabajo se puede agregar a greGate.iod y por lotes, lo que hace que se ejecute de manera eficiente sin errores de caché. Incluso se puede ejecutar en una máquina completamente diferente a la de los nodos de consenso o líderes. Los usuarios que deseen una ejecución sincrónica pueden asignar suficientes recursos de hardware para ejecutar cada transición de estado en tiempo real sin esperar al resto de la red.
Actualmente, los validadores reproducen todas las transacciones lo más rápido posible en cada bloque y solo votan una vez que se ha calculado el estado completo del bloque. El objetivo de esta propuesta es separar la decisión de votar en un tenedor de la transición completa del estado para el bloque.
vale la pena señalar que también queremos asegurarnos de que la verdad se revele fácilmente a los usuarios, y eso significa un sólido soporte para clientes ligeros. Algunos de estos diseños que retrasan la ejecución significativamente harían que esto fuera un desafío (p. ej., Solana considerando requerirlo solo una vez por época) vs. otros que proporcionan una raíz de estado en un intervalo más corto (por ejemplo, como en el hypersdk).
enfoque modular
¡La separación de la secuenciación y la ejecución puede sonar muy familiar porque este es el enfoque "modular" también! Mezcle y combine diferentes capas que se especialicen en diferentes tareas. La separación de la secuenciación y la ejecución es el principio de diseño clave de los secuenciadores perezosos (por ejemplo, Astria):
La diferencia principal aquí es que los nodos de la cadena integrada ejecutan después de la secuenciación, mientras que los secuenciadores perezosos lo envían a un conjunto completamente diferente y diverso de actores. Los secuenciadores perezosos son completamente ignorantes de las máquinas de estado de rollups. Nunca ejecutan estas transacciones. Los rollups manejan la ejecución asincrónica.
El enfoque integrado proporciona una interoperabilidad más fluida entre los usuarios del entorno de ejecución, pero reduce la flexibilidad en cuanto a los desarrolladores de aplicaciones (por ejemplo, máquinas virtuales personalizadas, diferentes tiempos de ranura).reglas de precios y ordenamiento de transacciones específicas de la aplicación implementadas por consenso, etc.. El enfoque modular proporciona más flexibilidad y soberanía para que los desarrolladores posean dominios personalizados, pero es más difícil unificar la experiencia en todos ellos.
en cualquier caso, una tubería realmente grande y rápida para ordenar datos es la primitiva que necesitamos:
sin embargo, debes tener en cuenta que técnicamente puedes usar prácticamente cualquier cadena como un secuenciador perezoso. al final del día, es solo un gran conducto de datos. un rollup puede arrojar ingenuamente sus datos arbitrarios a su capa base de elección (ya sea ethereum, bitcoin, monad, etc.) para usarla implícitamente como su secuenciador. los nodos de rollup pueden ejecutar asincrónicamente los datos después del hecho.
La diferencia en la práctica es que las cadenas a las que nos referimos como "secuenciadores perezosos" están especializadas para esta tarea, lo cual es mucho más fácil decirlo que hacerlo (por ejemplo, admitir tipos de transacciones necesarios, exponer interfaces fáciles, implementar infraestructura MEV, tiempos de ranura rápidos, inclusión de transacciones confiable, alta velocidad de transferencia, etc.). Como resultado, los nodos para cadenas integradas terminan ejecutando la mayor parte de los datos que incluyen, mientras que los secuenciadores perezosos dejan eso principalmente a los rollups.
por eso no es tan simple como "¿por qué no usamos solana (o cualquier otra cadena cuando ese nunca ha sido el objetivo de diseño) como un secuenciador de rollup?" :
ahora, ¿podemos abordar esos problemas que surgen al relajar estas restricciones? En resumen, sí, las implementaciones ingenuas introducen problemas como permitir transacciones inválidas que no pueden pagar tarifas (lo cual sería un vector dos si se implementa ingenuamente), pero se pueden abordar de manera que no sean problemas graves.
no nos detendremos demasiado en los detalles aquí, pero puedes consultarPatrick o’grady’strabajo increíble en@patrickogrady/rys8mdl5p#fortaleciendo-dsmr-desacoplado-para-fortificar-smr-desacoplado,-tolysjuego final de ejecución asincrónicayImplementación de Monad de los costos de transportesobre cómo abordar estos problemas. Una vez más, las soluciones a estos problemas sorprendentemente se parecen casi en ambos lados, el lado modular y el lado integrado.
el resumen es que puedes reintroducir algunas restricciones mucho más débiles (en comparación con la ejecución sincrónica con verificación completa) que conservan la mayoría de los beneficios de rendimiento sin dejar abiertos un montón de ataques.
Es importante darse cuenta de que los procesos anteriores solo tuvieron en cuenta ingenuamente a los actores dentro del protocolo. En realidad, los actores fuera del protocolo juegan un papel enorme en estas cadenas de suministro de transacciones. Esto es lo que vimos anteriormente para los validadores (dentro del protocolo) en SMR tradicional:
fuente: @patrickogrady/rys8mdl5p#making-the-case-for-decoupled-state-machine-replication-dsmr">vryx: fortificando la replicación de máquina de estado desacoplada
en la práctica, sin embargo,casi todos los validadores de Ethereum externalizan la construcción de bloques a través de mev-boostcon los tres principales constructores (beaver, titan y rsync) construyendo casi todos estos bloques. tenga en cuenta que beaver y rsync censuran las transacciones de OFAC mientras que titan no lo hace.
fuente: mevboost.pics
Los relés se encargan de replicar estos bloques al resto de la red. También son relativamente pesados, con los cuatro principales operadores (ultra sound, bloxroute, agnóstico y flashbots) transmitiendo la gran mayoría de los bloques. Bloxroute y flashbots censuran las transacciones OFAC, mientras que agnóstico y ultra sound no lo hacen.
fuente:mevboost.pics
también debería ser no sorpresa que veamos tendencias muy similares en las optimizaciones de latencia aquí, como discutimos anteriormente. la tendencia es haciarelés optimistasque ya no realizan verificación de bloques antes de la replicación porque es simplemente más rápido. Los secuenciadores perezosos pueden considerarse como redes de retransmisión incentivadas.
estos ejemplos destacan cómo MEV distorsiona los incentivos de beneficio en estos sistemas. Los validadores externalizan la producción de bloques porque los constructores sofisticados pueden capturar más valor en comparación con los bloques secuenciados de manera ingenua.
incluso bajo ejecución asincrónica, a menudo habrá productores de bloques fuera del protocolo ejecutando transacciones durante la construcción para maximizar el valor. Por ejemplo, es muy probable que los secuenciadores perezosos tengan constructores de maximización de beneficios en alguna forma de PBS. El hecho de que un productor de bloques externo siempre esté incentivado a ejecutar completamente y optimizar el valor de un bloque puede ser útil en configuraciones donde relajamos las restricciones en la ejecución asincrónica. Aún así, otros validadores no tendrían que volver a ejecutar antes de votar.
¿Ahora, podemos obtener la soberanía y flexibilidad que ofrecen las cadenas modulares, pero reunirlas para que se sientan como una cadena integrada? ¿Podemos tener nuestro pastel y comérnoslo también, o simplemente terminamos construyendo Solana con pasos adicionales?
cuando escuchas a la gente hablar sobre arreglar la fragmentación de rollup, probablemente has escuchado las grandes palabras de moda alrededorcomposabilidad sincrónica universal (USC). Sin embargo, esta ha sido probablemente tu reacción:
Estos términos se utilizan con diferentes significados, y a menudo se utilizan incorrectamente de manera intercambiable. Necesitamos establecer algunas definiciones concretas. Definimos los términos necesarios a continuación en el contexto de la composibilidad entre cadenas.
ten en cuenta que discutiremos los 'rollups' en el resto de este informe, pero muchos de estos conceptos también se aplican a otros tipos de 'l2s' como los validiums.Simplemente no quiero pelear de nuevo por lo que diablos es un l2.
en los siguientes ejemplos:
ten en cuenta que aquí definimos el "tiempo" como la "altura de la ranura". El tiempo es puramente relativo al observador. La única noción objetiva de tiempo que tenemos es un ordenamiento relativo por un observador compartido, es decir, un consenso compartido (donde ese "consenso" puede ser un único actor o un mecanismo descentralizado).
si ambos rollups tienen un mecanismo de consenso que proporciona el ordenamiento, podemos afirmar:
sin embargo, la única manera de afirmar:
Por lo tanto, la composabilidad sincrónica entre cadenas requiere definicionalmente algún tipo de secuenciador compartido para esa altura de ranura. Las cadenas sin uno solo pueden tener composabilidad asincrónica.
sin embargo, tenga en cuenta que podemos tener composibilidad atómica asincrónica. lamentablemente, a menudo noto que las personas usan "atómico" y "sincrónico" indistintamente, pero son términos diferentes.
con eso fuera del camino, veamos si podemos reintroducir la composabilidad sincrónica en las cadenas modulares. Si podemos hacerlo, entonces eso puede parecerle a neGate.io el valor de las cadenas integradas. Este es el resumen que analizaremos:
La secuenciación compartida significa que para una altura de ranura dada, una sola entidad (el "secuenciador", también conocido como el "proponente") tiene derechos de monopolio para secuenciar (es decir, proponer bloques para) múltiples cadenas. Para reiterar, estos secuenciadores compartidos de los que generalmente hablamos son secuenciadores perezosos. llegan a un consenso sobre el orden y la disponibilidad de los datos de rollup, pero no los ejecutan. son completamente ignorantes de las máquinas de estado de los rollups.
Como escribí anteriormente, esto significa que los secuenciadores compartidos perezosos pueden proporcionar un compromiso creíble para incluir paquetes de cadena cruzada (es decir, un conjunto de transacciones):
esto permite una extracción de MEV más eficiente por súper constructores(es decir, constructores de cadena cruzada) al realizar acciones de cadena cruzada, ya que ya no tienen que tasar el riesgo de que una pierna del paquete de cadena cruzada pueda fallar. La sincronía aquí puede proporcionarles implícitamente atomicidad.
Ahora, ¿cómo hacemos esto sin confiar completamente en el constructor y/o proponente activo para el secuenciador compartido? Si solo enviamos dos transacciones firmadas de manera independiente (t1y t2) para cada rollup, el secuenciador compartido aún podría decidir incluir solo uno u otro.
por ejemplo, hoy en día no hay noción de un formato de paquete nativo en el EVM, por eso los buscadores confían totalmente en los constructores/relays para no desempaquetarlos. Cualquiera que vea un paquete de transacciones firmadas independientemente antes de que sean comprometidas por el líder actual puede desempaquetarlos. Esto generalmente está bien, porque los constructores y relays tienen incentivos para mantener sus reputaciones y proteger los paquetes de búsqueda, pero cuando se rompe esa confianza (o son engañados por participantes deshonestos para revelar las transacciones),desagregar puede ser increíblemente rentable.
aquí necesitamos una garantía de seguridad mucho más fuerte si queremos una verdadera interoperabilidad entre cadenas. no estamos hablando solo de tomar dinero de un buscador. si los contratos defi entre cadenas se diseñaran bajo la suposición de que los paquetes entre cadenas serán respetados, pero luego esta confianza se rompe, los resultados serían catastróficos para esos protocolos (por ejemplo, en un paquete de puente entre cadenas de quema y creación de monedas, podrías omitir la quema pero crear fondos en el otro lado).
necesitamos garantías de seguridad inquebrantables para implementar la interoperabilidad entre cadenas. esto significa que debemos definir un formato de transacción que asegure que múltiples transacciones en un paquete de intercambio de cadenas se incluyan juntas. si una se incluye sin la otra, necesitamos una garantía de seguridad de que la que se incluye es inválida.
Esto significa que necesitamos crear una nueva estructura de transacciones para paquetes de cadena cruzada que no pueden ser desagregado. la solución ingenua es "hagamos simplemente un nuevo tipo de transacción para estos rollups", pero eso no es tan fácil. requeriría cambios en la máquina virtual para estos rollups, perdiendo la compatibilidad hacia atrás. También acoplarías estrechamente los rollups al modificar sus máquinas de estado de manera que cada transacción solo sea válida junto con la otra al ser incluida.
Sin embargo, hay una forma más limpia de hacer esto. Puede hacer que cada transacción del paquete también firme el hash del paquete y, a continuación, anexe el resumen del hash a un campo de transacción libre (por ejemplo, calldata en la EVM). El paquete acumulativo debe modificar su canalización de derivación para comprobarlo, pero la máquina virtual puede permanecer sin cambios. Con esto en su lugar, los usuarios de Rollup podrían enviar paquetes de cadena cruzada que están seguros de que no se pueden desagregar. Intentar hacerlo los invalidaría.
fuente: Ben fisch
garantías de inclusión vs. garantías estatales
con lo anterior en su lugar, ahora hemos establecido cómo un secuenciador compartido perezoso:
Desafortunadamente, la inclusión atómica por sí sola es una garantía mucho más débil. Este compromiso con la inclusión atómica es suficiente para que el constructor tenga una gran confianza en que el bloque de acumulación cruzada que crea creará el estado resultante que desea si se confirma. El constructor necesariamente conoce el estado resultante del bloque, porque lo ejecutó para construirlo.
Aún así, tenemos un problema: ¿cómo sabe todo el mundo con certeza cuál será el estado?
considera un ejemplo:
si presentamos un paquete adecuado, el secuenciador perezoso puede garantizar que la transacción de quema se incluyó en el flujo de transacciones para ra, pero no se sabe, por ejemplo, si tal vez otra transacción llegó antes que ella y la invalidó (lo que significa que las fichas no se quemaron realmente).
El simple hecho de compartir un secuenciador diferido no es suficiente para permitir que las cadenas accedan a los estados de los demás durante la ejecución del paquete. La componibilidad sincrónica requiere la capacidad de la máquina de estados de cada cadena para acceder al estado de la otra cadena (por ejemplo, el propio contrato de puente en RB necesita conocer el estado de RA) en el momento de la ejecución. Esa capacidad es exactamente lo que permite la componibilidad completa dentro de una sola cadena integrada.
el constructor no puede simplemente decirle a los contratos 'confía en mí, hermano, saldrá bien'. Vemos que la inclusión atómica es una herramienta útil para los buscadores que confían en los constructores para ejecutar correctamente sus paquetes, pero no es suficiente para abstraer la interoperabilidad entre cadenas.
para solucionar esto, necesitamos agregar algún otro mecanismo además de la secuenciación compartida:
como mencionamos, el constructor personalmente sabe cuál será el estado resultante si el paquete se incluye atómicamente. ¿Entonces, cómo pueden proporcionar un compromiso creíble para convencer a todos los demás sobre cuál será el estado resultante si se incluyen sus transacciones?
ampliamente tienen dos opciones:
vamos a ver un ejemplo para ver cómo la criptoeconomía podría simular los efectos de la componibilidad síncrona. el ejemplo clásico utilizado es el de un préstamo relámpago entre cadenas. Quiero sacar un préstamo flash en ra, usarlo para un arbitraje en rb y devolverlo en ra en el mismo espacio de tiempo. Esto es posible si estos protocolos defi implementan una funcionalidad personalizada de cadena cruzada con lo que llamaremos 'contratos bancarios' en cada lado:
ahora, en cuanto a ese problema de seguridad, el contrato en ra y rb necesita conocer los estados de cadena del otro para hacer esto de manera segura, pero no hemos hecho nada al respecto. Bueno, la "solución" criptoeconómica aquí es en realidad bastante rudimentaria: haces que el superconstructor actúe como proveedor de liquidez y ponga el valor completo del préstamo flash. Si las transacciones fallaran, entonces el protocolo de préstamos simplemente se queda con su participación de todos modos. Puedes ver por qué esta no es la solución más satisfactoria.
qué es
el AggLayeres un protocolo descentralizado que proporciona tres beneficios principales:
fuente: Brendan farmer,Blockchain agregados
aclarar dos conceptos erróneos comunes sobre lo que no es el aglomerado:
ahora veamos cómo funciona.
la construcción de puentes apesta
conectar entre rollups hoy es complicado. Digamos que quieres conectar eth entre dos rollups optimistas de Ethereum (ORU).unay orob:
Puede pensar que los ZK Rollups resuelven esto desde el principio, pero en realidad no es así. Las implementaciones ingenuas aún requieren que envíe transacciones L1, lo que nuevamente es costoso y generalmente bastante lento (por ejemplo, debido a los tiempos de finalidad de Ethereum, los tiempos de generación de pruebas, la frecuencia con la que se publican las pruebas en la práctica, etcétera).
Los usuarios no quieren lidiar con esto. Quieren simplemente tener fondos y usar aplicaciones. El puenteo debería estar completamente abstraído - los activos deberían ser fungibles y moverse rápidamente, a bajo costo y de forma segura.
Aquí es donde entra en juego compartir un contrato puente. Un contrato de puente compartido abre la puerta a que las cadenas lo utilicen para tender puentes directamente entre sí sin pasar por la L1.
Los tokens también pueden ser fungibles en todas las aggchains como resultado. Conectando ETH desde Run → rb o rc → rb quema y acuña la misma ficha. No es un activo envuelto en cerradura y acuñación. Es ETH nativo. Esto es posible porque todos los activos se depositan juntos y se liquidan a través del puente unificado. Este es un punto débil importante para las L2 hoy en día que debe abordarse.
sin embargo, tenga en cuenta que un usuario que tenga eth en runa Vs. Rbpodría tener un perfil de riesgo diferente si las diferentes cadenas usan verificadores diferentes (por ejemplo, tal vez te hayas mudado de una cadena segura a una con un error de circuito). los perfiles de riesgo no cambian entre las cadenas que utilizan estándares comunes aquí (que en la práctica es la norma hoy en día). estándares más uniformes y verificación formal solo mejorarán esto con el tiempo incluso a medida que se agregan dominios heterogéneos.
pruebas pesimistas
Las aggchains envían sus actualizaciones de estado y pruebas a los nodos apostados de Agglayer que las organizan, generan compromisos con todos los mensajes y crean pruebas recursivas. a continuación, agglayer genera una única prueba de zk de aggreGate.iod (a la que llaman "prueba pesimista”) para establecer todo lo relacionado con las cadenas de agregación en ethereum. Debido a que la agregación de pruebas aquí amortiza los costos a través de cualquier cantidad de cadenas arbitrarias, es práctico desde una perspectiva de costos publicarlos en ethereum para un rápido establecimiento lo antes posible. El programa de prueba pesimista está escrito en código Rust regular, utilizando zkvm sp1 de Succinct para facilitar el desarrollo y el alto rendimiento.
estas pruebas pesimistas refuerzan:
con esto, el agglayer asegura que el asentamiento ocurra en ethereum solo si y solo si se cumplen las condiciones anteriores. si no se cumplen, entonces las cadenas respectivas no pueden liquidarse. como tal, el agglayer puede permitir que un coordinador (por ejemplo, un secuenciador compartido o un constructor) pase mensajes entre cadenas con baja latencia sin confiar en ese coordinador para la seguridad.
interoperabilidad rápida y segura entre cadenas cruzadas
Las cadenas de agregación pueden utilizar las garantías proporcionadas aquí tanto en entornos de interoperabilidad asincrónica como síncrona para expresar restricciones sobre la validez del bloque en relación con otros rollups.
Esto permitiría a los usuarios enviar paquetes de cadena cruzada que deben ejecutarse correctamente de manera atómica en ambos lados. No solo la inclusión atómica. De hecho, se está haciendo cumplir que el estado resultante de ellos debe ser exitoso. Esto es perfecto para complementar exactamente lo que describimos como deficiente en las garantías de inclusión atómica de un secuenciador compartido solo.
fuente:Brendan agricultor, Cadenas de bloques agregadas
tomando nuestro ejemplo anterior:
Para que esto se resuelva correctamente en Ethereum, ambas partes del paquete deben ejecutarse correctamente. Si falla uno de los lados, los bloques serían inválidos y no se podrían resolver. Eso significa que si el secuenciador compartido firmó un bloque en el que no se quemó ETH en R.unapero acuñado eth en rbSi se encontrara una prueba de trabajo más larga en otra cadena, se produciría una reorganización de ese bloque. Esto garantiza la seguridad de todas las cadenas y evita que se resuelvan acciones deshonestas entre cadenas.
hay dos puntos a tener en cuenta con respecto a estas reorganizaciones:
estas reorganizaciones deben ser extremadamente raras y mínimas debido a los puntos anteriores, pero debido a esto, las aggchains tendrán control total sobre qué cadenas desean componer de manera atómica y bajo qué supuestos de confianza. por ejemplo, runpuede aceptar un estado de cadena de rb para componer con basado en el consenso de su secuenciador, pero para rcpuede que también solicite una prueba enviada, y para rdquizás quieren que aseguren cripto-económicamente todas las dependencias atómicas entre cadenas cruzadas. cada cadena puede hacer sus propios compromisos personalizables aquí para baja latencia y vivacidad. agglayer simplemente proporciona la base máximamente flexible y mínimamente dogmática para que las cadenas tengan interacciones seguras entre cadenas cruzadas.
También puede ver aquí por qué un diseño de este tipo es en la práctica incompatible con un diseño basado en fallos. En teoría podrían hacer esto, pero en ese caso sería posible experimentar reorganizaciones increíblemente profundas. Probar y resolver rápidamente todas las cadenas hace que el peor de los casos sea muy corto, lo que también actúa como un elemento disuasorio natural para cualquier intento malicioso.
aislamiento de fallas para demostradores heterogéneos
Es importante destacar que el Agglayer permite de forma única cadenas completamente heterogéneas. Puede tener un AggChain con cualquier máquina virtual personalizada, Prover, capas DA, etcétera mientras comparte un puente de forma segura con todos.
¿Cómo es posible esto? La razón por la que esto normalmente no es aceptable es porque un único participante defectuoso (por ejemplo, con un error de circuito) normalmente podría engañar a un puente y drenarlo de todos los fondos. Bueno, ahí es donde entra la prueba de contabilidad intercadena mencionada anteriormente. Estas pruebas aseguran que se respeten todas las invarianzas del puente, de modo que incluso en el caso de un probador no válido, solo se podrían drenar los fondos depositados en la cadena afectada. La falla está completamente aislada.
neutralidad creíble
Este tipo de infraestructura se ve muy beneficiada por una neutralidad creíble, por lo que la Código totalmente abierto IFOR Agglayer es territorio neutral.En un espíritu similar, el AggLayer utilizará eth como el único token de gas para pagar las tarifas de agregación de pruebas.
sin embargo, ciertamente no es perfecto. especialmente al principio, no será totalmente neutralmente creíble. es probable que haya una capacidad de actualización del contrato en el camino hacia la inmutabilidad y la consagración como un bien público.
Dicho esto, no tiene que ser perfectamente neutralmente creíble, nada lo es. (Veremos esto de nuevo a continuación con los rollups basados). En la práctica, ofrece probablemente la visión técnica más convincente y competitiva, y adopta una actitud intencionalmente minimalista hacia el bloqueo y la extracción de alquileres. El objetivo es permitir que las aggchains mantengan tanta soberanía como sea posible, al tiempo que pueden abstraer la composabilidad intercadenas minimizada de confianza.
Las aggchains no necesitan ninguna máquina virtual específica, entorno de ejecución, secuenciador, capa de datos, token de participación, token de gas o gobierno común. Las cadenas pueden salir cuando lo deseen. No hay requisitos de reparto de ingresos. No necesitas desplegar como un l3 en la cadena de otra persona.
las razones para lanzar l3s encima de l2s generales han sido en su mayoría, en mi opinión, soluciones temporales mientras se construyen arquitecturas similares a la capa de agregación. Sin embargo, hay que dejar claro que esta es una razón totalmente válida para lanzarlos hoy. La capa de agregación v1 es solo un contrato de puente compartido simple. La v2, con agregación de pruebas y la capacidad de obtener una interoperabilidad segura y de baja latencia, ni siquiera está en funcionamiento. No se puede esperar que la gente espere durante años cuando tienen la urgencia de lanzar algo hoy que les brinde la distribución más rápida.
Si bien faltan varios años para ser práctico en cualquier configuración de baja latencia, debemos tener en cuenta que la prueba en tiempo real también podría usarse junto con la secuenciación compartida para la seguridad entre cadenas. También es genial, así que lo cubriremos brevemente. Más específicamente, la prueba "en tiempo real" se refiere a los tiempos de prueba que son más cortos que los tiempos de ranura de la cadena en cuestión. Consideremos de nuevo el ejemplo del puente de acuñación y quemadura entre cadenas:
Ya teníamos la garantía del secuenciador compartido de la inclusión del haz atómico síncrono, y ahora cada contrato puede verificar una prueba del estado de la otra cadena para saber que se ejecutará correctamente.
para la demostración en tiempo real, idealmente queremos que el tiempo de demostración sea solo una pequeña fracción del tiempo total de la ranura, maximizando así la "ventana de sincronía". esta es la parte del tiempo de la ranura en la que puedes procesar transacciones que operarían de forma sincrónica entre cadenas, ya que necesitas presupuestar suficiente tiempo en la ranura para crear la prueba y colocarla en el bloque.
fuente: Justin drake, demostración en tiempo real
Tenga en cuenta que implícitamente terminaríamos fusionando o colocando constructores y probadores aquí. Existe un claro incentivo para que los constructores optimicen las velocidades de prueba para que puedan construir hasta el último segundo y encajar tanto como sea posible en su bloque.
fuente: Justin Drake, demostrando en tiempo real
si este alto incentivo para la demostración en tiempo real se materializa en los próximos años, también debemos tener en cuenta que esto, por supuesto, no es en absoluto favorable para la demostración descentralizada. los probadores deberían ser relativamente centralizados, ya que se fusionan o se instalan junto con los constructores.
La componibilidad sincrónica universal es realmente genial, pero no está muy claro qué tan valiosa es en realidad. Internet es asincrónico y nunca lo sabrías. Esto se debe a que es rápido y la complejidad se abstrae. Eso es todo lo que quieren los usuarios.
Espero que la mayor parte del valor de usar algo como Agglayer no esté solo en la configuración síncrona. Más bien, es el hecho de que puede actuar como una forma de abstracción de cadena cruzada de rollup. Hacer que muchas cadenas se sientan más como una con los aspectos orientados al usuario que importan (por ejemplo, activos nativos más fungibles, funcionalidad de aplicación nativamente intercadenas, interoperabilidad rápida, etc.).
La componibilidad sincrónica es claramente valiosa desde el punto de vista financiero (por ejemplo, permitir liquidaciones, arbitraje más eficiente, refinanciamiento más eficiente mediante préstamos flash). Sin embargo, al igual que Internet es asíncrono y funciona bien, TradFi es, por supuesto, asíncrono. Es razonable querer ser incluso mejor que TradFi, pero debemos tener claro que la sincronicidad universal no es un requisito para una buena ejecución. También hay un costo real para construir y proporcionar infraestructura síncrona.
personalmente creo que el mejor argumento a favor de necesitar usc es que en la práctica conduce a una mejor experiencia de usuario y desarrollo. Es imposible negar el enorme beneficio que esto ha sido para ecosistemas como Solana. Sin embargo, esperemos que esto sea más un problema actual y no un problema eterno.
El simple hecho del asunto es que también es algo difícil para cualquiera razonar en esta etapa. Esto no es un binario "todo en cripto es sincrónico" o "todo es asincrónico." Creo que fundamentalmente tendremos que resolver y gravitar hacia este último, pero ambos pueden existir de manera ad hoc.
Bien, ahora deberíamos tener una buena idea del espacio de solución para abordar la fragmentación en los rollups. La siguiente pregunta es, ¿cómo deberíamos involucrar la capa base en todo esto? ¿Cuál es el papel de Ethereum aquí?
utilizaremos las siguientes abreviaturas a lo largo de:
a menos que se indique lo contrario, el bl en cuestión del que hablaremos es ethereum, y los brs son ethereum brs. Sin embargo, los conceptos básicos se aplican ampliamente, ya que podrías lanzar brs en cualquier lugar.
las implementaciones iniciales de rollup hace varios años fueron en realidadplaneado para ser brs, pero eran abandonado a favor de secuenciadores centralizados para baja latencia y alta eficiencia. Lo que ahora llamamos secuenciación basada, Vitalik se refiere a ella como "anarquía total“en ese momento. era relativamente impráctico e ineficiente antes de la evolución de la infraestructura de PBS de Ethereum (con constructores sofisticados).
Los brs fueron entonces llevados de vuelta al centro de atención en marzo de 2023,donde se definieron de la siguiente manera:
“Se dice que un rollup está basado, o secuenciado por L1, cuando su secuenciación es impulsada por la base L1. Más concretamente, un rollup basado es aquel en el que el próximo proponente L1 puede, en colaboración con los buscadores y constructores L1, incluir sin permiso el siguiente bloque de rollup como parte del próximo bloque L1.”
deberían ofrecer los siguientes beneficios:
“la secuenciación de dichos rollups, basada en la secuenciación, es máximamente simple y hereda la vitalidad y descentralización de l1. Además, los rollups basados están particularmente alineados económicamente con su base l1.”
Específicamente, obtienes la seguridad en tiempo real de ethereum:
«heredas la resistencia a la censura y la actividad de Ethereum. Entonces no solo tienes las garantías de liquidación de Ethereum, sino que también tienes la resistencia a la censura, la resistencia a la censura en tiempo real, no la retardada que conoces con la puerta de escape, sino la de tiempo real».
Ser un rollup basado es el diseño lógico una vez que hayas elegido una capa base:
"Ethereum está maximizando estas dos propiedades, seguridad y neutralidad creíble, es casi la definición de un derecho de rollup... Un rollup es aquel que ya ha comprado la suposición de seguridad de Ethereum. No está agregando una nueva suposición de seguridad. No estás cayendo en un eslabón más débil. simplemente está reutilizando la suposición de seguridad existente. Y dos, ya has aceptado Ethereum como una plataforma creíblemente neutral, de lo contrario habrías elegido otra cadena. Y ahora puedes preguntarte por qué no todo el mundo utiliza la secuenciación de la capa uno".
en su forma más simple, los brs ciertamente pueden lograr los objetivos de diseño anteriores. si el rollup no implementa su propio secuenciador, entonces implícitamente el proponente actual de ethereum decide qué se incluirá cada 12 segundos (tiempo de ranura de ethereum).
sin embargo, la secuenciación basada todavía tiene sus desventajas, que es exactamentepor qué los rollups suelen implementar su propio secuenciador:
¿Entonces, podemos tener nuestro pastel y comérnoslo también? entrar basado preconfs.
Aquí explicaremos brevemente la intuición detrás de los preconfs basados en BRS para que podamos compararlos con los rollups tradicionales. Más adelante, volveremos para analizar los preconfs con mayor detalle en general (es decir, tanto los preconfs de BR como los de BL en las transacciones de Ethereum L1).
La idea principal es que los preconfs de br deben provenir de los proponentes de bl. Para proporcionar preconfs, estos proponentes deben poner alguna garantía (por ejemplo, re-estacar) y optar por condiciones adicionales de reducción (es decir, que los preconfs que proporcionen realmente lleguen a la cadena, como se prometió). Cualquier proponente dispuesto a hacerlo puede actuar como un secuenciador de br y proporcionar preconfs.
debemos tener en cuenta que los proponentes (es decir, validadores) se espera que deleguen este papel de proporcionar preconfs a entidades más especializadas conocidas como “Gate.ioways”. la entrega de preconfs requerirá una entidad relativamente sofisticada, y ethereum quiere mantener a los proponentes poco sofisticados.
sin embargo, se espera que los relés existentes también asuman este papel. El Gate.ioway solo actuaría como interfaz entre el usuario y el relé, por lo que agregar otra entidad independiente solo agrega complejidad y latencia (aunque la latencia también podría abordarse con la co-ubicación). El relé ya es confiable para los constructores y proponentes, por lo que estaríamos agregando otro requisito de confianza en ellos por parte de los usuarios aquí.
ten en cuenta que si bien los validadores actualmente actúan como proponentes de bloques de Ethereum, se está considerando una actualización mediante la cual el propio protocolo subastaría directamente los derechos de propuesta a través deSubastas de ejecución. Esto permitiría a entidades sofisticadas comprar derechos de propuesta directamente, evitando así la necesidad de que los validadores (los proponentes actuales) deleGate.io a ellos como se contempla aquí.
en cualquier caso, el punto importante es que cualquier preconf más rápido que el consenso de ethereum (12s) requiere un tercero de confianza (ttp). ya sea que tu ttp sea un validador restante, apostadoSubasta de ejecuciónganador, deleGate.io de Gate.io, o cualquier otra cosa - fundamentalmente no puede proporcionar seguridad en tiempo real para ethereum. ya sea que coinbase te esté dando un "preconf basado" como proponente de ethereum o un "preconf tradicional" como secuenciador de rollup - estás confiando en coinbase. del mismo modo, pueden depositar una fianza de algunos eth, pero en cualquier caso esto es independiente de la seguridad del consenso de ethereum.
debemos notar entonces que cualquier diseño preconf basado necesariamente resta valor a los objetivos declarados de brs con los que comenzamos (simplicidad y seguridad bl).Las preconfs basadas son cada vez más complejas, y no pueden proporcionar las garantías de seguridad en tiempo real de ethereum.
sin embargo, deberías conservar la capacidad de forzar una transacción directamente a través de una transacción bl si estos preconfers se desconectan o comienzan a censurar. estas garantías de ethereum deberían ser aún más fuertes cuando listas de inclusión se implementan.
para brs - ttps proporciona preconfirmaciones rápidas, y el bl proporciona seguridad eventual.
ahora consideremos un rollup tradicional (es decir, no basado). su propio secuenciador (ya sea centralizado o descentralizado) brinda preconfirmaciones rápidas. más tarde, sus usuarios obtienen plena seguridad de ethereum con retraso. esto incluye la vivacidad (crecimiento del libro mayor + resistencia a la censura) que proviene de algún tipo deinclusión forzada o Respaldo de BLmecanismo.
Como señalé en ¿Los rollups heredan la seguridad?:
los rollups tienen la capacidad de exponer reglas de confirmación con propiedades de seguridad equivalentes a las de su cadena principal. Pueden recibir estas propiedades a lo sumo a la velocidad del consenso de su cadena principal (y en la práctica, a menudo es un poco más lento dependiendo de la frecuencia con la que el rollup publique en la cadena principal).
Los rollups también pueden proporcionar una regla de confirmación más flexible (es decir, los secuenciadores) para una mejor experiencia de usuario, pero conservan la opción de fallback en caso de fallo. Si tu secuenciador se detiene, puedes seguir avanzando.
ten en cuenta que la tiempo para seguridad eventuales la variable clave a optimizar aquí:
la suposición de que los usuarios de rollup pueden retroceder a una vivacidad equivalente a la cadena principal asume que se puede obtener inclusión forzada exactamente a la velocidad de los bloques de la cadena principal (por ejemplo, si el secuenciador de rollup te está censurando, que puedes forzar la inclusión de transacciones en el siguiente bloque de ethereum).
en la práctica, generalmente hay un breve retraso. si permites la inclusión forzada inmediata, podrías exponer censura rentable mev entre otras complejidades. sin embargo, hay diseños que pueden proporcionar garantías de vivacidad casi en tiempo realdesde la cadena de anfitrión (por ejemplo, tal vez a la velocidad de unos pocos bloques de la cadena de anfitrión en lugar de un bloque).
en este espíritu,Sovereign labs tiene un diseñoque hace lo siguiente:
para los no-brs: ttps proporciona preconfs rápidas y el bl ofrece seguridad eventual.
como podemos ver, ambos caminos descritos anteriormente producen el mismo resultado efectivo:
Estos brs con preconfs ya no proporcionan la simplicidad o la seguridad en tiempo real de Ethereum. Entonces, ¿cuál es el punto de todo esto ahora? ¿Por qué no simplemente reforzamos los fallbacks en los rollups “tradicionales”? ¿Qué diablos es un rollup “basado” en este punto?
esto realmente vuelve a míPrueba de gobernanza Publicación del año pasado en la que discutí los casos de uso fundamentales para el replanteamiento específico de Ethereum:
1) técnico (compromisos del proponente) - no hay forma de evitarlo - si quieres un compromiso creíble con el ordenamiento de un bloque de Ethereum, tiene que provenir de los validadores de Ethereum.MEV-Boost++es un ejemplo de una aplicación hipotética que podría caer en esta categoría.
2) social: considero que la alineación de Ethereum es el caso de uso principal para la mayoría de las aplicaciones de restaking hoy en día, no la agrupación de seguridad económica o descentralización. Está llegando a decir " mira, somos un proyecto de EthereumEs por la misma razón que las cadenas siguen llamándose ethereum l2s.independientemente de la arquitectura.
Podemos modernizar esto en el contexto de preguntarnos ¿cuál es el valor de un "br + preconfs" sobre un "rollup tradicional + reserva rápida"?
1) técnico (compromisos del proponente) - ethereum brs con preconfs tienen un beneficio técnico fundamental: pueden obtener un compromiso creíble del proponente actual de ethereum con respecto a la inclusión y el ordenamiento de los contenidos de un bloque de ethereum. Esto es potencialmente valioso por las mismas razones por las que potencialmente queremos que un montón de rollups compartan un secuenciador. Si el proponente de bl también es el proponente de br (es decir, el secuenciador), entonces pueden proporcionar las mismas garantías de inclusión atómica con el bl que se pueden obtener entre cualquier rollup que comparta el secuenciador. Tienen un monopolio en ambas cadenas. Ahora bien, ¿cuánto valor tiene esto? Volveremos a eso en un momento.
2) social (alineación/neutralidad creíble) - te encante o lo odies,Alineación de Ethereumes un punto de venta para ser un br. Voy a ser honesto, no sé mucho sobre taiko más allá de que son los chicos de br, y probablemente no sabría quiénes son si no fueran los chicos de br. Todos quieren un buen co-marketing. Hay valor en ser los primeros en moverse aquí, pero sospecho que este no es un valor duradero y no se aplica a muchos futuros posibles brs. De manera similar, todos hemos oído hablar de los primeros puñados de avs, pero ¿puedes nombrar todos los actuales? Yo no puedo.
A un nivel más alto, no lograrás que todos los rollups de Ethereum opten por el (hipotético) "optimism shared sequencer" o el "arbitrum shared sequencer". Sin embargo, tienes más posibilidades de lograr que todos opten por el "ethereum shared sequencer". Sin nuevo token, sin nueva marca, sin nuevo consenso. Si crees que es valioso que todos los L2 de Ethereum se unan en la secuenciación, entonces esta neutralidad creíble es potencialmente el punto de Schelling más fuerte para lograr ese objetivo.
Esta neutralidad creíble es probablemente la más valiosa para los desarrolladores de rollups que intentan atraer a usuarios de diferentes ecosistemas (por ejemplo, aplicaciones con infraestructura básica como ens). Pueden dudar en usar el secuenciador de Optimism si alienará a los usuarios de Arbitrum, o viceversa.
cubriremos cada uno de estos en más detalle a continuación.
Profundizando en ese punto social, los BR a menudo se ven como la opción más "alineada con Ethereum". Dejando a un lado el juicio de cualquiera sobre el valor de esto, el punto importante es que esto presupone un alto grado de neutralidad creíble para cualquier diseño de BR.
Un br neutralmente creíble es fácil de diseñar en el caso básico, pero como señalamos, nadie realmente los quiere. Por lo tanto, las preconfs requieren que el proponente opte por condiciones adicionales de slashing. Estas condiciones adicionales de slashing requieren que el proponente utilice algún sistema adicional (por ejemplo, potencialmente el restaking de la capa propia,Simbiótico, u otra norma) para asumir el compromiso. Un rollup puede estar feliz optando por el "secuenciador de Ethereum" creíblemente neutral en abstracto, pero es probable que se pierda la neutralidad creíble si está utilizando proyectos financiados con fondos privados, tal vez incluso con tokens propios.
hay varias preguntas abiertas sobre el colateral aquí:
tamaño del colateral
Los diseños iniciales han supuesto que los proponentes tendrían que poner personalmente una cantidad increíblemente alta de garantía de alrededor de 1000 eth. El problema es que fundamentalmente un proponente siempre puede retractarse de su promesa de delegar a Gate.io y construir un bloque por sí mismo, equívocamente en los prefijos. Esto puede ser increíblemente valioso, y 1000 eth está cómodamente por encima de los pagos más altos observados que han pasado por MEV-Boost desde su inicio. La desventaja es que esto, por supuesto, crea necesariamente una barrera alta para los proponentes más pequeños, mientras que los más grandes (por ejemplo, Coinbase) podrían poner razonablemente 1000 eth mientras ganan recompensas en todo su peso de inversión.>13% del total de eth apostado) porque los registrantes pueden presentar un solo bono para todos sus validadores. hay Otras ideas para permitir a los proponentes con bonos mucho más pequeños, aunque, por supuesto, vienen con compromisos. El espacio de diseño aquí es simplemente incierto.
vale la pena señalar quesubastas de ejecución aliviaría esta preocupación, ya que podemos suponer que todos los proponentes serían entonces actores sofisticados fácilmente capaces de esto.
fuente: Barnabé monnot, de mev-boost a epbs a aps
Sin embargo, incluso los grandes operadores dudan en poner grandes cantidades debido a posibles problemas de disponibilidad que podrían resultar en penalizaciones (un fallo en la disponibilidad por parte de un operador, que da lugar a que nuestras transacciones previas se pierdan antes de ser incluidas en un bloque, es un fallo de seguridad para los usuarios y debe ser penalizado severamente).
Tipo de colateral
Vanilla ETH es probablemente la única garantía creíblemente neutral en esta situación. Sin embargo, naturalmente existirá el deseo de utilizar activos más eficientes en términos de capital (por ejemplo, STETH). Hay algunas ideas para que un suscriptor se encargue de esta conversión, como se describe en mteam aquí.
plataforma
no sería muy 'crediblemente neutral' si las 'preconfs basadas en ethereum' son más como las 'preconfs basadas en eigenlayer' o las 'preconfs basadas en simbiótica'. hay equipos que planean ir en esta dirección, pero no es un requisito estricto utilizar tal plataforma. es posible crear un estándar general y neutral para que todos lo utilicen, y dicho sistema parecería estar mejor posicionado para su adopción general como la opción más basada.
Será necesario adoptar estándares de bien público para que los diseños previos basados sean "creíblemente neutrales".
ahora cubriremos preconfs en mayor detalle. si bien discutimos un tipo específico de preconf anteriormente (preconfs br en estado), debemos tener en cuenta que son un concepto totalmente general. puedes ofrecer preconfs en transacciones bl además de brs, y puedes ofrecer diferentes niveles de preconfs:
lo último (preconfs del estado) es, por supuesto, lo que los usuarios quieren que sus billeteras les muestren:
intercambié 1 eth por $4000 usdc y pagué 0.0001 eth en comisiones
no inclusión preconfs:
mi transacción intentando intercambiar 1 eth por $4000 usdc y pagando hasta 0.0001 eth en tarifas eventualmente aterrizará en la cadena, pero tal vez tenga éxito, tal vez falle, veremos
Sin embargo, debemos tener en cuenta que las inclusiones preconfs son efectivamente intercambiables con las inclusiones de estado en el caso de las acciones tomadas por el usuario en un estado no discutible (por ejemplo, transferencias simples donde solo el propio usuario puede invalidar la transacción). En este caso, una promesa de que, por ejemplo, "la transferencia de USDC de Alice a Bob se incluirá en los próximos bloques" es suficiente para que una billetera simplemente muestre al usuario "has enviado tus USDC a Bob".
no es sorprendente que los compromisos más fuertes (preconfs estatales) sean más difíciles de obtener. Fundamentalmente, requierencompromiso creíbledesde la entidad que actualmente tiene el monopolio de proponer bloques (es decir, un bloqueo de escritura en el estado de la cadena). en el caso de las preconfederaciones de ethereum l1, este es siempre el proponente actual de ethereum l1. en el caso de las preconfederaciones de br, esto es presumiblemente el próximo proponente de ethereum l1 en la anticipación de br (lo que los convierte en el proponente actual de br), como veremos a continuación. proponente y secuenciador son términos generalmente intercambiables, siendo el primero más utilizado en el contexto l1 y el segundo en el contexto l2.
otra gran distinción que debemos hacer es qué tipo de estado están tocando estos preconfs:
Las preconfs son restricciones sobre el bloque que se puede producir en última instancia. En igualdad de condiciones, restringir inherentemente el espacio de búsqueda para los constructores solo puede reducir el valor potencial que pueden capturar al pedirlo. Eso significa que se devolvería menos valor al proponente. para que sea compatible con los incentivos, Gate.ioway debe cobrar una tarifa de preconf ≥ el MEV potencial perdido por restringir el resultado.
esto es lo suficientemente simple cuando la pérdida de MEV es ~0 (por ejemplo, en una transferencia de USDC). En este escenario, cobrar una tarifa fija nominal podría ser razonable. Pero tenemos un gran problema: ¿cómo valoramos las preconfs en un estado controvertido? Valorar las preconfs con anticipación frente a justo a tiempo parece que pagaría menos. Con todo lo demás igual, es más rentable para un constructor esperar hasta el último segundo posible para capturar y valorar con precisión el MEV.
Sin embargo, supongamos que hay suficiente demanda de usuarios para preconfs rápidas en el estado contencioso (teniendo en cuenta tanto a los buscadores sofisticados como a los usuarios normies), de modo que a veces habrá un precio de liquidación que sea beneficioso para todos. Ahora bien, ¿cómo se fija exactamente el precio de una preconf para una transacción en un estado contencioso que, de otro modo, podría incluir en cualquier momento de los próximos 12 segundos, renunciando potencialmente a oportunidades más rentables que ya no serían posibles?
Las preconfs sobre el estado disputado que se transmite a lo largo del bloque entrarían en conflicto con la forma en que los constructores crean bloques. La fijación de precios requiere estimar con precisión el impacto de MEV de incluirlo ahora en lugar de retrasarlo, lo que significa ejecutar y simular los posibles resultados. eso significa que Gate.ioway ahora necesita ser un buscador/constructor altamente sofisticado.
ya asumimos que Gate.ioway y relay se fusionarían. si necesitan seguir fijando precios preconfs, entonces también se fusionarán con el constructor. también aceptamos que usc aceleraría la fusión del constructor y el probador. también parece queSubastas de ejecuciónvenderá los derechos de proponente directamente a actores sofisticados (probablemente constructores) capaces de fijarles un precio.
esto pone la totalidad de la cadena de suministro de transacciones ethereum l1 y br en una caja que tiene un monopolio de escritura bloqueado en el estado de todas las cadenas durante ese período.
las políticas de ordenamiento del servicio preconf son poco claras (por ejemplo, ¿siempre se ejecutan en orden de llegada o se ordenan de otra manera). También es posible que Gate.ioway realice una subasta de todas las preconfs (por ejemplo, permitiendo a los buscadores hacer ofertas por las preconfs), aunque no está claro cómo sería ese diseño y necesariamente significaría una mayor latencia.
hay un problema de intercambio justo con preconfs donde la forma de Gate.io en realidad no está directamente incentivada para liberar la preconf.
considere el siguiente ejemplo:
En este escenario, el usuario puede terminar pagando por la preconf aunque en realidad no la reciba hasta el final de la ranura. Gate.ioway también podría dejarlo al final de la ranura si deciden que no es rentable incluirlo. esta retención por parte de Gate.ioway no es una falta objetivamente imputable (pero podría ser atribuible intersubjetivamente).
de hecho, en realidad hay un incentivo para que Gate.io retenga las preconfs hasta el final.Donde hay asimetría de información, hay MEV. mantener las transacciones privadas permitiría a un constructor tener una visión más actualizada del estado del mundo, lo que les permitiría tasar mejor el riesgo y capturar mev. no hay consenso sobre el conjunto de preconfs que se les da a los usuarios, por lo que Gate.io no puede ser considerado responsable aquí.
Tendrían que haber normas establecidasy expectativas de que el preconferidor chisme inmediatamente en público todas las preconfs. esto daría a los usuarios lo que quieren de inmediato y permitiría a otros ver que Gate.ioway está proporcionando los servicios esperados. si no lo hacen en el futuro, entonces los usuarios no confiarían en ellos y no les pagarían por las preconfs. la reputación de Gate.ioway tiene valor. dicho esto, también puede serExtremadamente valioso Ser deshonesto aquí y volver en contra de las preconfsiones.
con los puntos generales de la preconf fuera del camino, ahora discutiremos los matices de las preconf L1. aunque no los mencionamos antes, hay proyectos construyendo estos, y su interacción con las preconf BR será importante.
por ejemplo,Perno es un protocolo que quiere permitir a los proponentes de ethereum hacer compromisos creíbles sobre el contenido de sus bloques. Los proponentes registrados pueden ejecutar el sidecar de bolt para recibir solicitudes previas de los usuarios, confirmarlas y luego enviar esta información a relays y builders que pueden devolver bloques que respeten estas restricciones (es decir, devuelven un bloque que incluye las transacciones a las que el proponente dio preconfs).
es importante destacar aquí queBolt v1La descripción aquí solo admite inclusiones de transacciones simples preconfs para un estado no controvertido en el que solo el usuario puede invalidar la preconf. Como discutimos anteriormente, estos son los compromisos más simples y débiles para proporcionar.
Todos estos equipos de preconf tienen ambiciones más grandes (por ejemplo, preconfs estatales, subastas de bloques parciales, subastas de tragamonedas o de tragamonedas parciales), entonces, ¿qué los detiene?
mev-boost, un producto más simple con años de experiencia que es increíblemente rentable para ejecutar,>92% de participaciónpara el contexto (probablemente incluso un poco más alto ya que esto no tiene en cuentamin-bid. un nuevo servicio de preconfiguración seguramente obtendría una tasa de participación mucho menor. pero incluso si pudiera llegar al ~90% range, esto no parece ser un producto útil para los usuarios normales. no se puede decir a los usuarios el 10% del tiempo “oh lo siento, no hay preconfiguraciones disponibles en este momento, vuelva a intentarlo en un momento.”
En el mejor de los casos, esto parece que las preconfs estatales solo serían una herramienta opcional para buscadores y comerciantes sofisticados que puedan querer obtener un compromiso antes en el bloque cuando ese espacio tiene un proponente optado. Eso puede ser valioso, pero no hay fragmentación o mejoras de UX aquí.
Las preconfs de BR deben provenir de los proponentes de BL (por eso están "basadas"). Esto requiere que apuesten por alguna garantía y opten por condiciones de recorte adicionales (es decir, que los preconfs que proporcionen lleguen a la cadena como se prometió). Cualquier proponente que desee hacerlo puede actuar como secuenciador BR y proporcionar preconfs.
Es importante destacar que estos br preconfs son preconfs de estado, no solo preconfs de inclusión. Esto es posible porque los brs optan por un diseño en el que otorgan un monopolio de secuenciador rotativo a los proponentes de bl que se registran para ser Gate.ioways.
hoy, un validador de ethereum sirve como proponente para cada ranura, y el programa del proponente siempre se conoce para la época actual y la siguiente. una época son 32 ranuras, por lo que siempre conocemos los próximos 32-64 proponentes en un momento dado. el diseño funciona otorgando al siguiente secuenciador activo (es decir, el siguiente secuenciador en la mirada hacia adelante) poderes de monopolio para secuenciar transacciones para los brs que optaron por este sistema de preconfiguración. Gate.ioways debe firmar para avanzar en el estado de las cadenas de br.
Tenga en cuenta que cada proponente (incluso aquellos que no han optado por ser un Gate.ioway) tiene el derecho pero no la obligación de incluir transacciones que han sido preconfirmadas por los secuenciadores (es decir, aquellos proponentes que han optado por ser un Gate.ioway). Pueden actuar como un incluidor siempre y cuando tengan la lista completa de transacciones que han sido preconfirmadas hasta ese momento (el secuenciador puede crear un bl blob que tenga las transacciones br y difundirlas).
fuente: Secuenciación de Ethereum, justin drake
el flujo de transacción funciona de la siguiente manera:
fuente: Secuenciación de Ethereum, justin drake
si los otros incluidores no incluyen los preconfs, entonces el secuenciador que los dio simplemente puede incluirlos onchain cuando sea su turno como el proponente bl. por ejemplo, en la imagen de arriba, digamos que el incluidor de la ranura n decidió no incluir los preconfs que el secuenciador de la ranura n+1 entregó. entonces el secuenciador de la ranura n+1 sería responsable de incluir todos los preconfs que entregó durante la ranura n y la ranura n+1 cuando presente su bloque bl para n+1. esto permite al secuenciador dar con confianza preconfs durante el período completo entre ellos y quienquiera que haya sido el último secuenciador.
para simplificar las explicaciones anteriores, simplemente asumimos que el proponente l1 cumpliría este papel preconferido. Sin embargo, como se describió anteriormente, esto no es probable que sea el caso. Se requerirá una entidad sofisticada para fijar los preconfs, ejecutar nodos completos para todos los BR, tener protección contra DOS y ancho de banda suficiente para todas las transacciones de BR, etc. Ethereum quiere mantener a los validadores muy poco sofisticados, por lo que es de suponer que los proponentes subcontratarán preconfs a otra entidad de la misma manera que subcontratan la producción de bloques L1 completa a través de MEV-Boost hoy en día.
Los proponentes pueden deleGate.io a Gate.ioways a través de mecanismos dentro o fuera de la cadena, y esto se puede hacer hasta justo antes de su ranura. Como se señaló anteriormente, es probable que en la práctica esta función sea asumida por los relés. También es posible que tengan que fusionarse con los constructores.
fuente: Secuenciación basada, Justin Drake
como se describió anteriormente, solo una entidad puede ser deleGate.iod para ser el Gate.ioway en un momento dado. esto es necesario para proporcionar preconfs de estado confiables. los uis (por ejemplo, billeteras como metamask) buscarían quién es el próximo Gate.ioway y enviarían las transacciones del usuario allí.
con suficiente contexto ahora en su lugar - ¿deberían basarse los rollups de Ethereum? hay realmente dos preguntas incrustadas aquí:
En primer lugar, es importante tener en cuenta que puede compartir un secuenciador con otras cadenas de forma ad hoc. Por ejemplo, el proponente de Ethereum puede secuenciar un bloque para usted si ofrece la oferta más alta, luego algún otro consenso bft podría secuenciar su próximo bloque si ofrece la oferta más alta. Sin embargo, esto aún requiere que una cadena se integre completamente en esta subasta uniforme compartida que puede ejecutarse sincrónicamente con estas otras cadenas, por lo que aún existen compensaciones en cuanto al control y la flexibilidad (por ejemplo, tiempos de bloque compartidos). Solo que la entidad secuenciadora ganadora puede cambiar.
De todos modos, supongamos simplemente que se cumple la condición 1. Creo que en este punto tenemos evidencia convincente de que existe suficiente demanda para utilizar un secuenciador compartido descentralizado. Incluso si les importa menos el "aspecto compartido", creo que hay un valor increíble en poder comprar un secuenciador descentralizado como servicio directamente (de hecho, creo que este es el mayor valor aquí).
Ahora, ¿debería este secuenciador compartido ser un secuenciador basado en Ethereum?
técnico (compromisos del proponente)
No veo un argumento técnico sólido para usar un secuenciador basado en Ethereum. Cualquier interoperabilidad entre BRS y Ethereum L1 sería increíblemente limitada debido a la incapacidad de ejecutarse de manera confiable contra el L1 (es decir, no tener consistentemente un bloqueo de escritura en el estado L1), largos tiempos de bloque (12s) y el hecho de que las transacciones de BR que desearan interactuar con el L1 tendrían que reorganizarse junto con él. Aquí no hay almuerzo gratis. Esto no desbloquea ningún producto valioso orientado al usuario en comparación con cualquier otro secuenciador compartido externo.
el valor principal que veo es que agregar el ethereum l1 a esta subasta combinatoria más grande puede resultar en un mayor valor agregado creado por Gate.iopermitir que el l1 capture más valorLlevando esta lógica al extremo, probablemente deberíamos poner todo en el mundo en la misma subasta. Esta subasta universal también debería secuenciar boletos para conciertos de Taylor Swift. Todavía no estoy del todo allí.
esto es solo para resaltar que hay una complejidad técnica y social real en la creación y la adopción de todos en esta subasta compartida, lo cual tiene un costo real, que en mi opinión probablemente supera cualquier valor adicional teórico creado aquí. Se puede construir fácilmente un diseño técnico mucho mejor para ejecutar esto desde los primeros principios si no intentamos colocarlo encima de ethereum l1 (por ejemplo, simplemente tener un mecanismo de consenso rápido y simple construido para este propósito). sin mencionar el hecho de que tal subasta combinatoria crearía un aumento exponencial en la complejidad.
En la práctica, existe un riesgo significativo para mí de que esto pueda ser severamente contraproducente para Ethereum, ya que esta arquitectura basada en preconf parecería ser potencialmente aceleracionista en relación a la infraestructura de MEV cuando la cadena de suministro de Ethereum ya es algo frágil. Esto pone en riesgo la descentralización y la resistencia a la censura de la red, que son precisamente las cosas que la hacen valiosa desde el principio.
social (neutralidad creíble)
Veo un argumento social válido para un secuenciador basado en Ethereum.
como se mencionó anteriormente, no hay duda de que la "alineación" es una venta para los primeros br. Eso está bien, pero no creo que dure. Es genial ser el primer br, no es genial ser el octavo. Debe haber algún otro valor agregado.
Creo que la neutralidad creíble de un secuenciador basado en Ethereum es potencialmente ese valor. Es probable que sea el argumento más fuerte a favor de tal diseño, al menos. Hay muchas cadenas que quieren tener un secuenciador descentralizado listo para usar. Si finalmente podemos diseñar suficiente infraestructura sobre esto que mejore la experiencia de usuario entre cadenas, entonces aún mejor. Sin embargo, de los proyectos que quieren un diseño de este tipo, imagino que muchos de ellos dudan en "elegir un bando" con cualquier protocolo de terceros. Como se indicó anteriormente, imagine que es una cadena de aplicaciones con una infraestructura general básica como ENS y desea un paquete acumulativo. No querrás elegir el (hipotético) secuenciador compartido de Arbitrum y apagar a la multitud de optimismo, o viceversa.
posiblemente la única solución al problema de coordinación social aquí es tener un secuenciador compartido creíblemente neutral, para lo cual Ethereum es claramente el candidato más fuerte. Tenga en cuenta que esto pone aún más énfasis en los puntos que mencioné anteriormente sobre la neutralidad creíble - si este es el principal valor agregado de tal servicio, ese debe ser un objetivo de diseño increíblemente prioritario al crearlo. No funcionará si tiene la apariencia de ser el proyecto personal de algún protocolo de terceros con sus propios motivos de lucro. Tiene que ser el secuenciador compartido de Ethereum en realidad.
Vale la pena señalar que también hay críticas razonables de que "neutral" aquí es un código para "ethereum", es decir, que su principal motivación es beneficiar a ethereum y su infraestructura nativa circundante. Y, por supuesto, dicho sistema beneficiaría a estas partes. Significaría una mayor captura de valor para el activo ether y más rentabilidad para los creadores, relays y buscadores de ethereum.
Ahora debemos entender que puedes tener brs en una bl lenta como Ethereum, puedes agregar preconfs confiables para una experiencia de usuario más rápida, e incluso puedes garantizar la seguridad al moverte entre cadenas a través de garantías criptoeconómicas o criptográficas.
como se señaló, ¿qué pasa si simplemente diseñamos esta cosa desde cero? sin lidiar con la deuda técnica y las decisiones de una cadena existente. ¿cuál es la forma obvia de construir la cosa...
Anteriormente, discutimos cómo la única razón técnica para ser un br con preconfs para un bl dado (por ejemplo, Ethereum) es para que su proponente pueda proporcionar compromisos creíbles en momentos respecto a la inclusión atómica síncrona con el bl.
Sin embargo, no discutimos seriamente la capacidad de ser un br sin preconfs. Básicamente descartamos esto porque Ethereum es lento y los usuarios son impacientes.
¿Entonces por qué no usamos simplemente un bl rápido para brs?
esto resuelve prácticamente todos los casos límite complejos y preocupaciones que teníamos antes. no queremos casos límite extraños donde Gate.ioways tenga fallas de vida (que tienen el mismo resultado que las fallas de seguridad aquí), no queremos que se retracten de preconfesiones prometidas (es decir, fallas de seguridad), y no queremos reorganizaciones de ethereum. es exactamente por eso que existe el consenso.
la mayor parte de la conversación sobre secuenciadores perezosos los considera como un secuenciador de rollup que luego deposita sus datos en alguna otra capa de datos. por ejemplo, los dos primeros rollups de Astria,FormayLlama) usarán Celestia como su capa DA. El consenso de Astria secuenciará estos rollups, y luego transmitirá sus datos a Celestia.
esta combinación es especialmente buena porque son complementos obvios: Astria proporciona toda la infraestructura de secuenciación y Celestia proporciona una verificación minimizada de confianza a través demuestreo de disponibilidad de datos (das).
Sin embargo, Astria también podría utilizarse para secuenciar un rollup que sea nativo de Ethereum, Bitcoin, Solana o cualquier otra cosa que desee. Por ejemplo, incluso podría configurarse para ser utilizado como un preconfer para Ethereum "BRS con preconfs" (por ejemplo, en lugar de un Gate.ioway centralizado, ya que un secuenciador perezoso es básicamente solo un relé incentivado y descentralizado).
Para ser claros, cada cadena es una capa da. Los nodos completos siempre pueden comprobar si hay da. Es una parte de las condiciones de validez de cualquier cadena que los datos estén disponibles, por lo que el consenso siempre está firmando que los datos están disponibles. Los nodos ligeros que comprueban su aprobación obtienen una suposición de mayoría honesta. La única diferencia es si la cadena proporciona otra opción para que los clientes ligeros muestren directamente para da en lugar de preguntar al consenso.
sin embargo, como señalé en ¿Los rollups heredan seguridad?Cadenas rápidas como Astria podrían técnicamente agregar un camino lento para Das (para mejorar la verificabilidad), y cadenas lentas como Celestia podrían agregar un camino rápido para la secuenciación (con una suposición de confianza mayoritaria y sin Das), llamado "..."bloques rápidos cuadrados lentos.”
moverse hacia la integración vertical de capas especializadas como la secuenciación o das estrecharía aún más la distinción entre blockchains modulares e integrados. esto se aplica de manera similar a la integración vertical del capa de liquidaciónmediante la adiciónLas cuentas verificadoras de ZK a la capa base de celestia.
Sin embargo, hay un valor significativo en mantener estos servicios separados en lugar de agruparlos. Este es el enfoque modular que permite a los rollups elegir qué características desean de la estantería (por ejemplo, quiero comprar secuenciación descentralizada con bloques rápidos, pero no quiero pagar por das, o viceversa). Los investigadores han demostrado que quieren das, pero hasta ahora los usuarios solo han demostrado que quieren bloques rápidos.
agrupar servicios como en elbloques rápidos cuadros lentos“sería muy opinado e integrado. esto necesariamente agregaría complejidad y costo. el efecto de la longitud de la ranura en juegos de tiempoLa descentralización (y potencialmente) que ahora es omnipresente en Ethereum también es un factor a considerar.
pero también puedes usar astria como el bl para los rollups. Los secuenciadores compartidos pueden considerarse como bls que están optimizados para los brs propios.
cuando su BL es rápida, su BR no necesita preconfs porque obtiene confirmaciones rápidas de manera predeterminada! Luego su rollup obtiene la seguridad en tiempo real de su BL, a diferencia de los BR + preconfs que necesariamente pierden esto.
Los BRS sin preconfs son de hecho la forma más lógica de construir un rollup. Por eso, todos los rollups de hoy en día comenzaron allí:
Está claro que un BL con bloques rápidos soluciona la mayoría de nuestros problemas en "based rollups + preconfs". Los secuenciadores compartidos se construyen naturalmente más desde un enfoque de primeros principios de "los desarrolladores de aplicaciones solo quieren lanzar una cadena rápida, confiable y descentralizada, ¿cómo se la doy?" Intentar agregar preconfs después del hecho en una capa base más lenta como Ethereum resulta en las complejidades que hemos descrito anteriormente.
Así que, vimos cómo podemos volver a unir cadenas modulares de Gate.io, proporcionando composabilidad síncrona universal (usc). Por supuesto, hay compensaciones, pero reintroducen un grado significativo de unidad mientras preservan mucha más flexibilidad que el uso de una sola máquina de estado. También hay un argumento muy convincente para mí de que la composabilidad asíncrona es todo lo que necesitamos para la gran mayoría de los casos de uso. Necesitamos baja latencia, rendimiento y buena experiencia de usuario. Internet es asíncrono y funciona bastante bien abstrayendo todo eso. La composabilidad es un gran valor añadido de la criptografía, pero composabilidad ≠ sincronía.
A pesar de los beneficios de flexibilidad y soberanía, la mayoría de las personas estarían de acuerdo en que eventualmente necesitaremos muchas cadenas para escalar de todos modos. Esto significa que terminaremos con muchos sistemas que necesitamos unificar, por lo que la dirección modular es inevitable aquí.
Ahora, comparemos los finales aquí. En particular, compararemos el final de Solana con el final de Ethereum si sigue este camino de maximizar la unidad y la experiencia de usuario con rollups basados en base + preconfs.
en esta visión, tenemos un montón de estos brs utilizando el secuenciador basado en Ethereum. Gate.ioways está transmitiendo continuamente preconfs prometidos por el proponente (es decir, sin ningún peso de consenso) a los usuarios con baja latencia, luego los proponentes de Ethereum los comprometen en un bloque completo de vez en cuando. Esto puede sonar familiar porque es prácticamente lo que describimos anteriormente para Solana con la transmisión de fragmentos.
Entonces, ¿es esto simplemente un Solana más complicado? La gran diferencia aquí está en los tiempos de ranura:
Ethereum intenta agregar esto encima de una cadena lenta claramente presenta problemas a primera vista:
todo esto se resuelve con un consenso rápido. todos estos sistemas son literalmente por qué creamos sistemas bft en primer lugar. entonces, ¿por qué no debería ethereum hacer que su consenso sea más rápido? ¿hay algunos compromisos menos obvios al tener tiempos de bloque de capa base de súper baja latencia?
Afortunadamente no tengo nada mejor que hacer que escribir un ensayo sobre si los tiempos de bloque más cortos son buenos. La gran preocupación con los tiempos de ranura más cortos está relacionada con la centralización de validadores y operadores. Específicamente, existen preocupaciones con respecto a la interacción de los tiempos de ranura cortos con juegos de tiempo:
ya vemos juegos de sincronización progresando en Ethereum. Los proponentes proponen bloques más tarde en sus espacios, ganando más dinero a expensas de otros. Los relés también ofrecen “juegos de sincronización como servicio"donde de manera similar retrasan los bloques más tarde en la ranura:
fuente: Datos siempre
los juegos de tiempo fueron un gran tema de discusión en el algo infamePodcast de Justin vs. toly banklessde hace algunas semanas:
por ejemplo, digamos que eres 100ms más rápido que los demás
si tienes ranuras de 1s, puedes ganar un 10% más que todos los demás
si tienes 10s slots, puedes ganar un 1% más que los demás
— jon charbonneau (@jon_charb) 4 de junio de 2024
Justin argumentó principalmente que los juegos de sincronización serán un problema, y las recompensas incrementales siempre serán relevantes. Toly argumentó principalmente que los juegos de sincronización no serán un problema, y que las recompensas incrementales obtenidas de la extracción adicional de MEV no son suficientes para preocuparse.
Personalmente, me resulta difícil ignorar la importancia de cronometrar los juegos aquí:
Creo claramente que hay una gran cantidad de valor en la dirección que están tomando tanto Solana como Ethereum. Si nada más, veremos cómo se desarrolla todo en la práctica. Estratégicamente, también creo que tiene sentido que Ethereum se incline hacia lo que lo hace diferente aquí. Maximizar la descentralización como medio para lograr la resistencia a la censura en circunstancias adversas. Ethereum ha hecho muchos sacrificios para mantener un protocolo increíblemente descentralizado porque es una necesidad para el largo plazo. Tiene una diversidad de clientes inigualable, distribución de propiedad de la red, partes interesadas del ecosistema, descentralización de los operadores y más. Si (y probablemente cuando) Solana enfrenta una seria presión de censura en el futuro, se volverá cada vez más evidente por qué Ethereum ha tomado las decisiones que ha tomado.
preconf.wtf acaba de suceder en zuberlin la semana pasada, y tal vez no sorprenda a nadie, todos estaban hablando de preconfs y based rollups. y todo eso fue realmente genial. pero personalmente encontré Charla de Vitalikenlistas de inclusión de un bit por atestadory la charla de barnabé sobreSobrecargar al proponente de ejecución en su lugar (de mev-boost a epbs a aps)ser lo más importante para el futuro de Ethereum.
fuente: Barnabé monnot, De mev-boost a epbs a aps
las conversaciones sobre preconf y based rollup han comenzado a ganar impulso recientemente, y definitivamente todavía estoy en el lado más cauteloso. Vitalik famosamente estableció lo siguienteEndgame:
Sin embargo, nos hemos adentrado bastante en la "producción centralizada" sin implementar aún protecciones más fuertes contra la censura, como listas de inclusión. Básicamente, Ethereum se encuentra en la mitad de la fila inferior de esta imagen. (Digo la mitad porque la censura no es realmente blanco y negro, y Ethereum solo tiene una "censura débil", es decir, la mayoría pero no todos los bloques están censurados, así que solo tienes que esperar un poco y luego serás incluido):
fuente: Prueba de gobernanza
Empíricamente, la cadena de suministro MEV de Ethereum L1 actualmente censura en tiempo real más bloques que cualquiera de estos L2 con secuenciadores centralizados.
l2s ya pueden obtener el cr eventual del l1 (que aún es muy bueno) sin estar basados. Las preconfirmaciones basadas no obtienen la seguridad en tiempo real del protocolo ethereum, obtienen la seguridad en tiempo real de un pequeño grupo de proveedores de infraestructura relativamente centralizados que lo rodean. Para obtener un cr en tiempo real mejorado, la mejor opción probablemente sea externalizar la secuenciación a algún tipo de secuenciador descentralizado que ejecute un consenso bft simple. Esto será mucho más sólido que centralizar muchas cadenas en un cuello de botella actualmente relativamente centralizado. Esta situación puede mejorar con cambios como subastas de ejecución y listas de inclusión, pero eso no está exactamente a la vuelta de la esquina.
Con todo esto considerado, no me queda claro que expandir la dependencia de la infraestructura de MEV de Ethereum L1 y luego afianzarla para L2 sea una gran idea en esta etapa, cuando hay un puñado de personas que construyen y transmiten todos los bloques de Ethereum, la mayoría de los bloques sin censura de Ethereum hoy dependen de un único constructor (Titán), y ninguna de las herramientas CR se ha implementado en el protocolo todavía. Esto se siente agresivamente aceleracionista en un punto frágil. Ethereum ciertamente debería estar trabajando para mejorar la experiencia de usuario de L2, pero no a expensas de todas las propiedades subyacentes que queríamos en primer lugar.
Todos estamos construyendo lo mismo.
bueno, más o menos. obviamente, estas cosas no son todas literalmente lo mismo. siempre habrá diferencias prácticas entre estos sistemas. sin embargo, la mega-tendencia general en cripto es clara, todos estamos convergiendo hacia arquitecturas cada vez más similares.
las diferencias técnicas matizadas entre ellos pueden tener implicaciones significativas en la práctica para dónde terminan, y no podemos subestimar el papel fundamental que juega la dependencia del camino en estos sistemas, incluso cuando convergen hacia juegos finales similares.
además, es bastante malditamente imposible razonar sobre algunas de estas cosas.Como dijo vitalik:
“Una nota de precaución que tengo para las AP es que creo que desde una perspectiva puramente técnica, en realidad creo que es bastante sencillo y que somos totalmente capaces de llevarlo a cabo con muy poca probabilidad de error técnico... pero desde una perspectiva económica hay muchas más oportunidades para que las cosas salgan mal...
Al igual que con eip-1559, pudimos averiguarlo con la teoría. Fuimos a algunas conferencias de economía encantadoras y aprendimos sobre los peligros de las subastas de precio inicial y lo malas que son, y descubrimos que las subastas de segundo precio no son creíbles, y luego descubrimos que, ¡hey, usemos un mecanismo de precio fijo localizado dentro de cada bloque, y pudimos hacer mucho con la microeconomía.
Pero aps no es así, ¿verdad? Y la pregunta de si aps llevará a Citadel o Jane Street o Justin Sun o quien sea a producir el 1% de todos los bloques de Ethereum o el 99%, es muy muy difícil, probablemente imposible de averiguar desde los primeros principios.
y por lo tanto, lo que quiero ver en este momento es experimentación en vivo... para mí personalmente, la diferencia entre hoy y sentirme realmente cómodo con las aps es básicamente que las aps funcionen correctamente en una capa 2 de Ethereum que tiene una cantidad media de valor, actividad, comunidad y disputas reales ocurriendo, y que eso dure durante un año, posiblemente más, y que realmente podamos ver algunas consecuencias en vivo.
así que sí, tampoco sé qué va a pasar. solo tendremos que esperar y ver. en cualquier caso, mientras todos convergimos hacia lo que sea este juego final, tenemos mucho más en común que diferencias, así que asegurémonos de por favor...