O xx messenger desvincula os dados do remetente e do destinatário e protege contra ataques de análise de tráfego que prejudicam muitas outras abordagens de privacidade encontradas em roteamento de cebola, procurações, e outros mixnets. Todas as mensagens são roteadas por meio de uma mixnet em lote descentralizada gerenciada por um blockchain. Cinco equipes de nós são montadas aleatoriamente e designadas para processar um lote a cada três segundos, todas as quais precisariam ser comprometidas para quebrar a não vinculação do remetente-receptor. Você pode ler mais sobre esse processo em nosso O que é cMix? página wiki.
Cada mensagem no xx messenger é criptografada com Criptografia simétrica XChaCha20. A criptografia é protegida por quantum usando chaves de criptografia derivadas de uma combinação de um Isogenia Supersingular Diffie–Helman (SIDH) algoritmo de 3024 bits para troca de chaves pós-quântica e o clássico Diffie–Helman (DH) algoritmo de 3072 bits. O xx messenger também fornece sigilo futuro e segurança pós-compromisso com um mecanismo de redigitação periódica em um processo às vezes conhecido como catraca.
Uma explicação completa da criptografia de ponta a ponta, com links para o código-fonte relevante, está disponível em nosso wiki aqui: Mensagens criptografadas de ponta a ponta em xx messenger
Aviso – 30/07/2022: SIDH foi considerado vulnerável convencionalmente a partir de 30/07/2022. detalhes podem ser encontrados aqui. A equipe está trabalhando em uma correção.
Usamos um hash com chave de 256 bits código de autenticação de mensagem, HMAC-SHA256 no xx messenger.
Os usuários podem optar por criar seu perfil adicionando e registrando seu endereço de e-mail ou número de telefone. Nós usamos Twilio, um serviço de terceiros, para concluir o processo de verificação por e-mail ou telefone com mensagens SMS. Assim que o usuário confirmar seu código de verificação, um hash salgado (256 bits Blake2b) de seu e-mail ou número de telefone é armazenado no banco de dados. O xx messenger protege as informações pessoais dos usuários e nunca armazena texto simples não criptografado em nenhum servidor.
Os usuários podem optar por usar apenas seu nome de usuário exclusivo por meio da descoberta do usuário. Eles também podem usar códigos QR diretamente para ignorar totalmente o serviço User Discovery.
Uma descrição completa da descoberta do usuário está disponível no wiki: Descoberta do usuário
Usamos o Firebase Android ou IOS quando o aplicativo móvel é fechado. No entanto, nem todas as mensagens são reais, obscurecendo assim quem recebe quais notificações. Você pode ler mais sobre nosso sistema de notificações de preservação de privacidade aqui em nosso wiki: Colisões e notificações de ID
Normalmente, as mensagens enviadas com xx messenger viajam pela rede em poucos segundos. Você pode ver quais equipes estão processando mensagens e com que rapidez elas as processam no painel: https://dashboard.xx.network
Nós usamos 256 bits Criptografia simétrica XChaCha20 com uma chave derivada de uma senha fornecida pelo usuário para backups.