Tutorial Atomic Swap XMR para BTC com COMIT 2026
Tutorial Completo: Atomic Swap XMR para BTC com COMIT Network
Os atomic swaps representam o pináculo da troca descentralizada de criptomoedas: dois participantes trocam ativos de blockchains diferentes diretamente, sem qualquer intermediário, custodiante ou exchange centralizada. Se a troca não acontecer integralmente, ambas as partes recuperam seus fundos automaticamente — daí o nome "atômico" (tudo ou nada).
Para o par XMR↔BTC, o projeto que tornou isso possível na prática é o COMIT Network. Neste tutorial técnico detalhado você vai aprender a instalar, configurar e executar um atomic swap XMR→BTC do zero, com todos os comandos e explicações necessárias.
Se você prefere uma opção mais simples, veja as melhores exchanges XMR→BTC sem KYC ou o guia completo de conversão XMR→BTC.
O Que São Atomic Swaps e Por Que XMR↔BTC É Tecnicamente Desafiador
Em trocas convencionais entre blockchains diferentes, um intermediário (exchange) age como custodiante temporário: recebe os fundos de uma parte, verifica, e libera para a outra. O problema é que isso exige confiança — a exchange pode falhar, ser hackeada, congelar fundos ou ser regulada.
Os atomic swaps eliminam esse intermediário usando contratos criptográficos que garantem: ou ambas as partes recebem o que combinaram, ou ambas recuperam seus fundos originais. Não há estado intermediário onde uma parte perde e a outra ganha.
Para BTC↔ETH, atomic swaps são mais fáceis porque ambos suportam scripts. O maior desafio técnico do par XMR↔BTC é que o Monero intencionalmente não suporta scripts ou contratos inteligentes — sua simplicidade de protocolo é uma característica de segurança. Os HTLCs (Hash Time-Locked Contracts) usados em atomic swaps convencionais não funcionam diretamente no Monero.
A solução desenvolvida pelo COMIT Network usa assinaturas adaptadoras (adaptor signatures) combinadas com propriedades criptográficas específicas da curva Ed25519 usada pelo Monero. O protocolo foi descrito formalmente em um paper acadêmico de 2020 (Thyagarajan et al.) e implementado na prática pelo COMIT.
Como Funciona o Protocolo COMIT XMR↔BTC
O protocolo funciona em etapas coordenadas entre Alice (tem XMR, quer BTC) e Bob (tem BTC, quer XMR). Aqui está uma descrição simplificada:
- Geração de chaves compartilhadas: Alice e Bob geram juntos uma chave de gasto Monero usando um protocolo de Diffie-Hellman adaptado. Nenhum dos dois tem a chave completa individualmente.
- Bob bloqueia BTC: Bob cria uma transação Bitcoin usando um HTLC com dois caminhos: (a) Alice pode resgatar os BTC revelando um segredo criptográfico específico, ou (b) Bob pode recuperar após timeout.
- Alice confirma o HTLC Bitcoin: Alice verifica que o contrato Bitcoin está correto e que pode resgatar o BTC com o segredo que ela conhece.
- Alice transfere XMR: Alice envia o XMR para o endereço Monero conjunto gerado na etapa 1. Nesse momento, os XMR estão "bloqueados" — ninguém pode gastá-los sozinho.
- Bob resgata o XMR: Bob usa a assinatura adaptadora para revelar sua parte do segredo e gastar os XMR para um endereço próprio. Ao fazer isso, ele automaticamente revela na blockchain Bitcoin o segredo que permite Alice desbloquear o BTC.
- Alice resgata o BTC: Alice usa o segredo revelado pelo resgate do XMR por Bob para resgatar os BTC do HTLC para seu endereço.
Se Bob não resgatar o XMR dentro do timeout (geralmente 12–24 horas), Alice pode recuperar os XMR. Se Alice não enviou o XMR, o BTC de Bob é devolvido automaticamente. A ordem das operações garante que nunca há situação onde uma parte perde e a outra não.
Pré-Requisitos Técnicos
Antes de começar, certifique-se de ter:
- Sistema operacional: Linux (Ubuntu 20.04+ ou Debian 11+, recomendado) ou macOS. Windows tem suporte experimental via WSL2.
- Acesso à rede Bitcoin: Um servidor Electrum acessível (público ou próprio) ou Bitcoin Core sincronizado em modo pruned.
- Acesso à rede Monero: O daemon monerod sincronizado localmente (ideal) ou um nó remoto confiável (verifique a reputação).
- Fundos suficientes: O valor que deseja trocar + pelo menos 0,01 XMR extra para taxas de rede Monero + 0,0001 BTC extra para taxas Bitcoin.
- Conexão estável: O processo não pode ser interrompido em determinadas fases. Evite usar conexões instáveis para swaps de valores significativos.
Instalação do Cliente swap-cli
- Baixe o binário pré-compilado do GitHub:
SWAP_VERSION=$(curl -s https://api.github.com/repos/comit-network/xmr-btc-swap/releases/latest | grep tag_name | cut -d'"' -f4) wget "https://github.com/comit-network/xmr-btc-swap/releases/download/${SWAP_VERSION}/swap_${SWAP_VERSION}_Linux_x86_64.tar.gz" tar xzf swap_*.tar.gz chmod +x swap sudo mv swap /usr/local/bin/ - Verifique a instalação:
swap --version # Deve mostrar: swap x.xx.x
- Verifique a assinatura GPG (recomendado para segurança):
wget "https://github.com/comit-network/xmr-btc-swap/releases/download/${SWAP_VERSION}/swap_${SWAP_VERSION}_Linux_x86_64.tar.gz.asc" gpg --verify swap_*.tar.gz.asc swap_*.tar.gz
Configuração do Ambiente
- Configure o servidor Electrum Bitcoin (opção mais simples):
swap --electrum-rpc tcp://electrum.blockstream.info:50001 list-sellers
Para mainnet com SSL:swap --electrum-rpc ssl://electrum.blockstream.info:50002 list-sellers
- Configure o nó Monero:
# Nó local (recomendado): swap --monero-daemon-address http://127.0.0.1:18081 list-sellers # Nó remoto público (menor privacidade): swap --monero-daemon-address http://node.moneroworld.com:18089 list-sellers
- Crie o diretório de dados:
mkdir -p ~/.local/share/xmr-btc-swap/mainnet/
Encontrando Makers (Provedores de Liquidez)
Para realizar o swap, você (taker/comprador de XMR) precisa de um maker (vendedor de XMR, comprador de BTC) disposto a ser contraparte. O COMIT usa uma rede P2P baseada em libp2p com rendezvous points para descoberta.
- Liste os makers disponíveis na rede:
swap --electrum-rpc ssl://electrum.blockstream.info:50002 --monero-daemon-address http://127.0.0.1:18081 list-sellers --rendezvous-point /dnsaddr/rendezvous.coblox.tech/p2p/QmPd98wigRET5e1pFobJi5a4XdTVMCDWEn79ojHtBLsRGm
A saída mostrará os makers disponíveis com seus endereços libp2p, taxa de câmbio oferecida e limites mínimo/máximo. - Escolha um maker e inicie o swap (você quer comprar XMR com BTC):
swap --electrum-rpc ssl://electrum.blockstream.info:50002 --monero-daemon-address http://127.0.0.1:18081 buy-xmr --receive-address SEU_ENDEREÇO_MONERO --change-address SEU_ENDEREÇO_BTC_TROCO --seller /ip4/MAKER_IP/tcp/9939/p2p/MAKER_PEER_ID
Executando o Swap: Passo a Passo Detalhado
- Inicie o comando buy-xmr com seus parâmetros. O cliente negociará os termos com o maker e exibirá: o endereço Bitcoin para depósito, o valor exato em BTC a enviar, e a quantidade de XMR que você receberá.
- Revise os termos cuidadosamente antes de enviar qualquer fundo. Confirme: taxa de câmbio, valor de BTC necessário, XMR que receberá, timeout.
- Envie BTC para o endereço gerado da sua carteira Bitcoin. O cliente aguardará a confirmação. Envie exatamente o valor indicado — valores diferentes podem causar falha.
- Aguarde a confirmação Bitcoin (1 confirmação, ~10 minutos em média). O cliente exibirá o progresso em tempo real.
- O protocolo executa automaticamente as etapas criptográficas. Você verá o estado mudar: Bitcoin locked → Xmr lock tx published → Xmr lock confirmed → Btc redeemed → Done.
- O XMR aparece na sua carteira Monero em ~30–60 minutos do início. Como as transações Monero precisam de 10 confirmações para estarem disponíveis (~20 min adicionais após a transação on-chain), pode levar até 80 minutos no total.
Monitorando e Recuperando Swaps em Andamento
Se sua conexão cair ou você precisar reiniciar o computador durante um swap, não entre em pânico. O cliente mantém todo o estado necessário para retomar:
# Ver todos os swaps e seus estados: swap history # Retomar um swap específico: swap resume --swap-id ID_DO_SEU_SWAP --electrum-rpc ssl://electrum.blockstream.info:50002 --monero-daemon-address http://127.0.0.1:18081 # Cancelar e solicitar reembolso (apenas se ainda possível): swap cancel --swap-id ID_DO_SEU_SWAP # Verificar se reembolso está disponível: swap refund --swap-id ID_DO_SEU_SWAP
Executando Como Maker (Provendo Liquidez)
Se você quiser ser o maker — oferecer BTC em troca de XMR — pode ganhar a margem de spread e contribuir para a liquidez da rede:
swap --electrum-rpc ssl://electrum.blockstream.info:50002 --monero-daemon-address http://127.0.0.1:18081 start-daemon --min-buy-btc 0.001 --max-buy-btc 0.1 --ask-spread 0.02
Como maker, você precisará manter BTC disponível para o escrow e um nó sempre online para responder aos takers.
Considerações de Segurança e Boas Práticas
- Use sempre a versão mais recente: Vulnerabilidades são corrigidas regularmente. Execute
swap --versione compare com o último release no GitHub. - Nunca interrompa nas fases críticas: Especialmente entre a confirmação do lock Bitcoin e o resgate do XMR. Use
tmuxouscreenpara sessões persistentes. - Backup do diretório de dados:
~/.local/share/xmr-btc-swap/contém as chaves e estado de swaps em andamento. Faça backup antes de qualquer swap. - Teste com valores pequenos primeiro: Faça um swap de 0,05 XMR antes de volumes maiores para verificar que seu ambiente está configurado corretamente.
- Use Tor para maior privacidade: Execute
torsocks swap ...para rotear o tráfego P2P através do Tor.
Atomic Swap vs. Exchange Instantânea: Comparação
| Critério | Atomic Swap (COMIT) | Exchange Instantânea |
|---|---|---|
| Descentralização | Total — sem servidor central | Centralizada (empresa controla) |
| Custódia dos fundos | Nunca — você controla sempre | Temporária durante o swap |
| KYC | Impossível por design | Não (nas sem KYC) |
| Velocidade | 30–90 minutos | 20–45 minutos |
| Taxa efetiva | Apenas taxas de rede (~0,2%) | 1–2% + taxas de rede |
| Dificuldade | Alta — linha de comando | Baixa — interface web |
| Privacidade | Máxima — sem logs possíveis | Alta mas depende da plataforma |
| Risco técnico | Baixo se protocolo correto | Risco de contraparte da exchange |
Perguntas Frequentes
Preciso de nó Bitcoin completo ou Electrum serve?
Electrum público funciona e é suficiente para a maioria dos usuários. Para máxima privacidade e segurança, um nó próprio (Bitcoin Core ou Electrum Personal Server) é o ideal, pois servidores Electrum públicos podem ver seus endereços.
Os atomic swaps funcionam na mainnet do Monero?
Sim. O COMIT swap está operacional na mainnet desde 2021 e vem sendo melhorado continuamente. Use com cuidado e valores que você aceita correr risco técnico.
Qual é o timeout padrão do swap?
O timeout é negociado entre maker e taker, tipicamente entre 12 e 36 horas. Se expirar sem que o swap complete, ambas as partes recuperam seus fundos automaticamente.
Posso fazer XMR→BTC (ao invés de BTC→XMR)?
Na terminologia do COMIT, buy-xmr significa "pagar com BTC para receber XMR". Para o caminho inverso (pagar com XMR, receber BTC), você age como maker oferecendo XMR, ou usa o modo sell-xmr se o software disponibilizar essa interface diretamente.
O processo é completamente sem risco?
O protocolo criptográfico elimina o risco de contraparte (uma parte não pode roubar da outra). Mas existem riscos técnicos: bugs de software, falhas de hardware durante fases críticas, problema com o nó blockchain. Use versões estáveis, faça backups e não arrisque mais do que aceita perder.
Prefere começar com algo mais simples? Acesse nossa plataforma de swap sem KYC. Para comparar a cotação antes de decidir o método, use nossa calculadora XMR/BTC ao vivo. Detalhes sobre taxas: FAQ de taxas e limites XMR→BTC.
🌍 Leia em