Valor extraíble minero (MEV) y dinero programable: lo bueno, lo malo y lo feo

By Bitcoin Revista - Hace 3 meses - Tiempo de lectura: 11 minutos

Valor extraíble minero (MEV) y dinero programable: lo bueno, lo malo y lo feo

El núcleo de BitcoinEl modelo de seguridad de se basa en esta teoría básica del juego: los mineros, armados con sus picos digitales, están en una búsqueda incesante de ganancias. Y es esta búsqueda la que mantiene segura la red. La minería básica implica producir bloques para ganar recompensas por bloques y tarifas de transacción, pero ¿alguna vez has considerado que los mineros podrían tener otras formas de extraer valor de los bloques? blockchain ¿Más allá de este proceso minero estándar? ¿Existen otras vías de ganancias en blockchain donde los mineros puedan aprovechar su posición única como validadores?

¿Qué es MEV?

En los sistemas de prueba de trabajo, “Valor extraíble minero"(SEM) es un término que describe las ganancias que los mineros pueden obtener al manipular cómo se priorizan, excluyen, reorganizan o modifican las transacciones en los bloques que extraen. Sin embargo, desde la actualización de Ethereum a Ethereum 2.0, que trasladó la red a prueba de participación, el concepto de MEV ha adquirido un nuevo nombre y ahora se lo conoce como "Valor máximo extraíble" en los sistemas de prueba de participación. En este contexto, son los proponentes de bloques, en lugar de los mineros (que son los validadores), los que tienen la oportunidad de extraer este valor.

Los mineros (o validadores en Ethereum) tienen un papel especial en estas redes al confirmar transacciones en bloques. Su posición les sitúa un paso por delante de otros usuarios y les permite determinar el orden final de transacciones en la cadena. Dentro de un bloque, las transacciones generalmente se ordenan con las tarifas más altas en la parte superior, pero de vez en cuando se abren oportunidades que permitirían a los mineros tomar una decisión. ganancia adicional cambiando estratégicamente el orden de las transacciones para su propio beneficio.

Se podría pensar, ¿qué hay de malo en permitir que los mineros obtengan un poco de beneficio adicional? Las preocupaciones sólo comienzan a surgir cuando algunos de estos mineros, aquellos equipados con capacidades analíticas más avanzadas y computación más potente, pueden identificar y explotar oportunidades de ganancias MEV de manera más efectiva que otros.

Puede que estas oportunidades no siempre sean fáciles de detectar, pero cuanto más valor se pueda extraer mediante el análisis de la cadena, más fuerte será el incentivo para que los equipos de investigación equipados con robots realicen este trabajo. Con el tiempo, esta disparidad en la capacidad de generación de ganancias de los mineros crea una tendencia hacia la centralización dentro de la red. En última instancia, socavando el principio central de blockchain: la descentralización.

Este es exactamente el escenario que Bitcoin La comunidad de desarrolladores pretende prevenir al considerar la mejor manera de gestionar una mayor expresividad en Bitcoin.

¿Por qué queremos dinero programable?

Históricamente, los Bitcoin ha operado con contratos inteligentes relativamente simples. Sin embargo, este modelo tiene problemas incluso con transacciones moderadamente complejas. Bitcoin El script solo puede validar datos de autenticación, no tiene la capacidad de imponer límites de velocidad en las transacciones ni definir destinos de monedas porque Bitcoin El script no tiene acceso a los datos de la transacción.

Como tema un tanto aparte, trabajar y escribir Bitcoin Los contratos inteligentes pueden ser un desafío para los usuarios que no comprenden completamente sus requisitos de seguridad. Una característica propuesta, conocida como "bóvedas", tiene como objetivo resolver algunos de estos puntos débiles mediante la introducción de condiciones de bloqueo de tiempo para las transacciones. Básicamente, las bóvedas podrían servir como una “escotilla de escape” de emergencia, permitiendo a los usuarios recuperar sus fondos en caso de que se vean comprometidas sus claves privadas. Pero características como ésta sólo son posibles con más expresividad.

