- A internet foi originalmente concebida para anonimato e proteção da privacidade, mas plataformas centralizadas corroem essa característica
- O governo pode identificar usuários, censurar e aplicar regulações enviando apenas uma ordem a uma única empresa
- Já protocolos como IRC, XMPP, ActivityPub, Nostr, Matrix não têm uma entidade única de controle, então a aplicação coercitiva é praticamente impossível
- Migrar entre serviços não é a solução, pois a exposição ao mesmo ambiente regulatório ou ao risco de bloqueio volta a acontecer
- Ao usar protocolos, é possível se livrar da identificação, restrições e exigência forçada de fornecimento de dados
A estrutura original da internet e o problema da centralização
- A internet foi projetada, em sua base, com anonimato e proteção da privacidade como pressuposto
- A menos que administradores façam rastreamento ativamente, não existe uma camada embutida de verificação de identidade
- Essa característica se rompe por causa da concentração da comunicação em plataformas fechadas
- Nesse caso, passa a ser possível identificar usuários por meio da empresa de hospedagem ou de exigências de cooperação do governo
Serviços são alvos fáceis para governos
- Quando um governo quer identificar usuários, censurar conteúdo ou aplicar regulações, isso é possível com uma única exigência legal
- Basta uma carta, intimação, ordem judicial ou exigência regulatória para que o serviço coopere ou sofra sanções
- Na prática, governos de vários países estão promovendo projetos de lei que tornam obrigatória a verificação de idade
- Diante disso, o Discord está introduzindo a configuração ‘teen-by-default’, que exige escaneamento facial ou envio de documento de identidade emitido pelo governo
- Porém, em sistemas baseados em protocolos, esse tipo de medida é inviável
- Isso porque IRC, XMPP, ActivityPub, Nostr e Matrix não têm uma entidade única de controle
- O governo teria de pressionar individualmente milhares de operadores independentes de servidores em vários países, algo próximo de legislativamente e operacionalmente inviável
- Mesmo que alguns servidores cooperem, os usuários podem migrar para outros servidores
Migrar de serviço não resolve o problema de raiz
- Depois do anúncio da política do Discord, tentar mudar para outro serviço é inútil
- O novo serviço também estará sob a mesma jurisdição legal ou, mesmo estando no exterior, quando crescer acabará sofrendo bloqueio ou pressão regulatória
- A verdadeira solução é deixar de depender de serviços comerciais e usar protocolos
- Isso não é uma ideia radical; já acontece com e-mail (SMTP)
- Usuários podem trocar de provedor, fazer self-hosting ou combinar os dois
O caso do e-mail e a resiliência dos protocolos
- O e-mail parece uma estrutura de oligopólio dominada por Google, Microsoft e Apple, mas na verdade mostra a resiliência dos protocolos
- Mesmo que o Google bloqueie sua conta, você pode mudar para outro provedor e continuar se comunicando com usuários do Gmail
- Em um caso extremo, mesmo que Google e Microsoft encerrem ou bloqueiem seus serviços, implementações de SMTP ainda continuariam funcionando
- Pode ser necessário redirecionar algumas conexões, mas não é preciso reimplementar tudo, e essa é a diferença central em relação a serviços centralizados como o Discord
- Já em serviços centralizados, se a conta for apagada ou bloqueada, a recuperação é impossível
Por que é necessário usar protocolos
- Cada vez que escolhemos um serviço, passamos a participar de uma estrutura em que uma única empresa pode ser forçada a identificar, restringir usuários e fornecer dados
- Usar protocolos significa garantir autonomia diante desse controle e dessa vigilância
1 comentários
Comentários do Hacker News
Sempre penso por que Discord e Slack venceram o IRC
A evolução de protocolos é lenta demais. Basta lembrar quanto tempo levou para o IRCv3 suportar histórico de canal, ou por quanto tempo o problema de sequestro de canais causado por divisão de rede ficou sem solução
Até hoje extensões como chathistory, channel-rename e account-registration ainda estão em rascunho
E também me pergunto por que o Mastodon ainda continua desconfortável de usar
No fim, eu quero um mundo descentralizado, mas a realidade é que software iterado rapidamente vence, salvo em casos excepcionais
Não devemos esquecer o preço dessa escolha. Se não reavaliarmos as decisões do passado, estaremos presos por nossa própria vontade
Tudo isso era bancado por capital de risco, e o resultado atual apareceu quando chegou a hora de os investidores buscarem retorno
A maioria das pessoas quer recursos centralizados como antispam. É mais conveniente
O Discord não substituiu apenas o IRC, ele também competia com o TeamSpeak. O fato de voz e vídeo estarem no mesmo app era atraente para gamers
Moxie Marlinspike fez o mesmo argumento
Post do blog do Signal
Na prática, protocolos só se tornam úteis ao grande público quando acoplados a serviços
E-mail também não funciona sem servidores, e até o IRC depende de servidores
Eu também me interesso por protocolos sem servidor (como Secure Scuttlebutt), mas no fim ainda foi preciso algum serviço, como seed peers, para a conexão inicial
Acho que descentralização e protocolos são a última fronteira do software
IA é interessante, mas o poder de transferir controle para o indivíduo está nos protocolos
No fim, vejo isso como um problema de identidade. Precisamos de um novo sistema de identidade adequado a protocolos
Eu construo plataformas de IM desde 2007 e, desde 2019, penso se daria para “substituir o Discord”
Analisei várias plataformas, mas acho que o XMPP tem o maior potencial
Por enquanto implementei apenas funções básicas, como adicionar amigos, definir status e enviar mensagens, mas quando estiver pronto vou publicar no blog e compartilhar no Show HN
O ponto forte do XMPP é sua extensibilidade e sua estrutura baseada em XML. Como o XML já foi otimizado para web e ambientes corporativos, o desempenho é bom, e dá para expandir recursos no nível do Discord sem quebrar o protocolo
Por exemplo, um switch de rede da Arista pode funcionar como cliente XMPP
Um operador de rede pode agrupar switches como se fosse um chat em grupo e enviar comandos ao mesmo tempo
Exemplo relacionado
É difícil imaginar isso em Discord, Slack, Telegram ou Signal. No fim, o problema é o lock-in de produto de cada serviço
Fluux, Movim
Ver thread relacionada
O formato dos colchetes em si não importa tanto
A afirmação de que o governo não pode obrigar verificação de idade precisa vir com a ressalva de que “por enquanto”
As leis podem mudar junto com a tecnologia. Se comunicações criptografadas descentralizadas se tornarem predominantes, o governo pode criar novos instrumentos legais para regulá-las
Ainda assim, se as pessoas se acostumarem com privacidade e autonomia, será difícil retirar esse direito depois
Espero que surjam comunidades vibrantes em uma era pós-Discord
Como no exemplo do e-mail, se o Google me bloqueia, minha identidade também desaparece
Precisamos de uma identidade descentralizada que eu possua, independente de provedores de serviço
Por exemplo, com sistemas como mDLS, que deem suporte a divulgação seletiva de atributos ou autenticação baseada em pseudônimo
Uma estrutura assim ajudaria a reduzir o problema de ataques Sybil
Ainda existe o risco de perdê-los
E-mail continua sendo um protocolo, e identidade descentralizada continua sendo identidade
A identidade mais segura é aquela que pode ser recriada a qualquer momento
O Gmail funciona porque o Google exerce o papel de prova de humanidade
É positivo ver pessoas tendo seus próprios pares de chaves públicas. O Atprotocol também é um ator importante, mas o princípio de “can’t be evil” e uma boa UX precisam ser mantidos
Se for um TLD legítimo, ele é permanente
Se o governo puder obrigar empresas a fazer verificação de idade, exceções como Matrix ou IRC no fim também ficarão sujeitas à mesma regulação
Se a punição for grande o bastante, ninguém vai querer correr o risco. Evitar isso completamente é impossível
Antigamente havia um projeto chamado 9ants, um fork do Plan 9
Era uma comunidade de computação em grade criada pelo falecido mycroftiv, e havia um sistema de chat chamado gridchat baseado no protocolo 9P
Os usuários montavam recursos remotos com scripts e executavam ferramentas como Acme, page e mothra
Quando uma mensagem era “plumbed”, ela era entregue simultaneamente aos clientes de todos os usuários, permitindo abrir junto imagens ou código
Era um ambiente de protocolo totalmente controlado pelo usuário, e o exemplo mais puro de “protocolos, não serviços” que já vi
Se você ler o post do blog do Signal, há um bom contraponto à discussão sobre protocolos descentralizados
Signal: The ecosystem is moving
A afirmação de que “é impossível aplicar a lei a milhares de provedores” é exagerada
A sociedade já funciona sob leis como “não causar dano aos outros”
Mesmo que só alguns sejam punidos, o restante tenderá a seguir voluntariamente
No fim, a qualidade de um protocolo depende do nível dos participantes daquela comunidade
Tenho muito interesse em protocolos que permitam sair completamente dos serviços (local-first, peer-to-peer)
Acho que esse tipo de tecnologia é a verdadeira tecnologia de fronteira. Muito mais interessante do que IA