Attaques contre les cryptosystèmes
À l'époque actuelle, non seulement les affaires, mais presque tous les aspects de la vie humaine sont guidés par l'information. Par conséquent, il est devenu impératif de protéger les informations utiles contre les activités malveillantes telles que les attaques. Considérons les types d'attaques auxquels les informations sont généralement soumises.
Les attaques sont généralement classées en fonction de l'action effectuée par l'attaquant. Une attaque peut donc êtrepassive ou active.
Attaques passives
Le but principal d'une attaque passive est d'obtenir unauthorized access to the information. Par exemple, des actions telles que l'interception et l'écoute clandestine sur le canal de communication peuvent être considérées comme une attaque passive.
Ces actions sont de nature passive, car elles n'affectent pas les informations ni ne perturbent le canal de communication. Une attaque passive est souvent considérée comme un vol d' informations. La seule différence entre le vol de biens physiques et le vol d'informations est que le vol de données laisse toujours le propriétaire en possession de ces données. L'attaque passive d'informations est donc plus dangereuse que le vol de marchandises, car le vol d'informations peut passer inaperçu par le propriétaire.
Attaques actives
Une attaque active consiste à modifier les informations d'une manière ou d'une autre en effectuant un processus sur les informations. Par exemple,
Modifier les informations de manière non autorisée.
Initier une transmission non intentionnelle ou non autorisée d'informations.
Modification des données d'authentification telles que le nom de l'expéditeur ou l'horodatage associé aux informations
Suppression non autorisée de données.
Refus d'accès aux informations pour les utilisateurs légitimes (déni de service).
La cryptographie fournit de nombreux outils et techniques de mise en œuvre de cryptosystèmes capables de prévenir la plupart des attaques décrites ci-dessus.
Hypothèses de l'attaquant
Voyons l'environnement dominant autour des cryptosystèmes suivi des types d'attaques utilisées pour briser ces systèmes -
Environnement autour du Cryptosystème
Tout en considérant d'éventuelles attaques contre le cryptosystème, il est nécessaire de connaître l'environnement des cryptosystèmes. Les hypothèses et les connaissances de l'attaquant sur l'environnement déterminent ses capacités.
En cryptographie, les trois hypothèses suivantes sont formulées concernant l'environnement de sécurité et les capacités de l'attaquant.
Détails du schéma de chiffrement
La conception d'un cryptosystème est basée sur les deux algorithmes de cryptographie suivants -
Public Algorithms - Avec cette option, tous les détails de l'algorithme sont dans le domaine public, connus de tous.
Proprietary algorithms - Les détails de l'algorithme ne sont connus que des concepteurs du système et des utilisateurs.
Dans le cas d'algorithmes propriétaires, la sécurité est assurée par l'obscurité. Les algorithmes privés peuvent ne pas être les algorithmes les plus puissants car ils sont développés en interne et peuvent ne pas être étudiés de manière approfondie pour leur faiblesse.
Deuxièmement, ils permettent la communication entre groupe fermé uniquement. Par conséquent, ils ne conviennent pas à la communication moderne où les gens communiquent avec un grand nombre d'entités connues ou inconnues. De plus, selon le principe de Kerckhoff, il est préférable que l'algorithme soit public avec une force de cryptage dans la clé .
Ainsi, la première hypothèse concernant l'environnement de sécurité est que le encryption algorithm is known to the attacker.
Disponibilité de Ciphertext
Nous savons qu'une fois que le texte en clair est chiffré en texte chiffré, il est mis sur un canal public non sécurisé (par exemple, un courrier électronique) pour être transmis. Ainsi, l'attaquant peut évidemment supposer qu'il aaccess to the ciphertext generated by the cryptosystem.
Disponibilité du texte en clair et du texte chiffré
Cette hypothèse n'est pas aussi évidente qu'une autre. Cependant, il peut y avoir des situations où un attaquant peut avoiraccess to plaintext and corresponding ciphertext. Certaines de ces circonstances possibles sont -
L'attaquant influence l'expéditeur pour convertir le texte brut de son choix et obtient le texte chiffré.
Le destinataire peut divulguer le texte en clair à l'attaquant par inadvertance. L'attaquant a accès au texte chiffré correspondant recueilli à partir d'un canal ouvert.
Dans un système de cryptage à clé publique, la clé de cryptage est dans un domaine ouvert et est connue de tout attaquant potentiel. En utilisant cette clé, il peut générer des paires de textes en clair et de textes chiffrés correspondants.
Attaques cryptographiques
L'intention de base d'un attaquant est de briser un cryptosystème et de trouver le texte en clair à partir du texte chiffré. Pour obtenir le texte en clair, l'attaquant n'a besoin que de trouver la clé de déchiffrement secrète, car l'algorithme est déjà dans le domaine public.
Par conséquent, il déploie un effort maximal pour découvrir la clé secrète utilisée dans le cryptosystème. Une fois que l'attaquant est en mesure de déterminer la clé, le système attaqué est considéré comme cassé ou compromis .
Sur la base de la méthodologie utilisée, les attaques contre les cryptosystèmes sont classées comme suit -
Ciphertext Only Attacks (COA)- Dans cette méthode, l'attaquant a accès à un ensemble de texte (s) chiffré (s). Il n'a pas accès au texte en clair correspondant. On dit que COA réussit lorsque le texte en clair correspondant peut être déterminé à partir d'un ensemble donné de texte chiffré. Parfois, la clé de chiffrement peut être déterminée à partir de cette attaque. Les cryptosystèmes modernes sont protégés contre les attaques de texte chiffré uniquement.
Known Plaintext Attack (KPA)- Dans cette méthode, l'attaquant connaît le texte en clair de certaines parties du texte chiffré. La tâche consiste à déchiffrer le reste du texte chiffré à l'aide de ces informations. Cela peut être fait en déterminant la clé ou via une autre méthode. Le meilleur exemple de cette attaque est la cryptanalyse linéaire contre les chiffrements par blocs.
Chosen Plaintext Attack (CPA)- Dans cette méthode, l'attaquant fait chiffrer le texte de son choix. Il a donc la paire chiffrée-texte en clair de son choix. Cela simplifie sa tâche de détermination de la clé de chiffrement. Un exemple de cette attaque est la cryptanalyse différentielle appliquée aux chiffrements par blocs ainsi qu'aux fonctions de hachage. Système de cryptage à clé publique populaire, RSA est également vulnérable aux attaques de texte en clair.
Dictionary Attack- Cette attaque a de nombreuses variantes, qui impliquent toutes la compilation d'un «dictionnaire». Dans la méthode la plus simple de cette attaque, l'attaquant construit un dictionnaire de textes chiffrés et des textes en clair correspondants qu'il a appris sur une période de temps. À l'avenir, lorsqu'un attaquant obtient le texte chiffré, il se réfère au dictionnaire pour trouver le texte en clair correspondant.
Brute Force Attack (BFA)- Dans cette méthode, l'attaquant tente de déterminer la clé en essayant toutes les clés possibles. Si la clé a une longueur de 8 bits, alors le nombre de clés possibles est de 2 8 = 256. L'attaquant connaît le texte chiffré et l'algorithme, maintenant il tente toutes les 256 clés une par une pour le déchiffrement. Le temps pour terminer l'attaque serait très long si la clé est longue.
Birthday Attack- Cette attaque est une variante de la technique de la force brute. Il est utilisé contre la fonction de hachage cryptographique. Lorsque les élèves d'une classe sont interrogés sur leur anniversaire, la réponse est l'une des 365 dates possibles. Supposons que le premier date de naissance de l' étudiant est 3 e août alors de trouver l'élève suivant qui est la date de naissance 3 rd août nous avons besoin de demander 1,25 * √365 ≈ 25 étudiants.
De même, si la fonction de hachage produit des valeurs de hachage de 64 bits, les valeurs de hachage possibles sont 1,8 x 10 19 . En évaluant à plusieurs reprises la fonction pour différentes entrées, la même sortie devrait être obtenue après environ 5,1 x 10 9 entrées aléatoires.
Si l'attaquant parvient à trouver deux entrées différentes donnant la même valeur de hachage, il s'agit d'un collision et cette fonction de hachage est dite cassée.
Man in Middle Attack (MIM) - Les cibles de cette attaque sont principalement des cryptosystèmes à clé publique où l'échange de clés est impliqué avant que la communication n'ait lieu.
Hôte A veut communiquer à l' hôte B , demande donc la clé publique de B .
Un attaquant intercepte cette requête et envoie sa clé publique à la place.
Ainsi, quel que soit l'hôte A envoie à l'hôte B , l'attaquant est capable de lire.
Afin de maintenir la communication, l'attaquant rechiffre les données après avoir lu avec sa clé publique et envoie à B .
L'attaquant envoie sa clé publique comme une clé publique de sorte que B prend comme si elle le prend de A .
Side Channel Attack (SCA)- Ce type d'attaque n'est pas contre un type particulier de cryptosystème ou d'algorithme. Au lieu de cela, il est lancé pour exploiter la faiblesse de la mise en œuvre physique du cryptosystème.
Timing Attacks- Ils exploitent le fait que différents calculs prennent des temps différents pour être calculés sur le processeur. En mesurant de tels moments, il est possible de connaître un calcul particulier que le processeur est en train d'effectuer. Par exemple, si le chiffrement prend plus de temps, cela indique que la clé secrète est longue.
Power Analysis Attacks - Ces attaques sont similaires aux attaques de synchronisation, sauf que la quantité d'énergie consommée est utilisée pour obtenir des informations sur la nature des calculs sous-jacents.
Fault analysis Attacks - Dans ces attaques, des erreurs sont induites dans le cryptosystème et l'attaquant étudie la sortie résultante pour obtenir des informations utiles.
Praticité des attaques
Les attaques contre les cryptosystèmes décrites ici sont hautement académiques, car la majorité d'entre elles proviennent de la communauté universitaire. En fait, de nombreuses attaques académiques impliquent des hypothèses assez irréalistes sur l'environnement ainsi que sur les capacités de l'attaquant. Par exemple, dans une attaque de texte chiffré choisi, l'attaquant a besoin d'un nombre impraticable de paires de texte clair-chiffré délibérément choisies. Ce n'est peut-être pas tout à fait pratique.
Néanmoins, le fait qu'une attaque existe doit être une source de préoccupation, en particulier si la technique d'attaque a un potentiel d'amélioration.