Cycle Attack de reemplazo en la Lightning Network 

La Lightning Network de Bitcoin es una solución de escalado de capa 2 para Bitcoin, diseñada para abordar los desafíos de escalabilidad de la cadena de bloques de Bitcoin. Permite transacciones instantáneas y de bajo costo en Bitcoin, haciéndolo más eficiente y accesible para los usuarios. En comparación con las transacciones en cadena en Bitcoin, las transacciones en la Lightning Network son privadas, ocurren fuera de la cadena, y sólo se registra el resultado general.

Una de las principales ventajas de la Lightning Network es su velocidad y asequibilidad. Permite a los usuarios enviar y recibir pequeños pagos en la red Bitcoin de manera simple y rentable. Al crear una red de canales de pago entre usuarios, la Lightning Network permite transacciones sin transmitir cada transacción a la cadena de bloques. Esto reduce la congestión en la cadena de bloques de Bitcoin y mejora la escalabilidad de las transacciones.

Sin embargo, es importante señalar que la Lightning Network aún está en desarrollo y enfrenta ciertos riesgos de seguridad y centralización. En octubre de este año, se descubrió una vulnerabilidad llamada “ataque de ciclo de reemplazo” en la Lightning Network, que implica el Mecanismo de Reemplazo de Transacciones y puede resultar en la pérdida de fondos del canal en la Lightning Network. La aparición de este método de ataque ha suscitado preocupaciones sobre la seguridad de la Lightning Network y ha impulsado investigaciones adicionales y mejoras en sus protocolos e implementaciones.

Mecanismo de la Lightning Network

La Lightning Network de Bitcoin aprovecha el mecanismo Multisig para garantizar la seguridad de los canales de pago. Los participantes deben bloquear fondos y establecer canales de pago. Los participantes pueden realizar pagos rápidos y de bajo costo dentro del canal, sin tener que enviar las transacciones a la cadena de bloques de Bitcoin cada vez. El canal de pago es simplemente una relación entre los participantes fuera de la cadena de bloques de Bitcoin, que se logra firmando una serie de transacciones dentro del canal que solo se propagan entre los dos extremos del canal sin implicar el consenso de toda la red Bitcoin.

En cuanto al proceso específico, al abrir un canal de pago, los participantes deben crear un script de firma múltiple que requiere que cada parte en el canal proporcione su clave pública, especificando el número requerido de firmas, por ejemplo, definiendo un script que contenga múltiples claves públicas y lógica de verificación de firma. Al generar la dirección de firma múltiple, este script se convertirá en una dirección de Bitcoin, formando la infraestructura del canal de pago.

Por ejemplo, como se muestra en la Figura 1, Bob y Alice primero crean una dirección de Bitcoin de firma 2-de-2 en cadena como fondo conjunto. Dentro del canal, pueden realizar transacciones de compromiso fuera de la cadena de manera ilimitada para registrar el estado actual de la asignación de fondos. Las dos partes pueden negociar y firmar nuevas transacciones de compromiso para actualizar el estado del canal, sin transmitir estas actualizaciones a toda la red Bitcoin. Cuando deciden cerrar el canal, la transacción final de liquidación en cadena distribuirá los fondos de acuerdo con la última asignación negociada. Esta transacción de liquidación requiere las firmas conjuntas tanto de Bob como de Alice, asegurando que los fondos se asignen de la manera acordada finalmente. De esta manera, la Lightning Network mejora la eficiencia de las transacciones de Bitcoin, reduce los costos, y al mismo tiempo conserva sus características descentralizadas.

Figura 1: Diagrama del Canal de Estado

Source: https://cypherpunks-core.github.io/bitcoinbook/images/mbc2_1204.png

Mecanismo HTLC (Contratos con bloqueo de tiempo y hash)

La Lightning Network de Bitcoin también adopta canales de pago basados en Contratos con Bloqueo de Tiempo y Hash (HTLC, por sus siglas en inglés) para implementar un sistema de canal de pago multi-salto y enrutado. En la implementación, los HTLC requieren un script de transacción complejo definido en un lenguaje de script para cumplir con la condición de hash y la condición de bloqueo de tiempo. Este script se utiliza para la inicialización al abrir el canal de pago y se activa durante el pago. De esta manera, la Red Lightning de Bitcoin logra eficiencia y seguridad para pagos entre cadenas.

