Nodo ligero (SPV)
¿Cómo funciona?
Satoshi describió el SPV en la sección 8 del whitepaper. Un nodo ligero descarga solo las cabeceras de los bloques (80 bytes cada una) y se conecta a nodos completos de la red. Cuando necesita verificar una transacción, pide al nodo completo una prueba de Merkle: el camino de hashes desde la transacción hasta la raíz de Merkle incluida en la cabecera del bloque. Si la prueba es válida, la transacción está incluida en ese bloque.
Ventajas
Consume muy pocos recursos: solo necesita ~60 MB de almacenamiento (frente a los 500+ GB de la blockchain completa), poca memoria RAM y poco ancho de banda. Esto permite ejecutar verificación básica en teléfonos móviles y dispositivos limitados.
Limitaciones de seguridad
Un nodo SPV confía parcialmente en los nodos completos a los que se conecta: puede verificar que una transacción está incluida en un bloque, pero no puede verificar que ese bloque cumple todas las reglas de consenso. Si todos los mineros conspiraran para crear un bloque inválido, un nodo SPV podría ser engañado. Un nodo completo nunca sería engañado.
¿Por qué importa?
Los nodos SPV son el compromiso pragmático que hace Bitcoin utilizable en dispositivos móviles. No ofrecen la misma soberanía que un nodo completo, pero son infinitamente mejores que confiar ciegamente en un exchange o en un tercero.
Errores habituales
- Pensar que SPV ofrece la misma seguridad que un nodo completo (no verifica todas las reglas de consenso)
- Creer que los filtros Bloom (BIP-37) son privados (revelan información al nodo al que te conectas)
- Confundir SPV con "nodo podado" (un nodo podado verifica todo; solo descarta bloques antiguos)
Conceptos relacionados
Fuentes primarias
- Whitepaper de Bitcoin, sección 8
- BIP-37 (Bloom Filters)
- BIP-157/158 (Compact Block Filters)