Bitcoin Knots: alternativa a Bitcoin Core
¿Dos implementaciones del mismo protocolo pueden coexistir?
Bitcoin Core no es la única implementación del nodo de Bitcoin, aunque sí la dominante. Bitcoin Knots es un fork directo de Core mantenido por el desarrollador Luke Dashjr que comparte exactamente las mismas reglas de consenso pero difiere en sus políticas de mempool y en algunas opciones de configuración adicionales. Entender esta distinción es clave para evaluar qué ofrece Knots y qué no.
Reglas de consenso vs. políticas de mempool
Las reglas de consenso son las que todos los nodos deben cumplir para estar en la misma cadena: tamaño de bloque, estructura de transacciones, validez de firmas, recompensa de minería. Las políticas de mempool son reglas locales que cada nodo aplica para decidir qué transacciones acepta en su propia cola de espera y reenvía a sus pares. Un nodo puede rechazar transacciones que considera spam sin romper el consenso, porque los mineros pueden incluirlas igualmente en un bloque.
Qué añade Knots respecto a Core
La diferencia más visible de Bitcoin Knots es su política anti-spam más agresiva. Desde 2023, con la aparición de Ordinals y los tokens BRC-20, una parte significativa del espacio en bloque se usa para inscribir datos arbitrarios (imágenes, texto, código) en la cadena. Knots filtra por defecto las transacciones que usan el campo OP_RETURN más allá del límite estándar o que emplean el truco de inscripción en el testigo (witness data) para almacenar datos no relacionados con pagos.
Otras adiciones de Knots incluyen: mayor granularidad en la configuración del filtro de transacciones, opciones para limitar las conexiones entrantes por subred, y parches de seguridad que a veces se integran antes que en Core. La versión de Knots suele ir ligeramente por detrás de la última versión de Core, incorporando los cambios de Core más los propios.
El debate sobre la neutralidad del protocolo
El uso de Knots para filtrar Ordinals ha reabierto un debate antiguo: ¿deben los operadores de nodo aplicar filtros de contenido, o el protocolo debe ser neutral respecto al contenido de las transacciones? Los defensores de Knots argumentan que los nodos siempre han tenido políticas de mempool y que filtrar transacciones que no son pagos es legítimo para preservar la utilidad de Bitcoin como sistema monetario. Los críticos señalan que un nodo que filtra transacciones válidas reduce la resistencia a la censura y que las políticas de mempool no deben basarse en el significado del contenido.
Lo importante es comprender que ningún operador de Knots puede impedir que esas transacciones se confirmen: si un minero las incluye en un bloque, el bloque es válido y todos los nodos lo aceptan. El filtrado opera únicamente en la capa de propagación.
Cómo instalar Bitcoin Knots
Knots publica binarios firmados por Luke Dashjr para Linux, macOS y Windows en bitcoinknots.org. La instalación es idéntica a la de Bitcoin Core: descarga el binario, verifica la firma GPG contra la clave pública publicada por Dashjr, y ejecuta bitcoind o Bitcoin-Qt. La base de datos de bloques es compatible con Core, por lo que migrar de uno a otro no requiere resincronizar desde cero.
En Umbrel, Knots no está disponible en la tienda oficial, pero puede instalarse manualmente como una aplicación de comunidad. Varios operadores de nodo más técnicos lo prefieren precisamente por las opciones adicionales de configuración.
¿Cuándo tiene sentido elegir Knots?
Si operas un nodo para verificar tus propias transacciones y quieres reducir la cantidad de tráfico de inscripciones que tu nodo propaga, Knots es una opción razonable. Si participas en el debate sobre las políticas del protocolo y quieres votar con tu nodo por políticas de mempool más restrictivas, Knots es la herramienta habitual. Si priorizas mantenerte lo más cerca posible del software de referencia con el menor número de cambios locales, Bitcoin Core sigue siendo la opción más conservadora.
Errores habituales
- Creer que Knots tiene reglas de consenso distintas a Core: comparten exactamente las mismas reglas de consenso y están en la misma cadena.
- Pensar que un nodo con Knots puede bloquear transacciones de Ordinals permanentemente: solo las filtra de su mempool local; los mineros pueden incluirlas de todas formas.
- Asumir que Knots es mantenido por un equipo grande: es principalmente el trabajo de un solo desarrollador, lo que implica menor velocidad de respuesta ante vulnerabilidades críticas.
Conceptos relacionados
Fuentes primarias
- Bitcoin Knots – bitcoinknots.org
- Luke Dashjr – github.com/luke-jr
- Bitcoin Core – github.com/bitcoin/bitcoin
- BIP-126 – Best Practices for Heterogeneous Input Script Transactions