Threema utilise un cryptage asymétrique éprouvé pour protéger les messages et appels entre l’expéditeur et le destinataire, ainsi que les communications entre l’application et les serveurs. Threema utilise la bibliothèques open-source NaCl pour le chiffrage. Les applications Threema étant open source, toute personne assez expérimentée en la matière peut confirmer personnellement la sécurité de Threema.
Deux couches de chiffrage sont présentes : la couche de bout en bout entre les participants à une conversation et une couche supplémentaire de protection contre tout espionnage de la connexion entre l’application et les serveurs. Cette dernière est essentielle pour éviter qu’un antagoniste capturant des paquets réseau (p.ex. sur un réseau sans fil public) puisse savoir qui est authentifié et qui communique avec qui.
Tous les cryptages et décryptages ont lieu directement sur l’appareil et l’utilisateur contrôle les échanges de clé. Cette procédure garantit qu’aucun tiers – pas même les opérateurs du serveur – ne peut décrypter le contenu des
messages et appels.
Force du chiffrage : Le cryptage asymétrique basé sur l’EEC utilisé par Threema a une force de 255 bits. Selon une estimation du NIST (page 54), cela correspond au moins à une force fournie par un chiffrement RSA sur 2048 bits. ECDH sur Curve25519 est utilisé conjointement à une fonction de hachage par nonces aléatoires pour dériver une clé symétrique unique à 256 bits pour chaque message et le chiffrement du flux XSalsa20 est alors utilisé pour chiffrer le message. Un code d’authentification à 128 bits du message (MAC) est également ajouté à chaque message pour détecter d’éventuelles manipulations/contrefaçons.
Perfect Forward Secrecy : Threema prend en charge Perfect Forward Secrecy. De plus amples détails à ce sujet sont consignés dans cette entrée des FAQ.Pour connaître les informations techniques détaillées sur la cryptographie de Threema, merci de consulter le Livre blanc sur la cryptographie.