CoderTools

Chiffrement/Déchiffrement TEA/XTEA/XXTEA

Famille Tiny Encryption Algorithm - Chiffres par blocs symétriques légers

Avis de sécurité

TEA/XTEA/XXTEA sont des chiffres légers principalement utilisés dans les systèmes embarqués et les jeux. Pour les applications à haute sécurité, veuillez utiliser AES à la place.

Tous les algorithmes de la famille TEA utilisent une clé fixe de 128 bits (16 octets).
Options de format

À propos de la famille TEA

La famille TEA (Tiny Encryption Algorithm) comprend trois chiffres par blocs apparentés conçus par Roger Needham et David Wheeler à Cambridge. TEA a été introduit en 1994, XTEA en 1997 pour corriger les faiblesses de TEA, et XXTEA en 1998 comme chiffre par blocs de longueur variable.

Ces algorithmes sont connus pour leur simplicité et leur faible empreinte de code, ce qui les rend idéaux pour les systèmes embarqués, les microcontrôleurs et les applications où la taille du code est critique. Ils sont particulièrement populaires dans le développement de jeux pour le chiffrement des ressources et des fichiers de sauvegarde.

Comparaison des algorithmes

Algorithme Taille du bloc Longueur de clé Tours Sécurité
TEA 64 bits 128 bits 64 Héritage
XTEA 64 bits 128 bits 64 Bon
XXTEA Variable (≥64 bits) 128 bits Variable (6+52/n) Bon

Caractéristiques principales

  • Extrêmement compact - peut être implémenté en quelques lignes de code
  • Clé de 128 bits offrant une sécurité raisonnable pour la plupart des applications
  • Chiffrement/déchiffrement rapide sur les appareils à ressources limitées
  • Aucune restriction de propriété intellectuelle - entièrement gratuit

Modes de chiffrement (TEA/XTEA uniquement)

  • CBC: Chaînage de blocs chiffrés - Chaque bloc est XORé avec le bloc chiffré précédent avant le chiffrement. Nécessite IV.
  • ECB: Livre de codes électronique - Chaque bloc est chiffré indépendamment. Simple mais non recommandé pour la plupart des usages.
  • CFB: Rétroaction du chiffrement - Transforme le chiffre par blocs en chiffre à flot. Mode auto-synchronisant.
  • OFB: Rétroaction de sortie - Génère le flux de clés indépendamment. Pas de propagation d'erreur.
  • RAW: Bloc brut - Chiffrement direct d'un seul bloc sans mode de chaînage. Pas d'IV requis.

Considérations de sécurité

  • TEA : Présente une vulnérabilité de clés équivalentes connue et des attaques de clés liées. Utilisez XTEA ou XXTEA à la place.
  • XTEA : A corrigé les faiblesses de TEA avec un calendrier de clés amélioré. Largement utilisé et raisonnablement sûr.
  • XXTEA : Opère sur des blocs de longueur variable. Meilleure diffusion mais certaines attaques théoriques existent.
  • Pour les applications nécessitant une haute sécurité, envisagez d'utiliser AES qui est la norme moderne de l'industrie.

Cas d'utilisation courants

  • Chiffrement des ressources de jeux (Cocos2d-x, protection des ressources Unity)
  • Chiffrement des communications des appareils IoT
  • Systèmes embarqués avec mémoire et puissance de traitement limitées
  • Compatibilité des systèmes hérités et implémentations de protocoles

Références