Punto de control (checkpoint)
Un punto de control (checkpoint) es un bloque designado que un protocolo de blockchain o sus clientes tratan como un punto de referencia fijo: un bloque cuyo lugar en la historia está acordado y se usa para anclar la finalidad, acelerar la sincronización o impedir reescrituras profundas de la cadena. En lugar de evaluar toda la cadena desde el principio, los nodos pueden razonar a partir del punto de control hacia delante.
El uso moderno más destacado se da en el consenso de proof of stake de Ethereum, donde el primer bloque de cada época sirve como punto de control sobre el que votan los validadores. Cuando más de dos tercios del ether en staking respaldan con sus atestaciones un par de puntos de control consecutivos, el anterior queda finalizado, lo que significa que el protocolo garantiza que nunca podrá revertirse sin que se destruya al menos un tercio de todo el stake. Los puntos de control también aparecen como anclas de «subjetividad débil» (weak subjectivity): un nodo que se sincroniza por primera vez parte de un punto de control reciente de confianza en lugar de verificar años de historia, lo que además defiende contra los ataques de largo alcance que fabrican una historia antigua alternativa.
Históricamente, el software temprano de Bitcoin incluía puntos de control fijados en el código (hashes de bloques incrustados en él) para bloquear ciertos ataques de denegación de servicio durante la sincronización inicial; en su mayoría se retiraron a medida que la red maduraba, ya que los puntos de control elegidos por los desarrolladores encajan mal con la idea de que solo la cadena define la historia. Un error común es creer que los puntos de control permiten a los desarrolladores reescribir o congelar el libro mayor; en los sistemas de proof of stake los producen los votos de los validadores según las reglas del protocolo, no la decisión de ningún equipo.