Visão Geral
A difusão é o processo de enviar uma transação de Bitcoin assinada para a rede peer-to-peer. Quando a carteira de um usuário difunde uma transação, ela envia os dados brutos da transação para um ou mais nós conectados, que a validam e a retransmitem para seus pares. Essa propagação continua até que a transação alcance a maioria dos nós da rede e entre em seus mempools.
Como a Difusão Funciona
Wallet creates and signs a transaction
│
▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ Node A │────→│ Node B │────→│ Node D │
│(wallet's│ │ │ │ │
│ peer) │ └─────────┘ └─────────┘
└─────────┘ │
│ ▼
│ ┌─────────┐ ┌─────────┐
└────────→│ Node C │────→│ Node E │
│ (miner) │ │ │
└─────────┘ └─────────┘
│
▼
Includes TX in
next block candidate
Validação Antes de Retransmitir
Cada nó que recebe uma transação a valida antes de retransmiti-la aos seus pares. As verificações de validação incluem:
- A transação segue as regras de formatação adequadas
- As assinaturas de entrada são válidas
- Os UTXOs referenciados existem e não foram gastos
- A taxa atende ao limite mínimo de retransmissão do nó
- A transação não entra em conflito com outras transações no mempool
Se alguma verificação falhar, o nó rejeita a transação e não a retransmite.
Considerações de Privacidade
Difundir transações revela informações sobre o remetente. O primeiro nó a ver uma transação pode inferir que o nó que está difundindo é provavelmente a origem da transação. Para mitigar isso, usuários focados em privacidade podem difundir por meio do Tor, usar Dandelion++ (um protocolo que obscurece a origem da transação) ou enviar transações diretamente a um pool de mineração.
Conceitos Errados Comuns
Difundir uma transação não garante a confirmação. Uma transação difundida fica no mempool até que um minerador a inclua em um bloco. Se a taxa for muito baixa durante períodos de alta demanda, a transação pode permanecer não confirmada por um período prolongado ou eventualmente ser removida do mempool.