En debates recientes sobre los cambios y diferencias entre clientes de Bitcoin, a menudo se mezclan o confunden dos tipos de reglas que en realidad son fundamentalmente distintas. Comprender qué tipo de reglas está aplicando un nodo de Bitcoin – y con qué objetivo – es esencial para entender cualquier cambio en el protocolo de Bitcoin o las discusiones sobre esos cambios. Veamos más de cerca la diferencia entre las reglas de consenso y las políticas de la mempool.

Reglas de consenso

Si lo piensas bien, Bitcoin es simplemente un conjunto de reglas, aplicadas de forma independiente por miles de nodos y mineros en todo el mundo. Algunas de estas reglas, probablemente las más importantes, determinan si un bloque es válido. Son esenciales para lograr consenso en la red, ya que los participantes deben estar de acuerdo sobre ellas para poder coincidir en qué cadena de bloques es “la verdadera blockchain de Bitcoin”. Sin consenso sobre estas reglas, en la práctica no existiría la red de Bitcoin – por eso las llamamos reglas de consenso.

Muchas de las reglas de consenso son bastante obvias, y podrías deducirlas naturalmente al pensar en la validez de un bloque de Bitcoin. Por ejemplo, las transacciones no pueden gastar bitcoin dos veces, los mineros no pueden crear más bitcoin en un nuevo bloque de lo que está permitido actualmente y el tamaño de los bloques no puede ser mayor que el límite máximo. 

“Tu nodo, tus reglas” es una frase común entre las personas que ejecutan su propio nodo de Bitcoin. Aunque en esencia es cierta, no es tan sencillo “crear tus propias reglas” a nivel individual. Si, por ejemplo, programas tu nodo para reducir el tamaño máximo del bloque de 4 MB a 0,1 MB, tu nodo simplemente empezaría a rechazar los nuevos bloques – y eso sería todo. Simplemente quedarías fuera de sincronización con el resto de la red, desconectándote de forma efectiva sin que nadie se dé cuenta. 

Un cambio en las reglas de consenso ocurre muy raramente en Bitcoin y siempre resulta en un hard fork o un soft fork. jemplos populares de soft forks en Bitcoin incluyen la actualización Segwit en 2017 y la actualización Taproot en 2021. Un ejemplo de un hard fork bastante controvertido es la división de la red y la posterior creación de Bitcoin Cash en 2017. En todos estos casos, el cambio en la regla de consenso fue un esfuerzo más o menos coordinado entre muchos usuarios, mineros y desarrolladores..

Políticas de la mempool

en en cuenta que no todas las reglas de las que se habla en Bitcoin son relevantes para el consenso. Algunas “reglas” son en realidad simples configuraciones de tu propio nodo, por ejemplo, para gestionar sus recursos de manera más eficiente o ayudar a transmitir ciertas transacciones de forma más efectiva. Como estas configuraciones influyen en qué transacciones se mantienen localmente en la mempool de un nodo y se reenvían a otros nodos de la red, las llamamos políticas de la mempool

Cuando creas una nueva transacción, tu billetera la envía al nodo de Bitcoin al que está conectada, que a su vez la reenvía a otros nodos, y así sucesivamente, propagándola por toda la red. Por lo tanto, las políticas de la mempool de los nodos influyen directamente en qué tan eficazmente se difunde una transacción a través de la red – al menos hasta cierto punto. 

Eventualmente, la mayoría de las transacciones llegan a la mayoría de los nodos, incluso cuando algunos nodos no las reenvían.

Algunos ejemplos de políticas de la mempool son:

  • La tarifa mínima requerida para que una transacción sea reenviada.
  • La cantidad máxima de datos en salidas OP_RETURN para que una transacción sea reenviada.
  • El tamaño máximo de la mempool antes de que se eliminen las transacciones con baja tarifa.
  • Decidir si se reenvían o no las transacciones no estándar.
  • … y más

La configuración de estas políticas depende completamente del operador del nodo y se puede cambiar a voluntad, ya que no influyen en la validez de la transacción de todos modos. Incluso si tu nodo elimina una determinada transacción de su mempool, esa misma transacción podría aparecer en el siguiente bloque de Bitcoin, y tu nodo aún la marcará como válida, porque no viola las reglas de consenso.

Uno vence al 99,9%

Un aspecto crucial de las políticas es cómo – por definición – no pueden aplicarse a nivel de protocolo, de lo contrario serían consideradas reglas de consenso. Esta es la razón por la que es muy difícil (o, en algunos casos, incluso imposible) influir efectivamente en qué transacciones terminan siendo confirmadas en un nuevo bloque de Bitcoin usando únicamente políticas de la mempool.

Veamos un ejemplo para ilustrarlo: quizás hayas oído hablar de que la “tarifa mínima” en la red de Bitcoin es de 1 sat/vB. Es una tarifa muy común de usar cuando la red no está tan congestionada con transacciones, y la mayoría de las billeteras ni siquiera te permiten establecer una tarifa por debajo de ese valor – con buena razón.