Ethereum es ampliamente reconocido por sus capacidades de secuencias de comandos altamente expresivas, pero también lucha notablemente con el problema de MEV. La mayoría de los usuarios generalmente asumen que Bitcoin no tiene MEV, en marcado contraste con Ethereum, que se considera una frontera salvaje para él. ¿Pero es esta la historia completa?

¿Los contratos inteligentes más expresivos incentivan automáticamente más escenarios MEV?

Hay varios factores que contribuyen al MEV: (1) transparencia del mempool, (2) transparencia del contrato inteligente y (3) expresividad del contrato inteligente. Cada uno de estos factores abre nuevos canales para MEV, los revisaremos cada uno aquí.

Lo malo: (1) Transparencia de Mempool

Me gusta BitcoinCon el mempool, los mempools de la mayoría de las blockchains son completamente transparentes, abiertos y visibles, para que todos puedan ver qué transacciones están pendientes antes de ser validadas y confirmadas en un bloque. Bitcoin Los bloques suelen tardar unos 10 minutos en encontrarse, lo que, en teoría, les da a los mineros la misma cantidad de tiempo para aprovechar y adelantarse.

En la práctica, en Bitcoin, esta no es una fuente de MEV por varias razones: (1) Bitcoin las transacciones son lo suficientemente simples como para que ningún minero tenga una ventaja analítica significativa sobre otros mineros, y (2) Bitcoin Las transacciones generalmente no ejecutan transacciones de múltiples activos, como swaps o operaciones abiertas que podrían ser anticipadas.

Compare esto con Ethereum, que tiene algunas de las transacciones de activos múltiples más complejas que se llevan a cabo en intercambios públicos descentralizados (DEX). Oficialmente, el tiempo de bloqueo en Ethereum es de 15 segundos, pero durante períodos de alto tráfico de mempool, las tarifas de gas requeridas para la inclusión inmediata del bloque pueden exceder fácilmente los cien dólares. Como resultado, las transacciones con tarifas más bajas terminan esperando minutos o incluso horas antes de ser incluidas en un bloque. Esto puede ampliar la ventana para estas nefastas oportunidades de vanguardia, que ya son más frecuentes en Ethereum debido al valor sustancial envuelto en los tokens de capa 2.

Lo malo: (2) Transparencia de contratos inteligentes

In Bitcoin Los “contratos inteligentes” son el simple mecanismo de bloqueo y desbloqueo inherente a Bitcoin Guión. Los valores de la transacción, los detalles del remitente y del destinatario son todos visibles públicamente en la cadena de bloques. Si bien esta transparencia total y desnuda no es ideal desde una perspectiva de privacidad, es parte de cómo Bitcoin permite a todos los participantes de la red verificar el estado completo de la cadena de bloques. Cualquier observador puede analizar estos detalles del contrato, lo que podría abrir la puerta a ciertas estrategias relacionadas con MEV.

Pero el Bitcoin El lenguaje de programación es, por diseño, bastante limitado y se centra principalmente en las funciones básicas de enviar y recibir fondos y validar transacciones con firmas o hashlocks. Esta simplicidad limita inherentemente el alcance de las estrategias MEV en Bitcoin, lo que hace que estas oportunidades sean relativamente escasas en comparación con otras cadenas.

Plataformas como Ethereum, Solana y Cardano también tienen contratos inteligentes totalmente transparentes, pero difieren de Bitcoin al tener también lenguajes de scripting altamente complejos y expresivos. Sus sistemas completos de Turing permiten ejecutar teóricamente prácticamente cualquier tarea computacional que incluya: contratos autoejecutables, integración de datos del mundo real a través de oráculos, aplicaciones descentralizadas (dApps), tokens de capa 2, intercambios dentro de DEX, y creadores de mercado automatizados (AMM). Estos se unen para fomentar un entorno rico en oportunidades de MEV. Esquemas basados ​​en prueba de conocimiento cero, como STARKexEn teoría, podría evitar algunos de estos problemas, pero esta compensación conllevaría otras complejidades.

