Como Cyphr funciona

Nossos objetivos do projeto

O Cyphr é um aplicativo de envio de mensagens seguro. Os objetivos principais projetados no aplicativo incluem:

  • A comunicação tem que ser facilitada ao máximo

    Idealmente, o aplicativo é tão fácil de se usar como qualquer aplicativo de mensagens normais não criptografadas. Os pontos onde a criptografia é necessária não devem sobrecarregar o usuário com conhecimento ou atividade extra exceto quando absolutamente necessário.

  • O usuário pode fazer escolhas informadas sobre seu nível de privacidade e segurança

    Caso uma função seja lançada requerendo o compartilhamento de informações, o usuário tem a opção de desativar esta função. Isto garante que o usuário mantenha o controle sobre sua experiência e permite que personalize o aplicativo de acordo com os compromissos disposto a fazer entre segurança e funcionalidade.

  • Golden Frog não tem nenhum conhecimento sobre o conteúdo das mensagens

    Os dados da mensagem são sempre codificados de forma que só o remetente e o destinatário podem visualizar os dados. Isto inclui quaisquer servidores ou dispositivos de rede Golden Frog entre o remetente e o destinatário.

  • Golden Frog armazena apenas a quantidade mínima de metadados necessários para ajudar a transmitir o conteúdo da mensagem

    Para enviar e receber mensagens através dos sistemas da Golden Frog , alguns metadados devem ser conhecidos. Além disso, devido à forma como a Internet funciona, outros metadados tem de ser conhecidos. O Golden Frog armazena somente os metadados necessários para entregar a mensagem ao seu destino final, e só armazena metadados pelo tempo suficiente para garantir aquela entrega.

Tecnologias de criptografia explicadas

Encriptação de Chave Simétrica

Uma chave é como uma senha que pode ser usada para abrir um cofre. Para encriptar uma mensagem, o remetente coloca a mensagem no cofre, e então tranca o cofre com a chave. Uma vez que o cofre está fechado, ninguém pode ler a mensagem a não ser que tenha a chave. O destinatário usa a chave para abrir o cofre e tirar a mensagem. Essa é a descodificação.

Com a criptografia de chave simétrica, o remetente e o destinatário possuem a mesma chave. Eles precisam compartilhar a chave entre eles, o que significa que precisam confiar um no outro. A criptografia de chave simétrica é geralmente mais popular porque é mais rápida, mas como duas pessoas possuem a mesma chave, nunca pode ter certeza que a outra parte não compartilhou a chave.

Encriptação da Chave Privada

Com criptografias de chave pública, duas chaves são usadas - uma chave pública e uma chave privada. O remetente usa a chave pública do recipiente para abrir o cofre e colocar mensagens no cofre do recipiente. A chave pública só pode ser utilizada para colocar mensagens no cofre do recipiente, então mesmo que o cofre esteja " aberto," o remetente não pode acessar nada dentro. O cofre tem uma abertura de apenas um lado. O remetente usa a chave pública do recipiente para criptografar a mensagem. Para ler a mensagem, o recipiente usa sua chave de privacidade para abrir o cofre. A chave privada é o que permite que ele envie mensagens. Nós chamamos isso de chave privada pois apenas o recipiente tem acesso à ela, e porque ela abre apenas o cofre do recipiente, podemos nos certificar que a mensagem só pode ser lida pelo recipiente. Além disso, o recipiente usa a chave de privacidade para descriptografar a mensagem.

A chave pública e a chave privada são relacionadas por matemática muito complexa, que permite que funcionem. O importante é que, com este método, desde que o remetente saiba a chave pública do destinatário, o remetente pode enviar mensagens que ele sabe que somente o destinatário (ou alguém de posse da chave privada do destinatário) pode ler.

Chave de verificação pública (Assinatura)

