Vulnerabilidad de ataque de distorsión temporal en el protocolo Bitcoin
El 26 de marzo de 2025, un desarrollador de Bitcoin propuso una nueva propuesta de mejora, destinada a corregir varios fallos y debilidades que han existido durante mucho tiempo en el protocolo de Bitcoin. Un problema de seguridad digno de mención en esta propuesta de bifurcación suave, denominada "limpieza del gran consenso", es el "ataque de distorsión temporal".
Mecanismo de protección de timestamp de Bitcoin
En el protocolo de Bitcoin hay dos reglas principales de protección de marca de tiempo:
Regla del tiempo medio pasado (MPT): La marca de tiempo del bloque debe ser posterior a la mediana de las marcas de tiempo de los 11 bloques anteriores.
Reglas del tiempo de bloque futuro: la marca de tiempo del bloque no puede adelantarse más de 2 horas respecto al tiempo medio de los nodos de la red.
Estas reglas están destinadas a prevenir la manipulación excesiva de las marcas de tiempo de los bloques. Sin embargo, los ataques de distorsión temporal aprovechan las vulnerabilidades de estas reglas, falsificando marcas de tiempo para llevarlas mucho más atrás en el tiempo.
Error de cálculo de Satoshi Nakamoto
El período de ajuste de dificultad de Bitcoin contiene 2016 bloques, lo que equivale a aproximadamente dos semanas. Al calcular el ajuste de dificultad de la minería, el protocolo compara la diferencia de la marca de tiempo entre el primer y el último bloque en la ventana de 2016 bloques. Sin embargo, Satoshi Nakamoto cometió un pequeño error al calcular el tiempo objetivo: utilizó 2016 en lugar de 2015 como multiplicador, lo que resultó en un tiempo objetivo que es un 0.05% más largo de lo que debería ser.
Este error hace que el intervalo de bloques real de Bitcoin sea de 10 minutos y 0.3 segundos, en lugar de 10 minutos exactos. Aunque este error de 0.3 segundos no tiene un gran impacto por sí mismo, sienta las bases para una vulnerabilidad más grave.
El principio del ataque de distorsión temporal
El ataque de distorsión temporal aprovecha el error de Satoshi Nakamoto en el cálculo de la dificultad. El atacante manipula las marcas de tiempo de los bloques, haciendo que la cadena de bloques avance lentamente en el tiempo, mientras cumple con las reglas de MPT. Específicamente:
La mayoría de las marcas de tiempo de los bloques son solo 1 segundo anteriores al bloque anterior.
Cada 6 bloques se incrementará el timestamp en 1 segundo para cumplir con las reglas de MPT.
En el último bloque de cada ciclo de ajuste de dificultad, establecer la marca de tiempo como el tiempo del mundo real.
La marca de tiempo del primer bloque del nuevo ciclo vuelve a estar en el pasado.
Esta operación provoca que el tiempo de la cadena de bloques se retrase cada vez más respecto al tiempo real, mientras que la dificultad seguirá aumentando. Sin embargo, debido al salto repentino en la marca de tiempo al final del ciclo, el cálculo de la dificultad se distorsionará, lo que llevará a una gran reducción de la dificultad en el siguiente ciclo.
Impacto potencial del ataque
Si se implementa con éxito, un ataque de distorsión temporal podría resultar en las siguientes consecuencias:
La dificultad ha disminuido drásticamente, lo que ha hecho que la velocidad de generación de bloques sea anormalmente rápida.
Se crean grandes cantidades de Bitcoin en un corto período de tiempo.
El atacante puede obtener ganancias al vender estas monedas.
Sin embargo, llevar a cabo este ataque enfrenta numerosos desafíos, incluyendo la necesidad de controlar la mayor parte de la potencia de cálculo, la existencia de mineros honestos que aumentan la dificultad, y el hecho de que el proceso de ataque es fácil de detectar.
Solución
Para solucionar la vulnerabilidad del ataque de distorsión temporal, los desarrolladores han propuesto una solución relativamente simple: requerir que la marca de tiempo del primer bloque del nuevo ciclo de dificultad no sea anterior a un límite de tiempo específico del último bloque del ciclo anterior. La propuesta actual sugiere establecer este límite de tiempo en 2 horas, lo que representa aproximadamente el 0.6% del tiempo objetivo del ciclo de ajuste de dificultad, y puede limitar eficazmente el grado de manipulación de la dificultad.
Esta solución puede prevenir eficazmente los ataques de distorsión temporal y minimizar el riesgo de generar bloques inválidos de manera accidental. Es consistente con las reglas de tiempo de bloques futuras existentes y, en condiciones normales, puede ser más flexible que las reglas MPT actuales.
Con la reparación de esta vulnerabilidad de seguridad, la red Bitcoin se volverá más robusta y segura, sentando una base más sólida para su desarrollo a largo plazo.
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
16 me gusta
Recompensa
16
3
Compartir
Comentar
0/400
ForkItAllDay
· hace11h
¿Me estás engañando? Nadie se ha dado cuenta en tanto tiempo.
Ver originalesResponder0
HalfBuddhaMoney
· hace11h
¿Es tan aterrador que esto también se puede aprovechar?
Ver originalesResponder0
retroactive_airdrop
· hace11h
El abuelo bendiga para que se pueda llenar esta brecha.
Exposición de una vulnerabilidad importante: ataque de distorsión temporal en el protocolo Bitcoin y su solución
Vulnerabilidad de ataque de distorsión temporal en el protocolo Bitcoin
El 26 de marzo de 2025, un desarrollador de Bitcoin propuso una nueva propuesta de mejora, destinada a corregir varios fallos y debilidades que han existido durante mucho tiempo en el protocolo de Bitcoin. Un problema de seguridad digno de mención en esta propuesta de bifurcación suave, denominada "limpieza del gran consenso", es el "ataque de distorsión temporal".
Mecanismo de protección de timestamp de Bitcoin
En el protocolo de Bitcoin hay dos reglas principales de protección de marca de tiempo:
Regla del tiempo medio pasado (MPT): La marca de tiempo del bloque debe ser posterior a la mediana de las marcas de tiempo de los 11 bloques anteriores.
Reglas del tiempo de bloque futuro: la marca de tiempo del bloque no puede adelantarse más de 2 horas respecto al tiempo medio de los nodos de la red.
Estas reglas están destinadas a prevenir la manipulación excesiva de las marcas de tiempo de los bloques. Sin embargo, los ataques de distorsión temporal aprovechan las vulnerabilidades de estas reglas, falsificando marcas de tiempo para llevarlas mucho más atrás en el tiempo.
Error de cálculo de Satoshi Nakamoto
El período de ajuste de dificultad de Bitcoin contiene 2016 bloques, lo que equivale a aproximadamente dos semanas. Al calcular el ajuste de dificultad de la minería, el protocolo compara la diferencia de la marca de tiempo entre el primer y el último bloque en la ventana de 2016 bloques. Sin embargo, Satoshi Nakamoto cometió un pequeño error al calcular el tiempo objetivo: utilizó 2016 en lugar de 2015 como multiplicador, lo que resultó en un tiempo objetivo que es un 0.05% más largo de lo que debería ser.
Este error hace que el intervalo de bloques real de Bitcoin sea de 10 minutos y 0.3 segundos, en lugar de 10 minutos exactos. Aunque este error de 0.3 segundos no tiene un gran impacto por sí mismo, sienta las bases para una vulnerabilidad más grave.
El principio del ataque de distorsión temporal
El ataque de distorsión temporal aprovecha el error de Satoshi Nakamoto en el cálculo de la dificultad. El atacante manipula las marcas de tiempo de los bloques, haciendo que la cadena de bloques avance lentamente en el tiempo, mientras cumple con las reglas de MPT. Específicamente:
Esta operación provoca que el tiempo de la cadena de bloques se retrase cada vez más respecto al tiempo real, mientras que la dificultad seguirá aumentando. Sin embargo, debido al salto repentino en la marca de tiempo al final del ciclo, el cálculo de la dificultad se distorsionará, lo que llevará a una gran reducción de la dificultad en el siguiente ciclo.
Impacto potencial del ataque
Si se implementa con éxito, un ataque de distorsión temporal podría resultar en las siguientes consecuencias:
Sin embargo, llevar a cabo este ataque enfrenta numerosos desafíos, incluyendo la necesidad de controlar la mayor parte de la potencia de cálculo, la existencia de mineros honestos que aumentan la dificultad, y el hecho de que el proceso de ataque es fácil de detectar.
Solución
Para solucionar la vulnerabilidad del ataque de distorsión temporal, los desarrolladores han propuesto una solución relativamente simple: requerir que la marca de tiempo del primer bloque del nuevo ciclo de dificultad no sea anterior a un límite de tiempo específico del último bloque del ciclo anterior. La propuesta actual sugiere establecer este límite de tiempo en 2 horas, lo que representa aproximadamente el 0.6% del tiempo objetivo del ciclo de ajuste de dificultad, y puede limitar eficazmente el grado de manipulación de la dificultad.
Esta solución puede prevenir eficazmente los ataques de distorsión temporal y minimizar el riesgo de generar bloques inválidos de manera accidental. Es consistente con las reglas de tiempo de bloques futuras existentes y, en condiciones normales, puede ser más flexible que las reglas MPT actuales.
Con la reparación de esta vulnerabilidad de seguridad, la red Bitcoin se volverá más robusta y segura, sentando una base más sólida para su desarrollo a largo plazo.