Hooks de Uniswap V4 y extensiones nativas: un nuevo capítulo en la seguridad e innovación de las Finanzas descentralizadas

Hooks: Una poderosa herramienta para extender las funcionalidades de las aplicaciones.

Hooks es un patrón de programación que permite a los desarrolladores insertar código personalizado durante la ejecución del sistema. A través de funciones o bloques de código predefinidos, los desarrolladores pueden ampliar y personalizar el comportamiento de las aplicaciones sin modificar el código original. Este enfoque se aplica ampliamente en diversos campos como sistemas operativos, frameworks, bibliotecas, desarrollo web y sistemas de plugins.

El uso de Hooks puede aumentar significativamente la escalabilidad y flexibilidad del programa. Los desarrolladores no necesitan realizar grandes cambios en el código existente para cada ajuste de funcionalidad, lo que mantiene la limpieza y estabilidad del código. Este elegante mecanismo de extensión convierte a los Hooks en un modelo de programación indispensable en el diseño de software.

Es importante mencionar que la programación orientada a aspectos (AOP) a menudo se compara con la programación Hook. AOP tiene como objetivo la modularización de preocupaciones transversales, y su meta es también mejorar o cambiar funcionalidades sin afectar la lógica del negocio central. Se puede considerar AOP como una forma de programación Hook de un nivel de abstracción más alto.

Del Uniswap V4 al protocolo nativo de Artela, el viaje de evolución de DeFi Hooks

Uniswap V4: La innovación de Hooks

En junio de 2023, Uniswap publicó un borrador del libro blanco de V4, donde la característica más destacada es la introducción del mecanismo de Hooks.

De hecho, los Hooks ya tienen una amplia aplicación en los sistemas financieros tradicionales, principalmente para satisfacer las necesidades de alta personalización y escalabilidad. Por ejemplo, se pueden insertar lógicas de validación adicionales en el proceso de procesamiento de transacciones, como la doble autenticación, la detección de control de riesgos y las estrategias de prevención de lavado de dinero. Además, los Hooks también se pueden utilizar para integrar APIs externas o microservicios, ampliando nuevas funciones como la autenticación, la conversión de divisas y las pasarelas de pago. Sin embargo, la introducción de los Hooks en el ámbito de las finanzas descentralizadas (DeFi) fue sin duda pionera por Uniswap.

Los Hooks en Uniswap V4 son esencialmente un contrato externo que se puede vincular a un pool de liquidez en el momento de su creación. Posteriormente, el pool llamará al contrato Hook vinculado en diferentes etapas de su ciclo de vida para ejecutar operaciones específicas, lo que proporciona una gran personalización. Esto permite a los desarrolladores crear escenarios de trading más personalizados y aplicaciones descentralizadas (DApp) ricas en funciones basadas en los Hooks de Uniswap.

Uniswap V4 actualmente soporta cuatro grupos de callbacks Hook, cada grupo contiene un par de funciones de callback:

  1. beforeInitialize/afterInitialize: utilizado para la inicialización del fondo de liquidez
  2. beforeModifyPosition/afterModifyPosition: utilizado para agregar, reducir o eliminar liquidez
  3. beforeSwap/afterSwap: utilizados para el intercambio de tokens
  4. beforeDonate/afterDonate: Utilizado para la función de donación (Nueva función de Uniswap V4 que ofrece recompensas a los proveedores de liquidez que están dentro del rango de negociación)

Estos Hooks pueden ejecutarse antes y después del inicio de la transacción, logrando funciones avanzadas como órdenes limitadas en cadena. Los usuarios pueden establecer órdenes limitadas en el contrato Hook y luego, en el callback afterSwap, determinar si el precio cumple con las condiciones utilizando oráculos personalizados o de custodia, decidiendo así si ejecutar o cancelar la transacción.

A través de Hooks, Uniswap V4 integra estrechamente la liquidez con el desarrollo de DApp, no solo mejorando la funcionalidad de la DApp, sino también reforzando el efecto de red de Uniswap, convirtiéndolo en la infraestructura fundamental del ecosistema DeFi.