Lo feo: (3) Expresividad del contrato inteligente

Las oportunidades de MEV son tan lucrativas en algunas cadenas que hay "empresas comerciales de MEV" que aportan "cinco cifras altas, seis cifras medias”En ganancias al mes. Esta tendencia se ha vuelto tan prominente que existen paneles públicos dedicados a buscar oportunidades rentables en Ethereum y Solana. Su rentabilidad se genera mediante la ejecución de la canasta completa de estrategias MEV: front-running, trading sándwich, arbitraje de tokens, back-running y liquidaciones, por nombrar algunas. Cada uno de ellos explota una dinámica de contrato inteligente diferente con fines de lucro.

Algunas de estas estrategias MEV se aplican tanto a la capa 1 como a la capa 2.

Front-Running generalizado: los bots escanean el mempool en busca de transacciones rentables y luego adelantan la transacción original para obtener ganancias. Trading Sandwich: el atacante realiza órdenes antes y después de una transacción grande para manipular los precios de los activos para obtener ganancias. Esta estrategia aprovecha el movimiento de precios predecible causado por la gran transacción.

Entonces, ciertas estrategias son exclusivas de los tokens de capa 2 y los contratos inteligentes.

Arbitraje entre diferentes DEX: los bots explotan las diferencias de precios para el mismo activo en varios DEX comprando barato en uno y vendiendo caro en otro. Retroceso en las curvas de vinculación DeFi: los bots MEV capitalizan los aumentos de precios predecibles en las curvas de vinculación DeFi al realizar transacciones de inmediato. después de los grandes, comprando durante las tendencias alcistas y vendiendo para obtener ganancias. Liquidaciones DeFi: Los robots MEV detectan oportunidades en préstamos DeFi donde los valores de las garantías caen por debajo de los umbrales establecidos, lo que permite a los validadores priorizar sus transacciones para comprar la garantía liquidada a precios más bajos.

La complejidad de los contratos contribuye significativamente a los desafíos asociados con MEV.

Ataques de reentrada: estos ataques explotan fallas en la lógica de los contratos inteligentes, lo que permite a los atacantes llamar repetidamente a una función antes de que se complete la primera ejecución, extrayendo fondos varias veces. En el contexto de MEV, las personas capacitadas pueden beneficiarse significativamente de esto, particularmente en contratos con fondos sustanciales. Contratos interconectados y estado global: en plataformas como Ethereum, los contratos inteligentes pueden interactuar, lo que lleva a reacciones en cadena entre varios contratos de una sola transacción. Esta interconectividad permite estrategias MEV complejas, donde una transacción en un contrato puede afectar a otro, ofreciendo una reacción en cadena de oportunidades de ganancias.

Parte del problema aquí es que el valor total creado por los tokens y las dApps creadas en la capa 2 a menudo excede el valor del activo nativo de la cadena de bloques en la capa 1, lo que socava el incentivo de los validadores para seleccionar y confirmar transacciones basándose únicamente en las tarifas.

Para empeorar las cosas, muchas de estas oportunidades no se limitan estrictamente a los validadores de redes. Otros participantes de la red con robots de escaneo MEV pueden competir por estas mismas oportunidades, provocando congestión de la red, aumentando las tarifas del gas y elevando los costos de transacción. Este escenario crea una externalidad negativa para la red y sus usuarios, quienes se ven afectados por el precio de las tarifas de transacción más altas, a medida que la cadena se vuelve menos eficiente y más costosa de operar. MEV en DeFi es tan común que los usuarios casi lo han aceptado como un impuesto invisible para todos en la red.

¿Estas oportunidades MEV surgen naturalmente como un subproducto de los contratos inteligentes altamente expresivos, o existe una ruta alternativa hacia el sueño del dinero totalmente programable?