HTLC (Contrato con Bloqueo de Tiempo y Hash) es un contrato de bloqueo de tiempo y hash, que es uno de los componentes importantes para implementar transacciones entre cadenas en la cadena de bloques. Los HTLC tienen dos aplicaciones comunes: intercambios atómicos entre cadenas y canales de pago en la Lightning Network. Los HTLC pueden bloquear una transferencia y establecer condiciones de desbloqueo, como proporcionar información específica dentro de un tiempo especificado. Esto asegura que los fondos solo se puedan retirar por el destinatario cuando se cumplen las condiciones.

Técnicamente, un HTLC es una salida adicional en una Transacción de Compromiso con un script de salida único. Este es un script que contiene operaciones como OP_HASH160, OP_EQUALVERIFY, etc., utilizado para bloquear fondos de manera que solo proporcionar el valor preimagen R pueda desbloquearlos. Este script tiene dos caminos posibles. El primer camino (definido en OP_IF) envía fondos a Bob si Bob puede proporcionar R. El segundo camino es aplicar un bloqueo de tiempo usando nLockTime en la transacción de pago, permitiendo reembolsos a Alice después de que caduque el bloqueo.

Ejemplo de enrutamiento

En la Lightning Network, Alice desea pagar 1 bitcoin a Eric, pero no hay un canal de pago directo entre Alice y Eric. Entonces, Alice enruta el pago a través de nodos intermedios en la red de canales de pago (Bob, Carol, Diana) para construir un camino de pago seguro, permitiéndole pagar indirectamente 1 bitcoin a Eric. El enrutamiento de pagos utiliza HTLCs: solo proporcionando el “secreto” correcto dentro de una ventana de tiempo específica se pueden desbloquear los fondos, asegurando la seguridad del pago.

En este ejemplo, en el Paso 1, Eric genera un Secreto R (solución) y calcula el valor hash H (rompecabezas), luego da el valor hash H a Alice.

Pasos 2-5: Alice, Bob, Carol, Diana y Eric construyen cada uno pares de HTLCs, requiriendo la provisión de R (solución) dentro de un período de tiempo determinado para recuperar los fondos bloqueados de la parte aguas arriba.

Pasos 6-9: Eric proporciona R (solución) a Diana para recuperar 1 BTC. Diana luego recupera el BTC de Carol con R, y R se pasa hacia atrás de esta manera hasta que se recupera el 1.003 BTC de Alice (0.003 BTC de los cuales es la tarifa de servicio para nodos intermedios).

En este ejemplo, si en el Paso 6 Eric no proporciona R (solución) dentro del tiempo fijo, después de la expiración del tiempo, los fondos bloqueados en los Pasos 2-5 se desbloquearán directamente y se devolverán.

Figura 2: Ejemplo de Enrutamiento

Source:https://cypherpunks-core.github.io/bitcoinbook/images/mbc2_1210.png

Ataque de ciclo de reemplazo

El mecanismo de reemplazo de transacciones en Bitcoin se refiere a cuando una transacción se marca como reemplazable; entonces, otra transacción con una tarifa más alta puede reemplazarla en la red antes de que se confirme en un bloque. Si una transacción recibe una tarifa absoluta y una tarifa porcentual más altas, puede reemplazar transacciones pendientes no confirmadas que entren en conflicto directo con ella. Después de recibir la transacción de reemplazo, los nodos eliminarán la transacción original con una tarifa porcentual más baja de la mempool y solo conservarán la transacción de reemplazo. El mecanismo de reemplazo de transacciones permite ajustar las tarifas de transacción u otros parámetros antes de que la transacción se confirme. Sin embargo, este mecanismo también puede ser utilizado para llevar a cabo ataques de denegación de servicio de transacciones, como reemplazar repetidamente una transacción crítica, provocando que no se confirme. Por lo tanto, el mecanismo de reemplazo de transacciones proporciona conveniencia para ajustar transacciones, pero también introduce riesgos de abuso.

