La definición de qué es un nodo puede variar según el contexto utilizado. Cuando se trata de redes informáticas o de telecomunicaciones, los nodos ofrecen diferentes propuestas, actuando ya sea como punto de redistribución o como terminal de comunicación. Normalmente, un nodo se representa como un dispositivo en una red física, pero hay algunos casos específicos en los que se utilizan nodos virtuales.
En pocas palabras, un nodo de red es el punto donde se puede crear, recibir o transmitir un mensaje. Por lo tanto, discutiremos los diferentes tipos de nodos de Bitcoin: nodos completos, supernodos, nodos de minería y nodos de cliente SPV.
Los nodos de OS hacen Bitcoin
Sumergiéndonos en el contexto de las cadenas de bloques, que están diseñadas como sistemas distribuidos, una red informática es lo que hace posible utilizar Bitcoin como una moneda digital descentralizada Peer-to-Peer (P2P o peer-to-peer) resistente a las autoridades. desde su concepción y no requiere de un intermediario para realizar transacciones por parte de los usuarios (sin importar la distancia entre ellos).
Por tanto, los nodos de una red blockchain se encargan de actuar como un punto de comunicación que puede tener diferentes funciones. Cualquier computadora o dispositivo que se conecte a la interfaz de Bitcoin puede considerarse nodo en el sentido de que se comunican entre sí de alguna manera. Estos nodos también son capaces de transmitir información sobre transacciones y bloques dentro de una red informática cuando se utiliza el protocolo peer-to-peer de Bitcoin. Sin embargo, cada computadora se define según su función particular, por lo que existen diferentes tipos de nodos dentro de Bitcoin.
Nodos completos
Los nodos completos son aquellos que realmente brindan soporte y seguridad a Bitcoin, siendo esenciales para la red. Estos nodos también se conocen como nodos de validación completa porque participan en el proceso de verificación de bloques y transacciones siguiendo las reglas del algoritmo de consenso. Los nodos completos también son capaces de transmitir nuevos bloques y transacciones a la cadena de bloques.
Normalmente, un nodo completo descarga una copia de la cadena de bloques de Bitcoin que contiene cada bloque y transacción, pero esto no es un requisito para convertirse en un nodo completo (se puede utilizar una copia reducida de la cadena de bloques en lugar de la completa).
Se puede establecer un nodo Bitcoin a través de diferentes implementaciones de software, pero la forma más popular y utilizada es Bitcoin Core. Estos son los requisitos mínimos para ejecutar un nodo completo de Bitcoin Core:
Computadora de escritorio o portátil que ejecute la última versión de Windows, Mac OS X o Linux.
200 GB de espacio libre en HD.
Memoria de 2GB (RAM)
Conexión a Internet de alta velocidad y velocidad de carga de al menos 50 kB/s.
Una conexión a Internet con un límite de ancho de banda alto para cargas. Los nodos completos pueden alcanzar o incluso superar el rango de descarga de 200 GB/mes y 20 GB/mes. Y también necesitas descargar ~200Gb una vez que inicies tu nodo completo.
Un nodo completo debe estar activo durante al menos 6 horas todos los días. Es incluso mejor si lo dejas funcionando continuamente, las 24 horas del día, los 7 días de la semana.
Algunas organizaciones voluntarias y usuarios están ejecutando nodos completos de Bitcoin como una forma de ayudar al ecosistema. Actualmente tenemos aproximadamente 9.700 nodos públicos ejecutándose en la red. Tenga en cuenta que este número solo incluye nodos públicos, que se refieren a nodos que figuran como visibles y accesibles (o nodos receptivos).
Además de los nodos públicos, hay varios otros que son invisibles (nodos no cobrables). Estos nodos suelen operar detrás de un firewall, mediante protocolos como Tor, o simplemente porque han sido configurados para no recibir conexiones.
Nodos receptivos (supernodos)
Básicamente, un nodo receptor o supernodo es un nodo completo que es visible públicamente. Comunica y entrega información a cualquier otro nodo que establezca una conexión mutua. En consecuencia, el supernodo es básicamente un punto de redistribución que puede funcionar como fuente de información y puente de comunicación al mismo tiempo.
Un supernodo confiable generalmente se ejecuta todos los días y tiene múltiples conexiones establecidas, transmitiendo información y transacciones de blockchain a múltiples nodos en todo el mundo. Por esta razón, un supernodo probablemente requerirá mayor potencia informática y conexión a Internet que un nodo completo que permanezca oculto.
Nodos mineros
Para poder minar Bitcoins en el escenario tan competitivo actual, los interesados necesitan invertir en equipos y programas especializados para este fin. Estos programas (software) de minería no están directamente relacionados con Bitcoin Core y deben ejecutarse en paralelo para intentar extraer bloques de Bitcoin. Un minero puede optar por trabajar solo (minero solitario) o en grupos conocidos como grupos de minería.
Mientras que los mineros solitarios de nodo completo utilizan su propia copia de la cadena de bloques, los mineros de grupo trabajan juntos y cada uno contribuye con su potencia informática individual (hashpower). En un grupo de minería, solo el administrador debe cumplir con el requisito de ejecutar un nodo completo, conocido como nodo completo del minero del grupo.
Clientes ligeros o SPV
Más conocidos como clientes de Verificación de Pago Simplificada o SPV, los clientes ligeros son aquellos que utilizan la red Bitcoin, pero no actúan como nodos completos. Por lo tanto, los clientes SPV no contribuyen a la seguridad de la red simplemente porque no tienen una copia de la cadena de bloques y no son parte del proceso de verificación y validación de transacciones.
En definitiva, SPV es el método mediante el cual un determinado participante puede comprobar si algunas transacciones se incluyeron o no en un bloque, sin tener que descargar la información completa al respecto. Por lo tanto, los clientes SPV dependen de la información proporcionada por otros nodos completos (supernodos). Los clientes ligeros funcionan como terminales de comunicación y son utilizados por varias carteras de criptomonedas.
Clientes vs nodos mineros
Es importante tener en cuenta que ejecutar un nodo completo normal no es lo mismo que ejecutar un nodo completo de minería. Si bien los mineros necesitan invertir en programas y piezas de computadora extremadamente costosos, cualquiera puede ejecutar un nodo completo simple. Además, antes de intentar minar un bloque, el minero necesita reunir una cantidad de transacciones pendientes que previamente hayan sido aceptadas como válidas por los nodos completos. Luego, el minero crea un bloque candidato (con un grupo de transacciones) e intenta minar ese bloque. Si el minero logra encontrar una solución válida a la prueba matemática de ese bloque, la transmite a la red y los demás nodos completos verifican la validez de ese bloque. Por lo tanto, las reglas de consenso están determinadas y protegidas por la red distribuida de bloques validados y no por los mineros.
Consideraciones finales
Los nodos de Bitcoin se comunican entre sí a través del protocolo P2P de la red y, al hacerlo, garantizan la integridad del sistema. Un nodo que actúa de manera deshonesta o intenta propagar información incorrecta es rápidamente descubierto por personas honestas y termina siendo desconectado de la red.
A pesar de que ejecutar un nodo completo de validación no tiene ninguna recompensa económica, es muy recomendable realizar esta acción para brindar confianza, seguridad y privacidad a todos los usuarios de la red. Los nodos completos garantizan que siempre se sigan las reglas. Protegen la blockchain contra ataques y fraudes (como el doble gasto). Además, un nodo completo no necesita confiar en otros y permite al usuario el control total de su dinero.