A falta de evitar protocolos con contratos inteligentes altamente expresivos y tokens de capa 2, los usuarios pueden evitar algunos de estos riesgos utilizando protocolos que admitan Transacciones confidenciales, como Liquid, que ocultan detalles de transacciones. Pero a diferencia de estas plataformas con lenguajes de programación más expresivos, Bitcoin carece de la capacidad de hacer cosas que se esperaría poder hacer con dinero programable.

Lo bueno: compensaciones por el dinero programable

Al considerar la evolución de los contratos inteligentes en Bitcoin las opciones que se nos dan son (1) sacar la complejidad de la cadena, (2) integrar con cautela funcionalidades de pacto estrechas o limitadas, o (3) abrazar el camino de la expresividad total. Exploremos algunas de las propuestas de cada una de estas opciones.

(1) Una nueva estructura para contratos fuera de la cadena: ANYPREVOUT

Las soluciones fuera de la cadena, como Lightning Network, tienen como objetivo mejorar Bitcoinescalabilidad y funcionalidad sin sobrecargar la cadena principal, manteniendo las transacciones rápidas y las tarifas bajas. Todo esto suena bien hasta ahora.

SIGHASH_ANYPREVOUT (APO) es una propuesta para un nuevo tipo de clave pública que permite ciertos ajustes a una transacción incluso después de su firma. Simplifica la forma en que se actualizan las transacciones, lo que permite que las transacciones hagan referencia a (UTXO) anteriores más fácilmente, lo que hace que los canales de Lightning Network sean más rápidos, más baratos, más seguros y más sencillos, especialmente en la resolución de disputas.

Debajo del capó, APO es un nuevo tipo propuesto de bandera sighash. Cada Bitcoin La transacción debe tener una firma para demostrar que es legítima. Al crear esta firma, utiliza una "marca sighash" para determinar qué partes de la transacción está firmando. Con APO, un remitente firmaría todas las salidas y ninguna de las entradas, para confirmar las salidas de la transacción, pero no específicamente de qué transacción provendrán los fondos.

APO permite eltoo, permitiendo a los usuarios intercambiar transacciones prefirmadas fuera de la cadena. Sin embargo, APO puede introducir MEV sin darse cuenta al hacer que las transacciones sean reordenables. Tan pronto como permita una firma que vincule el gráfico de transacciones, tendrá la posibilidad de intercambiar transacciones. Las entradas se pueden intercambiar, siempre que las nuevas entradas sigan siendo compatibles con la firma.

(2) Convenios: CAT + CSFS y CTV

Los pactos permitirían a los usuarios controlar dónde pueden moverse las monedas, imponiendo límites de velocidad o estableciendo destinos específicos para las monedas en una transacción. Hay dos categorías diferentes de pactos: recursivos y no recursivos.

Los convenios recursivos permiten que las monedas regresen continuamente a convenios del mismo tipo. Los convenios no recursivos limitan este control a la siguiente transacción, lo que requiere que todo el camino futuro de las monedas se defina por adelantado.

GATO + SFC es una propuesta de pacto que permite que los scripts construyan o definan ciertas partes de una transacción futura. CHECKSIGFROMSTACK (CSFS) verifica una firma con los datos que construyó OP_CAT. Al usar CSFS para exigir que la firma coincida con algún formato construido dinámicamente desde OP_CAT, podemos definir cómo se pueden gastar estos UTXO en el futuro y crear un pacto recursivo, aunque de manera torpe.

OP_CHECKTEMPLATEVERIFY (CTV) es una forma de crear convenios no recursivos. En lugar de definir y verificar partes específicas de una transacción, CTV restringe cómo se pueden gastar los fondos, sin especificar la siguiente dirección exacta a la que deben dirigirse. Define una "plantilla" que la siguiente transacción debe confirmar.

Un riesgo con los pactos recursivos podría ser crear un escenario en el que las monedas deban seguir un conjunto de reglas que se repiten una y otra vez, que quedan atrapadas en un bucle sin forma de salir. Otra es que, debido a que los convenios son transparentes y autoejecutables, podrían abrir Bitcoin hasta algunas de las estrategias MEV que vemos en otras cadenas.