Sin embargo, la tarifa de 1 sat/vB no es un mínimo estricto, a pesar de que casi todos los nodos aplican simultáneamente esta política en sus mempools locales. Puede ser difícil transmitir transacciones por debajo de 1 sat/vB de la manera habitual, pero desde la perspectiva de las reglas de consenso, no hay ningún problema con transacciones que paguen cero tarifas. Incluso puedes encontrar este tipo de transacciones con regularidad, principalmente transacciones Coinbase o cualquier otra que los mineros quieran priorizar sobre otras (ya que no tendría sentido pagarse a sí mismos una tarifa). La tarifa de 1 sat/vB no es más que un valor de configuración predeterminado que se ha convertido en un estándar establecido – uno que puedes ignorar si realmente quieres.

Los bloques recientes incluyen muchas transacciones con tarifas por debajo del estándar de 1 sat/vB.

Si seguiste el debate sobre aumentar el límite de datos para las salidas OP_RETURN, puedes aplicar este principio de manera muy similar, ya que la opción de configuración que limita la cantidad de datos arbitrarios permitidos en estas transacciones también es solo una política de la mempool. Incluso si una gran mayoría de nodos deja de reenviar completamente las transacciones con salidas OP_RETURN, unos pocos nodos que todavía lo hagan serían suficientes para que la transacción se incluya en un bloque – siempre que pague una tarifa lo suficientemente alta. En teoría, basta con un solo minero para eludir directamente las políticas establecidas por el 99,9% del resto de la red.

Algunos nodos son más fuertes que otros

No todos los nodos son iguales – técnicamente hablando. Mientras que un nodo podría ejecutarse en una pequeña Raspberry Pi con memoria y potencia de cómputo limitadas, otro podría estar alojado en un potente proveedor de nube, con cientos de gigabytes de memoria y una CPU muy poderosa. Ambos tienen su lugar en la red de Bitcoin, pero también cuentan con niveles de recursos muy diferentes a su disposición.

Aquí es donde las políticas de la mempool pueden jugar un papel bastante efectivo: por ejemplo, el nodo más potente puede aumentar su tamaño máximo de mempool a varios gigabytes, permitiendo que las transacciones más antiguas y de menor tarifa no se olviden tan rápidamente. Por otro lado, la Raspberry Pi podría querer establecer un límite más bajo, permitiendo que solo se mantengan unos pocos cientos de megabytes de transacciones en su mempool. Esto le permite al nodo seguir de cerca las transacciones entrantes con tarifas más altas, que tienen más probabilidades de ser incluidas en el próximo bloque, manteniéndose actualizado de manera eficiente sin quedarse sin memoria. 

Limitar el spam

Esta sección no trata sobre limitar los datos arbitrarios en la blockchain de Bitcoin, sino sobre otro efecto útil que pueden tener las políticas de la mempool. Imagina un nodo que no aplica una tarifa mínima ni un tamaño máximo de mempool: un atacante podría enviar ahora “transacciones spam” sin tarifa (y, por lo tanto, con menor coste financiero) a este nodo, manteniéndolo ocupado con la validación de transacciones sin sentido hasta que se quede sin memoria y se bloquee. Por otro lado, un nodo con una política de tarifa mínima simplemente rechazaría las transacciones spam con tarifa cero. Además, incluso aumentaría dinámicamente la tarifa una vez que la mempool alcance el límite establecido por la política de tamaño máximo de mempool. En resumen: las políticas de la mempool pueden actuar como controles prácticos para mantener un nodo dentro de un rango operativo sensato y seguro.

Conclusión

Cuando las políticas de la mempool se ajustan a las limitaciones técnicas de un nodo o a las preferencias personales del operador, pueden ayudar a que la red de Bitcoin sea más eficiente al intercambiar información entre pares, al mismo tiempo que protegen los nodos de patrones de uso abusivos.

Sin embargo, es crucial tener en cuenta que las políticas de la mempool no pueden convertirse en reglas de consenso simplemente ejecutándolas en tu propio nodo y alentando a otros a hacer lo mismo. Dado que no determinan la validez de un bloque de Bitcoin, su caso de uso se limita a optimizar cómo tu nodo interactúa con la red y gestiona el tráfico, no a definir qué es Bitcoin.


¿Aún no tienes una BitBox?

Proteger tus criptomonedas no tiene por qué ser complicado. Las billeteras de hardware BitBox almacenan las llaves privadas de tus criptomonedas sin conexión, para que puedas gestionar tus monedas de forma segura.

Tanto la BitBox02 Nova como la BitBox02 también están disponibles en una edición exclusiva para Bitcoin, con un firmware radicalmente enfocado: menos código significa una menor superficie de ataque, lo que mejora aún más tu seguridad si solo guardas bitcoin.

¡Consigue una BitBox02 Nova o una BitBox02 en nuestra tienda!


Shift Crypto es una empresa privada con sede en Zurich, Suiza. Nuestro equipo de colaboradores de Bitcoin, expertos en criptomonedas e ingenieros de seguridad crea productos que permiten a los clientes disfrutar de un viaje sin estrés desde el nivel de principiante hasta el nivel de maestría en la gestión de criptomonedas. La BitBox02, nuestra billetera de hardware de segunda generación, permite a los usuarios almacenar, proteger y realizar transacciones con Bitcoin y otras criptomonedas con facilidad, junto con su software complementario, la BitBoxApp.