Então, o que é um mensageiro privado? Muitos diriam apenas que um aplicativo de mensagens é privado se as mensagens que transmite são criptografadas.
Mas, na realidade, a privacidade de mensagens é muito mais complexa do que isso. No congresso Chaos Communication, Roland Schilling e Frieder Steinmetz deram uma palestra na qual explicaram em palavras simples o que é um mensageiro privado e quais atributos um aplicativo de mensagens deve ter para ser considerado privado.
Isso é a primeira coisa sobre conversas privadas: se eles estão acontecendo cara a cara ou on-line, eles têm que ser confidenciais . Nenhuma outra pessoa além de você e seu parceiro de comunicação deve ser capaz de ouvir o que você está falando.
A segunda coisa é a autenticidade - você tem que saber que a pessoa que você está falando é na verdade a pessoa que você pretende falar. Na vida real, você reconhece o rosto da pessoa, mas com mensagens on-line, isso é mais complicado.
Se a conversa é realmente importante - e as conversas privadas geralmente são - você quer ter certeza de que seu parceiro de conversa ouve cada palavra que você diz, e vice-versa. Mais do que isso, você quer ter certeza de que a pessoa ouve exatamente o que você diz. Em outras palavras, para mensagens privadas on-line, você precisa saber que algum terceiro não corrompeu suas mensagens. E esse é o conceito de integridade , que também é crítico para mensagens privadas.
Vamos agora imaginar que um terceiro entrou na sala e ouviu uma parte de sua conversa. Em uma conversa na vida real, esse terceiro saberia apenas a parte da conversa que eles estavam realmente ouvindo, não o que você estava falando antes que eles vieram ou depois que eles saíram. No entanto, a Internet nunca esquece, e comunicação on-line não é tão simples como off-line. Isso nos leva a dois conceitos mais importantes por trás da mensagem privada: o sigilo
Futuro e o sigilo futuro .
O segredo direto não permite que o terceiro saiba tudo o que você discutiu com seu parceiro de comunicação antes de entrarem na sala, e o sigilo futuro não permite que o terceiro saiba o que você falou depois que eles saíram da sala.
Digamos que o tema que você estava discutindo era realmente delicado. Neste caso, se alguém o acusou de dizer alguma coisa sobre o assunto, você pode querer negá-lo. Se a conversa era privada, as únicas pessoas que podem citá-lo são você e seu parceiro de comunicação, então é a sua palavra ("Eu não disse isso!") Contra a deles ("Você disse isso!"). Nesse caso, ninguém pode provar nada, e isso nos leva ao importante conceito de negação .
A confidencialidade é mantida através do uso da criptografia. Existem diferentes tipos de criptografia, simétrica e assimétrica, ou seja, criptografia de chave pública . Mensageiros privados (neste caso, Schilling e Steinmetz revisaram Threema como exemplo) usam ambos, criando uma chave compartilhada da chave pública de uma pessoa e da chave privada da outra pessoa. Ou a chave privada da primeira pessoa é a chave pública da segunda pessoa - a matemática por trás da criptografia funciona da mesma maneira.
Portanto, a chave é idêntica para ambas as pessoas e única para os dois (nenhum outro par recebe a mesma chave). O aplicativo gera a chave independentemente e mantém a confidencialidade ao não transferi-la - ambas as pessoas têm direito depois que decidem conversar entre si.
Esse método também é usado para garantir a integridade - uma parte externa adicionando algo ao texto já criptografado tornaria ilegível. Nesse caso, seu parceiro de conversa receberia o que você enviou ou uma mensagem de erro (porque o mensageiro não poderia descriptografar o texto cifrado).
Para ainda maior confidencialidade, você pode querer esconder o fato de que você e seu parceiro de conversa falou um com o outro em tudo. Outra camada de criptografia cuida disso. A mensagem enviada é criptografada usando a chave compartilhada do seu parceiro de conversação - é como envolver a mensagem em um envelope, com um endereço nele. E então você criptografá-lo mais uma vez - colá-lo em outro envelope e enviá-lo para o endereço do servidor do mensageiro. Nesse caso, você usa a chave gerada com base na chave e na chave do servidor.
Portanto, este envelope dentro de um envelope é entregue ao servidor de mensagens. Se um atacante em potencial tentar olhar para ele, eles sabem que você o enviou, mas não o seu destino final. O servidor de messenger desenrola o envelope externo, vê o endereço de destino (não a própria mensagem), envolve o pacote em outro envelope e envia-o para o destinatário. Neste ponto, um invasor potencial pode ver apenas um envelope do servidor de messenger para o destinatário, mas não onde ele se originou.
Com um monte de envelopes voando em todas as direções, é difícil rastrear qual pessoa recebeu sua mensagem. Duro, mas não impossível: Se alguém fosse pesar todos os envelopes, eles poderiam encontrar dois envelopes do mesmo peso exato e associá-lo com seu parceiro de conversa. Para garantir que não pode acontecer, o sistema adiciona um peso aleatório para cada envelope, de modo que o envelope que você enviou eo envelope que seu parceiro recebeu nunca pesam o mesmo.
É mais difícil manter a autenticidade . Alguns aplicativos de mensagens usam endereços de e-mail ou números de telefone como IDs de usuário - essa é a maneira como o usuário prova que ele é quem afirma ser. No entanto, os números de telefone e os endereços de e-mail são dados confidenciais que talvez você não queira compartilhar com o aplicativo. Alguns - como o Threema - encorajam os usuários a usar uma ID diferente e trocar códigos QR para provar sua identidade.
Deianbility neste caso é conseguido através do envio de cada mensagem para ambos os participantes do diálogo. A chave é a mesma para ambas as pessoas, portanto, ou poderia ter enviado a mensagem. Portanto, mesmo que alguém consiga interceptar e descriptografar a mensagem recebida, eles não podem ter certeza de quem a enviou.
Que cuida da confidencialidade, autenticidade, integridade e negação. E quanto ao sigilo futuro e futuro? Se a chave privada e a chave pública de uma pessoa forem sempre iguais, se a chave compartilhada for comprometida, o invasor poderá descriptografar as mensagens anteriores e futuras.
Para limitar isso, as chaves devem ser periodicamente reeditadas pelo servidor. Se a chave for reeditada, digamos, uma vez por mês, um invasor só poderá ler o histórico de conversações para este mês e perderá a capacidade de monitorar a conversa uma vez que uma nova chave for emitida (na prática, a reedição acontece muito mais frequentemente) .
Se você estiver interessado em aprender mais, sugerimos que assista a este vídeo abaixo de 33C3. Nela, Schilling e Steinmetz explicam não só as idéias básicas, mas também falam sobre como eles têm Threema de engenharia reversa e descobriram como ele implementa os principais princípios de privacidade. Nós apreciamos o vídeo e espero que você também.
Fonte: Kaspersky Lab by John Snow
Leia também:
Mas, na realidade, a privacidade de mensagens é muito mais complexa do que isso. No congresso Chaos Communication, Roland Schilling e Frieder Steinmetz deram uma palestra na qual explicaram em palavras simples o que é um mensageiro privado e quais atributos um aplicativo de mensagens deve ter para ser considerado privado.
Os seis pilares da conversa privada
Para entender a ideia de mensagens privadas, Schilling e Steinmetz sugerem que imaginamos tentar ter uma conversa particular em uma festa. O que fazemos para tornar essa conversa privada? Nós provavelmente encontrar um quarto isolado, onde ninguém, mas a pessoa que queria falar com poderia ouvir.Isso é a primeira coisa sobre conversas privadas: se eles estão acontecendo cara a cara ou on-line, eles têm que ser confidenciais . Nenhuma outra pessoa além de você e seu parceiro de comunicação deve ser capaz de ouvir o que você está falando.
A segunda coisa é a autenticidade - você tem que saber que a pessoa que você está falando é na verdade a pessoa que você pretende falar. Na vida real, você reconhece o rosto da pessoa, mas com mensagens on-line, isso é mais complicado.
Se a conversa é realmente importante - e as conversas privadas geralmente são - você quer ter certeza de que seu parceiro de conversa ouve cada palavra que você diz, e vice-versa. Mais do que isso, você quer ter certeza de que a pessoa ouve exatamente o que você diz. Em outras palavras, para mensagens privadas on-line, você precisa saber que algum terceiro não corrompeu suas mensagens. E esse é o conceito de integridade , que também é crítico para mensagens privadas.
Vamos agora imaginar que um terceiro entrou na sala e ouviu uma parte de sua conversa. Em uma conversa na vida real, esse terceiro saberia apenas a parte da conversa que eles estavam realmente ouvindo, não o que você estava falando antes que eles vieram ou depois que eles saíram. No entanto, a Internet nunca esquece, e comunicação on-line não é tão simples como off-line. Isso nos leva a dois conceitos mais importantes por trás da mensagem privada: o sigilo
Futuro e o sigilo futuro .
O segredo direto não permite que o terceiro saiba tudo o que você discutiu com seu parceiro de comunicação antes de entrarem na sala, e o sigilo futuro não permite que o terceiro saiba o que você falou depois que eles saíram da sala.
Digamos que o tema que você estava discutindo era realmente delicado. Neste caso, se alguém o acusou de dizer alguma coisa sobre o assunto, você pode querer negá-lo. Se a conversa era privada, as únicas pessoas que podem citá-lo são você e seu parceiro de comunicação, então é a sua palavra ("Eu não disse isso!") Contra a deles ("Você disse isso!"). Nesse caso, ninguém pode provar nada, e isso nos leva ao importante conceito de negação .
Implementação da privacidade em mensageiros
Então, esses são os seis recursos que precisam ser implementados em um aplicativo de mensagens antes de podermos chamá-lo de privado. Eles são bastante fáceis de alcançar quando estamos falando sobre uma vida real, cara a cara conversa privada, mas quando se trata de serviços de mensagens há sempre um terceiro - o serviço em si. Como são os seis pilares implementados com este terceiro em mente?A confidencialidade é mantida através do uso da criptografia. Existem diferentes tipos de criptografia, simétrica e assimétrica, ou seja, criptografia de chave pública . Mensageiros privados (neste caso, Schilling e Steinmetz revisaram Threema como exemplo) usam ambos, criando uma chave compartilhada da chave pública de uma pessoa e da chave privada da outra pessoa. Ou a chave privada da primeira pessoa é a chave pública da segunda pessoa - a matemática por trás da criptografia funciona da mesma maneira.
Portanto, a chave é idêntica para ambas as pessoas e única para os dois (nenhum outro par recebe a mesma chave). O aplicativo gera a chave independentemente e mantém a confidencialidade ao não transferi-la - ambas as pessoas têm direito depois que decidem conversar entre si.
Esse método também é usado para garantir a integridade - uma parte externa adicionando algo ao texto já criptografado tornaria ilegível. Nesse caso, seu parceiro de conversa receberia o que você enviou ou uma mensagem de erro (porque o mensageiro não poderia descriptografar o texto cifrado).
Para ainda maior confidencialidade, você pode querer esconder o fato de que você e seu parceiro de conversa falou um com o outro em tudo. Outra camada de criptografia cuida disso. A mensagem enviada é criptografada usando a chave compartilhada do seu parceiro de conversação - é como envolver a mensagem em um envelope, com um endereço nele. E então você criptografá-lo mais uma vez - colá-lo em outro envelope e enviá-lo para o endereço do servidor do mensageiro. Nesse caso, você usa a chave gerada com base na chave e na chave do servidor.
Portanto, este envelope dentro de um envelope é entregue ao servidor de mensagens. Se um atacante em potencial tentar olhar para ele, eles sabem que você o enviou, mas não o seu destino final. O servidor de messenger desenrola o envelope externo, vê o endereço de destino (não a própria mensagem), envolve o pacote em outro envelope e envia-o para o destinatário. Neste ponto, um invasor potencial pode ver apenas um envelope do servidor de messenger para o destinatário, mas não onde ele se originou.
Com um monte de envelopes voando em todas as direções, é difícil rastrear qual pessoa recebeu sua mensagem. Duro, mas não impossível: Se alguém fosse pesar todos os envelopes, eles poderiam encontrar dois envelopes do mesmo peso exato e associá-lo com seu parceiro de conversa. Para garantir que não pode acontecer, o sistema adiciona um peso aleatório para cada envelope, de modo que o envelope que você enviou eo envelope que seu parceiro recebeu nunca pesam o mesmo.
É mais difícil manter a autenticidade . Alguns aplicativos de mensagens usam endereços de e-mail ou números de telefone como IDs de usuário - essa é a maneira como o usuário prova que ele é quem afirma ser. No entanto, os números de telefone e os endereços de e-mail são dados confidenciais que talvez você não queira compartilhar com o aplicativo. Alguns - como o Threema - encorajam os usuários a usar uma ID diferente e trocar códigos QR para provar sua identidade.
Deianbility neste caso é conseguido através do envio de cada mensagem para ambos os participantes do diálogo. A chave é a mesma para ambas as pessoas, portanto, ou poderia ter enviado a mensagem. Portanto, mesmo que alguém consiga interceptar e descriptografar a mensagem recebida, eles não podem ter certeza de quem a enviou.
Que cuida da confidencialidade, autenticidade, integridade e negação. E quanto ao sigilo futuro e futuro? Se a chave privada e a chave pública de uma pessoa forem sempre iguais, se a chave compartilhada for comprometida, o invasor poderá descriptografar as mensagens anteriores e futuras.
Para limitar isso, as chaves devem ser periodicamente reeditadas pelo servidor. Se a chave for reeditada, digamos, uma vez por mês, um invasor só poderá ler o histórico de conversações para este mês e perderá a capacidade de monitorar a conversa uma vez que uma nova chave for emitida (na prática, a reedição acontece muito mais frequentemente) .
Embrulhar
Assim termina nossa breve introdução ao conceito de mensagens privadas. Na verdade, é muito mais complicado, porque os aplicativos de mensagens modernos precisam lidar com arquivos de mídia, bate-papos em grupo e, às vezes, até com chamadas de vídeo.Se você estiver interessado em aprender mais, sugerimos que assista a este vídeo abaixo de 33C3. Nela, Schilling e Steinmetz explicam não só as idéias básicas, mas também falam sobre como eles têm Threema de engenharia reversa e descobriram como ele implementa os principais princípios de privacidade. Nós apreciamos o vídeo e espero que você também.
Fonte: Kaspersky Lab by John Snow
Leia também:
Nenhum comentário:
Postar um comentário