A prisão de Pavel Durov, CEO do Telegram, foi de fato uma demonstração de como o estado não tolera aqueles que não querem colaborar com fornecimento de informações que aumentem seu poder. Por outro lado, não podemos ignorar o fato de que para aqueles que realmente querem proteger suas mensagens do estado, que o Telegram não é uma opção segura.

A seguir, um artigo do especialista em criptogtafia, Mathew Green, sobre como o Telegram não garante criptografia de ponta a ponta como alega.

O Telegram tem ou não tem criptografia?

Muitos sistemas usam criptografia de uma forma ou de outra. No entanto, quando falamos de criptografia no contexto de serviços modernos de mensagens privadas, a palavra normalmente tem um significado muito específico: refere-se ao uso de criptografia padrão de ponta a ponta para proteger o conteúdo das mensagens dos usuários. Quando usado de forma padrão do setor, esse recurso garante que todas as mensagens sejam criptografadas usando chaves de criptografia que são conhecidas apenas pelas partes comunicantes, e não pelo provedor de serviços.

Do seu ponto de vista como usuário, um “mensageiro criptografado” garante que, sempre que você iniciar uma conversa, suas mensagens só poderão ser lidas pelas pessoas com quem você pretende falar. Se o operador de um serviço de mensagens tentar visualizar o conteúdo de suas mensagens, tudo o que ele verá será lixo criptografado inútil. Essa mesma garantia vale para qualquer pessoa que possa invadir os servidores do provedor e também, para o bem ou para o mal, para as agências de aplicação da lei que enviam uma intimação aos provedores.

O Telegram claramente não atende a essa definição mais forte por um motivo simples: ele não criptografa conversas de ponta a ponta por padrão. Se quiser usar a criptografia de ponta a ponta no Telegram, você deve ativar manualmente um recurso opcional de criptografia de ponta a ponta chamado “Chats Secretos” para cada conversa privada que quiser ter. O recurso não é explicitamente ativado para a grande maioria das conversas e só está disponível para conversas individuais, e nunca para bate-papos em grupo com mais de duas pessoas.

Como uma espécie de bônus estranho, ativar a criptografia de ponta a ponta no Telegram é estranhamente difícil para usuários não especialistas.

Por um lado, o botão que ativa o recurso de criptografia do Telegram não é visível no painel principal da conversa ou na tela inicial. Para encontrá-lo no aplicativo iOS, tive que clicar pelo menos quatro vezes – uma vez para acessar o perfil do usuário, uma vez para fazer aparecer um menu oculto mostrando as opções, e uma última vez para “confirmar” que eu queria usar a criptografia. E mesmo depois disso, não consegui realmente ter uma conversa criptografada, pois o Secret Chats só funciona se o seu parceiro de conversa estiver on-line quando você fizer isso.

Iniciando um “bate-papo secreto” com meu amigo Michael no aplicativo Telegram iOS mais recente. Em uma tela de bate-papo comum, essa opção não está diretamente visível. Para ativá-la, são necessários quatro cliques: (1) para acessar o perfil do Michael (imagem à esquerda), (2) no botão “…” para exibir um conjunto oculto de opções (imagem ao centro), (3) em “Iniciar bate-papo secreto” e (4) na caixa de diálogo de confirmação “Tem certeza…”. Depois disso, ainda não consigo enviar nenhuma mensagem ao Michael, porque os chats secretos do Telegram só podem ser ativados se o outro usuário também estiver on-line.

Em geral, isso é bem diferente da experiência de iniciar um novo bate-papo criptografado em um aplicativo de mensagens moderno padrão do setor, que simplesmente exige que você abra uma nova janela de bate-papo.

Embora possa parecer que eu esteja sendo exigente, a diferença na adoção entre a criptografia padrão de ponta a ponta e essa experiência é provavelmente muito significativa. O impacto prático é que a grande maioria das conversas individuais no Telegram – e literalmente todos os bate-papos em grupo – provavelmente são visíveis nos servidores do Telegram, que podem ver e registrar o conteúdo de todas as mensagens enviadas entre os usuários. Isso pode ou não ser um problema para todos os usuários do Telegram, mas certamente não é algo que anunciaríamos como particularmente bem criptografado.

(Se você estiver interessado nos detalhes, bem como em um pouco mais de crítica aos protocolos de criptografia reais do Telegram, vou falar sobre o que sabemos sobre isso mais abaixo).

Mas espere, a criptografia padrão é realmente importante?

Talvez sim, talvez não! Há duas maneiras diferentes de pensar sobre isso.

