;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Telegram pode ser hackeado? É mais seguro que o WhatsApp? Entenda

Telegram, aplicativo de mensagens, ao lado de WhatsApp e Messages - Getty Images
Telegram, aplicativo de mensagens, ao lado de WhatsApp e Messages Imagem: Getty Images

Márcio Padrão *

Do UOL, em São Paulo

11/06/2019 14h36Atualizada em 27/04/2020 18h03

Resumo da notícia

  • Telegram é considerado por muitos um WhatsApp à frente do seu tempo
  • App russo tem criptografia, mas opta por guardar mensagens em seus servidores
  • Chat secreto reforça proteção e impede capturas de tela e encaminhamentos
  • Já WhatsApp tem criptografia ponta a ponta, mais segura, em todas as conversas

Depois de um bom tempo na discrição, o app de mensagens Telegram finalmente voltou à pauta do dia no Brasil por causa das conversas vazadas envolvendo o ministro da Justiça, Sérgio Moro, e o procurador da Operação Lava-Jato Deltan Dallagnol, apresentadas em reportagens do site The Intercept. É um bom momento para tentar analisar um lugar comum: afinal, ele é mais ou menos seguro que o WhatsApp?

Fala-se muito por aí que o Telegram é como se fosse um WhatsApp à frente do seu tempo: tudo que este último tem de legal, o Telegram implementou primeiro. Uma dessas vantagens seria os recursos de segurança supostamente mais avançados que os do app de Mark Zuckerberg.

De fato a segurança é um pilar importante para o Telegram. Tanto que a equipe do app foi rápida em desmentir que as conversas vazadas das reportagens do Intercept sejam consequências de falhas internas. Veja o que disse o seu perfil oficial do Telegram no Twitter:

"O Telegram não foi hackeado. Mas existem outros riscos que devemos considerar."

Já o ministro Sérgio Moro e a equipe da Lava-Jato acreditam que houve sim algum tipo de hacking. A teoria deles é que foram vítimas de algum tipo de clonagem nos seus celulares.

Telas do Telegram - Reprodução - Reprodução
Imagem: Reprodução

Como funciona o Telegram?

O Telegram é um app fundado por russos que foi muito lembrado pelos brasileiros como um substituto do WhatsApp na época em que o mensageiro favorito de todos ficou fora do ar em decisões judiciais em 2015 e 2016.

Ele é muito parecido com o WhatsApp, na verdade. Assim como no rival, é preciso que você forneça o número do seu telefone para começar a usá-lo pela primeira vez. O seu telefone funcionará como , e a cada nova instalação ou nova autenticação no app, você recebe uma senha via SMS para ter o ao serviço.

De resto, o uso é quase o mesmo. Você pode criar conversas individuais com amigos, ou em grupos. Além do texto, pode enviar fotos, vídeos, GIFs e documentos.

Alguns detalhes de segurança e privacidade diferem os dois aqui. Enquanto todas as conversas no WhatsApp têm criptografia de ponta a ponta —recurso que embaralha as mensagens e só as corrige com "chaves digitais" fornecidas pelo app— no Telegram isso só existe na opção "chat secreto". Ou seja, para proteger mais as conversas, é preciso que essa opção seja ativada nas configurações do app.

O Telegram, porém, garante que as conversas não-secretas também são criptografadas. A diferença é que elas têm um intermediário: os servidores do próprio Telegram. É a chamada criptografia cliente-servidor/servidor-cliente, onde não apenas os usuários têm chaves digitais para ar as mensagens, mas o servidor também as "abre" em algum momento do seu trajeto. Sendo assim, há uma possibilidade de uma invasão ao servidor interceptar conversas sem criptografia.

Sobre isso, a empresa se defende dizendo que tem uma infraestrutura descentralizada de servidores e que nos seus seis anos de existência, "nunca compartilhou nenhum byte de dados com terceiros". Além disso, "nenhuma maneira de minar a criptografia do Telegram foi descoberta".

E por que o app não põe criptografia ponta a ponta em tudo? Porque segundo eles, adotou uma política diferente da do WhatsApp e do Signal. Os servidores do Telegram servem de backup em nuvem (servidores) das mensagens para a comodidade dos usuários, que recuperam o conteúdo mais facilmente quando o app é reinstalado.

Na ponta a ponta, um backup em nuvem só é possível de outras formas. No WhatsApp, por exemplo, fica em serviços externos (Google Drive ou iCloud). O Signal não tem opção de backup em nuvem.

Dito tudo isto, vamos então resumir as vantagens e desvantagens dos aplicativos Telegram, WhatsApp e Signal —o preferido do ex-analista da NSA Edward Snowden. Os três contam com a opção de verificação em duas etapas, para que o usuário possa criar uma senha adicional para logar no app.