¿Cuáles son las buenas noticias aquí?

¡La buena noticia es que todas estas propuestas introducen nueva expresividad!

Ahora bien, ¿cuál es la máxima cantidad de expresividad que podemos conseguir?

(3) Expresividad total: simplicidad

Sencillez es un lenguaje de programación basado en blockchain que se diferencia de otros lenguajes de scripting en que es de muy bajo nivel. No es un lenguaje encima Bitcoin Script o un nuevo código de operación dentro de él, es una alternativa. Teóricamente, es posible implementar todas las propuestas de pactos dentro de Simplicity e implementar muchos de los otros contratos que los cypherpunks quieren del dinero programable, pero con menos externalidades negativas de Ethereum.

La simplicidad mantiene BitcoinPrincipio de diseño de transacciones autónomas mediante el cual los programas no tienen acceso a ninguna información fuera de la transacción. Diseñado para ofrecer la máxima expresividad y seguridad, Simplicity admite la verificación formal y el análisis estático, lo que brinda a los usuarios contratos inteligentes más confiables.

Compare la simplicidad con: (1) bitcoin propuestas de pactos y (2) lenguajes de secuencias de comandos en otras cadenas de bloques:

Las propuestas de pacto sobre Bitcoin Script, aunque es mucho más simple que Simplicity, carece de la expresividad para manejar la estimación de tarifas en Script, debido a BitcoinLa falta de funciones aritméticas. No hay forma de multiplicar o dividir, ni códigos de operación de manipulación de condicionales ni de pila; También es muy difícil estimar una tarifa razonable asociada con un contrato o convenio determinado. Los usuarios terminan con un código espagueti, donde el 80% de la lógica de su contrato se dedica a tratar de determinar cuál debería ser su tarifa. Hacer que estos contratos de pacto sean súper complicados y difíciles de razonar.

El EVM tiene construcciones en bucle que dificultan mucho el análisis estático del uso de gas. Mientras que con Script o Simplicity, puedes simplemente contar cada código de operación o sumar recursivamente el costo de cada función. Debido a que Simplicity tiene un modelo formal, puedes razonar formalmente sobre el comportamiento del programa. No puede hacer esto con Script aunque pueda realizar un análisis estático del uso de recursos.

La simplicidad proporcionaría a los usuarios el mayor grado de expresividad, junto con otras características valiosas como el análisis estático y la verificación formal. Los usuarios están incentivados, aunque no restringidos, a crear contratos inteligentes que sean resistentes a MEV. Además, una combinación de diferentes contratos juntos puede dar lugar a MEV, incluso cuando individualmente no lo hacen. Esto representa una compensación fundamental.

La idea de avanzar. BitcoinLa funcionalidad de contrato inteligente de es innegablemente prometedora y emocionante. Pero es importante reconocer que todas estas propuestas conllevan cierto grado de riesgo de MEV, aunque probablemente no en la medida que vemos en otras cadenas. Mientras pensamos en traer más dinero programable a Bitcoin, hay preguntas que tenemos que hacer:

¿Podemos construir un protocolo con cero riesgo MEV, o es este un ideal inalcanzable? Dados los riesgos inherentes de MEV en muchas propuestas, ¿qué nivel de riesgo MEV es aceptable? Y, finalmente, cuál representa la propuesta más simple que ofrece el mayor grado de expresividad. ?

Cada propuesta tiene su propio conjunto de ventajas y desventajas. Sin embargo, independientemente de la dirección que tomemos, siempre debemos aspirar a priorizar la seguridad y defender el principio de descentralización.

Para obtener actualizaciones detalladas y más información, esté atento a Investigación de flujo de bloque 𝕏 alimentar.

Esta es una publicación invitada de Kiara Bickers. Las opiniones expresadas son enteramente propias y no reflejan necesariamente las de BTC Inc o Bitcoin Revista.

Fuente original: Bitcoin Revista