Elementos de Segurança e Privacidade em Aplicativos de Mensagens

Elementos de Segurança e Privacidade em Aplicativos de Mensagens

A privacidade e a proteção desse direito humano básico são cruciais. A vigilância está aumentando e os incentivos financeiros fora de controle estão levando as empresas a extrair o máximo de informações possível. Agora, mais do que nunca, precisamos coletivamente salvaguardar esse direito.

Usar aplicativos de mensagens privadas e proteger nossa comunicação daqueles que desejam nos censurar ou monetizar nossos dados é uma maneira de fazer isso. No primeiro artigo desta série, vimos por que a privacidade é importante mesmo se você não estiver escondendo nada. Neste artigo, exploraremos alguns recursos que implementamos no aplicativo móvel Status para proteger a privacidade.

Ao arquitetar a aplicação Status, essas são apenas algumas das implementações que consideramos cruciais. Esses não são os únicos elementos que fazem de um mensageiro privado e certamente essa não é a única abordagem para um aplicativo de mensagens seguro e privado. Existem equipes talentosas ao redor do mundo trabalhando em outras ferramentas projetadas para proteger nossa privacidade.

E não quer dizer que ao implementar esses recursos, a Status criou uma solução mágica para preservação da privacidade. Estamos constantemente evoluindo nossa pilha de tecnologias e procurando por novas e inovadoras maneiras de fornecer maior privacidade e garantias de segurança.

Criptografia Ponta a Ponta (e2ee)

Criptografia ponta a ponta é um elemento imperativo no mundo das mensagens privadas. Não apenas a habilidade de criptografar suas mensagens, mas a ativação desse recurso por padrão em todas as formas de mensagens é crucial. O Telegram é um aplicativo de mensagens criptografadas, mas implementa o e2ee em apenas alguns modos de operação.

A criptografia ponta a ponta implica que suas mensagens são bloqueadas com uma chave à qual apenas você e o(s) destinatário(s) pretendido(s) têm acesso. Isso significa que as mensagens são criptografadas e protegidas durante o tempo todo em que estão em trânsito.

Na maioria das redes de internet atuais, intermediários terceirizados encaminham mensagens do remetente para o destinatário. A criptografia ponta a ponta protege o conteúdo das mensagens desses intermediários (e de qualquer um que possa interceptar a mensagem), pois eles não possuem as chaves necessárias para revelar o conteúdo da mensagem fornecida.

A Status implementou muitos dos mesmos algoritmos de criptografia de código aberto desenvolvidos pela talentosa equipe do Signal, que conquistou muito respeito e elogios merecidos. No entanto, a Status adaptou o trabalho para se adequar à natureza distribuída do protocolo de mensagens utilizado.

Perfect Forward Secrecy (PFS)

O perfect forward secrecy (sigilo de encaminhamento) é projetado para proteger suas mensagens antigas e futuras mesmo se as chaves privadas das mensagens atuais forem roubadas e a criptografia comprometida. Conforme descrito acima, a criptografia ponta a ponta protege suas mensagens de intermediários. Mas, e se essas chaves estiverem de fato comprometidas? Não só a mensagem atual seria legível, como todas as mensagens anteriores e futuras também. Bem, não com o sigilo de encaminhamento (PFS).

O sigilo de encaminhamento tornou-se popular pelas pessoas por trás do protocolo Signal como um meio de proteger a privacidade das mensagens no futuro. Com o sigilo de encaminhamento, as chaves utilizadas para criptografar e descriptografar mensagens estão frequentemente mudando - portanto, se as chaves mais recentes forem comprometidas, todas as mensagens anteriores e futuras estarão seguras e apenas uma pequena quantidade de dados será considerada não privada.

Utilizando um sistema chamado "double ratchet", novas chaves de criptografia são geradas com cada mensagem - mesmo aquelas enviadas consecutivamente pela mesma pessoa. Dessa maneira, mensagens antigas não podem ser descriptografadas por terceiros que consigam obter a chave privada de uma única mensagem.

Descentralizado & Peer-to-Peer (P2P)

Em termos simples, o sistema de mensagens peer-to-peer elimina a necessidade de servidores terceirizados centralizados para transmitir mensagens por toda a rede. Em redes cliente-servidor tradicionais (em uso pela maioria dos principais aplicativos de mensagens atuais), as mensagens são enviadas da pessoa A para um servidor central na rede para processamento e, em seguida, encaminhadas para a pessoa B.

Esses servidores hospedam e processam todas as mensagens na rede, levando a grandes riscos de privacidade e segurança, pois se tornam pontos únicos de falha e vetores de ataque centralizados. Mesmo com formas avançadas de criptografia ponta a ponta e outras medidas de privacidade, esses servidores centralizados apresentam riscos.