Uma delas é que a falta de criptografia padrão do Telegram é boa para muitas pessoas. A realidade é que muitos usuários não escolhem o Telegram para mensagens privadas criptografadas. Para muitas pessoas, o Telegram é usado mais como uma rede de mídia social do que como um mensageiro privado.

Para ser mais específico, o Telegram tem dois recursos populares que o tornam ideal para esse caso de uso. Um deles é a capacidade de criar e se inscrever em “canais”, cada um dos quais funciona como uma rede de transmissão em que uma pessoa (ou um pequeno número de pessoas) pode enviar conteúdo para milhões de leitores. Quando você está transmitindo mensagens para milhares de estranhos em público, manter o sigilo do conteúdo do bate-papo não é tão importante.

O Telegram também suporta grandes chats de grupos públicos que podem incluir milhares de usuários. Esses grupos podem ser abertos para o público em geral ou podem ser configurados como somente para convidados. Embora eu nunca tenha desejado compartilhar um bate-papo em grupo com milhares de pessoas, fui informado de que muitas pessoas gostam desse recurso. Na instanciação grande e pública, também não importa realmente que os bate-papos em grupo do Telegram não sejam criptografados – afinal, quem se importa com a confidencialidade se você está falando em praça pública?

Mas o Telegram não se limita apenas a esses recursos, e muitos usuários que aderem a eles também fazem outras coisas.

Imagine que você está em uma “praça pública” tendo uma conversa em grupo grande. Nesse ambiente, pode não haver expectativa de privacidade forte e, portanto, a criptografia de ponta a ponta não é realmente importante para você. Mas digamos que você e cinco amigos saiam da praça para ter uma conversa paralela. Essa conversa merece uma privacidade forte? Não importa o que você quer, porque o Telegram não vai fornecer isso, pelo menos não com a criptografia que protege você de compartilhar seu conteúdo com os servidores do Telegram.

Imagine que você está em uma “praça pública” tendo uma conversa em grupo grande. Nesse ambiente, pode não haver expectativa de privacidade forte e, portanto, a criptografia de ponta a ponta não é realmente importante para você. Mas digamos que você e cinco amigos saiam da praça para ter uma conversa paralela. Essa conversa merece uma privacidade forte? Não importa o que você quer, porque o Telegram não vai fornecer isso, pelo menos não com a criptografia que protege você de compartilhar seu conteúdo com os servidores do Telegram.

Da mesma forma, imagine que você usa o Telegram por seus recursos semelhantes aos da mídia social, o que significa que você consome principalmente conteúdo em vez de produzi-lo. Mas um dia sua amiga, que também usa o Telegram por motivos semelhantes, percebe que você está na plataforma e decide enviar uma mensagem privada para você. Você está preocupado com a privacidade agora? E cada um de vocês vai ativar manualmente o recurso “Chat secreto” – mesmo que isso exija quatro cliques explícitos em menus ocultos e mesmo que isso impeça que vocês se comuniquem imediatamente se um de vocês estiver off-line?

Minha forte suspeita é que muitas pessoas que se juntam ao Telegram por seus recursos de mídia social também acabam usando-o para se comunicar de forma privada. E eu acho que o Telegram sabe disso, e tende a se anunciar como um “mensageiro seguro” e falar sobre os recursos de criptografia da plataforma precisamente porque eles sabem que isso faz com que as pessoas se sintam mais confortáveis. Mas, na prática, eu também suspeito que muito poucos desses usuários estão realmente usando a criptografia do Telegram. Muitos desses usuários podem nem mesmo perceber que precisam ativar a criptografia manualmente e acham que já a estão usando.

O que me leva ao meu próximo ponto.

O Telegram sabe que sua criptografia é difícil de ser ativada e continua a promover seu produto como um mensageiro seguro

A criptografia do Telegram tem sido alvo de fortes críticas desde pelo menos 2016 (e possivelmente antes) por muitas das razões que descrevi neste post. De fato, muitas dessas críticas foram feitas por especialistas, inclusive eu, em conversas de anos atrás com Pavel Durov no Twitter.1

Embora a interação com Durov às vezes pudesse ser dura, eu ainda presumia boa fé do Telegram naquela época. Eu acreditava que o Telegram estava ocupado com o crescimento de sua rede e que, com o tempo, eles melhorariam a qualidade e a usabilidade da criptografia de ponta a ponta da plataforma: por exemplo, ativando-a como padrão, fornecendo suporte para chats em grupo e possibilitando iniciar chats criptografados com usuários offline. Presumi que, embora o Telegram pudesse ser um seguidor em vez de um líder, ele acabaria alcançando a paridade de recursos com os protocolos de criptografia oferecidos pelo Signal e pelo WhatsApp. É claro que uma segunda possibilidade era que o Telegram abandonasse totalmente a criptografia – e se concentrasse apenas em ser uma plataforma de mídia social.

