Visão Geral
CoinJoin é uma técnica de privacidade descrita pela primeira vez pelo desenvolvedor de Bitcoin Gregory Maxwell em 2013. Funciona combinando as transações de múltiplos usuários em uma única transação com muitas entradas e muitas saídas de igual valor, quebrando o vínculo entre remetente e destinatário. Ao contrário dos serviços de mistura centralizados, o CoinJoin é sem custódia: os participantes nunca abrem mão da custódia de seus fundos.
Como o CoinJoin Funciona
Sem CoinJoin (os vínculos são óbvios):
Alice: 0.5 BTC ──→ 0.5 BTC para Bob
Com CoinJoin (os vínculos são ambíguos):
Entradas: Saídas:
├── Alice: 0.1 BTC ├── 0.1 BTC → ? (Alice, Bob ou Carol?)
├── Bob: 0.1 BTC ├── 0.1 BTC → ? (Alice, Bob ou Carol?)
└── Carol: 0.1 BTC └── 0.1 BTC → ? (Alice, Bob ou Carol?)
Um observador vê 3 entradas e 3 saídas iguais mas não pode
determinar qual entrada financiou qual saída.
Propriedades Principais
- Sem custódia: Nenhum coordenador possui as chaves privadas ou os fundos dos usuários
- Denominação igual: As saídas têm o mesmo valor para maximizar o conjunto de anonimato
- Colaborativo: Múltiplos usuários devem participar simultaneamente
- On-chain: As transações CoinJoin são transações normais do Bitcoin indistinguíveis de pagamentos multipartes
Implementações
- Wasabi Wallet: CoinJoin automatizado com um coordenador centralizado (para coordenação, não custódia)
- JoinMarket: Mercado descentralizado onde makers oferecem liquidez para CoinJoin e takers pagam uma pequena taxa
- PayJoin/P2EP: Um CoinJoin de duas partes que parece uma transação normal, melhorando a privacidade sem a impressão digital característica dos CoinJoins tradicionais
Limitações e Conceitos Errados
O CoinJoin não torna as transações invisíveis na blockchain. Um observador sofisticado ainda pode identificar transações CoinJoin pelo seu padrão característico de saídas de igual valor. No entanto, embora possa identificar que um CoinJoin ocorreu, não pode determinar o mapeamento entre entradas e saídas. O benefício de privacidade vem dessa ambiguidade, que cresce com o número de participantes (o "conjunto de anonimato").
O comportamento pós-mistura também é crítico. Se um usuário combinar saídas de CoinJoin com saídas não misturadas em uma transação subsequente, poderá desfazer parte da privacidade conquistada.