00 Chiffrographie

XChaCha20-Poly1305

RFC 8439 — chiffrement authentifié avec un nonce de 192 bits.

01 Overview

Pourquoi un chiffre symétrique pour tout.

01

Les chiffres symmétriques sont rapides

Le chiffrement symétrique authentifié tourne à gigaoctets par seconde sur un processeur moderne, des ordres de grandeur plus rapides que les opérations à clé publique. L'utilisation de primitives symétriques pour les données réelles est le seul choix pratique à l'échelle.

02

Impact quantique limité

L'algorithme de Grover donne aux ordinateurs quantiques une accélération de racine carrée contre les chiffrements symétriques. Une clé 256 bits conserve une sécurité efficace de 128 bits contre un attaquant quantique, bien au-delà de toute capacité de force brute plausible.

03

XChaCha20 est un chiffre de flux moderne

ChaCha20 est un chiffrement de flux conçu par Daniel J. Bernstein en 2008, sélectionné pour sa simplicité, ses performances et sa résistance aux attaques latérales. Il est largement utilisé: TLS 1.3, WireGuard, OpenSSH.

02 Details

Comment fonctionne XChaCha20-Poly1305 dans UltimaOS.

Les charges utiles enveloppées sur UltimaOS — messages de chat, courrier, fichiers, notes, tâches, documents et tableurs — sont chiffrées avec XChaCha20-Poly1305 en utilisant une clé symétrique 256 bits dérivée de la session ML-KEM-768. Les événements du calendrier et l'historique des conversations d'IA sont en dehors de cette enveloppe aujourd'hui.

01

Clés de session 256 bits

Chaque conversation, partage de fichier ou appel utilise une nouvelle clé symétrique 256 bits, dérivée de l'encapsulation ML-KEM-768. Il n'y a pas de clé symétrique à long terme sur le serveur.

02

Nonces aléatoires de 192 bits

Le nonce 192 bits de XChaCha20 (24 octets) est suffisamment grand pour que les nonces aléatoires puissent être utilisés en toute sécurité — la probabilité de collision reste négligeable même après 2'64 messages avec la même clé.

03

Authentification Poly1305

Poly1305 calcule un authentificateur de 16 octets sur le chiffrement et toutes les données associées. Le tapage avec le code ou les en-têtes invalide la balise, et le client qui reçoit refuse de déchiffrer.

04

Diffusion de fichiers

Les fichiers sont divisés en morceaux, chacun avec son propre nonce et Poly1305. Les morceaux peuvent être vérifiés et déchiffrés dans n'importe quel ordre, permettant le téléchargement en streaming sans attendre le fichier complet.

03 Key points

Considérations pratiques.

  1. 01

    L'accélération matérielle est partout

    Les processeurs modernes d'Intel, AMD et ARM comprennent tous des instructions AES-NI ou des instructions vectorielles équivalentes. ChaCha20 est le chiffre choisi pour les systèmes sans matériel AES (appareils mobiles) ou pour la résistance aux canaux latéraux.

  2. 02

    Pas de réutilisation

    La génération Nonce utilise un compteur par message combiné avec le préfixe aléatoire nonce. Avec des nonces de 192 bits, la réutilisation est statistiquement impossible même après des milliards de messages par session.

  3. 03

    Mise en œuvre continue

    Les implémentations de référence de ChaCha20 sont à temps constant, éliminant les fuites de canaux latéraux du matériel clé par l'analyse du calendrier ou du cache.

  4. 04

    Audits des bibliothèques

    Les primitives chiffrographiques proviennent de @noble — des implémentations auditées, largement utilisées, pure-TypeScript examinées par la communauté chiffrographique — courant dans le client que vous pouvez inspecter. N'importe qui est libre de vérifier notre utilisation d'eux.

04b References

Standards and references.

05 Frequently asked

Questions concernant XChaCha20-Poly1305.

En quoi consiste XChaCha20-Poly1305 ?

Short answer

XChaCha20-Poly1305 est un chiffrement authentifié avec le chiffrement des données associées (AEAD). Il combine le chiffrement du flux XChaCha20 (24 octets nonce variante de ChaCha20) avec le MAC Poly1305 pour l'authentification. Elle est spécifiée dans la RFC 8439 (RFC 8439)

Pourquoi utiliser XChaCha20 au lieu de AES-256-GCM?

Short answer

Les deux sont d'excellents chiffres. XChaCha20 a l'avantage pratique de mettre en œuvre des logiciels à temps constant sans exiger des instructions AES matérielles, ce qui le rend plus robuste contre les attaques latérales sur les appareils mobiles. Le nonce de 192 bits rend également les constructions aléatoires sûres.

Quelle est la taille de la clé efficace contre les ordinateurs quantiques?

Short answer

L'algorithme de Grover fournit une accélération quadratique contre les chiffrements symétriques. Une clé 256 bits conserve une sécurité quantique efficace de 128 bits, ce qui est bien au-delà de toute capacité de force brute plausible, y compris par ordinateur quantique.

Quelle est la différence entre ChaCha20 et XChaCha20 ?

Short answer

XChaCha20 utilise un nonce de 192 bits (24 octets) au lieu du nonce de 96 bits de ChaCha20 (12 octets). Les bits extra nonce sont dérivés en exécutant ChaCha20 avec une clé dérivée. Le nonce plus long permet une génération de nonce aléatoire sans souci d'épuisement.

Qu'est-ce que Poly1305?

Short answer

Poly1305 est une fonction de hachage universel rapide conçue par Daniel J. Bernstein. Dans les constructions AEAD comme XChaCha20-Poly1305, Poly1305 calcule un authentificateur de 16 octets sur le chiffrement qui prouve que le chiffrement n'a pas été altéré.

XChaCha20-Poly1305 est-il utilisé à l'extérieur de UltimaOS?

Short answer

Oui. TLS 1.3 (RFC 8446) prend en charge ChaCha20-Poly1305 comme une suite de chiffrement. WireGuard VPN utilise ChaCha20-Poly1305 exclusivement. OpenSSH utilise ChaCha20-Poly1305 depuis la version 6.5.

Et si une collision avec Poly1305 se produit?

Short answer

Poly1305 est un hachage universel; sa sortie est impardonnable selon des hypothèses chiffrographiques standard. Même si une collision se produisait (probabilité ~2^-128), elle ne permettrait pas la contrefaçon sans briser Poly1305 lui-même, ce qui impliquerait la rupture de la SEA.

Libéré pour toujours

Gratuit pour les particuliers et les familles. Pour toujours.

Pas de publicité, pas d'extraction de données, pas d'horloge d'essai. Les comptes individuels et familiaux sont gratuits — en permanence. Les organisations paient par siège, et c'est ce qui les finance.

Demandez votre compte Sur invitation seulement pendant que nous évaluons