Según el correo electrónico del desarrollador de Bitcoin Core, Antoine Riard, el ataque de ciclo de reemplazo se centra principalmente en los canales de pago en la Lightning Network de Bitcoin. El atacante transmite una transacción HTLC-preimagen con una tarifa absoluta y tarifa porcentual más altas para reemplazar la transacción HTLC-timeout del nodo honesto. 

Durante el reemplazo, el atacante puede agregar entradas o salidas adicionales para asegurar que la transacción de reemplazo sea aceptada con éxito por la red. Este método de ataque puede resultar en el doble gasto de fondos en los canales de pago, es decir, después de que el nodo honesto transmite la transacción HTLC-timeout, el atacante recupera con éxito los fondos a través del reemplazo.

Podemos proporcionar un ejemplo sencillo para ilustrar, similar al ejemplo anterior, asumiendo que la ruta se simplifica solo a Alice, Bob y Eric, y Alice y Eric coluden para robar los BTC de Bob.

Paso 1: Alice tiene la intención de pagar 1 BTC a Eric a través de Bob. Tanto Alice\Bob como Bob\Eric construyen un HTLC. Eric debe proporcionar R (solución) a Bob antes del bloque 1020 (asumamos que la altura actual es 1000), de lo contrario, Bob puede recuperar los 1 BTC bloqueados; de manera similar, Bob debe responder a Alice antes del bloque 1080, de lo contrario, Alice puede recuperar su 1 BTC.

Paso 2: Eric no proporciona R (solución) a Bob antes del bloque 1020. Bob transmitirá una transacción que contiene HTLC-timeout. Los fondos en esta transacción se reembolsarán a Bob.

Paso 3: Eric monitorea la transacción HTLC-timeout de Bob y la reemplaza con una transacción HTLC-preimagen con una tarifa porcentual más alta. Luego, Eric inicia otra transacción para expulsar la HTLC-preimagen anterior de la mempool.

Paso 4: El nodo de Bob volverá a transmitir la transacción HTLC-timeout hasta el bloque 1080. Eric puede iniciar un reemplazo cada vez. Hasta el bloque 1080, la transacción de la otra parte del canal, Alice, se confirma, y Alice recupera los BTC bloqueados.

Paso 5: Eric obtiene que su HTLC-preimagen se confirme, por lo que los 1 BTC bloqueados por Bob se transfieren a Eric.

Así, los 1 BTC de Bob se transfirieron a Eric, mientras que él no recibió los BTC debidos de Alice.

Resumen

Hasta noviembre de 2023, la Red Lightning cuenta con más de 16.000 nodos Lightning y 5000 BTC. Aunque no se han confirmado casos reales de ataques de ciclo de reemplazo, esto resalta la necesidad de una investigación continua de seguridad y mejoras para la Lightning Network. Antoine Riard también sugirió varias medidas para evitar o mitigar los ataques de ciclo de reemplazo, como monitorear la mempool local y las transacciones transmitidas, construir redes superpuestas entre mineros y nodos Lightning, y reproducir activamente transacciones de expiración HTLC para aumentar los costos del atacante. Sin embargo, al mismo tiempo, anunció la interrupción de su participación en la Lightning Network y en el trabajo de implementación, incluida la coordinación de soluciones para vulnerabilidades de seguridad a nivel de protocolo.

A medida que la Lightning Network se expande, la amenaza potencial de ataques de ciclo de reemplazo puede convertirse en un obstáculo en su camino de desarrollo, obligando a la comunidad a centrarse más en la investigación de seguridad y las mejoras. Sin embargo, es precisamente abordando seriamente y mejorando los problemas de seguridad que podríamos presenciar cómo la Lightning Network resuelve gradualmente los riesgos potenciales en el futuro, logrando un ecosistema más saludable y confiable.

Sigue nuestras noticias en:

➡️ Telegram ➡️ WhatsApp  ➡️ Google News

COMPARTELO!

Comparte este post en cualquiera de tus redes sociales preferidas.

COMPARTELO!

Comparte este post en cualquiera de tus redes sociales preferidas

Sigue nuestras noticias en:

➡️ Telegram

➡️ WhatsApp 

➡️ Google News

¡También te podría interesar!

¿Quieres ser el primero en recibir las noticias del criptomercado?

