Pular para o conteúdo
buybitcoinsmart

Glossário / Mineração e consenso

Altura de bloco

Outros nomes: Height.

O que é a altura de bloco?
A altura de bloco é o número de blocos na cadeia antes de um determinado bloco, o que faz o bloco gênese ter altura 0 e o bloco minerado depois dele ter altura 1.

Especificação no BIP-34.

A altura é a forma nativa que o bitcoin tem de dizer quando. É um número inteiro que sobe exatamente uma unidade por bloco, não depende do relógio de ninguém, e as regras de consenso que precisam de um calendário são escritas em função dela, e não de datas. Contagens regressivas do halving, contagens de confirmações e anúncios de ativação leem todos o mesmo contador.

Como funciona

A altura de bloco é uma posição em uma sequência, não um nome, e essa diferença importa mais do que parece.

Dois blocos podem reivindicar brevemente a mesma altura quando mineradores resolvem quase no mesmo momento, e após uma reorganização uma altura pode apontar para um bloco diferente do que apontava uma hora antes. O identificador permanente é o hash do bloco. A altura indica o quanto você avançou na cadeia, e só é inequívoca quando você diz de qual cadeia se trata, que na prática é a que tem mais trabalho acumulado.

As confirmações vêm direto da aritmética. Uma transação em um bloco na altura 900.000, em uma cadeia cuja ponta está em 900.005, tem seis confirmações, porque a contagem inclui o bloco em que ela está. Essa única fórmula, ponta menos altura mais um, está por trás de toda barra de progresso de “5 de 6 confirmações” que você já acompanhou.

O consenso prefere alturas a marcas de tempo para tudo que é programado, porque as marcas de tempo são fornecidas pelos mineradores e só fiscalizadas de forma frouxa, enquanto as alturas não podem ser fabricadas sem que o trabalho seja feito. O locktime é a exceção que confirma a regra: um locktime abaixo de 500.000.000 é interpretado como altura de bloco, e qualquer valor igual ou acima desse número é lido como marca de tempo Unix, e por isso uma transação pode receber a instrução de se tornar válida em uma altura específica.

A altura nem sempre esteve dentro do bloco. O BIP34 tornou obrigatório escrever a altura na transação coinbase, e a regra passou a valer no bloco 227.835, em março de 2013. O motivo era concreto: em novembro de 2010 foram criadas duas transações coinbase que duplicavam exatamente transações anteriores, nas alturas 91.842 e 91.880, porque nada obrigava que seu conteúdo fosse diferente. Registrar a altura garante que toda transação coinbase seja única.

Por que isso importa quando você compra bitcoin

A altura de bloco é o número que permite verificar o que uma corretora ou uma carteira está dizendo, sem perguntar a ninguém.

Quando você faz um saque, recebe um ID de transação. Um explorador de blocos mostra a altura do bloco que a incluiu e a altura da ponta atual; a diferença mais um é a sua contagem de confirmações. Se um atendente diz que o saque foi enviado uma hora atrás e o explorador não mostra nenhum bloco que o contenha, os bitcoins não se moveram, diga o que disser a página da conta.

As alturas também permitem ler com precisão as políticas das corretoras. As plataformas creditam depósitos após um número definido de confirmações, o que é uma afirmação sobre alturas, não sobre minutos. Como os blocos chegam em uma média e não em um calendário, a mesma política de três confirmações pode levar vinte minutos em um dia e uma hora em outro, e nenhum dos dois casos é falha.

Depois vem o marketing. Toda contagem regressiva do halving é uma projeção: o evento é definido por uma altura, e a data atribuída a ele é um palpite baseado em tempos de bloco supostos. Quem oferece um produto a você porque “o halving é” em uma data específica está vendendo uma previsão. O mesmo vale para capturas de tela mostrando um pagamento “confirmado na altura” tal. Alturas e IDs de transação são triviais de falsificar em uma imagem e impossíveis de falsificar em uma cadeia que você mesmo verifica, que é o hábito ao qual nosso guia de segurança sempre volta.

Alturas que mudaram as regras

Vale a pena conhecer algumas alturas, porque o bitcoin se comporta de forma diferente antes e depois delas.

A altura 0 é o bloco gênese, minerado em 3 de janeiro de 2009, cujos bitcoins nunca podem ser gastos. A altura 210.000, alcançada em 28 de novembro de 2012, foi o primeiro halving. A altura 227.835 tornou o BIP34 obrigatório em março de 2013. A altura 481.824, em 24 de agosto de 2017, é onde o SegWit entrou em vigor e os blocos começaram a carregar dados de testemunha. A altura 709.632, em 14 de novembro de 2021, ativou o Taproot. A altura 840.000, em 20 de abril de 2024, foi o quarto halving. A altura 1.050.000 será o quinto, projetado para algum momento de 2028, dependendo da velocidade com que os blocos realmente chegam.

Altura de bloco vs confirmações

A altura de bloco é uma posição absoluta; uma contagem de confirmações é uma distância relativa. A altura de um bloco nunca muda enquanto ele permanece na cadeia, mas sua contagem de confirmações cresce uma unidade a cada dez minutos, aproximadamente. As carteiras mostram confirmações porque o que importa para você é a profundidade, e as corretoras informam limites em confirmações pelo mesmo motivo. Dizer “minha transação está na altura 900.000” não diz nada sobre se ela já está segura.

Altura de bloco vs altura de bloco na coinbase

A altura de bloco é uma propriedade do bloco; a altura de bloco na coinbase é uma cópia desse número escrita dentro da primeira transação do bloco. As duas devem sempre coincidir, e um nó rejeita o bloco se não coincidirem. A distinção importa porque a cópia na coinbase é um dado que o minerador escolhe incluir, verificado contra a altura que a cadeia já implica, e é o mecanismo que acabou de vez com as transações coinbase duplicadas.

Não confundir com

Perguntas frequentes

Qual é a altura de bloco atual do bitcoin?

Ela sobe uma unidade a cada dez minutos, aproximadamente, de modo que qualquer cifra publicada fica desatualizada imediatamente. Consulte-a em um explorador de blocos ou no seu próprio nó, onde a altura da ponta é exibida na página inicial.

Dois blocos podem ter a mesma altura?

Temporariamente, sim. Quando dois mineradores resolvem um bloco quase no mesmo momento, ambos os blocos reivindicam a mesma altura até que a rede se decida por uma cadeia. O bloco perdedor fica obsoleto e sua altura aponta para o vencedor.

Por que as datas do halving estão sempre mudando?

Porque um halving é definido por uma altura, não por uma data. O bloco 840.000 foi o quarto halving, e a data de calendário atribuída a qualquer halving futuro é uma projeção baseada na suposição de blocos de dez minutos.

Leia a seguir

Termos relacionados

Mais em Mineração e consenso

Ler esta página em inglês