Por Marcelo Tavares de Santana [*]

Atualmente é muito natural trocar números de telefone com outras pessoas e começar uma conversa. Também é comum pegar números de outras pessoas com aquelas que confiamos, de um conhecido em comum até uma indicação de prestadores de serviço, etc. Isso acontece porque existe uma confiança percebida no sistema telefônico de comunicação, pois, apesar das possibilidades de grampeamento de comunicação ou até mesmo de redirecionamento de conversa, entende-se que o gasto de corromper o sistema telefônico é maior que um possível benefício e também deixaria registros da fraude. É muito menos custoso tentar uma fraude nas pontas de comunicação, como fingir ser uma empresa ou uma pessoa, quando não se tem um contato visual na comunicação, técnica bastante comum em golpes por telefone ou aplicativos de mensagem.

Com o avanço e a popularização das tecnologias deep fake, onde sistemas computacionais podem imitar imagem com movimento e voz de pessoas, precisamos ter mais cuidado na confiança que damos àqueles que se comunicam conosco. Alguns cuidados básicos podem reduzir danos com farsas ou golpes, como pedir uma confirmação extra de qualquer pedido, por exemplo, pedindo que enviem um e-mail também com o mesmo pedido. Mas existem formas computacionais seguras e à prova de deep fakes que precisam estar cada vez mais presentes no nosso dia a dia, que estão relacionadas ao conceito de Rede de Confiabilidade, também chamado de Rede de Confiança. Na Figura 1 vemos um modelo de rede de confiança com confiança direta (Ingo confia em Eva), indireta (Ingo confia em Axel que confia em Manfred, assim Ingo confia em Manfred) e até indireta em mais de um passo (Ingo confia em Axel, que confia em Manfred, que confia em Susi, assim Ingo confia em Susi).

