Visão geral
Uma reorg (reorganização) ocorre quando um nó Bitcoin recebe uma cadeia válida de blocos que tem mais prova de trabalho acumulada do que sua ponta de cadeia atual. O nó muda para a cadeia mais pesada, "desfazendo" os blocos que anteriormente considerava canônicos e substituindo-os pela nova cadeia. Transações que estavam confirmadas nos blocos abandonados podem ficar sem confirmação, por isso os usuários de Bitcoin esperam por múltiplas confirmações antes de considerar um pagamento liquidado.
Como uma Reorg acontece
Progressão normal da cadeia:
Bloco 100 ── Bloco 101 ── Bloco 102 ── Bloco 103
▲
ponta da cadeia
Uma cadeia concorrente é descoberta:
Bloco 100 ── Bloco 101 ── Bloco 102 ── Bloco 103
│
└── Bloco 101' ── Bloco 102' ── Bloco 103' ── Bloco 104'
▲
cadeia mais pesada
Após a reorg:
Bloco 100 ── Bloco 101' ── Bloco 102' ── Bloco 103' ── Bloco 104'
▲
nova ponta da cadeia
Os Blocos 101, 102, 103 são abandonados (órfãos)
As transações nesses blocos retornam ao mempool
(a menos que conflitem com transações na nova cadeia)
Tipos de Reorgs
- Reorgs naturais (1 bloco) — Ocorrem ocasionalmente quando dois mineradores encontram um bloco quase ao mesmo tempo. A rede brevemente tem duas pontas de cadeia concorrentes, e uma é abandonada quando o próximo bloco é encontrado. São normais e inofensivas.
- Reorgs profundas — Reorganizações de 2+ blocos são extremamente raras em condições normais e podem indicar um ataque ou um problema grave na rede.
- Reorgs de ataque — Um minerador malicioso com taxa de hash suficiente poderia tentar minerar secretamente uma cadeia mais longa para reverter suas próprias transações (ataque de gasto duplo).
Impacto nas transações
Quando uma reorg ocorre, as transações nos blocos órfãos se enquadram em uma de duas categorias:
- Ainda válidas — A transação retorna ao mempool e provavelmente será incluída em um bloco futuro da nova cadeia
- Em conflito — Se a nova cadeia incluir uma transação que gasta as mesmas entradas (um gasto duplo), a transação original se torna inválida
Profundidade de confirmação e segurança
A probabilidade de uma reorg diminui exponencialmente a cada bloco adicional construído sobre uma transação. Por isso comerciantes e exchanges tipicamente exigem:
- 1 confirmação — Suficiente para transações pequenas e confiáveis
- 3 confirmações — Comum para transações de valor moderado
- 6 confirmações — Padrão tradicional para transações de alto valor (aproximadamente 1 hora)
Equívoco comum
Reorgs pequenas de um bloco não são ataques. São uma consequência natural do processo de mineração descentralizado onde dois mineradores podem encontrar independentemente blocos válidos quase ao mesmo tempo. O protocolo lida com isso de forma elegante sempre seguindo a cadeia com a maior prova de trabalho acumulada.