Sem nós do Bitcoin, a maior blockchain do mundo como a conhecemos seria apenas um conceito conhecido por poucos cientistas da computação.
Nós (do inglês “nodes”) de Bitcoin são a infraestrutura inerente da rede Bitcoin, que garantem sua segurança e manutenção. Mas apesar de sua importância, nós do Bitcoin não são muito bem compreendidos.
Neste artigo, o Decrypt explora o que são nós, quais são os diferentes tipos e quais são seu papel na rede Bitcoin.
O que é o Bitcoin?
Quando grande parte das pessoas diz “Bitcoin”, estão se referindo ao “bitcoin” (a criptomoeda), mas o Bitcoin, com letra maiúscula, é bem mais do que isso:
– O Bitcoin é uma rede: uma coleção de computadores interconectados que compartilham informações;
– O Bitcoin é um protocolo: um conjunto de regras sobre como informações podem ser compartilhadas na rede;
– O Bitcoin é software: um programa de computador que conhece as normas do protocolo e é executado por computadores na rede para que possam compartilhar informações entre si.
Usar a mesma palavra para descrever diferentes coisas (apesar de estarem relacionadas) pode ser algo confuso. Neste artigo, vamos usar os seguintes termos para diferenciar o Bitcoin:
– “BTC” descreve a criptomoeda bitcoin, que as pessoas compram, vendem e negociam;
– O “software Bitcoin” descreve as normas do protocolo que são codificadas em uma linguagem que computadores entendem, permitindo que usem e compartilhem informações sobre transações com BTC;
– A “rede Bitcoin” descreve a rede de computadores interconectados, em que cada um executa sua própria versão do software Bitcoin.
Essas diferenciações fornecem contexto útil para explicar os diferentes tipos de nós do Bitcoin. Antes de discuti-los especificamente, é importante explicar o que são.
O que são nós em uma rede blockchain?
No geral, um nó é um ponto em uma rede. Por exemplo, um carro é um nó em uma rede de estradas; um colega de trabalho é um nó em uma rede profissional.
No mundo dos computadores, nós são dispositivos conectados a uma rede de computadores que transmite, processa e armazena informações.
Nós consistem de duas coisas: hardware e software. Hardware é a parte física (microchips, processadores etc.) necessários para executar o software. Já o software é um conjunto de instruções que pode ser armazenado e executado pelo hardware.
Por exemplo, seu celular é um nó na internet. Os aplicativos que você executa (navegadores, aplicativos de mensagens, mapas etc.) são pedaços de software que podem se conectar à internet e receber instruções de qual tipo de informação enviar, receber e armazenar (como sites, mensagens de texto e direções).
Essas instruções e pedaços de informação são processados e armazenados em pedaços tangíveis de software que estão dentro de seu celular e de outros computadores conectados à internet.
Em comparação à internet e aos celulares, a rede Bitcoin e os nós do Bitcoin são extremamente simples. Enquanto a internet e os celulares foram criados para transmitir e armazenar todos os tipos de informação, a rede Bitcoin e os nós do Bitcoin foram criados para transmitir e armazenar um tipo de informação: dados que representam transações com BTC.
Curiosidade: a rede Bitcoin é executada na internet. Então, tecnicamente, um nó de Bitcoin também é um nó de internet.
O que são nós do Bitcoin?
Nós do Bitcoin são computadores que executam o software Bitcoin e estão conectados à rede Bitcoin. Nós do Bitcoin validam, transmitem, processam e armazenam transações com BTC.
Transações com BTC são agrupadas e armazenadas em grupos chamados de blocos. É daí que vem o termo “blockchain” — transações históricas armazenadas em blocos e que são interligadas. Antes de um bloco ser acrescentado à blockchain, nós devem verificar que as transações do bloco são válidas.
Essa verificação envolve a verificações de uma série de coisas, como se o mesmo BTC foi gasto duas vezes ou se um remetente realmente possui o BTC que está tentando enviar. O processo de nós individuais concordarem coletivamente sobre a legitimidade de um bloco (e as transações que contém) antes de acrescentá-lo a blockchain é conhecido como consenso.
O Bitcoin é um sistema de pagamento de ponto a ponto, ou seja, não possui intermediários que impõem normas de consenso à rede. Dessa forma, nós devem chegar a um consenso entre si e fazem isso usando o software Bitcoin.
Além das normas do protocolo Bitcoin, o software Bitcoin contém uma cópia completa da blockchain Bitcoin. Então, quando um nó baixa o software e o conecta à rede, possui o mesmo histórico de transações e funciona com o mesmo conjunto de normas para a verificação de transações que qualquer outro nó de Bitcoin.
Dessa forma, quando uma nova transação é transmitida à rede, cada nó individual faz seu próprio trabalho para verificar a legitimidade de uma transação.
Da mesma forma, quando um novo bloco é transmitido à rede, cada nó decide se irá acrescentar ou não sua cópia à blockchain. Esse design permite que nós verifiquem transações e blocos com BTC com uma necessidade mínima de confiança (“trustless”).
Curiosidade: Cada bloco na blockchain do Bitcoin contém, em média, duas mil transações.
Os principais tipos de nós do Bitcoin
Uma forma útil de entender os diferentes tipos de nó de Bitcoin é fazer a seguinte pergunta: qual é o papel do nó em acrescentar blocos à blockchain?
Lembre-se: nós do Bitcoin transmitem, validam, processam e armazenam transações com BTC — e blocos são coleções de transações legítimas de BTC.
Nó completo (full node)
Quando uma transação acontece, um nó completo a coleta. Nós completos (“full nodes”) armazenam toda a blockchain e podem verificar completamente todas as normas da rede Bitcoin usando o software Bitcoin. Um nó completo verifica a legitimidade das transações com o histórico da blockchain e o conjunto de normas codificadas no software Bitcoin.
Se a transação for legítima, o nó completo a transmite a outros nós com os quais está conectado. Esses nós passam pelo mesmo processo de verificação. Quando um número suficiente de nós completos concordar que a transação é legítima, esta é acrescentada a um “pool” (grupo de outras transações válidas).
Mineradores
Nós de mineração (“mining nodes”) — mais chamados de mineradores — coletam transações desse pool e as compactam em blocos.
Mineradores executam uma versão do software Bitcoin que contém normas especiais para a criação e proposta de blocos à rede Bitcoin. Inclui tarefas como o tamanho máximo de um bloco, como formatar transações e como assinar um bloco.
Mineradores competem entre si em uma corrida para criar o próximo bloco. Quando um minerador acredita que criou um bloco válido, transmite o bloco proposto para outros nós na rede Bitcoin.
Nós completos coletam o bloco e, da mesma forma como validam uma única transação, verificam a legitimidade do bloco de acordo com as normas codificadas no software Bitcoin que estão executando. Se um nó completo considerar um bloco como legítimo, acrescenta o bloco à sua respectiva cópia da blockchain, a transmite à blockchain Bitcoin e outros nós passam pelo mesmo processo de verificação.
Quando um número suficiente de nós valida o bloco e o acrescentam à sua cópia da blockchain, o consenso é alcançado. Neste momento, as transações no bloco são processadas, todos os nós verificam e armazenam a versão atualizada da blockchain e mineradores começam a corrida para criar o próximo bloco.
Nós completos vs. mineradores
Mineradores são incentivados a criar e propor blocos válidos porque o minerador cujo bloco é acrescentado à blockchain recebe uma recompensa. Essa recompensa por bloco consiste de BTC minerados e pré-programados ao software Bitcoin, além das taxas denominadas em BTC para todas as transações contidas no bloco.
A mineração é uma atividade competitiva e cara. Se um minerador propõe um bloco inválido (por exemplo, com transações falsas), o bloco é rejeitado por outros nós e o minerador não é recompensado pelo tempo e dinheiro gastos para criar o bloco. Assim, mineradores são incentivados a propor apenas blocos válidos.
A principal diferença é que mineradores são capazes de propor novos blocos à rede Bitcoin e receber recompensas por bloco; nós completos, não.
Os intensos recursos da mineração exigem que mineradores utilizem hardware especializados e poderosos, projetados especificamente para criar e propor novos blocos. Em contraste, nós completos podem ser executados na maioria dos notebooks e, até mesmo, em um Raspberry Pi.
Existe um terceiro e último tipo principal de nó de Bitcoin: “nós leves”.
Nós leves (light nodes)
Nós leves (“light nodes”) executam uma versão especial do software Bitcoin que armazena, como o próprio nome sugere, uma versão mais leve da blockchain.
Essa versão da blockchain contém cabeçalhos (“headers”) de bloco, que são códigos em cada bloco que basicamente afirmam que “este bloco é válido”. Permitem que nós leves se conectem e transacionem na rede Bitcoin sem que armazenem o histórico completo.
Porém, isso significa que nós leves não podem verificar, de forma independente, as normas da rede Bitcoin e, por isso, devem se conectar aos nós completos para obter os dados do bloco.
Carteiras móveis são o exemplo mais comum de nós leves. Grande parte dos celulares (com pouquíssimas exceções) não são poderosos o suficiente para executar um nó completo nem para operar um minerador. Mas são poderosos o suficiente para armazenar uma versão compactada da blockchain com informações sobre saldos de BTC com endereços de carteira.
Se você enviou ou recebeu BTC usando seu celular, seu dispositivo é um nó na rede Bitcoin!
Outros tipos de nós do Bitcoin
Nós completos, mineradores e nós leves são os principais tipos de nós do Bitcoin. Porém, existem alguns outros tipos de nós que são frequentemente mencionados e valem ser mencionados.
Nós da Lightning
Lightning Network é uma rede criada na blockchain do Bitcoin para que pessoas possam transacionar BTC de forma mais rápida e barata. Nós da Lightning coordenam essa atividade.
Nós de arquivamento
Nós de arquivamento (“archive/archival nodes”) são similares a nós completos, pois armazenam uma cópia completa da blockchain e podem verificar todas as normas da rede Bitcoin. A única diferença está no fato de que as pessoas às vezes destrincham nós completos em dois tipos: nós de arquivamento e nós aparados.
Nós aparados
Nós aparados (“pruned nodes”) armazenam o histórico completo da blockchain até um certo tamanho. Quando esse limite de tamanho é atingido, começam a deletar ou “podar” blocos anteriores para que possam armazenar versões completas dos novos blocos. Nós aparados são menores do que nós completos, mas maiores do que nós leves.
Nós de pools de mineração
Nós de pools (grupos) de mineração orquestram a atividade de mineração de grupos de mineradores para que agrupem recursos para minerar novos blocos.
Quando um nó de pools de mineração cria um bloco que é acrescentado à blockchain, o nó distribui a recompensa por bloco a mineradores de forma proporcional à quantidade de recursos alocados. Mineradores gostam de pools de mineração porque são pagos de forma mais consistente. Por exemplo, em vez de obter 10 BTC a cada 100 blocos, podem obter 1 BTC a cada dez blocos.
Recapitulando…
Nós do Bitcoin são computadores conectados à rede Bitcoin e que executam o software Bitcoin para transmitir, validar, processar e armazenar transações e blocos com BTC. Existem três tipos principais de nós do Bitcoin:
– Nós completos (“full nodes”) validam transações e blocos para alcançar o consenso sobre o histórico de transações. Dessa forma, nós completos decidem quais blocos são acrescentados à blockchain.
– Mineradores (“miners”) organizam transações em blocos que, na sequência, propõem à rede Bitcoin. Se o bloco de um minerador for acrescentado à blockchain, este minerador recebe a recompensa. Dessa forma, mineradores facilitam que BTC recém-minerados entrem em circulação.
– Nós leves (“light nodes”) armazenam uma versão compacta da blockchain Bitcoin ao conectar-se a nós completos. Dessa maneira, nós leves permitem que transações com BTC sejam realizadas em dispositivos mais comuns, como celulares.
*Traduzido por Daniela Pereira do Nascimento com autorização do Decrypt.co.
Quer negociar mais de 200 ativos digitais na maior exchange da América Latina? Conheça o Mercado Bitcoin! Com 3,8 milhões de clientes, a plataforma do MB já movimentou mais de R$ 50 bilhões em trade in. Crie sua conta grátis!