Cadena de bloques falsa más larga con transacciones "válidas"

¿Qué impide que el cliente de bitcoin cambie a una cadena de bloques falsa que sería más larga que la cadena oficial actual? La cadena falsificada contendría transacciones ficticias, pero dentro de la cadena falsificada la transacción sería válida (por ejemplo, como sin gastos dobles, etc.).

Respuestas (2)

Los clientes de Bitcoin siempre aceptan la cadena válida más larga. Por un lado, los clientes verifican la validez de los bloques recibidos, por otro lado, la longitud se define por otra métrica de lo que muchos suponen. La longitud de la cadena de bloques es la suma de la dificultad de todos sus bloques, no el número de bloques. Entonces, para crear una cadena falsa, el atacante tendría que crear una cadena válida con la misma dificultad. Esto es posible para cadenas muy cortas (ataque de doble gasto) o requiere una parte importante de la potencia de la red (ataque del 51 %).

Los nodos completos de la cadena de bloques en realidad verifican no solo los encabezados del bloque, sino también cada transacción en el cuerpo del bloque antes de aceptar ese bloque. Si alguna transacción en el bloque no "suma" (es decir, sus entradas no coinciden con el saldo actual aceptado de esas direcciones, firmas, etc.), entonces el bloque no se aceptará como válido.

Aquí es donde los clientes de bitcoin "ligeros" (los que no descargan la cadena de bloques completa) tienen que confiar en un nodo de modo completo para decirles la "verdad" sobre las transacciones anteriores. Si el nodo de modo completo es malicioso, ciertamente puede engañar a estos pares de clientes ligeros que están conectados a él.