He leído que se eliminaron los puntos de control en Bitcoin porque no impedían ningún ataque significativo.
¿Por qué un punto de control regular no debería prevenir los ataques de la mayoría? Por ejemplo, si se realiza un punto de control cada N bloques y (por ejemplo) 3/4 del poder hash está de acuerdo, ¿no sería posible utilizarlo como un mecanismo para crear una confirmación permanente de las transacciones antes del punto de control? Suponiendo, por supuesto, que los clientes verifiquen esos puntos de control y los hagan cumplir para que se incluyan en la cadena válida.
El problema es que asumes que un ataque mayoritario es un ataque que se puede prevenir. No lo es. Es una ruptura fundamental de los supuestos de seguridad.
La suposición de la prueba de trabajo (PoW) es que la mayoría del hashrate cooperará y convergerá en una sola cadena, porque es lo más ventajoso desde el punto de vista financiero. Cuando ese ya no es el caso, PoW está roto y deberíamos pasar a otra cosa, no para tratar de arreglarlo.
Puede pensar que agregar puntos de control ayuda a mejorar esta situación, pero considere esto:
O los puntos de control se crean para bloques antiguos (de semanas o meses), en cuyo caso claramente no se puede evitar nada. Una reorganización de una semana de duración destruiría por completo la moneda y la confianza en ella, y esto no la impediría.
O los puntos de control se crean para bloques recientes (tal vez días u horas), en cuyo caso pueden afectar qué cadena se acepta en la red durante ciertas circunstancias, pero al mismo tiempo reemplaza efectivamente el consenso basado en PoW con "developers-decide". " consenso... algo que no necesita un protocolo complejo de igual a igual en absoluto, ya que los desarrolladores necesitan ejecutar sistemas para mantener el sistema bajo control.
Entonces, los puntos de control tienen un efecto, y cambian las suposiciones de seguridad en una que no sea interesante, o no lo hacen, y no importan.
Para responder a su pregunta: la razón principal para eliminar los puntos de control se debe a la confusión que crean. Hacen que las personas piensen que son parte del modelo de seguridad del sistema (como muestra su pregunta). Ese no es el caso. Se introdujo como una necesidad para implementar una optimización (saltar la validación del script) y un ataque de denegación de servicio no relacionado (el disco de un nuevo nodo se llena con bloques de baja dificultad durante la sincronización). Debido a algunos cambios en el protocolo P2P (sincronización basada en encabezados), ya no necesitamos puntos de control para hacer estas cosas de manera segura.
Nate Eldredge
confundido00
Willtech