Desde Uniswap V4 hasta el protocolo nativo de Artela, el viaje avanzado de la revolución DeFi Hooks

Desafíos de seguridad de Uniswap V4 Hooks

Un equipo de seguridad ha realizado un análisis profundo de los riesgos de seguridad potenciales del mecanismo Hooks en Uniswap V4. Además de los riesgos asociados a los contratos Hook maliciosos, incluso los contratos Hook benignos pueden tener vulnerabilidades. Según el análisis, más del 30% de los proyectos presentan riesgos de seguridad. Estas vulnerabilidades se originan principalmente en las complejas interacciones entre Hook, PoolManager y terceros externos, y se pueden clasificar en dos grandes categorías:

  1. Problemas de control de acceso: Se refiere principalmente a las funciones de callback en Uniswap V4, que solo deberían ser invocadas por el PoolManager y no por otras direcciones (incluyendo cuentas externas y contratos). Por ejemplo, en el escenario de distribución de recompensas, si las funciones relevantes pueden ser invocadas por cualquier cuenta, las recompensas podrían ser reclamadas incorrectamente. Por lo tanto, es crucial establecer un mecanismo de control de acceso sólido para los Hooks, especialmente cuando pueden ser invocados por partes ajenas a la piscina.

  2. Problemas de validación de entrada: Debido a la inadecuada validación de entrada en algunas implementaciones de Hook vulnerables, pueden surgir varios tipos de ataques, incluyendo ataques de reentrada. La situación más común es cuando se llama a contratos externos no confiables en funciones clave de Hook. Un atacante puede registrar un pool de fondos malicioso para tokens falsos y luego activar el Hook para ejecutar operaciones en el pool de fondos. Al interactuar con el pool de fondos, la lógica del token malicioso puede secuestrar el flujo de control, lo que lleva a comportamientos indeseables.

Incluso si se implementan los controles de acceso necesarios en las funciones externas/públicas sensibles y se validan los parámetros de entrada, lo que reduce los riesgos de seguridad relacionados con los Hook mencionados, las vulnerabilidades del contrato en sí no se pueden evitar por completo. En particular, cuando el Hook se implementa como un contrato actualizable, también puede enfrentar problemas relacionados con vulnerabilidades de contratos actualizables similares a las de ciertas bibliotecas de contratos inteligentes conocidas.

Las causas fundamentales de estos desafíos de seguridad radican en que la programación de Hooks aumenta la complejidad de los contratos inteligentes, ampliando así la superficie de ataque. Aunque algunas bibliotecas de contratos inteligentes ofrecen mejores prácticas, en esencia, todavía se añaden "restricciones de uso seguro" para los desarrolladores. En comparación con los contratos ordinarios, los contratos de Hook requieren normas de uso seguro más estrictas. Por lo tanto, para que la programación de Hooks se aplique de manera amplia, también se necesita un marco integral que incluya un entorno de ejecución seguro, un paradigma de programación adecuado para Hooks y restricciones de uso más estrictas.

De Uniswap V4 al protocolo nativo de Artela, el viaje avanzado de la revolución DeFi Hooks

Protocolo nativo de una plataforma blockchain: soporte a nivel de protocolo para programación Hook

Dado que los Hooks de Uniswap V4 se implementan a través de contratos inteligentes, los problemas de seguridad también provienen de las limitaciones inherentes de los contratos inteligentes. Entonces, ¿existe una solución que soporte la programación de Hooks desde la capa del protocolo? El mecanismo de extensión nativo de una plataforma blockchain nos proporciona la respuesta.

La plataforma es una red de blockchain de capa 1 compatible con EVM, de alta escalabilidad y alto rendimiento, diseñada para que los desarrolladores creen aplicaciones modulares, ricas en funciones, escalables y personalizables. La plataforma introduce un nuevo tipo de módulo programable llamado módulo de extensión nativa, que introduce de manera innovadora la programación orientada a aspectos (AOP) en la red de blockchain.