O que de fato aconteceu é muito mais confuso para mim.

Em vez de melhorar a usabilidade da criptografia de ponta a ponta do Telegram, os proprietários do Telegram mantiveram mais ou menos a experiência de usuário da criptografia inalterada desde 2016. Embora tenha havido algumas atualizações nos algoritmos de criptografia subjacentes usados pela plataforma, a experiência do usuário nos Chats Secretos em 2024 é quase idêntica à que você veria há oito anos. Isso, apesar do fato de o número de usuários do Telegram ter crescido de 7 a 9 vezes durante o mesmo período.

Ao mesmo tempo, o CEO do Telegram, Pavel Durov, continuou a comercializar agressivamente o Telegram como um “mensageiro seguro”. Mais recentemente, ele emitiu uma crítica contundente ao Signal e ao WhatsApp em seu canal pessoal do Telegram, insinuando que esses sistemas foram protegidos pelo governo dos EUA e que apenas os protocolos de criptografia independentes do Telegram eram realmente confiáveis.

Embora isso possa ser um argumento nerd razoável se estivesse ocorrendo entre duas plataformas que suportam criptografia padrão de ponta a ponta, o Telegram realmente não tem pernas para se apoiar nessa discussão em particular. De fato, não é mais divertido ver a organização do Telegram incentivando as pessoas a se afastarem de mensageiros com criptografia padrão, enquanto se recusa a implementar recursos essenciais que criptografariam amplamente as mensagens de seus próprios usuários. Na verdade, isso está começando a parecer um pouco malicioso.

E os detalhes chatos da criptografia?

De acordo com o que eu acho que é a mais recente especificação de criptografia, o recurso de Chats Secretos do Telegram é baseado em um protocolo personalizado chamado MTProto 2.0. Esse sistema usa um acordo de chave Diffie-Hellman de campo finito de 2048 bits*, com parâmetros de grupo (acho) escolhidos pelo servidor.* (Como o protocolo Diffie-Hellman só é executado interativamente, é por isso que os Chats Secretos não podem ser configurados quando um usuário está off-line.*) A proteção contra MITM é feita pelos usuários finais, que devem comparar as impressões digitais das chaves. Existem alguns nonces aleatórios estranhos fornecidos pelo servidor, cuja finalidade eu não compreendo totalmente* – e que, no passado, costumavam tornar a troca de chaves totalmente insegura contra um servidor mal-intencionado (mas isso já foi corrigido há muito tempo.*) As chaves resultantes são então usadas para alimentar o modo de criptografia autenticada mais incrível e não padronizado já inventado, algo chamado “Infinite Garble Extension” (IGE) baseado em AES e com autenticação de manuseio SHA2.*

NB: Todo lugar em que coloquei um “*” no parágrafo acima é um ponto em que criptógrafos especialistas, no contexto de algo como uma auditoria de segurança profissional, levantariam as mãos e fariam muitas perguntas. Não vou me estender mais do que isso. Basta dizer que a criptografia do Telegram é incomum.

Se você me pedir para adivinhar se o protocolo e a implementação do Telegram Secret Chats são seguros, eu diria que é bem possível. Para ser honesto, porém, não importa o quanto algo seja seguro se as pessoas não o estiverem usando.

Há mais alguma coisa que eu deva saber?

Sim, infelizmente. Embora a criptografia de ponta a ponta seja uma das melhores ferramentas que desenvolvemos para evitar o comprometimento de dados, ela não é o fim da história. Um dos maiores problemas de privacidade em mensagens é a disponibilidade de muitos metadados – essencialmente dados sobre quem usa o serviço, com quem fala e quando fala.

Normalmente, esses dados não são protegidos por criptografia de ponta a ponta. Mesmo em aplicativos que são apenas de transmissão, como os canais do Telegram, há muitos metadados úteis disponíveis sobre quem está ouvindo uma transmissão. Essas informações, por si só, são valiosas para as pessoas, conforme evidenciado pelas enormes quantias de dinheiro que as emissoras tradicionais gastam para coletá-las. No momento, todas essas informações provavelmente existem nos servidores do Telegram, onde estão disponíveis para qualquer pessoa que queira coletá-las.

Não quero culpar o Telegram em particular, porque o mesmo problema existe em praticamente todas as outras redes sociais e mensageiros privados. Mas vale a pena mencionar, para que não concluamos que a criptografia é tudo de que precisamos.

Artigo escrito Matthew Green por publicado no blog Cryptography Engineering e traduzido por Rodrigo


Shares:
Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *