A definição de um nó pode variar de acordo com o contexto. Quando se trata de redes de computadores ou de telecomunicações, os nós podem atuar como um ponto de redistribuição ou como um ponto final de comunicação. Normalmente, um nó consiste em um dispositivo de rede físico, mas há alguns casos em que nós virtuais são usados.
Um nó de rede é um ponto onde uma mensagem pode ser criada, recebida ou transmitida. Por meio deste, discutiremos os diferentes tipos de nós Bitcoin: nós completos, supernós, nós de mineradores e clientes SPV.
Nós de Bitcoin
Mergulhando no contexto das blockchains – que são concebidas como sistemas distribuídos – a rede de nós de computador é o que possibilita que o Bitcoin seja usado como uma moeda digital descentralizada peer-to-peer (P2P) . Como tal, é resistente à censura por design e não requer que um intermediário seja negociado de usuário para usuário (não importa o quão distantes eles estejam no mundo).
Portanto, os nós da blockchain são responsáveis por atuar como um ponto de comunicação que pode desempenhar diferentes funções. Qualquer computador ou dispositivo que se conecte à interface do Bitcoin pode ser considerado um nó no sentido de que eles se comunicam de alguma forma entre si. Esses nós também são capazes de transmitir informações sobre transações e blocos dentro da rede distribuída de computadores usando o protocolo Bitcoin peer-to-peer. No entanto, cada nó do computador é definido de acordo com suas funções específicas, portanto, existem diferentes tipos de nós Bitcoin.
Nós completos
Full nodes são os que realmente dão suporte e segurança ao Bitcoin, sendo indispensáveis para a rede. Esses nós também podem ser referidos como nós de validação completa, pois se envolvem no processo de verificação de transações e bloqueios em relação às regras de consenso do sistema. Além disso, nós completos são capazes de retransmitir novas transações e blocos para o blockchain.
Normalmente, um full node baixa uma cópia do blockchain Bitcoin com cada bloco e transação, mas isso não é um requisito para ser considerado um full node (uma cópia reduzida do blockchain pode ser usada em seu lugar).
Um nó Bitcoin completo pode ser estabelecido através de diferentes implementações de software , mas o mais usado e popular é o Bitcoin Core . Estes são os requisitos mínimos para executar um nó completo do Bitcoin Core:
- Desktop ou laptop com uma versão recente do Windows, Mac OS X ou Linux.
- 200 GB de espaço livre em disco.
- 2 GB de memória (RAM).
- Conexão de internet de alta velocidade com velocidades de upload de pelo menos 50 kB/s.
- Uma conexão ilimitada ou uma conexão com altos limites de upload. Os nós completos online podem atingir ou exceder um uso de upload de 200 GB/mês e um uso de download de 20 GB/mês. Você também precisará baixar ~ 200 GB quando iniciar seu node completo.
- Seu nó completo deve ser executado pelo menos 6 horas por dia. Melhor ainda se você executá-lo continuamente (24/7).
Muitas organizações voluntárias e usuários estão executando nós Bitcoin completos como uma forma de ajudar o ecossistema Bitcoin. A partir de 2022, existem mais de 10.000 nós públicos em execução na rede Bitcoin. Observe que esse número inclui apenas os nós públicos, que se referem aos nós do Bitcoin visíveis e acessíveis, conhecidos como nós de escuta.
Além dos nós públicos, existem muitos outros nós ocultos que não são visíveis (nós não ouvintes). Esses nós geralmente operam atrás de um firewall, por meio de protocolos ocultos como o Tor, ou simplesmente porque foram configurados para não escutar conexões.
Nós de escuta (supernós)
Essencialmente, um nó de escuta ou super nó é um nó completo que é visível publicamente. Ele se comunica e fornece informações a qualquer outro nó que decida estabelecer uma conexão com ele. Portanto, um supernó é basicamente um ponto de redistribuição que pode atuar tanto como fonte de dados quanto como ponte de comunicação.
Um super nó confiável normalmente funciona 24 horas por dia, 7 dias por semana e tem várias conexões estabelecidas, transmitindo o histórico do blockchain e dados de transações para vários nós em todo o mundo. Por esse motivo, um super node provavelmente exigirá mais poder computacional e uma melhor conexão com a internet quando comparado a um full node que está oculto.
Nós dos mineradores
Para poder minerar Bitcoins no cenário competitivo atual, é preciso investir em hardware e programas de mineração especializados. Esses programas de mineração (software) não estão diretamente relacionados ao Bitcoin Core e são executados em paralelo para tentar minerar blocos de Bitcoin. Um minerador pode optar por trabalhar sozinho (minerador solo) ou em grupos (minerador pool).
Enquanto os full nodes dos mineradores solo fazem uso de sua própria cópia do blockchain, os mineradores pool trabalham juntos, cada um contribuindo com seus próprios recursos computacionais (hashpower). Em um pool de mineração, apenas o administrador do pool é obrigado a executar um nó completo – que pode ser chamado de nó completo do minerador de pool.
Clientes leves ou SPV
Também conhecidos como clientes de Verificação de Pagamento Simplificado (SPV), os clientes leves são aqueles que usam a rede Bitcoin, mas não agem realmente como um nó completo. Portanto, os clientes SPV não contribuem para a segurança da rede porque não guardam uma cópia do blockchain e não participam do processo de verificação e validação das transações.
Resumindo, o SPV é o método pelo qual um usuário pode verificar se algumas transações foram incluídas ou não em um bloco, sem precisar baixar todos os dados do bloco. Assim, os clientes SPV contam com as informações fornecidas por outros nós completos (supernós). Os clientes leves funcionam como terminais de comunicação e são usados por muitas carteiras de criptomoedas.
Cliente vs. nós de mineração
É importante observar que executar um nó completo não é o mesmo que executar um nó de mineração completo. Enquanto os mineradores precisam investir em hardware e software de mineração caros, qualquer um pode executar um nó de validação total.
Antes de tentar minerar um bloco, um minerador precisa reunir as transações pendentes que foram previamente aceitas como válidas pelos nodos completos. Em seguida, o minerador cria um bloco candidato (com um grupo de transações) e tenta minerar esse bloco. Se um minerador conseguir encontrar uma solução válida para seu bloco candidato, ele a transmitirá para a rede para que outros nós completos possam verificar a validade do bloco. Portanto, as regras de consenso são determinadas e garantidas pela rede distribuída de nós de validação e não pelos mineradores.
Pensamentos finais
Os nós Bitcoin se comunicam entre si por meio do protocolo de rede Bitcoin P2P e, ao fazer isso, garantem a integridade do sistema. Um nodo que se comporta mal ou tenta propagar informações incorretas é rapidamente reconhecido pelos nodos honestos e é desconectado da rede.
Apesar do fato de executar um nó de validação completa não fornecer recompensas financeiras, ele é altamente recomendado porque fornece confiança, segurança e privacidade aos usuários. Os nós completos garantem que as regras estão sendo seguidas. Eles protegem o blockchain contra ataques e fraudes (como gastos duplos). Além disso, um full node não precisa confiar nos outros e permite que o usuário tenha total controle de seu dinheiro.