Existem alguns tipos diferentes de redes de mensagens peer-to-peer em uso hoje, incluindo o roteamento onion, TOR e protocolos de comunicação do tipo gossip, como o Waku.

No caso do Waku, que é usado no Status, quando a pessoa A deseja enviar uma mensagem para a pessoa B, ela a transmite para vários nós da rede, e essa mensagem salta de nó em nó, terminando com B. Todas as mensagens são criptografadas de ponta a ponta por padrão, de forma que apenas o destinatário pretendido pode desbloquear e visualizar o conteúdo da mensagem.

É importante notar que Status e Waku ainda não são totalmente ponto a ponto, pois os servidores de e-mail são usados para gerenciar mensagens quando um ponto está offline. Um servidor de e-mail Waku é uma extensão do Waku que armazena mensagens e as entrega quando o par volta a ficar online. O objetivo a longo prazo é eliminar a necessidade de servidores de email. Para obter mais informações sobre isso, verifique as especificações do Status.

Em resumo, as mensagens ponto a ponto têm como objetivo fornecer:

  1. Remoção de intermediários centralizados tradicionais
  2. Descentralização da rede e remoção de pontos únicos de falha
  3. Resistência à censura

Criação de Conta Pseudo-Anônima

A maioria dos aplicativos de mensagens exige alguma forma de validação de terceiros ao criar uma conta - geralmente um número de telefone, mas às vezes um endereço de e-mail ou até mesmo uma conta bancária. Isso permite que o serviço de mensagens, por exemplo o WhatsApp, crie uma id de usuário e conecte você a seus pares. Além disso, a capacidade de recuperação da conta muitas vezes depende do número de telefone do usuário.

No caso de aplicativos de mensagens que exigem um número de telefone, normalmente você deve compartilhar seu número de telefone com qualquer pessoa com quem você converse. Removendo a separação entre números de telefones celulares privados e a identidade do seu aplicativo.

Embora seja uma maneira conveniente de conectar e expandir a rede, ele associa instantaneamente uma conta a uma identificação pública de terceiros. Pensando mais à frente, os números de telefone podem ser facilmente comprometidos por empresas que os distribuem.

O Status não requer um número de telefone, endereço de e-mail ou conta bancária para criar uma conta. Em vez disso, os usuários escolhem um nome de 3 palavras gerado aleatoriamente durante o processo de inclusão, por exemplo “Lavender Trivial Goral”. Esse nome aleatório de 3 palavras se tornará a identidade no Status, a menos que o usuário adquira e use um nome de usuário ENS - tornando o Status uma plataforma pseudo-anônima e concedendo ao usuário a capacidade de divulgar seletivamente as informações que deseja.

secure messaging apps

Software Livre

O código-fonte aberto não torna os recursos dos aplicativos de mensagens mais privados, mas ajuda a criar um produto final geral mais seguro. O software de código aberto pode ser revisado, criticado, alterado e modificado por qualquer pessoa no mundo. Como disse Linus Torvalds: “Com olhos suficientes, todos os bugs são superficiais”.

Portanto, procure por aplicativos de mensagem em que o código seja totalmente aberto e disponível para revisão por pares. Isso não significa que você precise revisá-lo em busca de problemas e vulnerabilidades (mas você pode!). Significa simplesmente que alguém com experiência na área pode.

Conclusão

Com a vigilância em alta e um enorme incentivo financeiro para organizações de todos os tipos extraírem dados pessoais, encontrar meios de preservar nossa privacidade é crucial. Escolher um aplicativo de mensagens privado e seguro é uma maneira de fazer isso. É claro que alguns dos recursos mencionados acima vêm com compensações, mas ao construir o Status, cada um deles foi um requisito crítico antes do lançamento da primeira versão na App Store e Playstore.

Entendemos que existem alguns recursos altamente solicitados que estão faltando nesta lista, como mensagens que se auto detonam. E, como mencionado acima, esta não é a única maneira de abordar mensagens privadas - é simplesmente como a Status abordou e continuamos a pesquisar e desenvolver maneiras adicionais de garantir o mais alto nível de privacidade possível. Afinal, realmente acreditamos que, por meio da privacidade, podemos preservar a cultura coletivamente.

Finalmente, é importante observar que muitos recursos centrados na privacidade vêm com compensações, incluindo eficiência e escalabilidade. Com a contínua pesquisa e desenvolvimento como meio de trabalho no aplicativo Status, Vac, Nimbus e outros, esperamos resolver alguns desses problemas de forma iterativa.

Utilize um aplicativo de mensagens privado agora e instale o Status aqui na App Store, Playstore ou via APK.

Saiba mais sobre todos os recursos do Status, incluindo o sistema de mensagens privado, carteira criptografada segura e navegador web3 aqui.

* Atualização do gráfico original. O cliente Telegram é open source, enquanto os servidores não. Gráfico atualizado para indicar "App & Server completamente de código aberto"