Puente entre tokens y núcleo con LayerZero (OFT V2)
Esta guía detalla el proceso para habilitar transferencias cross-chain de tokens ERC-20 en Core usando el protocolo Omnichain Fungible Token (OFT) V2 de LayerZero. Está diseñada tanto para desarrolladores principiantes como experimentados, proporcionando instrucciones paso a paso y referencias a recursos oficiales y al repositorio de GitHub de CoreDAO-LayerZero.
Visión general
Esta documentación te guía a través del proceso de configuración de transferencias de tokens entre cadenas utilizando el protocolo OFT V2 de LayerZero. El enfoque principal está en habilitar transferencias de tokens ERC-20 entre el testnet/mainnet de Core y otras redes compatibles con EVM, como Base Sepolia y Optimism. Al seguir esta guía, aprenderás a:
- Configurar tu entorno de desarrollo para implementaciones entre cadenas.
- Desplegar y verificar contratos OFT en Core y redes externas.
- Configurar los endpoints de LayerZero y establecer remotos seguros y confiables.
- Ejecutar y rastrear transferencias cross-chain de tokens.
- Personalizar la configuración OFT según los requerimientos de tu propio token.
Para referencia, también puedes consultar el repositorio de GitHub CoreDAO-LayerZero para ejemplos de código y guías detalladas.
Requisitos previos
- Node.js v18+ y npm/pnpm instalados
- Wallet MetaMask con fondos en Core y las redes deseadas
- Familiaridad básica con Hardhat y Solidity
Configuración del entorno
- Inicializa tu Proyecto
- Configurar Redes
Actualiza hardhat.config.ts
con la configuración de Core y otras redes EVM:
Despliegue de Contratos OFT
- Desplegar en la Red Core
- Verificar Despliegue (Opcional)
Configuración de Conexiones Cross-Chain
- Crear la Configuración de Pathways de LayerZero
En layerzero.config.ts
:
- Conectar las Conexiones
- Verificar Peers
Ejecución de Transferencias de Tokens Cross-Chain
Para enviar tokens entre cadenas usando la tecnología de LayerZero, necesitarás crear una tarea custom de Hardhat.
- Crear la Carpeta de Tareas En la raíz de tu proyecto, crea una carpeta llamada tasks si aún no existe.
- Crear el Task File Dentro del directorio tasks, crea un archivo llamado:
- Agregar el Task Code
Copia y pega la siguiente task de Hardhat en sendOFT.ts
:
- Ejecutar Transferencia Cross-chain
Vuelve a tu archivo hardhat.config.ts
y descomenta: import './tasks/sendOFT
Abre tu terminal en el directorio raíz de tu proyecto de trabajo y ejecuta el siguiente comando:
- Rastrear Transferencias
Utiliza LayerZero Scan Explorer para monitorear transacciones cross-chain:
Personalización y Configuración Avanzada
- Token Supply: Agrega lógica de minting al constructor para un suministro personalizado.
- Transfer Fees: Ajusta los parámetros de
quoteSend
para la gestión de tarifas. - Security: Modifica los umbrales de DVN y la configuración de remotos confiables en el archivo de configuración.
- Multi-Chain Support: Agrega nuevas entradas de red en tus configuraciones de Hardhat y LayerZero.
Para más personalización y configuración avanzada, consulta la documentación oficial de LayerZero.
Recursos
Siguiendo esta guía, podrás configurar transferencias de tokens entre cadenas de forma fluida entre Core y otras redes EVM. Para obtener ejemplos más detallados y soporte, visita el repositorio oficial en GitHub y la documentación de LayerZero.