Sistemas Descentralizados/04 - Comparações4 min
Nostr vs ActivityPub
- Que problema isso resolve?
- Quando usar / quando NÃO usar?
- Qual o principal trade-off?
- Como isso falha em produção?
Conceito
Esta comparação é mais útil que 1. Nostr vs Blockchain para entender por que o Nostr foi desenhado assim, porque os dois atacam exatamente o mesmo problema — rede social sem dono — com respostas opostas.
ActivityPub é padrão W3C (2018), a base do Mastodon, PeerTube e do "Fediverso". É federação: servidores independentes que se falam. Ver 2. Tipos de Sistemas Distribuídos.
Nostr é relay + chave pública. Ver 1. Nostr.
A diferença é uma só, e é onde a identidade mora
| ActivityPub | Nostr | |
|---|---|---|
| Sua identidade | @voce@servidor.social |
npub1... |
| Contém o servidor? | sim | não |
Todo o resto decorre disso.
No ActivityPub, o servidor (a "instância") é autoridade sobre você: guarda sua conta, assina em seu nome, entrega suas mensagens e decide com quem federa. É um bom modelo — é o do e-mail, que funciona há 40 anos. E carrega a fraqueza estrutural do e-mail: você depende do seu provedor.
No Nostr, sua identidade é a chave. O relay não te conhece, não assina nada por você e não pode falar em seu nome. Ele é cache.
O que muda na prática
| Situação | ActivityPub | Nostr |
|---|---|---|
| Seu servidor fecha | perde o endereço; migração parcial e frágil | nada acontece — troque de relay |
| Admin te bane | perdeu conta, posts e seguidores | ele só parou de te servir; outros continuam |
| Trocar de servidor | operação especial do protocolo, com perdas | não existe, e não precisa existir |
| Descobrir alguém | resolve o domínio no handle | precisa de relay em comum (NIP-65) |
| Moderação | admin da instância, com poder real | publicada como dado; cliente decide |
| Spam | admin bloqueia instâncias inteiras | relay pago, PoW, web of trust |
| Backup dos seus dados | depende do admin | você replica em quantos relays quiser |
| Sua chave vaza | troca a senha | acabou |
Repare que a última linha inverte o placar. O ActivityPub tem recuperação de conta porque tem um operador — e é exatamente o operador que o Nostr removeu. Não dá para ter os dois.
O padrão de projeto por trás
O ActivityPub tentou resolver a migração de instância: protocolo de Move, redirecionamento, transferência de seguidores. Funciona parcialmente, perde histórico, e é frágil por natureza — porque está tentando mover algo que, por definição, mora em outro lugar.
O Nostr eliminou o problema ao tirar o servidor de dentro da identidade.
Quando um problema é difícil demais, às vezes a saída é mover a fronteira do sistema em vez de resolver o problema.
Vale como padrão de arquitetura fora deste contexto: antes de investir em resolver algo difícil, pergunte se alguma mudança na fronteira faz o problema deixar de existir. Migração de instância não foi resolvida pelo Nostr — foi tornada sem sentido.
Trade-offs
ActivityPub ganha em:
- UX de conta — senha, recuperação, e-mail. As pessoas sabem usar.
- Moderação eficaz — admin com poder real remove abuso de fato, não só rotula.
- Custo do cliente — o servidor monta a timeline; o app é leve.
- Maturidade — padrão W3C, anos de operação, ferramental estabelecido.
Nostr ganha em:
- Portabilidade de identidade — a chave é sua, o relay é detalhe.
- Resistência à censura — nenhum operador tem poder sobre você.
- Simplicidade do servidor — relay em centenas de linhas vs. um Mastodon inteiro.
- Interoperabilidade — dados assinados que qualquer app lê, sem API nem permissão.
O trade-off central, e ele é honesto dos dois lados:
ActivityPub troca soberania por usabilidade. Nostr troca usabilidade por soberania.
Não há vencedor técnico: há públicos diferentes. Para quem precisa não poder ser desligado (jornalista, dissidente), a chave vale a inconveniência. Para o usuário comum, "perdeu o arquivo, perdeu a vida inteira online" é um risco pior do que o de um admin ruim.
Exemplo prático
Um admin de instância decide te banir.
No Mastodon: sua conta some. Posts, seguidores, DMs, histórico. Quem te seguia vê um perfil morto. Você cria conta em outra instância, com outro handle, e recomeça pedindo às pessoas que te sigam de novo. Seu identificador antigo agora aponta para nada — e pode até ser reatribuído a outra pessoa.
No Nostr: aquele relay para de te entregar. Seus outros 4 relays continuam. Sua npub é a mesma, seus seguidores te seguem pela chave — e a maioria nem percebe, porque o cliente deles consulta vários relays e encontra você nos outros.
Esse é o resultado que resume as duas arquiteturas:
No ActivityPub, banir é remover uma pessoa. No Nostr, banir é um servidor deixar de ajudar.
E a inversão da pergunta é igualmente instrutiva: se você perde a nsec, o Nostr não tem nenhuma resposta, e o Mastodon tem um botão de "esqueci minha senha". O poder que o admin tem de te banir é o mesmo poder que ele tem de te devolver a conta. Não dá para remover um sem remover o outro — e é aí que a escolha entre os dois realmente acontece.
Relacionado
Parte de MOC Comparações · W3C ActivityPub