Esta extensión nativa requiere especificar un punto de conexión, es decir, la ubicación en la que se ejecutará durante todo el ciclo de vida del procesamiento de transacciones, similar a un callback de Hook. Los puntos de conexión incluyen:

  1. Inicialización de bloques
  2. Verificación de transacciones
  3. Antes de ejecutar
  4. Después de la ejecución
  5. Confirmación final del bloque

Actualmente, esta extensión nativa solo admite TypeScript, cuyo código se compila en WebAssembly (WASM) bytecode y se despliega en la red. Una vez completado el despliegue, el propietario del contrato inteligente puede vincular el contrato con la extensión nativa. El propietario del contrato inteligente se refiere a la cuenta cuya dirección de cuenta externa (EOA) puede ser verificada mediante el isOwner(address) retorna (bool).

La expansión nativa de la plataforma se implementa como Hooks a nivel de protocolo, lo que presenta ventajas significativas en comparación con los Hooks de Uniswap V4:

Primero, la extensión nativa utiliza WASM para ejecutar su código, y su eficiencia de ejecución es varios órdenes de magnitud superior a la de EVM.

En segundo lugar, las extensiones nativas pueden enganchar todo el ciclo de vida de la transacción, no solo la lógica central de DeFi, lo que permite construir aplicaciones descentralizadas con funciones más ricas.

Por último, y lo más importante, la extensión nativa se ejecuta de forma independiente en un entorno seguro de sandbox. Este aislamiento garantiza que la ejecución de la extensión no afecte la seguridad de la ejecución del contrato.

La naturaleza aislada de las extensiones nativas limita la interacción entre los contratos Hook y otros contratos externos, lo que resuelve eficazmente los problemas de control de acceso y validación de entradas de Uniswap V4 Hooks. Para contratos DeFi como Uniswap, desplegarse en esta plataforma permite disfrutar de una experiencia Hook más rápida, más poderosa y más segura.

De Uniswap V4 al protocolo nativo de Artela, el viaje evolutivo de la revolución DeFi Hooks

Resumen

Como un importante participante y líder en el campo de las finanzas descentralizadas, Uniswap ha desempeñado un papel clave en el impulso del progreso de la industria y la mejora de las funciones. Los Hooks introducidos en Uniswap V4 sin duda marcarán la dirección del desarrollo de los intercambios descentralizados, convirtiéndose en un modelo a seguir para los que vendrán.

Sin embargo, los Hooks de Uniswap V4 están limitados por las restricciones inherentes a los contratos inteligentes; no importa cuán rigurosamente se diseñe el protocolo o cuán complejas sean las bibliotecas de herramientas, no se puede evitar fundamentalmente la llamada mutua entre los contratos Hook y otros contratos externos, lo que plantea posibles riesgos de seguridad.

Una red de blockchain de alto rendimiento compatible con EVM de capa 1, desde el diseño del protocolo, ha considerado un mecanismo de extensión nativo que funciona de forma independiente en WASM, proporcionando soporte nativo para la programación de Hooks, lo que mejora significativamente la seguridad. Esto ofrece una solución avanzada para los protocolos de finanzas descentralizadas que consideran la seguridad como su línea de vida.

Desde Uniswap V4 hasta el protocolo nativo de Artela, el viaje evolutivo de DeFi Hooks

Ver originales
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Recompensa
  • 3
  • Compartir
Comentar
0/400
GateUser-cff9c776vip
· hace18h
El gancho de Schrödinger, colgado sin saber si va a subir o a caer.
Ver originalesResponder0
FUD_Whisperervip
· 07-12 23:42
hooks alcista啊,interacción eficiencia bomba满
Ver originalesResponder0
HappyToBeDumpedvip
· 07-12 23:35
hooks es increíble, me encanta, me encanta~
Ver originalesResponder0
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)