Usando as mesmas chaves utilizadas para a criptografia, o remetente pode carimbar suas mensagens de tal maneira que ele prova que as enviou. Neste caso, o remetente carimbas a mensagem com sua própria chave privada. Quando o destinatário recebe a mensagem, ele pode encontrar a chave pública do remetente e a chave pública vai alinhar com o carimbo do remetente, provando que o destinatário - e somente o destinatário - enviou a mensagem. Chamamos o carimbo a assinatura e chamamos o processo de alinhar o carimbo de verificação .

Com o método, um remetente pode verificar com o destinatário se ele recebeu a mensagem. Isso impede que alguém finja ser outra pessoa para enviar mensagens falsas.

Processo de Transmissão de Mensagem

O Cyphr combina os conceitos de criptografia descritos acima para produzir uma solução criptografada de ponta a ponta. Quando alguém envia uma mensagem para outra pessoa, a mensagem é criptografada no dispositivo do remetente (celular, web browser, computador etc.), não sendo descriptografada antes de chegar no dispositivo do destinatário. O processo de enviar uma mensagem em alto nível é:

  1. O remetente assina sua mensagem com sua chave privada para que o destinatário possa saber que ele a enviou.
  2. O remetente cria uma chave descartável que só usa uma vez.
  3. O remetente criptografa a mensagem e assinatura com a chave de uso uma só vez.
  4. O remetente vê todas as chaves públicas do destinatário.
  5. O remetente encripta a chave de uso único com cada chave pública do destinatário
  6. O remetente assina a chave encriptada de uso único com a chave privada do remetente para que o destinatário saiba que ele a criou.
  7. Os enviadores enviam tanto as chaves criptografadas e mensagens criptografadas para o recipiente através dos servidores Cyphr da Golden Frog

Todo este trabalho é feito no dispositivo do remetente, então Golden Frog não tem acesso à mensagem original. Como a mensagem é criptografada por uma chave simétrica Golden Frog não tem, Golden Frog não pode descriptografar a mensagem. Como a chave simétrica é criptografada pela chave pública de cada destinatário, somente os destinatários podem acessar a chave necessária para descriptografar a mensagem. Neste momento, Golden Frog está armazenando dados criptografados que não podem ser decifrados até serem lidos por um destinatário.

O processo de receber uma mensagem é:

  1. O destinatário baixa a chave criptografada e a mensagem criptografada dos servidores Golden Frog Cyphr
  2. O destinatário usa sua chave particyular para descriptografar a chave simétrica criptografada
  3. O destinatário usa a chave simétrica para descodificar a mensagem encriptada
  4. O destinatário procura a chave pública do remetente
  5. O destinatário usa a chave pública para verificar a mensagem e a chave simétrica criptografada enviada pelo remetente

Todo este trabalho é feito no dispositivo do destinatário, que é o único lugar que a chave privada vive. Enquanto o dispositvo estiver devidamente seguro, apenas o destinatário pode ler as mensagens. Mesmo que alguém fizesse o download da mensagem, não teria a chave privada do destinatário e não poderia ler a chave simétrica. Sem a chave simétrica, ninguém pode ler a mensagem encriptada.

Outras considerações

Além do processo de transmissão de mensagens descrito acima, o Cyphr também implementa o seguinte:

  1. Quanto um destinatário lê uma mensagem do servidor, sua cópia da mensagem é apagada do servidor
  2. Sempre que possível, o histórico de mensagens no dispositivo é criptografado usando as opções de criptografia disponíveis localmente
  3. Ao armazenar mensagens para entrega, os servidores Cyphr somente armazenam a hora do recebimento e os metadados do destinatário (os dados sobre o remetente não são armazenados, pois não são necessários)

Mais especificações

  1. Um algoritmo RSA comprovado com 30 anos de uso é utilizado tanto para criptografia de chave pública como para verificação
  2. A criptografia de 256-bit AES é usada para a criptografia simétrica de mensagens
  3. O TLS é usado para a transmissão segura dos dados de mensagens criptografadas de e para servidores Cyphr
  4. Os servidores do Cyphr estão localizados em Zurique, na Suíça, onde cumprem as leis suíças de privacidade