Loading AI tools
Le chiffrement de flux, chiffrement par flot ou chiffrement en continu (en anglais stream cipher) est une des deux grandes catégories de chiffrements modernes en cryptographie symétrique, l'autre étant le chiffrement par bloc. Un chiffrement par flot arrive à traiter les données de longueur quelconque et n'a pas besoin de les découper.
Une liste non exhaustive de chiffrements par flot :
Un chiffrement par flot se présente souvent sous la forme d'un générateur de nombres pseudo-aléatoires avec lequel on opère un XOR entre un bit à la sortie du générateur et un bit provenant des données. Toutefois, le XOR n'est pas la seule opération possible ; la seule contrainte sur cette opération est qu’elle doit être inversible (la disjonction exclusive est même involutive), comme l’opération d'addition dans un groupe est également envisageable (par exemple, addition entre deux octets, modulo 256). Un chiffrement par bloc peut être converti en un chiffrement par flot grâce à un mode opératoire qui permet de chaîner plusieurs blocs et traiter des données de taille quelconque[1].
Soit l'opération booléenne XOR, et un générateur pseudo-aléatoire. Ce mécanisme construit sur le principe du masque jetable utilise la propriété involutive du OU exclusif.
Lors de la conférence Asiacrypt en 2004, Adi Shamir posa cette question[2]. En réponse, le projet eStream[3] du réseau ECRYPT a vu le jour, celui-ci ayant pour but, après quatre ans, de produire un portfolio pour promouvoir de nouveaux systèmes de chiffrement par flot. À la suite de ces quatre ans de recherche, le portfolio est maintenant disponible et recommande au total sept algorithmes dans deux catégories différentes: quatre adaptés à une utilisation logicielle et trois adaptés à une utilisation matérielle (par ordre alphabétique) :[4]
Logiciel | Matériel |
---|---|
HC-128 | Grain v1 |
Rabbit | MICKEY v2 |
Salsa20/12 | Trivium |
Sosemanuk |