Skip to main content

Transação Sem Confirmação | Bitcoin Glossary | Mapping Bitcoin

Transação Sem Confirmação

Protocolo

Also known as: 0-conf, zero-conf, unconfirmed transaction

Transação Bitcoin na mempool ainda sem confirmação em bloco. Aceitar 0-conf é arriscado pois permite gasto duplo, mas tolerável em compras de baixo valor.

Visão geral

Uma transação sem confirmação (também chamada de 0-conf) é uma transação Bitcoin que foi transmitida à rede e propagada pela mempool, mas ainda não foi incluída em um bloco minerado. Aceitar um pagamento com base em uma transação sem confirmação significa confiar que ela será eventualmente confirmada, sem a garantia criptográfica que vem com a inclusão via prova de trabalho.

Avaliação de risco

Nível de confirmação     Garantia de segurança
──────────────────────────────────────────────
0-conf (mempool)         ⚠ Pode ser objeto de gasto duplo
1 confirmação            ■ Incluída em um bloco
3 confirmações           ■■■ Muito improvável de reverter
6 confirmações           ■■■■■■ Praticamente irreversível

Risco de ataque de gasto duplo:
  Compra presencial de baixo valor: Risco muito baixo
  Bens digitais online:             Risco moderado
  Transações de alto valor:         Risco inaceitável

Quando o 0-conf é aceitável

Alguns comerciantes aceitam transações sem confirmação em cenários específicos onde o risco é gerenciável:

  • Compras presenciais de baixo valor: Uma cafeteria que vende um item de R$25 enfrenta risco insignificante de um ataque de gasto duplo, especialmente porque o atacante deve estar fisicamente presente.
  • Clientes frequentes: Relacionamentos estabelecidos reduzem o incentivo para fraude.
  • Requisitos de velocidade: Alguns casos de uso (como ponto de venda) não podem aguardar 10+ minutos por uma confirmação.

Riscos de gasto duplo

Uma transação sem confirmação pode ser revertida por meio de:

  • Replace-by-Fee (RBF): Se a transação sinaliza RBF, o remetente pode substituí-la explicitamente por uma transação de taxa mais alta que paga um destinatário diferente. Os comerciantes podem verificar o sinal RBF.
  • Ataque de corrida: O remetente transmite duas transações conflitantes simultaneamente, esperando que a que paga a si mesmo seja minerada.
  • Ataque Finney: Um minerador pré-minera um bloco contendo uma transação de gasto duplo e o libera após receber os bens.

Mitigações

  • Verificar sinalização RBF: Transações sinalizando RBF são explicitamente substituíveis e não devem ser aceitas sem confirmação.
  • Monitorar tentativas de gasto duplo: Observar transações conflitantes na mempool.
  • Exigir taxa suficiente: Transações com taxas muito baixas são mais facilmente substituídas.
  • Usar Lightning: A Lightning Network fornece finalidade de liquidação instantânea para pagamentos pequenos, eliminando a necessidade de transações 0-conf na cadeia.

Conceitos errôneos comuns

Uma transação não confirmada não é o mesmo que uma transação inválida. As transações sem confirmação foram validadas pelos nós e provavelmente serão mineradas — a questão é se serão mineradas antes de uma transação conflitante. O risco é probabilístico, não binário.