Telegram

Telegram - Divulgação - Divulgação
Imagem: Divulgação

Vantagens: É bem conhecido no Brasil e costuma ser a primeira alternativa quando o concorrente sai do ar. Oferece mais recursos nos chats e tem criptografia, como os demais.

A primeira camada de segurança (criptografia cliente-servidor) é usada nos chats privados e em grupo. Isso garante que a mensagem trocada só pode ser vista por quem enviou ou pelo destinatário, e as informações criptografadas circulam pelo sistema em nuvem da plataforma.

No caso do chats secretos, o Telegram adiciona uma camada de proteção (é a chamada criptografia cliente-cliente). O recurso precisa ser habilitado e, ao contrário do primeiro caso, a mensagem não a pela nuvem da empresa. Por isso, se alguém enviar uma mensagem e apagá-la, ela some do dispositivo do destinatário.

É mais difícil fazer capturas de telas da conversa na opção de chat secreto. No Android, não é permitido. Já no iOS é possível, mas a outra pessoa da conversa recebe um aviso da ação. Além disso, há um recurso de autodestruição de mensagens que pode programado pelo usuário, e o encaminhamento de mensagens é desativado.

Além disso, os chats secretos também estão vinculados à sessão de atual no dispositivo. "Se você sair do Telegram e entrar novamente, perderá todos os seus chats desse tipo", diz José Milagre, perito em crimes cibernéticos. "Isso dificulta bastante o o por hackers, que nesse caso encontrariam só os chats convencionais, ou por uma perícia, mesmo com as ferramentas de análise de memória que temos disponíveis", diz.

Desvantagens: a opção extra de conversa criptografada —o chat secreto— só pode ser ativada nas configurações do aplicativo. Outro ponto contra, dizem os especialistas, é que ele armazena seus dados e até o backup dos chats comuns (ou seja, os "não secretos") em servidores fora do país, o que faz muita gente desconfiar da segurança desses bancos de dados e deixa no ar a suspeita de que terceiros possam abrir ou invadir as conversas dos usuários —seja hackers ou alguém do próprio Telegram.

WhatsApp

Whatsapp - Reprodução/WhatsApp - Reprodução/WhatsApp
Imagem: Reprodução/WhatsApp

Vantagens: é o aplicativo de troca de mensagens mais usado no país e tem criptografia de fábrica de ponta a ponta; apenas os usuários conseguem ar o conteúdo das conversas. Permite fazer chamadas telefônicas ou em vídeo. Tem opções de backup em nuvem no Google Drive ou no iCloud, então para um hacker abrir o sigilo deste backup, seria preciso obter não só o ao WhatsApp, mas também ao e senha de usuário desses serviços.

Desvantagens: não tem o código aberto, o que significa que não há auditorias externas e independentes. Já foi alvo de decisões judiciais que tiraram o serviço do ar, deixando milhões de brasileiros na mão. E o backup em nuvem no Google Drive ou no iCloud não é criptografado.

    Signal

    Signal - Reprodução/Signal - Reprodução/Signal
    Imagem: Reprodução/Signal

    Vantagens: além de ser criptografado de ponta a ponta, tem código aberto, o que permite que o sistema de segurança seja testado por auditorias externas e independentes. Outro ponto interessante é que ele tem uma configuração que, quando ativada, apaga o conteúdo das mensagens automaticamente após a leitura. Também é possível iniciar uma conversa sem que seja necessário adicionar o contato. Para isso, basta fazer uma busca pelo número de telefone. O Signal também tem uma opção que impede capturas de tela das conversas.

    Desvantagens: é desconhecido para muita gente, não tem tantos recursos como o Telegram e essa história de apagar as mensagens após a leitura pode ser um problema quando você precisa ar o histórico.

    Dicas importantes para garantir a sua privacidade:

    1. Verifique nas configurações do app se a criptografia já está habilitada automaticamente para todos os tipos de conversa. Se houver a opção, utilize os chats secretos ou conversas privadas;
    2. Mantenha o aplicativo e o sistema operacional sempre atualizados;
    3. Tenha um antivírus instalado no seu aparelho;
    4. Evite clicar em links desconhecidos ou que não pareçam confiáveis;
    5. Apague periodicamente o histórico das conversas. "Mensagens com históricos grandes podem ser um prato cheio na mão de pessoas mal-intencionadas que tenham o a seu aparelho", recomenda o especialista da IBM.
    * Colaborou Marcelle Souza
    Errata: este conteúdo foi atualizado
    O Telegram não é um aplicativo russo. Embora fundado por russos, o app é registrado em Londres.