Figura 1: Modelo de rede de confiança (fonte: https://pt.wikipedia.org/wiki/Rede_de_confian%C3%A7a)

Quando usamos confiança indireta para trocar ideias ou planejar algum encontro presencial, preferencialmente em local público ou vigiado para o primeiro contato, podemos continuar a comunicação, pois haverá um momento em que será realizado o contato direto, permitindo o estabelecimento da confiança direta. Mas quando a comunicação fica quase toda digital é preciso adicionar checagem extra, que muitas vezes fica embutida em algum programa como os aplicativos e sites de banco. No entanto, quando não temos uma empresa responsável pela segurança se preocupando com essa autenticação de pessoas, ou dispositivos, cabe a nós construir a rede de confiança. Provavelmente a tecnologia mais difundida onde as pessoas têm o controle rede da confiabilidade é o padrão OpenPGP [1]; o aplicativo Kleopatra abordado no Mapa de Segurança Digital (11) [2] utiliza esse padrão, assim como o aplicativo gnupg [3], amplamente utilizado como opção software livre para criptografia assimétrica. Em relação à nossa prática de trocar contatos telefônicos, tem mais dois hábitos simples que precisamos adotar para superarmos as armadilhas das tecnologias deep fake e outras fraudes. O primeiro hábito é usar programas de e-mail para etapas mais sérias de qualquer comunicação, pois o OpenPGP é usado vinculado a esse meio de comunicação. O segundo hábito é a troca presencial e a conferência de fingerprints (impressões digitais) de chaves públicas.

Quando criamos uma par de chaves criptográficas para comunicação assimétrica, também é criado um número chamado fingerprint, que deve ser trocado entre pessoas por meios analógicos presencialmente, como uma anotação ou impressão em papel, podendo estar até impresso num cartão de visitas. Para anotar teu fingerprint usando o Kleopatra clique com o botão direito do mouse na tua chave criptográfica e escolha Detalhes, anote quantas vezes forem necessárias para entregar pessoalmente para as pessoas que estarão na tua rede de confiança de comunicação criptografada; peça para elas fazerem o mesmo. Depois que importarmos as chaves públicas de outras pessoas podemos registrar nossa confiança nas chaves públicas delas com a opção Certificar, quando é mostrada a impressão digital da chave pública que deverá ser conferida com a que recebemos pessoalmente no papel; se for o mesmo número, podemos terminar de certificar a chave pública, e assim por diante com a outras. Observação: nunca aceitei um fingerprint de terceiros, pegue somente diretamente com o autor da chave pública.

Usar o Kleopatra para criar, criptografar, assinar, certificar etc. tem uma importância didática na prática de usar criptografia assimétrica, mas outros aplicativos deixam o uso mais confortável e tão seguro quanto qualquer aplicação OpenPGP, desde que façamos a certificação pelo método anteriormente descrito. No caso de comunicação por e-mail o Thunderbird [4] é uma ótima opção de programa, no Linux recomendo também o Claws Mail [5]. O aplicativo para smartphones Signal [6] permite o mesmo tipo de certificação de chaves que abordamos; para isso, num encontro presencial ambos precisam clicar no contato e escolher a opção Ver número de segurança, sigam as instruções e, caso os números sejam iguais, marquem o contato como verificado. Notem que a partir desse momento aparecerá uma marca de verificação no contato, e assim ninguém poderá fingir ser essa pessoa a partir de outro aparelho; como um smartphone pode mais facilmente ser extraviado, lembrem-se de configurar um número PIN e as opções de privacidade.

Cuidado com os aplicativos que dizem fazer criptografia ponta a ponta mas não permitem certificação de contato, isso é uma prática ilusória de autenticação de usuários. Aplicações de webmail não permitem criptografia assimétrica, pois tua chave privada não pode ser enviada para a empresa do serviço de e-mail, mas é possível configurar uma aplicação de e-mail no computador com um serviço de webmail, fazendo um uso misto com algumas mensagens trocadas pelo navegador web, outras por smartphone e as mais sérias usando criptografia no programa do computador; o Signal Desktop ajuda na produtividade com computador, apesar de não ser uma comunicação mista, pois vai depender de todos terem a aplicação.

Como é muito mais fácil usar smartphones no encontro com amigos, abaixo segue uma proposta de prática de comunicação assimétrica certificada para as próximas semanas.

  • Semana 1: instale e divulgue o Signal para teus relacionamentos;
  • Semana 2: encontre família e amigos para conversar e façam a verificação pelo aplicativo;
  • Semana 3: continuem encontrando amigos e configure PIN e opções de privacidade;
  • Semana 4: instale o Signal Desktop e troque arquivos de trabalho por ele.

Nosso mapa ganhou mais detalhamentos em criptografia assimétrica (Figura 2) com Rede de confiabilidade e Checagem de fingerprints, e podemos dizer que estamos bem acima da média de práticas de segurança com os conceitos tratados até o momento.

Figura 2: Mapa de Segurança Digital com acréscimos em criptografia assimétrica

OpenPGP e Signal são muito úteis quando precisamos confirmar alguém. Mesmo que seus familiares e contatos prefiram usar outras formas de comunicação, estimule a terem essas opções como redundância. Assim, quando desconfiarem de alguma fraude, frases como “me envia no Signal” ou “me manda por e-mail criptografado” vai desconsertar qualquer possível estelionatário.

Boa comunicação segura a todos!

Notas

[*] Professor de Ensino Básico, Técnico e Tecnológico do Instituto Federal de São Paulo.
[1] https://en.wikipedia.org/wiki/Pretty_Good_Privacy#OpenPGP
[2] https://passapalavra.info/2022/10/146164/
[3] https://gnupg.org/
[4] https://www.thunderbird.net/pt-BR/ , https://support.mozilla.org/pt-BR/kb/introducao-criptografia-ponta-a-ponta-thunderbird
[5] https://www.claws-mail.org/
[6] https://signal.org/pt_BR/

7 COMENTÁRIOS

  1. Mas André,o Signal é centralizado, está hospedado em servidores lá nos EUA,sob as leis daquele país… também está no ramo das moedas Crypto/Coins. Não é uma boa dica não! Preferível as possibilidades de autohospedar um XMPP ou usar o protocolo Matrix,sem falar no Sessions,Briar e outrose.

  2. null diz o que diz porque pode hospedar um XMPP ou Matrix, ou sabe como fazer. E os trocentos outros que não podem ou sabem, como fazem? Ficam no WhatsApp?

  3. E o que diferencia essas organizações da Meta? Elas não vão pegar meus dados de qualquer jeito?

  4. Pensando no público em geral, entendo que é mais interessante mostrar uma extensão no Firefox a comandos em modo texto, um Signal a um XMPP. De fato a centralização é um problema, mas é válido começar por algo que os usuários irão encontrar seus amigos e estimular uma cultura de verificação de autor, checando fingerprint, etc. Em algum momento abordaremos a importância das redes federadas, e assim poderemos diferenciar plataformas e propôr soluções.

  5. O Signal mudou e está muito problemático:

    1. Adotou Moeda Crypto no aplicativo/plataforma,e isso abre uma galáxia de possibilidades pra todo o lixo Coin.
    2. Anunciou o fim do suporte ao SMS, amplamente adotado mundo afora,inclusive por jornalistas,ativistas e militantes,muitos ameaçados mundo afora;
    3. Acabou de adotar e disponibilizar o Stories,assumindo mais o Feed de rede social e menos a função de Chat. Se isso é a evoluído Signal, é mais uma tralha pra inchar o aplicativo.
    4. O código do servidor,que esteve durante muito tempo disponível para auditoria, está sendo trancafiado. Adeus ao código aberto e auditorias externas.
    5. Não avalian eliminar o registro de usuário por outras formas que não seja o número do celular do usuário…. duro golpe na privacidade,.

    A despeito de ainda estar em evolução,defendo as ferramentas descentralizada,no limite àquelas sob o guarda chuva da rede Tor.

  6. De novo, eu e null debatendo Signal e Matrix. Já o fizemos há algum tempo. Remeto, por isso, a um primeiro e a um segundo comentário meu, de 2021, em resposta a pium. Depois, a um terceiro comentário meu, de setembro de 2022, em resposta a null, sobre o mesmo assunto.

    Comento, então, cada um dos pontos indicados por null.

    1. Signal anunciou criptomoeda na plataforma? Sessions também tem. Na verdade, a criptomoeda no Sessions veio primeiro, e o mensageiro veio como comunicação entre usuários da moeda. No mais, basta não usar, porque não afeta em nada o protocolo de transmissão segura de mensagens. Também acho criptomoedas bloatware, mas não afeta em nada a principal funcionalidade do aplicativo.

    2. Signal anunciou fim do suporte a SMS? Sim, isto é um problema, pelas razões indicadas por null. Por outro lado, a graça do software livre é a possibilidade de pegar o mesmo código e fazer outra coisa. Fizeram um fork do Signal chamado Silence, que pega justamente a parte de criptografia de SMS e integra novamente o SMS ao Signal (https://f-droid.org/en/packages/org.smssecure.smssecure/). A última atualização é de 2019, mas o fork continua funcionando normalmente para criptografar SMS.

    3. Signal incorporou stories? OK, mais bloatware. Em que isso afeta a segurança do protocolo? Em nada. Você tem razão, pode inchar o aplicativo. E? No que afeta a segurança do protocolo de transmissão de mensagens? Em nada.

    4. Signal está fechando código? Não acho. Aqui está o código do servidor (https://github.com/signalapp/Signal-Server), aqui o do app Android (https://github.com/signalapp/Signal-Android), aqui o do app iOS (https://github.com/signalapp/Signal-iOS), aqui o do app desktop (https://github.com/signalapp/Signal-Desktop), aqui o do protocolo (https://github.com/signalapp/libsignal). Todos, sem exceção, com atividade muito recente. Onde está o problema? Na tática FUD, claro.

    5. Signal usa o número do telefone como forma de identificação? Sim, isso é, aparentemente, um problema. Mas como o Signal usa esse número? null nunca entra nesses detalhes, então me permito explicar: por meio de um processo chamado sealed sender, ou “remetente selado”, que existe no Signal desde 2018. Por meio desta tecnologia, acontecem duas coisas: primeiro, a única informação que poderia identificar alguém é usada somente para dizer que este número usa Signal, e qual a última vez que logou; segundo, mesmo esta informação é criptografada, sendo impossível ao próprio Signal atender ordens judiciais de identificação, como a própria empresa demonstra de forma bastante transparente.

    Tem dúvidas do que falei? O código está lá, aberto, para quem quiser analisar. Imagino que null saiba fazê-lo.

    Ao menos no caso do Signal, a estrutura centralizada — que é um problema — é gerida por uma empresa que dá várias provas de ter compromisso com a transparência. Isto pode ser dito da grande quantidade de instâncias Matrix existentes por aí? Não. O código é aberto, a gestão das instâncias/servidores nem sempre.

    Outro ponto: qual a capacidade de um usuário comum, sem muito conhecimento de informática, de avaliar todos estes itens em cada uma das instâncias Matrix existentes antes de escolher alguma delas? A descentralização é boa, mas traz inconvenientes deste tipo.

    E assim vamos seguindo no debate. Entendo a posição de null, de defender incondicionalmente as ferramentas descentralizadas. Faço o mesmo. Só não concordo com FUD.

DEIXE UMA RESPOSTA

Please enter your comment!
Please enter your name here