Modulo 5 - Como o Bitcoin funciona em linguagem simples
Confirmações, blocos e a corrente que protege o passado
17 min de leitura
O que voce vai aprender
- Entender o que é um bloco e o que ele guarda.
- Compreender como os blocos se encadeiam na blockchain.
- Saber por que mais confirmações significam mais segurança.
- Entender, sem medo, o que é uma reorganização e a irreversibilidade.
Do bloco à corrente
Na viagem do pagamento, vimos que a sua transação é incluída num bloco e depois ganha confirmações. Agora vamos olhar de perto o que é esse bloco e como ele se encadeia com os outros, porque é dessa estrutura que vem boa parte da segurança do Bitcoin. A ideia central é simples e bonita: o registro é organizado em páginas encadeadas de tal forma que mexer no passado fica praticamente impossível. Entender isso explica por que uma transação confirmada é tão confiável.
Já usamos a imagem do caderno público em que ninguém consegue arrancar uma página antiga. Vamos detalhar essa imagem. Cada página desse caderno é um bloco, e os blocos vêm um atrás do outro, em ordem, cada um ligado ao anterior. Essa sequência ligada é a blockchain, que em português seria algo como corrente de blocos. O nome descreve exatamente o que ela é: blocos encadeados, como elos de uma corrente, cada um preso ao que veio antes.
- Blockchain
- A corrente de blocos do Bitcoin: o livro-caixa público formado por blocos encadeados em ordem, cada um ligado ao anterior, de modo que alterar o passado se torna praticamente impossível.
O motivo de organizar o registro em blocos encadeados, e não numa lista solta de transações, é a segurança. Como cada bloco está preso ao anterior por um selo matemático, e como criar cada bloco custa esforço, reescrever uma página antiga obrigaria a refazer todas as páginas seguintes, gastando uma energia descomunal. É essa amarração que transforma o histórico em algo praticamente imutável. Vamos ver cada peça dessa amarração nesta aula, sem matemática, só com a lógica por trás.
Vale dizer, para tranquilizar, que você não precisa pensar em nada disso para usar o Bitcoin. A carteira mostra quantas confirmações a sua transação tem, e pronto. Mas entender o que está por trás dessas confirmações te dá a confiança de saber por que, depois de algumas delas, o seu pagamento é tão definitivo. É a diferença entre confiar cegamente e entender. E entender, como sempre, é o que este curso busca te dar.
O que é um bloco, por dentro
Um bloco é, essencialmente, um pacote de transações agrupadas, mais algumas informações de controle. Pense numa página de um livro-razão: ela tem uma lista de lançamentos, um número de página e uma referência à página anterior. O bloco do Bitcoin é parecido. Ele contém a lista das transações que estão sendo registradas naquele momento, um carimbo de tempo aproximado, uma referência ao bloco anterior e a prova de que alguém gastou esforço para fechá-lo.
- Bloco
- Um conjunto de transações agrupadas e registradas juntas, com referência ao bloco anterior e a prova de trabalho. É a unidade básica que forma a blockchain, criada mais ou menos a cada dez minutos.
Cada bloco tem um tamanho limitado, o que significa que cabe uma quantidade limitada de transações em cada um. Essa limitação é proposital e tem a ver com manter a rede leve o suficiente para que muitos computadores possam participar, mantendo a descentralização. A consequência prática é que, quando há mais transações querendo entrar do que cabe nos blocos, forma-se uma fila, a tal sala de espera que veremos em detalhe na próxima aula. O espaço no bloco é um recurso escasso e disputado.
Dentro do bloco, as transações ficam organizadas de uma forma que permite resumir todas elas numa única impressão digital compacta. Isso é feito com aquela ferramenta matemática que vimos, o hash, que gera uma espécie de digital única de um conjunto de dados. Não precisa entender o mecanismo; o importante é a consequência: qualquer mudancinha em qualquer transação do bloco mudaria completamente essa digital, denunciando a alteração na hora. É como um lacre que se rompe ao menor toque.
É essa combinação, lista de transações mais referência ao anterior mais prova de esforço, que faz o bloco ser ao mesmo tempo um registro e um tijolo de construção. Registro, porque guarda as transações; tijolo, porque se encaixa no anterior e sustenta os próximos. Quando você entende o bloco assim, a blockchain deixa de ser uma palavra misteriosa e vira o que de fato é: uma pilha bem organizada de páginas, cada uma trancada na anterior.
A altura do bloco
Os blocos são numerados em ordem, desde o primeiro. Esse número é chamado de altura do bloco. O bloco gênesis, o primeiro de todos, que vimos no módulo sobre a origem, tem altura zero. O seguinte tem altura um, e assim por diante, somando um a cada novo bloco. Quando se diz que a rede está em tal altura, está se dizendo quantos blocos já foram empilhados desde o início. É uma forma simples de localizar qualquer ponto na história da blockchain.
- Altura do bloco
- O número de ordem de um bloco na corrente, contando a partir do bloco gênesis, que é a altura zero. Indica quantos blocos foram empilhados até ali.
A altura é útil para falar de tempo e de profundidade. Como nasce um bloco mais ou menos a cada dez minutos, a altura cresce de forma razoavelmente previsível, e dá para estimar quando certos eventos ocorreram olhando a altura em que aconteceram. Os halvings, por exemplo, que cortam a emissão pela metade, acontecem em alturas certas e conhecidas de antemão. A altura é como a numeração das páginas de um livro que nunca para de ser escrito, sempre avançando, nunca recuando.
Quando a sua transação é incluída num bloco, ela passa a estar associada à altura daquele bloco. A partir daí, cada novo bloco que nasce, com altura maior, fica empilhado por cima dela. A diferença entre a altura atual da rede e a altura do bloco em que a sua transação entrou é, justamente, o número de confirmações dela. Se ela entrou no bloco de altura mil e a rede está no bloco mil e seis, a sua transação tem seis confirmações. É uma conta simples de subtração.
Você verá a altura sendo mencionada em exploradores de blocos e em conversas mais técnicas. Não precisa decorar nada sobre ela; basta entender que é a numeração ordenada dos blocos e que ela serve para localizar transações e medir confirmações. É um conceito simples, mas que aparece o tempo todo, e conhecê-lo evita aquela sensação de estar perdido quando alguém fala em altura da rede ou em quantos blocos atrás algo aconteceu.
Como os blocos se encadeiam
Agora o coração da segurança: o encadeamento. Cada bloco carrega dentro de si a digital, o hash, do bloco anterior. É como se cada página do caderno trouxesse, no cabeçalho, uma cópia em miniatura da impressão digital da página anterior. Esse detalhe simples cria uma corrente: o bloco dois aponta para o um, o três para o dois, e assim por diante, ligando todos numa única sequência verificável, desde o gênesis até o bloco mais recente.
Por que isso protege o passado? Porque a digital de um bloco depende de todo o seu conteúdo, inclusive da referência ao anterior. Se alguém tentasse alterar uma transação num bloco antigo, a digital daquele bloco mudaria. Mas o bloco seguinte guarda a digital antiga; agora elas não batem mais, e a corrente se quebra naquele ponto. Para a fraude colar, o atacante teria que refazer a digital daquele bloco e de todos os seguintes, vencendo a prova de trabalho de cada um, o que é proibitivamente caro.
- Encadeamento
- O fato de cada bloco guardar a digital do bloco anterior, formando uma corrente. Alterar um bloco antigo quebra a ligação com os seguintes, denunciando a fraude e exigindo refazer tudo a partir dali.
É essa amarração que faz o passado virar pedra. Quanto mais blocos foram empilhados depois de uma transação, mais blocos um atacante precisaria refazer para alterá-la, e maior o custo, até virar impossível. Por isso a segurança de uma transação cresce com o número de blocos por cima dela. Não é uma promessa de alguém; é uma consequência matemática e econômica da estrutura encadeada somada à prova de trabalho. As duas peças, juntas, criam a imutabilidade.
Por que mais confirmações significam mais segurança
Com o encadeamento entendido, a lógica das confirmações fica clara. Quando a sua transação entra no primeiro bloco, ela tem uma confirmação e já está bastante segura. Mas, naquele instante exato, existe uma pequena chance de a rede acabar adotando outra versão do último bloco, por uma disputa momentânea entre mineradores, e a sua transação precisar esperar o bloco seguinte. Por isso uma única confirmação, embora boa, ainda carrega um resíduo minúsculo de incerteza para valores muito altos.
A cada novo bloco empilhado por cima, essa incerteza despenca. Com duas, três, seis confirmações, a chance de a sua transação ser desfeita por uma dessas disputas momentâneas vira praticamente zero. É por isso que existe a convenção de esperar mais confirmações para valores maiores. Para um cafezinho, ninguém espera; para uma quantia que faria falta, vale aguardar algumas confirmações. É uma escala de paciência proporcional ao valor, e cada um calibra conforme o risco que aceita.
- Profundidade
- Quantos blocos foram empilhados por cima de uma transação. Quanto maior a profundidade, ou seja, quanto mais confirmações, mais segura e irreversível a transação se torna.
Uma forma de visualizar: pense na sua transação como uma carta colocada no fundo de uma pilha de papéis. Com uma folha por cima, ela já está coberta. Com dez folhas, está bem enterrada; tirá-la sem bagunçar tudo é quase impossível. Cada confirmação é uma folha a mais por cima. Não é que uma confirmação seja insegura; é que cada folha adicional torna a remoção progressivamente mais difícil, até ser inviável. A segurança aqui é uma questão de profundidade.
Na prática do dia a dia, muita gente trata uma a três confirmações como suficiente para a maioria das situações, e seis confirmações como um padrão conservador para valores realmente altos. Não há um número mágico universal; é uma escolha de risco. O importante é entender o princípio: mais confirmações, mais segurança, com retorno decrescente. Depois de um certo ponto, confirmações adicionais agregam pouco, porque a transação já é, para todos os efeitos, irreversível.
Reorganizações, sem assustar
Vale explicar, de leve, aquela disputa momentânea que mencionamos, porque o nome dela assusta sem necessidade: reorganização, ou reorg. Às vezes, dois mineradores fecham um bloco quase ao mesmo tempo, e a rede fica, por um instante, com duas versões do topo da corrente. Isso é normal e esperado. A rede resolve sozinha, rapidamente, adotando a versão que receber o próximo bloco primeiro, ou seja, aquela em que mais trabalho foi investido. A outra versão é descartada.
- Reorganização (reorg)
- Quando a rede troca, por um curto período, a versão mais recente da corrente, ao escolher a cadeia com mais trabalho acumulado. Afeta apenas os últimos blocos e se resolve rápido.
Quando uma versão é descartada, as transações que estavam só naquela versão voltam para a sala de espera e são incluídas no bloco seguinte da versão vencedora. Ou seja, elas não se perdem; apenas esperam um pouco mais. É exatamente por isso que se recomenda esperar algumas confirmações para valores altos: uma reorg afeta só os últimos um ou dois blocos do topo. Quanto mais fundo a sua transação está, mais imune ela fica a qualquer reorganização. A profundidade resolve.
Reorganizações profundas, que desfariam vários blocos antigos, são consideradas praticamente impossíveis na rede Bitcoin madura, por causa da quantidade gigantesca de trabalho que seria necessária. As reorgs que acontecem são rasas, de um bloco, e fazem parte do funcionamento normal. Por isso não há motivo para pânico ao ouvir o termo. É só o mecanismo de consenso resolvendo empates momentâneos, exatamente como foi projetado para fazer, sem nenhuma autoridade central decidindo.
O importante para você é a conclusão prática: não considere uma transação de valor alto como definitiva no segundo zero, com zero confirmação. Espere ela entrar num bloco e ganhar algumas confirmações. Para valores pequenos do cotidiano, isso é irrelevante e ninguém se preocupa. Mas para quantias importantes, a paciência de esperar algumas confirmações é a sua proteção barata e simples contra as reorgs normais, que de outra forma poderiam, em casos raros, exigir reprocessar a transação.
A irreversibilidade e seu lado prático
A irreversibilidade do Bitcoin é uma faca de dois gumes que vale encarar com clareza. Do lado bom, ela é uma vantagem enorme: depois de confirmada, a sua transação não pode ser desfeita por ninguém, o que dá segurança definitiva ao recebedor e elimina o risco de estorno fraudulento que existe nos cartões. Quem recebe sabe que recebeu, ponto. Não há a angústia de uma venda ser revertida semanas depois, como acontece no comércio tradicional.
Do lado que exige cuidado, a mesma irreversibilidade significa que um erro não tem desfazer. Se você enviar para o endereço errado, ou um valor errado, não há central de atendimento que reverta. As moedas foram. Por isso os cuidados que vimos, como conferir o endereço pelo QR Code e revisar antes de confirmar, são tão importantes. A irreversibilidade premia o cuidado e pune o descuido, sem meio-termo. É liberdade com responsabilidade, de novo, agora aplicada a cada envio.
Esse contraste com o cartão de crédito é instrutivo. No cartão, a transação é instantânea, mas reversível, o que protege o comprador e gera risco para o vendedor. No Bitcoin, a transação demora um pouco a confirmar, mas depois é irreversível, o que protege o vendedor e exige cuidado do comprador. São filosofias opostas de segurança, cada uma com seus prós e contras. Não existe melhor em absoluto; existe o mais adequado para cada situação, e entender os dois te deixa apto a escolher.
Na prática, a irreversibilidade quase nunca é um problema para quem toma os cuidados básicos. Conferir o endereço, começar com valores pequenos ao usar um destino novo, revisar antes de confirmar: hábitos simples que tornam o risco mínimo. E o benefício, de ter um dinheiro cujas transferências não podem ser desfeitas por terceiros, é justamente uma das propostas centrais do Bitcoin. A irreversibilidade não é um bug; é uma característica desejada, que você usa a seu favor com um pouco de atenção.
O ritmo de um bloco a cada dez minutos
Você já reparou que falamos várias vezes em mais ou menos dez minutos por bloco. Esse ritmo não é acidental; é um alvo que a rede persegue de propósito, ajustando a dificuldade da prova de trabalho. Se muitos mineradores entram e os blocos começam a sair rápido demais, a rede torna o quebra-cabeça mais difícil, desacelerando. Se mineradores saem e os blocos atrasam, ela facilita, acelerando. Esse ajuste automático mantém o ritmo médio perto dos dez minutos, independentemente de quantos estejam minerando.
- Ajuste de dificuldade
- Mecanismo automático que aumenta ou diminui a dificuldade da prova de trabalho para manter o ritmo de, em média, um bloco a cada dez minutos, mesmo com a entrada e saída de mineradores.
Por que dez minutos, e não dez segundos? É um equilíbrio. Um ritmo muito rápido geraria mais reorgs e dificultaria que blocos se espalhassem pela rede inteira antes do próximo nascer, ameaçando a descentralização. Um ritmo muito lento tornaria as confirmações demoradas demais. Dez minutos foi a escolha de Satoshi como um meio-termo razoável, e a rede o mantém desde o começo. Vamos aprofundar o ajuste de dificuldade no módulo de mineração; aqui basta entender que o ritmo é estável por desenho.
É importante notar que dez minutos é uma média, não uma garantia exata. Por causa da aleatoriedade da prova de trabalho, um bloco pode sair em dois minutos e o seguinte em vinte. Na média longa, dá perto de dez. Por isso o tempo para a sua transação confirmar varia: às vezes a primeira confirmação vem rápido, às vezes demora um pouco mais. Saber que há essa variação natural evita ansiedade quando um bloco demora; é o acaso da mineração, não um problema.
Esse ritmo estável é o que dá previsibilidade ao sistema. Sabendo que nasce um bloco a cada dez minutos, em média, dá para estimar quanto tempo leva para uma transação ganhar tantas confirmações, e quando eventos futuros, como halvings, vão ocorrer. É mais uma peça da previsibilidade do Bitcoin que já elogiamos: não só a emissão é previsível, como o próprio ritmo de funcionamento da rede é estável e conhecido. Tudo isso sem ninguém no controle ajustando manualmente; é o protocolo se autorregulando.
A corrente que protege o passado
Recapitulando esta aula: as transações são agrupadas em blocos; cada bloco guarda a digital do anterior, formando a blockchain; criar cada bloco custa esforço pela prova de trabalho; e por isso reescrever o passado fica praticamente impossível. As confirmações são o número de blocos empilhados por cima da sua transação, e quanto mais houver, mais segura e irreversível ela fica. As reorgs afetam só o topo e se resolvem rápido, e o ritmo de dez minutos é mantido por ajuste automático.
Essa estrutura é, talvez, a contribuição técnica mais celebrada do Bitcoin: uma forma de criar um registro em que todos confiam sem confiar em ninguém, protegido não por um cofre ou por uma autoridade, mas pela combinação de encadeamento e esforço. É a tradução, em engenharia, da ideia de um livro-caixa que ninguém controla e que ninguém consegue adulterar. Quando você entende os blocos e as confirmações, entende por que isso funciona, e não apenas que funciona.
Na sua vida prática, tudo isso se resume a uma orientação simples: olhe as confirmações na sua carteira e tenha paciência proporcional ao valor. Para o dia a dia, uma confirmação ou até zero, para valores muito pequenos, costuma bastar. Para quantias importantes, espere algumas. Esse hábito, agora que você entende o porquê, deixa de ser uma regra decorada e vira uma decisão consciente de segurança, calibrada por você conforme o risco de cada situação.
Falta um último tema para fechar este módulo sobre o funcionamento: por que, às vezes, uma transação demora e custa mais caro, e o que você pode fazer a respeito. Isso nos leva de volta à sala de espera e às taxas, que vimos rapidamente na viagem do pagamento e que agora merecem uma aula própria. É o assunto da próxima e última aula deste módulo, que vai te deixar confortável com as taxas e com a paciência que o Bitcoin às vezes pede.
A documentação do Bitcoin descreve a blockchain como uma cadeia de blocos protegida por prova de trabalho, em que cada confirmação adicional torna uma transação progressivamente mais difícil de reverter. (Bitcoin.org - como funciona)
Perguntas frequentes
- O que é um bloco no Bitcoin?
- É um conjunto de transações agrupadas e registradas juntas, com uma referência ao bloco anterior e a prova de trabalho que o fechou. Os blocos se encadeiam formando a blockchain, e nasce um a cada dez minutos, em média.
- O que é a altura do bloco?
- É o número de ordem do bloco na corrente, contado a partir do bloco gênesis, que é a altura zero. A diferença entre a altura atual e a altura em que a sua transação entrou é o número de confirmações dela.
- Por que mais confirmações são mais seguras?
- Porque cada bloco empilhado por cima da sua transação tornaria mais caro reescrevê-la, já que seria preciso refazer todos os blocos seguintes. Com algumas confirmações, reverter vira praticamente impossível.
- O que é uma reorganização (reorg)?
- É quando a rede troca, por um instante, a versão mais recente da corrente, ao adotar a cadeia com mais trabalho. Afeta só os últimos blocos, e as transações afetadas voltam para a fila e entram no bloco seguinte.
- Dá para reverter uma transação confirmada?
- Na prática, não, principalmente após algumas confirmações. Isso protege quem recebe contra estornos fraudulentos, mas exige cuidado de quem envia, porque um erro não tem desfazer. Por isso confira sempre antes de confirmar.
- Por que um bloco a cada dez minutos?
- É um alvo mantido pelo ajuste automático de dificuldade, escolhido como equilíbrio: rápido o bastante para confirmar em tempo razoável e lento o bastante para os blocos se espalharem pela rede, preservando a descentralização.
Fontes
Marque a aula para acompanhar seu progresso no curso. Funciona sem login, salvo neste aparelho.