📣 Suscríbete a nuestro boletín para recibir las últimas noticias y novedades del mercado cripto durante toda la semana. 📣

Buscar en la web

Exchanges recomendados

Noticias por categorías

Noticias por países

© 2024 criptoinforme.com | Todos los derechos reservados.

Nuestro newsletter

Suscríbete al boletín de criptoinforme para que seas el primero en recibir todas las noticias, cursos, tutoriales y videos que traemos diariamente para ti sobre el mercado de criptomonedas

¡Te invitamos a formar parte de la comunidad Criptoinforme!

CRIPTOINFORME.COM

Contáctanos

A través del siguiente formulario puedes ponerte en contacto con nosotros, en seguida uno de los miembros del equipo atenderá tu solicitud.

Suscríbete a Criptoinforme premium

Recibe contenido exclusivo y asesoría personalizada con criptoinforme premium, se el primero en enterarte de las noticias más resaltantes del mercado.

¿No tienes una cuenta? Échale un vistazo a todos nuestros planes premium

Menú principal

Noticias por categorías

Bitcoin

Noticias sobre el Bitcoin

Altcoins

Noticias sobre criptomonedas

Blockchain

Noticias sobre Blockchain

Mercado

Noticias sobre el mercado financiero

Análisis

Análisis técnico y fundamental

Opinión

Noticias de opinión en el mercado

Prensa

Comunicados de prensa

Patrocinados

Artículos patrocinados

DeFi

Noticias de finanzas descentralizadas

Entrevistas

Entrevistas a referentes del sector

Eventos

Eventos del mercado

Legal

Noticias sobre legalización

Exchanges

Noticias sobre intercambios

Estafas

Noticias sobre estafas cripto

Metaverso

Noticias sobre el metaverso

Minería

Noticias sobre minería cripto

Tutoriales

Tutoriales escritos y en video

Videos

Videos publicados en criptoinforme

Noticias por países

© 2023 criptoinforme.com | Todos los derechos reservados

Bitfinex Exchange

5/5

BingX Exchange

5/5

Coinex Exchange

5/5

Próximos eventos

Cripto Latin Fest Bogotá

17 y 18 de Agosto 2023

Blockchain Summit Latam

4 – 6 Octubre 2023

Eventos finalizados

Perú Blockchain Conference

28 y 29 de Abril

💎 Suscríbete a Criptoinforme premium 💎

Recibe contenido exclusivo y asesoría personalizada con criptoinforme premium, se el primero en enterarte de las noticias más resaltantes del mercado.

PLAN BÁSICO
PAGO MENSUAL:
$4,99 Contenido premium
  • Carácteristica del plan básico

  • Carácteristica del plan básico

  • Carácteristica del plan básico

  • Carácteristica del plan básico

  • Carácteristica del plan básico

Más solicitado

PLAN MEDIO
PAGO MENSUAL
$7,99+ Contenido premium
  • Carácteristica del plan medio

  • Carácteristica del plan medio

  • Carácteristica del plan medio

  • Carácteristica del plan medio

  • Carácteristica del plan medio

PLAN AVANZADO
PAGO MENSUAL
$14,99Contenido personalizado
  • Carácteristicas del plan avanzado

  • Carácteristicas del plan avanzado

  • Carácteristicas del plan avanzado

  • Carácteristicas del plan avanzado

  • Carácteristicas del plan avanzado

  • Carácteristicas del plan avanzado

  • Carácteristicas del plan avanzado

Comparativa entre servicios

SERVICIOS INCLUIDOS EN EL PLAN PLAN BÁSICO PLAN MEDIO PLAN AVANZADO
Hosting GRATIS por 1 año
Tipo de Hosting Básico Intermedio Avanzado
Asesoría para la compra de dominio
Contrato de servicio con términos y condiciones incluidos
Brief de marca
Acceso al administración de la web
Revisiones del diseño 1 3 6
Diseño totalmente personalizado
Diseño responsivo adaptado a todos los dispositivos
Cantidad de secciones o sub páginas en la web 4 8 15
Cuentas de correo corporativo 3 Sin límite Sin límite
Características especiales
Integraciones adicionales
Creación de tienda online
Servicio de mantenimiento gratis 1 mes 3 meses
Optimización para motores de busqueda