Chiffrement. Cryptographie Technologies modernes de chiffrement des données électroniques

Un aperçu des algorithmes de chiffrement courants dans le monde vous permet non seulement de sélectionner l'algorithme dont vous avez besoin pour votre tâche, mais également d'évaluer les coûts de sa mise en œuvre et les possibilités et les exigences qui attendent l'utilisateur.

Cryptage - une méthode de protection des informations

Depuis des temps immémoriaux, il n'y a pas eu de valeur supérieure à l'information. Le XXe siècle est le siècle de l'informatique et de l'informatisation. La technologie permet de transmettre et de stocker des quantités toujours plus importantes d'informations. Cet avantage a également un inconvénient. Les informations deviennent de plus en plus vulnérables pour diverses raisons :

volumes croissants de données stockées et transmises ;
  • élargir l'éventail des utilisateurs ayant accès aux ressources, programmes et données informatiques ;
  • complication des modes de fonctionnement des systèmes informatiques.
  • Par conséquent, le problème de la protection des informations contre un accès non autorisé (UAS) pendant la transmission et le stockage devient de plus en plus important. L'essence de ce problème est la lutte constante des spécialistes de la sécurité de l'information avec leurs "adversaires".

    Caractéristiques des algorithmes de chiffrement composite

    La sécurité de l'information est un ensemble de mesures, de méthodes et de moyens qui permettent :

    • exclusion de l'accès non autorisé aux ressources, programmes et données informatiques ;
    • vérifier l'intégrité des informations;
    • exclusion de l'utilisation non autorisée des programmes (protection des programmes contre la copie).

    La tendance évidente au passage aux méthodes numériques de transmission et de stockage des informations permet l'utilisation de méthodes et d'algorithmes unifiés pour la protection des informations discrètes (texte, fax, télex) et continues (parole).

    Une méthode éprouvée de protection des informations contre les accès non autorisés est le cryptage (cryptographie). Le chiffrement est le processus de conversion des données ouvertes (texte clair) en données chiffrées (texte chiffré, texte chiffré) ou des données chiffrées en données ouvertes selon certaines règles à l'aide de clés. Dans la littérature anglaise, le chiffrement/déchiffrement est chiffrement/déchiffrement.

    Avec l'aide de méthodes cryptographiques, il est possible:

    cryptage des informations ;
  • réalisation de la signature électronique ;
  • distribution de clés de chiffrement ;
  • protection contre les modifications accidentelles ou intentionnelles des informations.
  • Il existe certaines exigences pour les algorithmes de chiffrement :

    • haut niveau de protection des données contre le décryptage et la modification éventuelle ;
    • la sécurité de l'information doit reposer uniquement sur la connaissance de la clé et ne pas dépendre du fait que l'algorithme soit connu ou non (règle de Kirkhoff) ;
    • un petit changement dans le texte ou la clé d'origine devrait entraîner un changement significatif dans le texte chiffré (l'effet "effondrement");
    • la plage de valeurs clés doit exclure la possibilité de déchiffrer les données par énumération de valeurs clés ;
    • rentabilité de la mise en œuvre de l'algorithme avec une rapidité suffisante ;
    • le coût du décryptage des données sans connaître la clé doit dépasser le coût des données.

    Traditions de l'antiquité profonde...

    Boris Obolikshto

    La cryptologie est une science ancienne et cela est généralement souligné par l'histoire de Jules César (100 - 44 avant JC), dont la correspondance avec Cicéron (106 - 43 avant JC) et d'autres "abonnés" de la Rome antique était cryptée. Le chiffre de César, autrement le chiffre des substitutions cycliques, consiste à remplacer chaque lettre du message par une lettre de l'alphabet, séparée de celle-ci par un nombre fixe de lettres. L'alphabet est considéré comme cyclique, c'est-à-dire après Z suivi de A. César a remplacé la lettre par une lettre trois de l'original.
    Aujourd'hui, en cryptologie, il est d'usage d'opérer avec des symboles non pas sous forme de lettres, mais sous forme de chiffres qui leur correspondent. Ainsi, dans l'alphabet latin, on peut utiliser des nombres de 0 (correspondant à A) à 25 (Z). En désignant le nombre correspondant au caractère d'origine, x, et encodé - y, nous pouvons écrire la règle d'application du chiffrement par substitution :

    y = x + z (mod N), (1)

    z- La clé secrète, N- le nombre de caractères de l'alphabet, et l'addition modulo N est une opération similaire à l'addition ordinaire, à la seule différence que si la sommation usuelle donne un résultat supérieur ou égal à N, alors la valeur de la somme est le reste de le diviser par N.

    Le chiffre de César dans la notation acceptée correspond à la valeur de la clé secrète z = 3 (et César Auguste a z = 4 ). De tels chiffrements sont extrêmement faciles à casser même sans connaître la valeur de la clé : il suffit de connaître uniquement l'algorithme de chiffrement, et la clé peut être trouvée par simple énumération (ce que l'on appelle l'attaque de puissance). La cryptologie comprend également deux parties - la cryptographie, qui étudie les méthodes de cryptage et / ou d'authentification des messages, et la cryptanalyse, qui considère les moyens de décrypter et de remplacer les cryptogrammes. L'instabilité des premiers chiffres pendant de nombreux siècles a créé une atmosphère de secret autour du travail d'un cryptographe et a entravé le développement de la cryptologie en tant que science.

    La cryptographie dite "pré-scientifique" depuis plus de deux mille ans a semi-intuitivement "ressenti" pas mal de solutions intéressantes. L'action la plus simple consiste à effectuer une substitution non par ordre alphabétique. C'est aussi une bonne idée de réorganiser les caractères du message par endroits (chiffres de permutation).

    Le travail du grand architecte Leon Battista Alberti (1404-1472) est considéré comme le premier travail systématique sur la cryptographie. La période allant jusqu'au milieu du XVIIe siècle était déjà riche en travaux sur la cryptographie et la cryptanalyse. Les intrigues autour des cryptogrammes en Europe à cette époque sont étonnamment intéressantes. Hélas, limités par les capacités de la revue, nous ne choisirons qu'un seul patronyme connu de l'école - François Viet (1540 - 1603), qui à la cour du roi Henri IV de France réussit si bien la cryptanalyse (qui ne portait pas encore ce fier nom) que le roi d'Espagne Philippe II s'est plaint au pape de l'utilisation de la magie noire par les Français. Mais tout s'est passé sans effusion de sang - à la cour du pape à cette époque, il y avait déjà des conseillers de la famille Argenti, que nous appellerions aujourd'hui des cryptanalystes.

    On peut affirmer qu'au cours des siècles, le décryptage des cryptogrammes a été aidé par une analyse fréquentielle de l'apparition des caractères individuels et de leurs combinaisons. Les probabilités d'apparition de lettres individuelles dans le texte varient considérablement (pour la langue russe, par exemple, la lettre "o" apparaît 45 fois plus souvent que la lettre "f"). Celle-ci, d'une part, sert de base à la fois à la divulgation des clés et à l'analyse des algorithmes de chiffrement, et d'autre part, elle est à l'origine d'une importante redondance (au sens informationnel) du texte en langage naturel . Toute substitution simple ne vous permet pas de masquer la fréquence d'apparition d'un symbole - comme un poinçon d'un sac, des symboles correspondant aux lettres "o", "e", "a", "i", "t", " n" ressort dans le texte russe. Mais la théorie de l'information et la mesure de la redondance n'ont pas encore été créées, et pour combattre l'ennemi du cryptographe - l'analyse de fréquence - la RANDOMISATION est proposée. Son auteur Carl Friedrich Gauss (1777 - 1855) croyait à tort qu'il avait créé un chiffre incassable.

    La prochaine personnalité notable de l'histoire de la cryptologie à ne pas manquer est le Néerlandais August Kerckhoff (1835 - 1903). Il possède la merveilleuse "règle de Kerckhoff": la force du chiffrement doit être déterminée UNIQUEMENT par le secret de la clé. Compte tenu de l'époque à laquelle cette règle a été formulée, elle peut être reconnue comme la plus grande découverte (avant la création d'une théorie systématique, plus d'un demi-siècle !). Cette règle suppose que l'ALGORITHME de chiffrement N'EST PAS SECRET, ce qui signifie qu'il est possible d'avoir une discussion ouverte sur les avantages et les inconvénients de l'algorithme. Ainsi, cette règle place le travail de cryptologie dans la catégorie OUVERT travaux scientifiques, permettant des discussions, des publications, etc.

    XXe siècle - de l'intuition à la science

    Le nom de famille que nous appellerons en cryptologie pré-scientifique est l'ingénieur AT&T Gilbert Vernam (G.S. Vernam). En 1926, il proposa un chiffre vraiment incassable. L'idée du chiffrement est de choisir une nouvelle valeur z dans l'équation (1) pour chaque symbole suivant. En d'autres termes, la clé secrète ne doit être utilisée qu'une seule fois. Si une telle clé est choisie au hasard, alors, comme l'a rigoureusement prouvé Shannon 23 ans plus tard, le chiffrement est incassable. Ce chiffrement est la base théorique de l'utilisation des soi-disant "chiffres de chiffrement", qui ont commencé à être largement utilisés pendant la Seconde Guerre mondiale. Le pavé de chiffrement contient une pluralité de clés à usage unique qui sont séquentiellement sélectionnées lors du chiffrement des messages. La proposition de Vernam ne résout cependant pas le problème de la communication secrète : au lieu d'une méthode de transmission d'un message secret, il faut maintenant trouver une méthode de transmission d'une clé secrète EGAL EN LONGUEUR, c'est-à-dire contenant autant de caractères qu'il y a sont en clair.

    En 1949, l'article de Claude Shannon "Theory of Communication in Secret Systems" marque le début de la cryptologie scientifique. Shannon a montré que pour certains "chiffres aléatoires", le nombre de caractères de texte chiffré qu'un cryptanalyste, avec des ressources illimitées, peut récupérer la clé (et résoudre le chiffrement)

    H (Z)/(rlog N), (2)

    H(Z) est l'entropie de la clé, r est la redondance du texte en clair, et N- volume de l'alphabet.

    Par l'efficacité avec laquelle les archiveurs compressent fichiers texte, nous sommes bien conscients de la redondance du texte brut - après tout, leur travail consiste à réduire la redondance (et uniquement sur la partie la plus facilement éliminée). Avec une redondance en clair de l'ordre de 0,75 et en utilisant une clé de 56 bits (comme suggéré par DES), 11 caractères chiffrés suffisent pour récupérer la clé, avec des ressources de cryptanalyste illimitées.


    En toute rigueur, la relation (2) n'a pas été prouvée pour un chiffrement arbitraire, mais est vraie pour des cas particuliers connus. De (2) une conclusion remarquable découle : le travail d'un cryptanalyste peut être entravé non seulement en améliorant le cryptosystème, mais aussi en réduisant la redondance du texte en clair. De plus, si la redondance du texte en clair est réduite à zéro, alors même une clé courte produira un chiffrement que le cryptanalyste ne peut pas déchiffrer.

    Avant le cryptage, les informations doivent être statistiquement codées (compressées, archivées). Dans le même temps, la quantité d'informations et sa redondance diminueront, l'entropie (la quantité moyenne d'informations par caractère) augmentera. Puisqu'il n'y aura pas de lettres et de mots répétés dans le texte compressé, le décryptage (cryptanalyse) sera difficile.

    Classification des algorithmes de chiffrement

    1. Symétrique (avec un secret, clé unique, clé unique, clé unique).
    1.1. Streaming (chiffrement du flux de données) :

    avec une clé unique ou infinie (chiffrement à clé infinie);
  • avec une clé finale (système Vernam - Vernam);
  • basé sur un pseudo générateur nombres aléatoires(PSCH).
  • 1.2. Bloc (cryptage des données bloc par bloc) :
    1.2.1. Chiffrements à permutation (permutation, blocs P);
    1.2.2. Chiffrements de substitution (substitution, S-boxes) :

    • monoalphabétique (code César);
    • polyalphabétique (chiffrement de Wigener, cylindre de Jefferson, disque Whetstone, Enigma);

    1.2.3. composite (tableau 1) :

    • Lucipher (IBM, États-Unis) ;
    • DES (norme de cryptage des données, États-Unis) ;
    • FEAL-1 (algorithme de chiffrement rapide, Japon) ;
    • IDEA/IPES (International Data Encryption Algorithm/
    • Norme de chiffrement proposée améliorée, Ascom-Tech AG, Suisse);
    • B-Crypt (British Telecom, Royaume-Uni) ;
    • GOST 28147-89 (URSS); * Listao (États-Unis).

    2. Asymétrique (avec une clé publique, public-key):

    • Diffie-Hellman DH (Diffie, Hellman);
    • Rivest-Shamir-Adleman RSA (Rivest, Shamir, Adleman);
    • El Gamal El Gamal.

    De plus, il existe une division des algorithmes de chiffrement en chiffrements réels (chiffres) et codes (codes). Les chiffrements fonctionnent avec des bits individuels, des lettres, des symboles. Les codes fonctionnent avec des éléments linguistiques (syllabes, mots, phrases).

    Algorithmes de chiffrement symétriques

    Les algorithmes de chiffrement symétrique (ou cryptographie à clés secrètes) reposent sur le fait que l'expéditeur et le destinataire des informations utilisent la même clé. Cette clé doit être gardée secrète et transmise de manière à ne pas être interceptée.

    L'échange d'informations s'effectue en 3 étapes :

    l'émetteur transfère la clé au destinataire (dans le cas d'un réseau à plusieurs abonnés, chaque paire d'abonnés doit avoir sa propre clé, différente des clés des autres paires) ;
  • l'expéditeur, à l'aide de la clé, crypte le message qui est envoyé au destinataire ;
  • Si une clé unique est utilisée pour chaque jour et pour chaque session de communication, cela augmentera la sécurité du système.

    Chiffrements de flux

    Dans les chiffrements de flux, c'est-à-dire lors du chiffrement d'un flux de données, chaque bit de l'information d'origine est chiffré indépendamment des autres à l'aide de gamma.

    Le jeu est l'imposition d'un chiffrement gamma (une séquence aléatoire ou pseudo-aléatoire de uns et de zéros) sur des données ouvertes selon une certaine règle. L'utilisation habituelle est le "OU exclusif", également appelé addition modulo 2 et implémenté dans les programmes d'assemblage avec l'instruction XOR. Pour le décryptage, le même gamma est superposé aux données cryptées.

    Avec une seule utilisation d'une gamme aléatoire de même taille avec les données chiffrées, il est impossible de déchiffrer le code (les soi-disant cryptosystèmes à clé unique ou infinie). Dans ce cas, "infini" signifie que le gamma ne se répète pas.

    Dans certains chiffrements de flux, la clé est plus courte que le message. Ainsi, dans le système Vernam pour le télégraphe, un anneau de papier contenant l'échelle est utilisé. Bien sûr, la force d'un tel chiffrement n'est pas idéale.

    Il est clair que l'échange de clés de la taille des informations chiffrées n'est pas toujours approprié. Par conséquent, le gamma obtenu à l'aide d'un générateur de nombres pseudo-aléatoires (PRN) est plus souvent utilisé. Dans ce cas, la clé est la graine (valeur initiale, valeur d'initialisation, IV) pour démarrer le générateur PN. Chaque générateur PRNG a une période après laquelle la séquence générée est répétée. Bien entendu, la période du gamma pseudo-aléatoire doit dépasser la longueur de l'information chiffrée.

    Le générateur PRNG est considéré comme correct si l'observation de fragments de sa sortie ne permet pas de récupérer les parties manquantes ou la séquence entière avec un algorithme connu, mais une valeur initiale inconnue.

    Lors de l'utilisation d'un générateur PSN, plusieurs options sont possibles :

    Cryptage au niveau du bit du flux de données. La clé numérique est utilisée comme valeur initiale du générateur PN et le flux binaire de sortie est ajouté modulo 2 aux informations d'origine. Dans de tels systèmes, il n'y a pas de propriété de propagation d'erreur.
  • Chiffrement au niveau du bit d'un flux de données avec rétroaction (OS) sur texte chiffré. Ce système est similaire au précédent, sauf que le texte chiffré est renvoyé en paramètre au générateur PRNG. Propriété caractéristique de propagation des erreurs. La région de propagation des erreurs dépend de la structure du générateur PN.
  • Cryptage bit à bit du flux de données du système d'exploitation en fonction du texte source. La base du générateur PRNG est l'information initiale. La propriété de propagation illimitée des erreurs est caractéristique.
  • Cryptage bit par bit du flux de données du système d'exploitation à l'aide de texte chiffré et de texte en clair.
  • Chiffrements par blocs

    Avec le chiffrement par blocs, les informations sont divisées en blocs de longueur fixe et chiffrées bloc par bloc. Il existe deux principaux types de chiffrements par blocs :

    chiffrements à permutation (transposition, permutation, blocs P);
  • chiffrements par substitution (substitution, S-boxes).
  • Les chiffrements à permutation réorganisent les éléments des données ouvertes (bits, lettres, symboles) dans un nouvel ordre. Il existe des chiffrements horizontaux, verticaux, à double permutation, des treillis, des labyrinthes, des slogans, etc.

    Les chiffrements de remplacement remplacent les éléments des données ouvertes par d'autres éléments selon une certaine règle. Il existe des chiffrements de chiffrement simple, complexe, de remplacement de paire, de chiffrement alpha-syllabique et de chiffrement de remplacement de colonne. Les chiffrements par substitution sont divisés en deux groupes :

    monoalphabétique (code César);
  • polyalphabétique (chiffre de Wigener, cylindre de Jefferson, disque de Whetstone, Enigma).
  • Dans les chiffrements par substitution monoalphabétique, une lettre du texte original est remplacée par une autre lettre prédéterminée. Par exemple, dans le code César, une lettre est remplacée par une lettre qui en est séparée dans l'alphabet latin par un certain nombre de positions. De toute évidence, un tel chiffrement est assez facile à casser. Nous devons calculer la fréquence d'apparition des lettres dans le texte chiffré et comparer le résultat avec la fréquence d'apparition des lettres connues pour chaque langue.

    Dans les substitutions polyalphabétiques, pour remplacer un certain caractère du message d'origine, dans chaque cas de son apparition, divers caractères d'un certain ensemble sont utilisés séquentiellement. Il est clair que cet ensemble n'est pas infini, passé un certain nombre de caractères il faut le réutiliser. C'est la faiblesse des chiffrements purement polyalphabétiques.

    Dans les systèmes cryptographiques modernes, en règle générale, les deux méthodes de cryptage (remplacement et permutation) sont utilisées. Un tel encodeur est appelé chiffrement produit. Il est plus sûr qu'un chiffrement qui n'utilise que des substitutions ou des permutations.

    Le chiffrement par blocs peut être effectué de deux manières :

    Sans rétroaction (OS). Plusieurs bits (un bloc) du texte en clair sont chiffrés en même temps, et chaque bit du texte en clair affecte chaque bit du texte chiffré. Cependant, il n'y a pas d'influence mutuelle des blocs, c'est-à-dire que deux blocs identiques du texte source seront représentés par le même texte chiffré. Par conséquent, de tels algorithmes ne peuvent être utilisés que pour chiffrer une séquence aléatoire de bits (par exemple, des clés). Des exemples sont DES en mode ECB et GOST 28147-89 en mode remplacement simple.
  • Avec commentaires. Habituellement, l'OS est organisé comme suit : le bloc chiffré précédent est ajouté modulo 2 au bloc courant. Une valeur d'initialisation est utilisée comme premier bloc dans la chaîne du système d'exploitation. Une erreur sur un bit affecte deux blocs - un erroné et celui qui le suit. Un exemple est DES en mode CBC.
  • Le générateur PRNG peut également être utilisé pour le chiffrement par blocs :

    1. Chiffrement bloc par bloc du flux de données. Le chiffrement des blocs consécutifs (substitution et permutation) dépend du générateur PRNG contrôlé par clé.
    2. Cryptage bloc par bloc du flux de données du système d'exploitation. Le générateur PRNG est piloté par un texte chiffré ou un texte en clair ou les deux.

    La norme fédérale américaine DES (Data Encryption Standard) est très répandue, sur laquelle est basée la norme internationale ISO 8372-87. Le DES a été approuvé par l'American National Standards Institute (ANSI) et recommandé par l'American Bankers Association (ABA). DES propose 4 modes de fonctionnement :

    • Livre de codes électronique ECB (Electronic Codebook);
    • Chaîne de blocs CBC (Cipher Block Chaining) ;
    • Retour de texte chiffré CFB (Cipher Feedback);
    • Retour de sortie OFB (Output Feedback).

    GOST 28147-89 - norme nationale pour le cryptage des données. La norme comprend trois algorithmes de chiffrement (déchiffrement) des données : un mode de remplacement simple, un mode gamma, un mode gamma avec rétroaction et un mode de génération d'une imitation d'insertion.

    Grâce à l'insertion d'imitation, il est possible de corriger une modification accidentelle ou délibérée d'informations cryptées. Il est possible de développer une insertion imitative soit avant chiffrement (après déchiffrement) de l'ensemble du message, soit simultanément au chiffrement (déchiffrement) par blocs. Dans ce cas, le bloc d'information est chiffré avec les seize premiers cycles en mode de remplacement simple, puis additionné modulo 2 avec le second bloc, le résultat de sommation est à nouveau chiffré avec les seize premiers cycles, etc.

    Les algorithmes de chiffrement GOST 28147-89 présentent les avantages des autres algorithmes pour les systèmes symétriques et les surpassent dans leurs capacités. Ainsi, GOST 28147-89 (clé 256 bits, 32 cycles de cryptage) a une force cryptographique plus élevée en raison d'une clé plus longue et d'un plus grand nombre de cycles de cryptage.

    Il convient de noter que, contrairement à DES, dans GOST 28147-89, le bloc de substitution peut être modifié de manière arbitraire, c'est-à-dire qu'il s'agit d'une clé supplémentaire de 512 bits.

    Les algorithmes gamma GOST 28147-89 (clé 256 bits, bloc de substitution 512 bits, vecteur d'initialisation 64 bits) sont supérieurs en force cryptographique à l'algorithme B-Crypt (clé 56 bits, vecteur d'initialisation 64 bits).

    Les avantages de GOST 28147-89 sont également la présence d'une protection contre l'imposition de fausses données (le développement de fausses insertions) et le même cycle de cryptage dans les quatre algorithmes GOST.

    Les algorithmes de bloc peuvent également être utilisés pour générer le gamma. Dans ce cas, le gamma est généré par blocs et ajouté bloc par bloc modulo 2 avec le texte source. A titre d'exemple, on peut nommer B-Crypt, DES en modes CFB et OFB, GOST 28147-89 en modes gamma et gamma avec rétroaction.

    Algorithmes de chiffrement asymétriques

    Dans les algorithmes de chiffrement asymétrique (ou cryptographie à clé publique), une clé (publique) est utilisée pour chiffrer les informations et une autre (secrète) est utilisée pour déchiffrer les informations. Ces clés sont différentes et ne peuvent pas être dérivées les unes des autres.

    Le schéma d'échange d'informations est le suivant :

    le destinataire calcule les clés publique et privée, la clé secrète est gardée secrète, tandis que la clé publique est mise à disposition (informe l'expéditeur, un groupe d'utilisateurs du réseau, publie) ;
  • l'expéditeur, à l'aide de la clé publique du destinataire, crypte le message qui est envoyé au destinataire ;
  • le destinataire reçoit le message et le déchiffre à l'aide de sa clé privée.
  • RSA

    Protégé par le brevet US N 4405829. Développé en 1977 au Massachusetts Institute of Technology (USA). Il a été nommé d'après les premières lettres des noms des auteurs (Rivest, Shamir, Adleman). La sécurité est basée sur la complexité de calcul de la tâche consistant à factoriser un grand nombre en facteurs premiers.

    ElGamal

    Conçu en 1985. Nommé d'après le nom de l'auteur - El-Gamal. Utilisé dans la norme américaine de signature numérique DSS (Digital Signature Standard). La force cryptographique est basée sur la complexité de calcul du problème consistant à prendre le logarithme d'entiers dans des corps finis.

    Comparaison des algorithmes de chiffrement symétriques et asymétriques

    Dans les systèmes asymétriques, des clés longues (512 bits ou plus) doivent être utilisées. Une clé longue augmente considérablement le temps de cryptage. De plus, la génération de clés prend beaucoup de temps. Mais les clés peuvent être distribuées sur des canaux non sécurisés.

    Les algorithmes symétriques utilisent des clés plus courtes, c'est-à-dire que le chiffrement est plus rapide. Mais dans de tels systèmes, la distribution des clés est difficile.

    Par conséquent, lors de la conception d'un système sécurisé, des algorithmes symétriques et asymétriques sont souvent utilisés. Un système à clé publique permettant la distribution de clés dans des systèmes symétriques, il est possible de combiner des algorithmes de chiffrement asymétrique et symétrique dans un système de transmission d'informations sécurisé. Avec l'aide du premier, envoyez des clés, tandis que le second consiste à chiffrer réellement les informations transmises.

    Les informations peuvent être échangées des manières suivantes :

    le destinataire calcule les clés publique et privée, la clé privée est gardée secrète, tandis que la clé publique est mise à disposition ;
  • l'expéditeur, à l'aide de la clé publique du destinataire, crypte la clé de session, qui est envoyée au destinataire via un canal non sécurisé ;
  • le destinataire reçoit la clé de session et la déchiffre à l'aide de sa clé privée ;
  • l'expéditeur crypte le message avec une clé de session et l'envoie au destinataire ;
  • le destinataire reçoit le message et le déchiffre.
  • Il convient de noter que seuls des algorithmes symétriques sont utilisés dans les systèmes de communication gouvernementaux et militaires, car il n'existe aucune justification strictement mathématique de la stabilité des systèmes à clé publique, car le contraire n'a cependant pas été prouvé.

    Authentification des informations. Signature numérique

    Lors de la transmission d'informations, les éléments suivants doivent être fournis ensemble ou séparément :

    • Confidentialité (vie privée) - un attaquant ne devrait pas être en mesure de connaître le contenu du message transmis.
    • L'authenticité, qui comprend deux concepts :
    1. intégrité (intégrité) - le message doit être protégé contre toute modification accidentelle ou délibérée ;
    2. identification de l'expéditeur (vérification de l'auteur) - le destinataire doit être en mesure de vérifier qui a envoyé le message.

    Le chiffrement peut assurer la confidentialité et, dans certains systèmes, l'intégrité.

    L'intégrité du message est vérifiée en calculant une fonction de vérification à partir du message, un nombre de petite longueur. Cette fonction de contrôle devrait changer avec une forte probabilité même avec de petits changements dans le message (suppression, inclusion, permutation ou réorganisation des informations). La fonction de contrôle est appelée et calculée de différentes manières :

    code d'authentification de message (Message Authentical Code, MAC);
  • algorithme congruental quadratique (Quadratic Congruentical Manipulation Detection Code, QCMDC);
  • Code de détection de manipulation (MDC);
  • Algorithme de résumé de message (MD5);
  • somme de contrôle ;
  • caractère de contrôle de bloc (BCC);
  • code de redondance cyclique (CEC, Cyclic Redundancy Check, CRC);
  • fonction de hachage (hachage);
  • insert d'imitation dans GOST 28147-89;
  • algorithme avec troncature à n bits (n-bit Algorithm with Truncation).
  • Lors du calcul de la fonction de contrôle, n'importe quel algorithme de cryptage peut être utilisé. Il est possible de chiffrer la somme de contrôle elle-même.

    Une signature numérique est largement utilisée (un ajout numérique aux informations transmises, qui garantit l'intégrité de ces dernières et permet de vérifier leur paternité). Des modèles de signature numérique basés sur des algorithmes de chiffrement symétriques sont connus, mais lors de l'utilisation de systèmes à clé publique, la signature numérique est plus pratique.

    Pour utiliser l'algorithme RSA, le message doit être compressé avec une fonction de hachage (MD5 - Message Digest Algorithm) en un hachage de 256 bits (H). La signature de message S est calculée comme suit :


    S = H mod n

    La signature est envoyée avec le message.

    Le processus d'identification consiste à obtenir la fonction de hachage du message (H") et à la comparer avec

    e
    H = S mod n

    H- hachage des messages,

    S- sa signature,

    - La clé secrète,
    e- Clé publique.

    Les standards suivants sont dédiés à l'authentification :

    • authentification (authentification, authentification) - ISO 8730-90, ISO / IES 9594-90 et ITU X.509 ;
    • intégrité - GOST 28147-89, ISO 8731-90 ;
    • signature numérique - ISO 7498, P 34.10-94 (Russie), DSS (Digital Signature Standard, USA).

    ISO- Organisation internationale de normalisation /ISO/,
    UIT- Union internationale des télécommunications /UIT/.

    Implémentation d'algorithmes de chiffrement

    Les algorithmes de chiffrement sont implémentés dans des logiciels ou du matériel. Il existe un grand nombre d'implémentations purement logicielles de divers algorithmes. En raison de leur faible coût (certains sont entièrement gratuits), ainsi que de la vitesse croissante des processeurs PC, de leur facilité d'utilisation et de leur fiabilité, ils sont très compétitifs. Le programme Diskreet du package Norton Utilities, qui implémente DES, est largement connu.

    On ne peut manquer de mentionner le package PGP (Pretty Good Privacy, version 2.1, de Philip Zimmermann), qui résout de manière globale presque tous les problèmes de protection des informations transmises. Compression appliquée des données avant le chiffrement, gestion puissante des clés, algorithmes de chiffrement symétrique (IDEA) et asymétrique (RSA), calcul de la fonction de contrôle pour la signature numérique, génération de clé fiable.

    Les publications du magazine "Monitor" avec des descriptions détaillées de divers algorithmes et des listes correspondantes donnent à chacun la possibilité d'écrire son propre programme (ou d'utiliser une liste toute faite).

    La mise en œuvre matérielle des algorithmes est possible en utilisant des microcircuits spécialisés (des cristaux sont produits pour les algorithmes DH, RSA, DES, Skipjack, GOST 28147-89) ou en utilisant des composants à usage général (en raison du faible coût et de la grande vitesse, les processeurs de signaux numériques sont prometteurs - DSP, processeur de signal numérique, DSP).

    Parmi les développements russes, il convient de noter les cartes "Krypton" (firme "Ankad") et "Grim" (méthodologie et algorithmes de la firme "LAN-Crypto", développement technique du SPC "ELiPS").

    "Krypton" - appareils à carte unique utilisant des cryptoprocesseurs (micro-ordinateurs 32 bits spécialisés, également appelés "blooming"). Bloomings implémente les algorithmes de GOST 28147-89 dans le matériel, ils se composent d'une calculatrice et d'une RAM pour stocker les clés. De plus, le cryptoprocesseur dispose de trois zones pour stocker les clés, ce qui vous permet de créer des systèmes de clés à plusieurs niveaux.

    Pour une plus grande fiabilité de chiffrement, deux cryptoprocesseurs fonctionnent simultanément, et un bloc de données 64 bits est considéré comme correctement chiffré uniquement si les informations à la sortie des deux blooms correspondent. Vitesse de cryptage - 250 Ko/s.

    En plus de deux bloomings, la planche contient :

    contrôleur pour l'interface avec le bus informatique (à l'exception de "Krypton-EC", les cartes sont conçues pour fonctionner avec le bus ISA);
  • BIOS de carte conçu pour s'interfacer avec un ordinateur et effectuer des tests automatiques de l'appareil et entrer des clés dans des cryptoprocesseurs ;
  • un générateur de nombres aléatoires (RNG) pour générer des clés de chiffrement, réalisé sur des diodes de bruit.
  • Les types de cartes Krypton suivants sont produits :

    • "Krypton-ES" est conçu pour la série PC EC 1841-1845 ;
    • "Krypton-3" ;
    • "Krypton-4" (les dimensions globales ont été réduites en déplaçant un certain nombre d'éléments discrets dans les cristaux de base, le taux de change a été augmenté en raison du tampon interne de 8 octets);
    • "Krypton-IK" est en outre équipé d'un contrôleur IR (carte intelligente, carte à puce, carte à puce).

    Dans les appareils "Krypton-ES", "Krypton-3", "Krypton-4", les clés sont stockées sous forme de fichier sur une disquette. Dans "Krypton-IK", les clés sont sur l'IK, ce qui rend difficile la falsification et la copie.

    La carte Grim utilise les processeurs de signaux numériques Analog Devices ADSP-2105 et ADSP-2101, qui donnent un taux de cryptage de 125 et 210 Ko/s, respectivement. La carte dispose d'un RSD physique et d'une ROM avec des programmes pour le test initial, la vérification des droits d'accès, le téléchargement et la génération de clés. Les clés sont stockées sur une disquette formatée non standard. La carte implémente les algorithmes GOST 28147-89 et de signature numérique.

    Pour protéger les informations transmises sur les canaux de communication, on utilise des dispositifs de chiffrement de canal, qui sont réalisés sous la forme d'une carte d'interface ou d'un module autonome. La vitesse de cryptage des différents modèles est de 9600 bps à 35 Mbps.

    En conclusion, notons que le cryptage des informations n'est pas une panacée. Elle ne doit être considérée que comme l'une des méthodes de protection des informations et doit être appliquée en combinaison avec des mesures législatives, organisationnelles et autres.

    Cryptologie à clé publique

    Boris Obolikshto

    Il semblerait que l'impulsion donnée par Shannon aurait dû provoquer un effondrement des résultats en cryptologie scientifique. Mais cela ne s'est pas produit. Seul le développement rapide des télécommunications, accès à distance aux ordinateurs, avec l'imperfection des cryptosystèmes existants avec une clé secrète, a donné vie à l'étape suivante et peut-être la plus intéressante de la cryptologie, qui est comptée à partir de l'article de novembre 1976 de Whitfield Diffie et Marty E. Hellman "New Directions in Cryptographie". W. Diffie lui-même date la réception des résultats publiés en novembre 1976 au mois de mai de la même année ; ainsi, nous avons l'occasion, de mai à novembre, de célébrer le VINGTIÈME ANNIVERSAIRE de la cryptologie à clé publique.

    Un problème qui est resté non résolu dans la cryptographie traditionnelle est la distribution des clés secrètes. L'idée de transmettre une clé "secrète" sur un canal ouvert semble à première vue insensée, mais si, en abandonnant le secret parfait, en nous limitant à une durabilité pratique, vous pouvez trouver un moyen d'échanger des clés.

    L'échange de clés exponentiel a été la première méthode à gagner en popularité. Son essence est la suivante :

    • Alice et Bob (prenant comme côtés non abstraits "A" et "B", mais jolie Alice et Bob, est devenu une tradition dans ce domaine de la cryptologie) choisissent respectivement des nombres aléatoires Xa et Xb.
    • Alice donne à Bob Ya=aXa (mod q), et Bob Alice - Yb = aXb (mod q).

    Ici un- l'élément dit primitif du champ de Galois fini GF(q), dont la propriété remarquable pour nous est que ses degrés donnent toutes les valeurs non nulles des éléments du champ. La valeur est utilisée comme clé secrète

    Ya=aXaXb (mod q),

    qu'Alice obtient en élevant le nombre passé par Bob à une puissance xa, connu d'elle seule, et Bob - le numéro reçu d'Alice à une puissance connue de lui seul Xb. Le cryptanalyste est obligé de calculer le logarithme d'au moins un des nombres transmis.

    La stabilité de l'échange de clé exponentielle est basée sur ce que l'on appelle l'unilatéralité de la fonction d'exponentiation : la complexité de calcul pour obtenir Ya à partir de Xa pour q de 1000 bits est d'environ 2000 multiplications de nombres de 1000 bits, tandis que l'opération inverse nécessitera environ 1030 opérations. Les fonctions ONE-WAY, qui ont une asymétrie similaire dans la complexité de calcul des problèmes directs et inverses, jouent un rôle de premier plan dans la cryptographie à clé publique.

    Encore plus intéressante est la fonction unilatérale avec un passage secret ("échappatoire"). L'idée est de construire une fonction qui ne peut être inversée qu'en connaissant une "échappatoire" - une clé secrète. Les paramètres de fonction servent alors de clé publique qu'Alice peut envoyer sur un canal non sécurisé à Bob ; Bob, à l'aide de la clé publique reçue, effectue le cryptage (calcul d'une fonction directe) et transmet le résultat à Alice par le même canal ; Alice, connaissant la "faille" (la clé secrète), calcule facilement la fonction inverse, tandis que le cryptanalyste, ne connaissant pas la clé secrète, est condamné à résoudre une tâche beaucoup plus difficile.

    R.C. Merkle a réussi à construire une telle fonction en 1976 sur la base du problème du sac à dos. La tâche elle-même est unilatérale : connaissant le sous-ensemble de charges placées dans le sac à dos, il est facile de calculer le poids total, mais connaissant le poids, il n'est pas facile de déterminer le sous-ensemble de charges. Dans notre cas, une version unidimensionnelle du problème a été utilisée : le vecteur des charges et la somme des composantes de ses sous-vecteurs. Après avoir construit une "échappatoire", nous avons réussi à obtenir le soi-disant système de sac à dos Merkle-Hellman. Le premier système de chiffrement à clé publique a été mis en ligne et Merkle a offert 100 $ à quiconque pourrait le casser.

    Le prix a été décerné à Adi Shamir six ans après sa publication en mars 1982 de la divulgation du système de sac à dos Merkle-Hellman à une seule itération. Lors de la conférence Crypto "82, L. Adleman a démontré la divulgation d'un système de sac à dos sur un ordinateur Apple II. Notez que Shamir n'a pas construit de méthode pour inverser la tâche - en obtenant la valeur de la clé secrète, il a réussi à construire une clé qui est pas forcément égal au secret, mais permet de révéler C'est l'un des plus grands dangers de la cryptographie à clé publique : il n'y a pas de preuve rigoureuse de l'unilatéralité des algorithmes utilisés, c'est-à-dire que personne n'est garanti de la possibilité de trouver une méthode de déchiffrement qui ne nécessite probablement pas de résoudre un problème inverse, dont la grande complexité permet d'espérer Ce serait bien si un scientifique de renommée mondiale (en 1982 A. Shamir était déjà connu comme l'un des auteurs du RSA système) découvrirait un système, mais que se passerait-il si un pirate informatique peu ambitieux réussissait ?

    Pour conclure le drame du système de sac à dos, mentionnons un autre pari que Merkle a fait avec ceux qui voulaient révéler un système amélioré avec de nombreuses itérations d'un montant de 1000 $. Et ce montant devait être payé. Il a été obtenu par E. Brickell, ayant découvert à l'été 1984 un système à quarante itérations et à cent parcelles par heure de fonctionnement Cray-1.

    Beaucoup plus réussi aujourd'hui est le sort du système RSA, nommé d'après les premières lettres des noms de ses auteurs R. Rivest (Ronald Rivest) et déjà familier pour nous A. Shamir et L. Adlman. Soit dit en passant, Alice et Bob doivent leur naissance à la première présentation systématique de l'algorithme RSA. Avec leur "aide", les auteurs ont décrit en 1977 un système basé sur les propriétés unilatérales de la fonction de factorisation (la multiplication est facile, mais la décomposition ne l'est pas).

    Le développement de la cryptologie à clé publique a permis aux systèmes cryptologiques de trouver rapidement de larges applications commerciales. Mais l'utilisation intensive de la cryptographie ne va pas sans "overlays". De temps en temps, nous apprenons des problèmes dans tel ou tel système de protection. Le dernier incident sensationnel au monde a été le piratage du système Kerberos. Ce système, développé au milieu des années 80, est très populaire dans le monde et son piratage a suscité une inquiétude considérable parmi les utilisateurs.

    Dans le cas de Kerberos, le problème ne résidait pas dans l'algorithme de chiffrement, mais dans la manière dont les nombres aléatoires étaient obtenus, c'est-à-dire dans la méthode de mise en œuvre de l'algorithme. Lorsque la nouvelle est arrivée en octobre dernier d'un problème dans le système de génération de nombres aléatoires en produits logiciels Netscape découvert par des étudiants de l'université de Berkeley, Stephen Lodin a découvert une nuisance similaire dans Kerberos. Avec Brian Dole, il a également réussi à trouver une faille dans le système Kerberos. Les personnages de cette histoire ne sont pas des amateurs. Les diplômés de l'Université Purdue (Illinois) ont collaboré avec le laboratoire COAST (Computer Operations, Audit, and Security Technology), engagé professionnellement dans les problèmes de sécurité informatique et dirigé par le prof. Spafford, qui est également le fondateur du PCERT (Purdue Computer Emergency Response Team), l'équipe d'intervention d'urgence informatique de l'université. PCERT, à son tour, est membre d'une organisation internationale similaire FIRST (Forum of Incident Response Teams). Comme vous pouvez le voir, les sapeurs ont trouvé la mine, et cela inspire l'espoir que les utilisateurs de cryptosystèmes ne resteront pas sans défense même si des failles sont identifiées.

    Caractéristique est le contenu du premier appel à la presse (du 16 février 1996), qui, au nom des découvreurs, a été lancé par le prof. Spaford. Dans ce document, ainsi que des informations sur le manque de fiabilité du système de mot de passe et la possibilité de le déchiffrer dans les cinq minutes, il est indiqué que la diffusion ultérieure d'informations techniques sera retardée jusqu'à ce que les développeurs effectuent des ajustements pour empêcher tout accès non autorisé.

    Pas contourné les erreurs et nos pénates. Heureusement, il existe des professionnels dans notre région qui sont capables de trouver et de montrer les points faibles du système de protection en temps opportun. Un autre mois ne s'est pas écoulé depuis que P.V. Leskov et V.V. Tatyanin a démontré les lacunes de l'un des systèmes de sécurité bancaire populaires: le temps d'ouverture des textes chiffrés était inférieur à 6 minutes et le temps nécessaire à la violation incontrôlée de l'intégrité du document (contournement du système d'authentification) était inférieur à 5 minutes. Et ici, nous, le lecteur, devrons également attendre que les développeurs apportent les modifications nécessaires. Et puis nous pourrons vous en dire plus sur comment et ce qui a été fait.

    Littérature:

    1. Vodolazskiy V. Systèmes de cryptage commerciaux : algorithmes de base et leur mise en œuvre. Partie 1. // Moniteur. - 1992. - N 6-7. - ch. 14 - 19.
    2. Ignatenko Yu.I. Comment faire pour qu'il en soit ainsi ?.. // World of PC. - 1994. - N 8. - c. 52 - 54.
    3. Kovalevsky V., Maksimov V. Méthodes cryptographiques. // ComputerPress. - 1993. - N 5. - c. 31 - 34.
    4. Maftik S. Mécanismes de protection dans les réseaux informatiques. - M. : Mir, 1993.
    5. Spesivtsev A.V., Wegner V.A., Krutyakov A.Yu. et autres protection de l'information dans les ordinateurs personnels. - M. : Radio et communication, 1992.
    6. Xiao D., Kerr D., Madnick S. Protection informatique. - M. : Mir, 1982.
    7. Shmeleva A. Grim - qu'est-ce que c'est? // Dur "n" Doux. - 1994. - N 5.
    8. GOST 28147-89. Systèmes de traitement de l'information. Protection cryptographique. Algorithme de transformation cryptographique.

    Le cryptage des données est extrêmement important pour protéger la vie privée. Dans cet article, je parlerai de divers types et les méthodes de cryptage qui sont utilisées pour protéger les données aujourd'hui.

    Le saviez-vous?
    À l'époque romaine, Jules César utilisait le cryptage pour rendre les lettres et les messages illisibles pour l'ennemi. Il a joué un rôle important en tant que tactique militaire, en particulier pendant les guerres.

    Alors que les possibilités d'Internet continuent de croître, de plus en plus de nos entreprises sont recrutées en ligne. Parmi ceux-ci, les plus importants sont les services bancaires par Internet, le paiement en ligne, e-mails, échange de messages privés et officiels, etc., qui prévoient l'échange de données et d'informations confidentielles. Si ces données tombent entre de mauvaises mains, elles peuvent nuire non seulement à l'utilisateur individuel, mais à l'ensemble du système commercial en ligne.

    Pour éviter que cela ne se produise, certaines mesures de sécurité en ligne ont été mises en place pour protéger la transmission des données personnelles. Les principaux d'entre eux sont les processus de cryptage et de décryptage des données, connus sous le nom de cryptographie. Il existe trois principales méthodes de cryptage utilisées dans la plupart des systèmes aujourd'hui : le cryptage par hachage, symétrique et asymétrique. Dans les lignes suivantes, je parlerai plus en détail de chacun de ces types de cryptage.

    Types de chiffrement

    Cryptage symétrique

    Dans le chiffrement symétrique, les données lisibles normales, appelées texte brut, sont codées (chiffrées) de telle sorte qu'elles deviennent illisibles. Ce brouillage des données se fait à l'aide d'une clé. Une fois les données cryptées, elles peuvent être transférées en toute sécurité au récepteur. Chez le destinataire, les données chiffrées sont décodées à l'aide de la même clé qui a servi à l'encodage.

    Ainsi, il est clair que la clé est la partie la plus importante du chiffrement symétrique. Il doit être caché aux étrangers, car toute personne y ayant accès pourra déchiffrer les données privées. C'est pourquoi ce type de cryptage est également appelé "clé secrète".

    Dans les systèmes modernes, la clé est généralement une chaîne de données provenant d'un mot de passe fort ou d'une source complètement aléatoire. Il est introduit dans un logiciel de cryptage symétrique, qui l'utilise pour sécuriser l'entrée. Le brouillage des données est réalisé à l'aide d'un algorithme de chiffrement symétrique tel que Data Encryption Standard (DES), Advanced Encryption Standard (AES) ou International Data Encryption Algorithm (IDEA).

    Restrictions

    Le maillon le plus faible de ce type de chiffrement est la sécurité de la clé, tant en termes de stockage que de transmission de l'utilisateur authentifié. Si un pirate parvient à mettre la main sur cette clé, il peut facilement décrypter les données cryptées, détruisant tout l'intérêt du cryptage.

    Un autre inconvénient est dû au fait que le logiciel qui traite les données ne peut pas fonctionner avec des données cryptées. Par conséquent, pour pouvoir utiliser ce logiciel, les données doivent d'abord être décodées. Si le logiciel lui-même est compromis, un attaquant peut facilement obtenir les données.

    Cryptage asymétrique

    Une clé de chiffrement asymétrique fonctionne de la même manière qu'une clé symétrique en ce sens qu'elle utilise une clé pour chiffrer les messages envoyés. Cependant, au lieu d'utiliser la même clé, il en utilise une complètement différente pour déchiffrer ce message.

    La clé utilisée pour le cryptage est disponible pour tous les utilisateurs du réseau. En tant que telle, elle est connue sous le nom de clé "publique". En revanche, la clé utilisée pour le déchiffrement est gardée secrète et est destinée à être utilisée en privé par l'utilisateur lui-même. Par conséquent, elle est connue sous le nom de clé "privée". Le chiffrement asymétrique est également connu sous le nom de chiffrement à clé publique.

    Étant donné qu'avec cette méthode, la clé secrète nécessaire pour déchiffrer le message n'a pas à être transmise à chaque fois, et qu'elle n'est généralement connue que de l'utilisateur (récepteur), la probabilité qu'un pirate puisse déchiffrer le message est beaucoup plus bas.

    Diffie-Hellman et RSA sont des exemples d'algorithmes qui utilisent le chiffrement à clé publique.

    Restrictions

    De nombreux pirates utilisent "l'homme au milieu" comme forme d'attaque pour contourner ce type de cryptage. Dans le chiffrement asymétrique, vous recevez une clé publique qui est utilisée pour communiquer en toute sécurité avec une autre personne ou un autre service. Cependant, les pirates utilisent des réseaux de tromperie pour vous inciter à communiquer avec eux tout en vous faisant croire que vous êtes sur une ligne sécurisée.

    Pour mieux comprendre ce type de piratage, considérons les deux parties en interaction Sasha et Natasha, et le pirate Sergei avec l'intention d'intercepter leur conversation. Tout d'abord, Sasha envoie un message sur le réseau destiné à Natasha, demandant sa clé publique. Sergei intercepte ce message et obtient la clé publique qui lui est associée et l'utilise pour chiffrer et envoyer un faux message à Natasha contenant sa clé publique au lieu de celle de Sasha.

    Natasha, pensant que ce message venait de Sasha, le crypte maintenant avec la clé publique de Sergey et le renvoie. Ce message a de nouveau été intercepté par Sergey, décrypté, modifié (si désiré), crypté à nouveau en utilisant la clé publique que Sasha avait initialement envoyée, et renvoyé à Sasha.

    Ainsi, lorsque Sasha reçoit ce message, il a été amené à croire qu'il venait de Natasha et continue d'ignorer le jeu déloyal.

    Hachage

    La technique de hachage utilise un algorithme connu sous le nom de fonction de hachage pour générer une chaîne spéciale à partir des données données, appelée hachage. Ce hachage a les propriétés suivantes :

    • les mêmes données produisent toujours le même hachage.
    • il n'est pas possible de générer des données brutes à partir d'un hachage seul.
    • Il n'est pas pratique d'essayer différentes combinaisons d'entrées pour essayer de générer le même hachage.

    Ainsi, la principale différence entre le hachage et les deux autres formes de chiffrement des données est qu'une fois que les données sont chiffrées (hachées), elles ne peuvent pas être récupérées dans leur forme d'origine (déchiffrées). Ce fait garantit que même si un pirate informatique met la main sur le hachage, cela lui sera inutile, car il ne pourra pas déchiffrer le contenu du message.

    Message Digest 5 (MD5) et Secure Hashing Algorithm (SHA) sont deux algorithmes de hachage largement utilisés.

    Restrictions

    Comme mentionné précédemment, il est presque impossible de déchiffrer les données d'un hachage donné. Cependant, cela n'est vrai que si un hachage fort est implémenté. Dans le cas d'une implémentation faible de la technique de hachage, utilisant suffisamment de ressources et d'attaques par force brute, un pirate persistant peut trouver des données qui correspondent au hachage.

    Combinaison de méthodes de cryptage

    Comme discuté ci-dessus, chacune de ces trois méthodes de cryptage souffre de certains inconvénients. Cependant, lorsqu'une combinaison de ces méthodes est utilisée, elles forment un système de cryptage fort et très efficace.

    Le plus souvent, les techniques de clés privées et publiques sont combinées et utilisées ensemble. La méthode à clé secrète permet un déchiffrement rapide, tandis que la méthode à clé publique offre une solution plus sécurisée et plus moyen pratique pour transférer la clé secrète. Cette combinaison de méthodes est connue sous le nom d'"enveloppe numérique". Programme de cryptage E-mail PGP est basé sur la technique de "l'enveloppe numérique".

    Le hachage est utilisé comme moyen de vérifier la force d'un mot de passe. Si le système stocke le hachage du mot de passe au lieu du mot de passe lui-même, il sera plus sécurisé, car même si ce hachage tombe entre les mains d'un pirate, il ne pourra pas le comprendre (le lire). Lors de la vérification, le système vérifiera le hachage du mot de passe entrant et verra si le résultat correspond à ce qui est stocké. De cette façon, le mot de passe réel ne sera visible que dans les brefs instants où il doit être modifié ou vérifié, ce qui réduit considérablement le risque qu'il tombe entre de mauvaises mains.

    Le hachage est également utilisé pour authentifier les données avec une clé secrète. Le hachage est généré à l'aide des données et de cette clé. Par conséquent, seuls les données et le hachage sont visibles et la clé elle-même n'est pas transmise. De cette façon, si des modifications sont apportées aux données ou au hachage, elles seront facilement détectées.

    En conclusion, ces techniques peuvent être utilisées pour coder efficacement les données dans un format illisible qui peut garantir qu'elles restent sécurisées. La plupart des systèmes modernes utilisent généralement une combinaison de ces méthodes de cryptage avec une implémentation solide d'algorithmes pour améliorer la sécurité. Outre la sécurité, ces systèmes offrent également de nombreux avantages supplémentaires, tels que la vérification de l'identité de l'utilisateur et la garantie que les données reçues ne peuvent pas être altérées.

    Étant donné que la fonction principale de notre logiciel est le cryptage des données, on nous pose souvent des questions concernant certains aspects de la cryptographie. Nous avons décidé de rassembler les questions les plus fréquemment posées dans un seul document et avons essayé de les donner aussi détaillées que possible, mais en même temps, pas surchargées. informations supplémentaires réponses.

    1. Qu'est-ce que la cryptographie ?

    La cryptographie est une discipline scientifique théorique, une branche des mathématiques qui étudie la transformation de l'information afin de la protéger des actions raisonnables de l'ennemi.

    2. Qu'est-ce qu'un algorithme de chiffrement ?

    Un algorithme de chiffrement est un ensemble de règles logiques qui déterminent le processus de conversion des informations d'un état ouvert à un état chiffré (chiffrement) et, inversement, d'un état chiffré à un état ouvert (déchiffrement).

    Les algorithmes de chiffrement apparaissent à la suite de recherches théoriques, à la fois par des scientifiques individuels et des équipes de recherche.

    3. Comment les données sont-elles protégées par chiffrement ?

    Le principe de base de la protection des données par chiffrement consiste à chiffrer les données. Pour un étranger, les données cryptées ressemblent à des "déchets d'informations" - un ensemble de caractères sans signification. Ainsi, si les informations sous forme cryptée parviennent à l'attaquant, il ne pourra tout simplement pas les utiliser.

    4. Quel est l'algorithme de chiffrement le plus puissant ?

    En principe, tout algorithme de chiffrement proposé par un cryptographe bien connu est considéré comme sûr jusqu'à preuve du contraire.

    En règle générale, tous les nouveaux algorithmes de cryptage émergents sont publiés pour examen public et sont étudiés de manière approfondie dans des centres de recherche cryptographique spécialisés. Les résultats de ces études sont également publiés pour examen public.

    5. Qu'est-ce qu'une clé de chiffrement ?

    La clé de cryptage est une séquence de bits aléatoire, pseudo-aléatoire ou spécialement formée, qui est un paramètre variable de l'algorithme de cryptage.

    En d'autres termes, si vous cryptez les mêmes informations avec le même algorithme, mais avec des clés différentes, les résultats seront également différents.

    La clé de cryptage a une caractéristique essentielle - la longueur, qui est généralement mesurée en bits.

    6. Quels sont les algorithmes de chiffrement ?

    Les algorithmes de chiffrement sont divisés en deux grandes classes - symétriques et asymétriques (ou asymétriques).

    Les algorithmes de chiffrement symétrique utilisent la même clé pour chiffrer les informations et les déchiffrer. Dans ce cas, la clé de chiffrement doit être secrète.

    Les algorithmes de chiffrement symétriques, en règle générale, sont faciles à mettre en œuvre et ne nécessitent pas beaucoup de ressources informatiques pour leur travail. Cependant, l'inconvénient de tels algorithmes se manifeste dans les cas où, par exemple, deux utilisateurs doivent échanger des clés. Dans ce cas, les utilisateurs doivent soit se rencontrer directement, soit disposer d'une sorte de canal fiable et inviolable pour envoyer la clé, ce qui n'est pas toujours possible.

    Des exemples d'algorithmes de chiffrement symétriques sont DES, RC4, RC5, AES, CAST.

    Les algorithmes de chiffrement asymétrique utilisent deux clés, une pour chiffrer et une pour déchiffrer. Dans ce cas, on parle d'une paire de clés. Une clé d'une paire peut être publique (accessible à tous), l'autre peut être secrète.

    Les algorithmes de chiffrement asymétriques sont plus complexes à mettre en œuvre et plus gourmands en ressources informatiques que les algorithmes symétriques, cependant, le problème d'échange de clé entre deux utilisateurs est plus facile à résoudre.

    Chaque utilisateur peut créer sa propre paire de clés et envoyer la clé publique à son abonné. Cette clé ne peut que chiffrer les données ; le déchiffrement nécessite une clé secrète, qui n'est stockée que par son propriétaire. Ainsi, l'obtention d'une clé publique par un attaquant ne lui apportera rien, puisqu'il lui est impossible de déchiffrer les données chiffrées.

    Des exemples d'algorithmes de chiffrement asymétriques sont RSA, El-Gamal.

    7. Comment les algorithmes de chiffrement sont-ils piratés ?

    Dans la science cryptographique, il existe une sous-section - la cryptanalyse, qui étudie les problèmes de rupture des algorithmes de chiffrement, c'est-à-dire l'obtention d'informations ouvertes à partir d'informations chiffrées sans clé de chiffrement.

    Il existe de nombreuses manières et méthodes de cryptanalyse, dont la plupart sont trop complexes et trop longues pour être reproduites ici.

    La seule méthode qui mérite d'être mentionnée est l'énumération directe de toutes les valeurs possibles de la clé de chiffrement (également appelée méthode de la force brute, ou force brute). essence cette méthode consiste en l'énumération de toutes les valeurs possibles de la clé de chiffrement jusqu'à ce que la clé souhaitée soit trouvée.

    8. Quelle doit être la longueur de la clé de chiffrement ?

    Aujourd'hui, pour les algorithmes de chiffrement symétriques, 128 bits (16 octets) sont considérés comme une longueur suffisante de la clé de chiffrement. Pour une énumération complète de tous clés possibles 128 bits de long (attaque par force brute) en un an, vous avez besoin de processeurs 4,2x1022 avec une capacité de 256 millions d'opérations de chiffrement par seconde. Le coût de ce nombre de processeurs est de 3,5x1024 dollars américains (selon Bruce Schneier, Applied Cryptography).

    Il y a un projet international distribué.net, dont le but est de fédérer les internautes pour créer un supercalculateur virtuel distribué qui énumère des clés de chiffrement. Le dernier projet de craquage de clé 64 bits a été achevé en 1757 jours, impliquant plus de trois cent mille utilisateurs, et la puissance de calcul de tous les ordinateurs du projet équivalait à près de 50 000 processeurs AMD Athlon XP avec fréquence d'horloge 2 GHz.

    Dans ce cas, il faut tenir compte du fait que l'augmentation de la longueur de la clé de chiffrement d'un bit double le nombre de valeurs de clé, et, par conséquent, le temps d'énumération. Autrement dit, sur la base des chiffres ci-dessus, en 1757 * 2 jours, il est possible de craquer non pas une clé de 128 bits, comme cela pourrait sembler à première vue, mais seulement une clé de 65 bits.

    9. J'ai entendu parler de clés de cryptage 1024 et même 2048 bits, et vous dites que 128 bits suffisent. Qu'est-ce que ça veut dire?

    C'est vrai, des clés de chiffrement de 512, 1024 et 2048 bits, et parfois même plus, sont utilisées dans les algorithmes de chiffrement asymétriques. Ils utilisent des principes complètement différents des algorithmes symétriques, donc les échelles des clés de chiffrement sont également différentes.

    La réponse à cette question est le secret le mieux gardé des services spéciaux de tout État. D'un point de vue théorique, il est impossible de lire des données chiffrées à l'aide d'un algorithme connu avec une clé de longueur suffisante (voir questions précédentes), cependant, qui sait ce qui se cache derrière le voile des secrets d'État ? Il se peut bien qu'il existe des technologies extraterrestres connues du gouvernement, avec lesquelles vous pouvez déchiffrer n'importe quel chiffre 🙂

    La seule chose que l'on puisse affirmer avec certitude est qu'aucun État, aucun service spécial ne révélera ce secret, et même s'il est possible de déchiffrer les données d'une manière ou d'une autre, il ne les montrera jamais de quelque manière que ce soit.

    Pour illustrer cette affirmation, un exemple historique peut être donné. Pendant la Seconde Guerre mondiale, le Premier ministre britannique Winston Churchill, à la suite de l'interception et du décryptage des messages allemands, a pris connaissance du prochain bombardement de la ville de Coventry. Malgré cela, il n'a pris aucune mesure pour empêcher l'ennemi d'apprendre que les renseignements britanniques pouvaient déchiffrer leurs messages. En conséquence, dans la nuit du 14 au 15 novembre 1940, Coventry a été détruit par des avions allemands, tuant un grand nombre de civils. Ainsi, pour Churchill, le prix de la divulgation d'informations qu'il pouvait déchiffrer des messages allemands s'est avéré supérieur au prix de plusieurs milliers de vies humaines.

    Il est évident que pour les politiciens modernes, le prix de ces informations est encore plus élevé, nous n'apprendrons donc rien sur les capacités des services spéciaux modernes, ni explicitement ni indirectement. Donc, même si la réponse à cette question est oui, cette possibilité, très probablement, ne se manifestera en aucune façon.

    Source : SécurIT

    ^ Retourner au début ^

    Habituellement, de nouveaux algorithmes de chiffrement sont publiés pour examen public et étudiés dans des centres de recherche spécialisés. Les résultats de ces études sont également publiés pour examen public.

    Algorithmes symétriques
    Les algorithmes de chiffrement sont divisés en deux grandes classes : symétrique (AES, GOST, Blowfish, CAST, DES) et asymétrique (RSA, El-Gamal). Les algorithmes de chiffrement symétriques utilisent la même clé pour chiffrer et déchiffrer les informations, tandis que les algorithmes asymétriques utilisent deux clés - une pour chiffrer et une pour déchiffrer.

    Si les informations chiffrées doivent être transférées vers un autre endroit, la clé de déchiffrement doit également y être transférée. La faiblesse ici - il s'agit d'un canal de transmission de données - s'il n'est pas sécurisé ou s'il est écouté, la clé de déchiffrement peut parvenir à un attaquant. Les systèmes basés sur des algorithmes asymétriques n'ont pas ce défaut. Puisque chaque participant à un tel système possède une paire de clés : clé publique et clé secrète.

    Clé de cryptage
    Il s'agit d'une séquence de bits aléatoire ou spécialement créée en fonction du mot de passe, qui est un paramètre variable de l'algorithme de chiffrement.
    Si vous cryptez les mêmes données avec le même algorithme, mais avec des clés différentes, les résultats seront également différents.

    Habituellement, dans les logiciels de chiffrement (WinRAR, Rohos, etc.), la clé est créée à partir d'un mot de passe que l'utilisateur spécifie.

    La clé de chiffrement est disponible en différentes longueurs, qui sont généralement mesurées en bits. À mesure que la longueur de la clé augmente, la sécurité théorique du chiffrement augmente. En pratique, ce n'est pas toujours vrai.

    En cryptographie, on considère que le mécanisme de chiffrement est une valeur non secrète, et un attaquant peut disposer du code source complet de l'algorithme de chiffrement, ainsi que du texte chiffré (règle de Kerckhoff). Une autre hypothèse qui peut avoir lieu est qu'un attaquant peut connaître une partie du texte non chiffré (en clair).

    Force de l'algorithme de chiffrement.
    Un algorithme de chiffrement est considéré comme fort jusqu'à preuve du contraire. Ainsi, si un algorithme de chiffrement est publié, existe depuis plus de 5 ans, et qu'aucune vulnérabilité sérieuse n'a été trouvée pour lui, on peut supposer que sa force est adaptée à la protection des informations secrètes.

    Durabilité théorique et pratique.
    En 1949, K.E. Shannon a publié un article "Théorie de la communication dans les systèmes secrets". Shannon considérait la force des systèmes cryptographiques comme pratique et théorique. La conclusion sur la sécurité théorique est encore pessimiste : la longueur de la clé doit être égale à la longueur du texte en clair.
    Par conséquent, Shannon a également examiné la question de la force pratique des systèmes cryptographiques. Le système est-il fiable si l'attaquant a temps limité et des ressources informatiques pour analyser les messages interceptés ?

    En règle générale, les vulnérabilités se trouvent dans les programmes qui chiffrent les données à l'aide d'un algorithme. Dans ce cas, les programmeurs font une erreur dans la logique du programme ou dans le protocole cryptographique, grâce auquel, après avoir étudié le fonctionnement du programme (à un niveau bas), on peut éventuellement accéder à des informations secrètes.

    Briser l'algorithme de chiffrement
    On pense que le cryptosystème a été résolu si l'attaquant peut calculer la clé secrète et également exécuter un algorithme de conversion équivalent au cryptoalgorithme d'origine. Et que cet algorithme était réalisable en temps réel.

    En cryptologie, il existe une sous-section appelée cryptanalyse, qui étudie les problèmes de fissuration ou de contrefaçon de messages chiffrés. Il existe de nombreuses façons et méthodes de cryptanalyse. La plus populaire est la méthode d'énumération directe de toutes les valeurs possibles de la clé de chiffrement (méthode dite de la "force brute" ou brute force). L'essence de cette méthode est d'énumérer toutes les valeurs possibles de la clé de chiffrement jusqu'à ce que la clé souhaitée soit trouvée.

    En pratique, cela signifie qu'un attaquant doit :

    • Ayez à votre disposition un cryptosystème (c'est-à-dire un programme) et des exemples de messages chiffrés.
    • Comprendre le protocole cryptographique. En d'autres termes, comment le programme crypte les données.
    • Développer et mettre en œuvre un algorithme d'énumération des clés pour ce cryptosystème.

    Comment savoir si une clé est valide ou non ?
    Tout dépend du programme spécifique et de la mise en œuvre du protocole de cryptage. Habituellement, si après le déchiffrement, il s'est avéré être des 'ordures', alors ce n'est pas la bonne clé. Et si le texte est plus ou moins significatif (cela peut être vérifié), alors la clé est correcte.

    Algorithmes de chiffrement
    AES (Rijndael). Il s'agit actuellement de la norme de cryptage fédérale américaine.

    Quel algorithme de chiffrement choisir pour protéger les informations ?

    Approuvé comme norme par le Département du commerce le 4 décembre 2001. La décision est entrée en vigueur dès sa publication au registre fédéral (06.12.01). Une variante de chiffrement avec seulement une taille de bloc de 128 bits est acceptée comme standard.

    GOST 28147-8. Norme de la Fédération de Russie pour le cryptage des données et la protection contre les imitations. Initialement, il avait un cou (OV ou SS - on ne le sait pas exactement), puis le cou a successivement diminué, et au moment où l'algorithme a été officiellement exécuté via la norme d'État de l'URSS en 1989, il a été supprimé. L'algorithme est resté DSP (comme vous le savez, le DSP n'est pas considéré comme un cou). En 1989, il est devenu la norme officielle de l'URSS, et plus tard, après l'effondrement de l'URSS, la norme fédérale de la Fédération de Russie.

    poisson-globe Un schéma complexe de génération d'éléments clés complique considérablement une attaque par force brute contre l'algorithme, mais le rend inadapté à une utilisation dans des systèmes où la clé change fréquemment et où de petites données sont cryptées sur chaque clé.

    L'algorithme est le mieux adapté aux systèmes dans lesquels de grandes quantités de données sont chiffrées à l'aide de la même clé.

    DES Norme de chiffrement fédérale américaine 1977-2001. Adopté comme norme fédérale américaine en 1977. En décembre 2001, il a perdu son statut en raison de l'introduction d'une nouvelle norme.

    MOULAGE En un sens, un analogue du DES.

    www.codenet.ru/progr/alg/enc
    Algorithmes de chiffrement, vue d'ensemble, informations, comparaison.

    http://www.enlight.ru/crypto
    Documents sur le cryptage asymétrique, la signature numérique et d'autres systèmes cryptographiques "modernes".

    Alexandre Velikanov,
    Olga Cheban,
    Tesline Service S.R.L.

    L'ancien banquier d'Abu Dhabi Mohammad Ghaith bin Mahah Al Mazrui a mis au point un chiffrement qu'il prétend incassable. Le chiffre appelé "Code d'Abu Dhabi" a été créé sur la base d'un groupe de symboles inventés par Al Mazrui lui-même. Dans son code, chaque lettre est remplacée par un symbole spécialement inventé, et ces symboles n'appartiennent à aucune langue connue dans le monde.

    Quels algorithmes de chiffrement des données sont les plus sûrs

    Il a fallu un an et demi au développeur pour travailler sur le chiffrement, qu'Al Mazrui qualifie d'"absolument nouveau".

    Selon le passionné, chacun peut créer son propre code et la complexité du chiffrement est déterminée par la longueur de sa clé. On pense qu'en principe, s'il y a un désir, certaines compétences et logiciels appropriés, presque tous, même le chiffrement le plus complexe, peuvent être déchiffrés.

    Cependant, Al Mazrui assure que sa création est incassable et est de loin le chiffrement le plus fiable. "Il est presque impossible de déchiffrer un document encodé avec le code d'Abu Dhabi", en est sûr Al Mazrui.

    Pour prouver son cas, le banquier a défié tous les cryptographes, pirates et cryptographes exceptionnels, les exhortant à essayer de casser son chiffre.

    3. Kryptos est une sculpture que le sculpteur américain James Sanborn a installée sur le terrain du siège de la CIA à Langley, en Virginie, en 1990. Le message crypté imprimé dessus ne peut toujours pas être déchiffré.

    4. Chiffre imprimé sur Lingot d'or chinois. Sept lingots d'or auraient été délivrés en 1933 au général Wang à Shanghai. Ils sont marqués d'images, de lettres chinoises et de certains messages cryptés, y compris en lettres latines. Ils peuvent contenir des certificats d'authenticité du métal émis par l'une des banques américaines.

    Quel algorithme de chiffrement choisir dans TrueCrypt

    5. Cryptogrammes de balle sont trois messages cryptés censés contenir l'emplacement d'un trésor de deux wagons chargés d'or, d'argent et de pierres précieuses enterrés dans les années 1820 près de Lynchburg, dans le comté de Bedford, en Virginie, par un groupe de mineurs d'or dirigé par Thomas Jefferson Bale. Le prix d'un trésor introuvable jusqu'à présent, en termes de monnaie moderne, devrait être d'environ 30 millions de dollars. L'énigme des cryptogrammes n'a pas été résolue jusqu'à présent, en particulier, la question de l'existence réelle du trésor reste controversée. L'un des messages a été déchiffré - il décrit le trésor lui-même et donne des indications générales sur son emplacement. Les lettres non ouvertes restantes peuvent contenir l'emplacement exact du signet et une liste des propriétaires du trésor. (des informations détaillées)

    6. Manuscrit de Voynich souvent considéré comme le livre le plus mystérieux du monde. Le manuscrit utilise un alphabet unique, il contient environ 250 pages et des dessins représentant des fleurs inconnues, des nymphes nues et des symboles astrologiques. Il est apparu pour la première fois à la fin du XVIe siècle, lorsque l'empereur romain germanique Rodolphe II l'a acheté à Prague à un marchand inconnu pour 600 ducats (environ 3,5 kg d'or, aujourd'hui plus de 50 000 dollars). De Rodolphe II, le livre passa aux nobles et aux savants, et disparut à la fin du XVIIe siècle. Le manuscrit réapparut vers 1912 lorsqu'il fut acheté par le libraire américain Wilfried Voynich. Après sa mort, le manuscrit a été donné à l'Université de Yale. Le savant britannique Gordon Rugg pense que le livre est un canular intelligent. Le texte a des caractéristiques qui ne sont caractéristiques d'aucune des langues. D'autre part, certaines caractéristiques, telles que la longueur des mots, la façon dont les lettres et les syllabes sont connectées, sont similaires à celles trouvées dans les langues réelles. "Beaucoup de gens pensent que tout cela est trop compliqué pour qu'un canular construise un tel système, il faudrait des années à un alchimiste fou", explique Rugg. Cependant, Rugg montre que cette complexité aurait pu être facilement obtenue en utilisant un dispositif de chiffrement inventé vers 1550 et appelé la grille de Cardan. Dans cette table de symboles, les mots sont créés en déplaçant une carte avec des trous découpés dedans. En raison des espaces laissés dans le tableau, les mots sont de longueurs différentes. En imposant de telles grilles sur la table des syllabes du manuscrit, Rugg a créé un langage qui partage bon nombre, sinon la totalité, des caractéristiques du langage du manuscrit. Selon lui, trois mois suffiraient pour créer l'intégralité du livre. (informations détaillées, wikipédia)

    7. Chiffre Dorabella, composé en 1897 par le compositeur britannique Sir Edward William Elgar. Sous forme cryptée, il a envoyé une lettre à la ville de Wolverhampton à sa petite amie Dora Penny, la fille de 22 ans d'Alfred Penny, recteur de la cathédrale Saint-Pierre. Ce chiffre reste non résolu.

    8. Jusqu'à récemment, la liste était suivie par Chaochiffre, qui n'a pu être découvert du vivant de son créateur. Le chiffrement a été inventé par John F. Byrne en 1918 et pendant près de 40 ans, il a tenté en vain d'y intéresser les autorités américaines. L'inventeur a offert une récompense monétaire à quiconque pourrait résoudre son chiffrement, mais en conséquence, personne ne l'a demandé.

    Mais en mai 2010, des membres de la famille de Byrne ont remis tous les documents restants de Byrne au National Cryptographic Museum du Maryland, ce qui a conduit à la découverte de l'algorithme.

    9. Chiffre d'Agapeyeff. En 1939, le cartographe britannique d'origine russe, Alexander D'Agapeyeff, publie un livre sur les bases de la cryptographie Codes et Chiffres, dans la première édition duquel il cite un chiffre de sa propre invention. Ce chiffre n'a pas été inclus dans les éditions suivantes. Par la suite, D'Agapeyeff a avoué avoir oublié l'algorithme de déchiffrement de ce chiffre. On soupçonne que les échecs qui ont frappé tous ceux qui ont essayé de déchiffrer son œuvre sont dus au fait que l'auteur a commis des erreurs lors du chiffrement du texte.

    Mais à notre époque, on espère que le chiffrement pourra être résolu à l'aide de méthodes modernes - par exemple, un algorithme génétique.

    10. Taman Shud. Le 1er décembre 1948, sur la côte australienne à Somerton, près d'Adélaïde, le cadavre d'un homme a été retrouvé, vêtu d'un pull et d'un manteau, malgré la journée particulièrement chaude pour le climat australien. Aucun document n'a été trouvé sur lui. Les tentatives de comparaison des empreintes de ses dents et de ses doigts avec les données disponibles sur les personnes vivantes ont également échoué. Un examen post-mortem a révélé un afflux de sang non naturel, qui a rempli, en particulier, sa cavité abdominale, ainsi qu'une augmentation des organes internes, mais aucune substance étrangère n'a été trouvée dans son corps. A la gare, ils ont simultanément trouvé une valise qui aurait pu appartenir au défunt. La valise contenait un pantalon avec une poche secrète dans laquelle ils ont trouvé un morceau de papier déchiré d'un livre avec les mots imprimés dessus. Taman Shud. L'enquête a révélé qu'un morceau de papier avait été arraché à un exemplaire très rare de la collection Rubaiyat du grand poète persan Omar Khayyam. Le livre lui-même a été retrouvé sur le siège arrière d'une voiture laissée non verrouillée. Sur la couverture arrière du livre, cinq lignes étaient griffonnées en majuscules - la signification de ce message n'a pas pu être déchiffrée. À ce jour, cette histoire reste l'un des mystères les plus mystérieux de l'Australie.

    À l'ère de l'informatique, l'humanité refuse de plus en plus de stocker des informations sous forme manuscrite ou imprimée, préférant les documents. Et si auparavant ils volaient simplement des papiers ou des parchemins, maintenant ce sont des informations électroniques qui sont piratées. Les algorithmes de chiffrement des données eux-mêmes sont connus depuis des temps immémoriaux. De nombreuses civilisations ont préféré chiffrer leurs connaissances uniques afin que seule une personne bien informée puisse les obtenir. Mais voyons comment tout cela se manifeste dans notre monde.

    Qu'est-ce qu'un système de cryptage de données ?

    Vous devez d'abord décider quels sont les systèmes cryptographiques en général. En gros, il s'agit d'une sorte d'algorithme spécial pour enregistrer des informations qui ne seraient compréhensibles que par un certain cercle de personnes.

    En ce sens, pour un étranger, tout ce qu'il voit devrait (et en principe c'est le cas) ressembler à un ensemble de caractères sans signification. Seuls ceux qui connaissent les règles de leur emplacement peuvent lire une telle séquence. Comme exemple le plus simple, vous pouvez définir un algorithme de cryptage avec des mots épelés, disons, à l'envers. Bien sûr, c'est la chose la plus primitive à laquelle vous pouvez penser. Il est entendu que si vous connaissez les règles d'enregistrement, il ne sera pas difficile de restituer le texte original.

    Pourquoi est-ce nécessaire ?

    Pourquoi tout cela a été inventé, probablement, cela ne vaut pas la peine d'être expliqué. Regardez, après tout, quels volumes de connaissances laissés par les civilisations anciennes sont cryptés aujourd'hui. Soit les anciens ne voulaient pas que nous le sachions, soit tout cela a été fait pour qu'une personne ne puisse les utiliser que lorsqu'elle a atteint le niveau de développement requis - pour l'instant, on ne peut que deviner à ce sujet.

    Cependant, si nous parlons du monde d'aujourd'hui, la protection de l'information devient l'un des plus grands problèmes. Jugez par vous-même, car combien de documents y a-t-il dans les mêmes archives, sur lesquels les gouvernements de certains pays ne voudraient pas se répandre, combien de développements secrets, combien de nouvelles technologies. Mais tout cela, en gros, est le but premier des soi-disant hackers au sens classique du terme.

    Une seule phrase me vient à l'esprit, devenue un classique des principes de l'activité de Nathan Rothschild : "Qui possède l'information, il possède le monde". Et c'est pourquoi l'information doit être protégée des regards indiscrets, afin que quelqu'un d'autre ne l'utilise pas à ses propres fins égoïstes.

    Cryptographie : point de départ

    Maintenant, avant de considérer la structure même de tout algorithme de chiffrement, plongeons un peu dans l'histoire, en ces temps lointains où cette science émergeait à peine.

    On pense que l'art de cacher des données a activement commencé à se développer il y a plusieurs millénaires avant JC. La supériorité est attribuée aux anciens Sumériens, au roi Salomon et aux prêtres égyptiens. Ce n'est que beaucoup plus tard que les mêmes signes et symboles runiques similaires sont apparus. Mais voici ce qui est intéressant : parfois, l'algorithme de cryptage des textes (et à l'époque ils étaient cryptés) était tel que dans le même caractère, cela pouvait signifier non seulement une lettre, mais aussi un mot entier, un concept ou même une phrase. Pour cette raison, déchiffrer de tels textes, même avec des systèmes cryptographiques modernes qui permettent de restaurer la forme originale de n'importe quel texte, devient absolument impossible. En termes modernes, ce sont des algorithmes de chiffrement symétrique assez avancés, comme on dit maintenant. Nous nous attarderons sur eux séparément.

    Le monde moderne : types d'algorithmes de chiffrement

    Quant à la protection des données confidentielles dans le monde moderne, il convient de s'attarder séparément sur l'époque où les ordinateurs étaient inconnus de l'humanité. Sans parler de la quantité de papier que les alchimistes ou les mêmes Templiers ont traduit, essayant de cacher les vrais textes sur les connaissances qu'ils connaissaient, il convient de rappeler que le problème n'a fait qu'empirer depuis l'émergence de la connexion.

    Et ici, peut-être, l'appareil le plus célèbre peut être appelé une machine de chiffrement allemande de la Seconde Guerre mondiale appelée "Enigma", qui signifie "mystère" en anglais. Encore une fois, il s'agit d'un exemple de la façon dont les algorithmes de chiffrement symétriques sont utilisés, dont l'essence est que le chiffreur et le décrypteur connaissent la clé (algorithme) qui a été utilisée à l'origine pour masquer les données.

    Aujourd'hui, de tels cryptosystèmes sont utilisés partout. L'exemple le plus frappant est, par exemple, l'algorithme de cryptage AES256, qui est une norme internationale. En termes de terminologie informatique, il permet l'utilisation d'une clé de 256 bits. En général, les algorithmes de chiffrement modernes sont assez divers et peuvent être conditionnellement divisés en deux grandes classes : symétrique et asymétrique. Ils sont, selon le domaine de rendez-vous, très largement utilisés aujourd'hui. Et le choix de l'algorithme de chiffrement dépend directement des tâches et de la méthode de restauration des informations dans leur forme d'origine. Mais quelle est la différence entre eux ?

    Algorithmes de chiffrement symétriques et asymétriques : quelle est la différence

    Voyons maintenant quelle est la différence cardinale entre de tels systèmes et sur quels principes repose leur application dans la pratique. Comme cela est déjà clair, les algorithmes de chiffrement sont associés aux concepts géométriques de symétrie et d'asymétrie. Ce que cela signifie doit maintenant être clarifié.

    L'algorithme de chiffrement DES symétrique, développé en 1977, implique une clé unique, qui, vraisemblablement, est connue de deux parties intéressées. Connaissant une telle clé, il n'est pas difficile de l'appliquer en pratique afin de lire le même jeu de caractères sans signification, en le mettant, pour ainsi dire, sous une forme lisible.

    Que sont les algorithmes de chiffrement asymétrique ? Deux clés sont utilisées ici, c'est-à-dire que l'une sert à encoder l'information d'origine, l'autre sert à décrypter le contenu, et il n'est nullement nécessaire qu'elles coïncident ou soient simultanément du côté de l'encodage et du décodage. Un suffit pour chacun d'eux. De cette manière, les deux clés sont dans une très grande mesure empêchées de tomber entre des troisièmes mains. Cependant, sur la base de la situation actuelle, pour de nombreux intrus, ce type de vol n'est pas particulièrement un problème. Une autre chose est la recherche de la clé exacte (en gros, le mot de passe) qui convient pour décrypter les données. Et ici, il peut y avoir tellement d'options que même l'ordinateur le plus moderne les traitera pendant plusieurs décennies. Comme il a été dit, aucun des systèmes informatiques disponibles dans le monde ne peut et ne pourra pirater l'accès et obtenir ce qu'on appelle des « écoutes téléphoniques » au cours des prochaines décennies.

    Les algorithmes de chiffrement les plus connus et les plus couramment utilisés

    Mais revenons au monde informatique. Que proposent actuellement les principaux algorithmes de chiffrement pour protéger les informations au stade actuel de développement des technologies informatiques et mobiles ?

    Dans la plupart des pays, la norme de facto est le système cryptographique AES basé sur une clé de 128 bits. Cependant, parallèlement à celui-ci, on utilise parfois un algorithme qui, s'il fait référence à un chiffrement à l'aide d'une clé publique (publique), est néanmoins l'un des plus fiables. Ceci, soit dit en passant, a été prouvé par tous les experts de premier plan, car le système lui-même est déterminé non seulement par le degré de cryptage des données, mais également par le maintien de l'intégrité des informations. Quant aux premiers développements, qui incluent l'algorithme de chiffrement DES, il est désespérément obsolète et les tentatives pour le remplacer ont commencé en 1997. C'est alors que sur sa base une nouvelle norme avancée (Advanced) est apparue (d'abord avec une clé de 128 bits, puis avec une clé de 256 bits).

    Cryptage RSA

    Concentrons-nous maintenant sur la technologie RSA, qui fait référence au système de chiffrement asymétrique. Supposons qu'un abonné envoie à un autre des informations cryptées à l'aide de cet algorithme.

    Pour le chiffrement, deux nombres suffisamment grands X et Y sont pris, après quoi leur produit Z, appelé module, est calculé. Ensuite, un nombre étranger A est sélectionné qui satisfait la condition : 1< A < (X - 1) * (Y - 1). Оно обязательно должно быть простым, то есть не иметь общих делителей с произведением (X - 1) * (Y - 1), равным Z. Затем происходит вычисление числа B, но только так, что (A * B - 1) делится на (X - 1) * (Y - 1). В cet exemple A - indicateur public, B - indicateur secret, (Z; A) - clé publique, (Z; B) - clé secrète.

    Que se passe-t-il pendant le transfert ? L'émetteur crée un texte chiffré, noté F, avec un message initial M, suivi de A et multiplication par modulo Z : F = M**A*(mod Z). Il reste au destinataire à calculer un exemple simple : M = F**B*(mod Z). En gros, toutes ces actions se réduisent à la seule exponentiation. L'option de création d'une signature numérique fonctionne sur le même principe, mais les équations ici sont un peu plus compliquées. Afin de ne pas remplir la tête de l'utilisateur avec de l'algèbre, ce matériel ne sera pas fourni.

    En ce qui concerne le piratage, l'algorithme de chiffrement RSA pose une tâche presque insoluble pour un attaquant : calculer la clé B. Cela pourrait théoriquement être fait en utilisant les outils de factorisation disponibles (factorisant les nombres initiaux X et Y), mais aujourd'hui il n'existe pas de tels outils, par conséquent, la tâche elle-même devient non seulement difficile - elle est généralement impossible.

    Cryptage DES

    Devant nous se trouve un autre, dans le passé, un algorithme de chiffrement assez efficace avec longueur maximale bloc de 64 bits (caractères), dont seulement 56 sont significatifs.Comme mentionné ci-dessus, cette technique est déjà dépassée, bien qu'elle ait longtemps résisté comme standard pour les cryptosystèmes utilisés aux États-Unis même pour l'industrie de la défense.

    L'essence de son cryptage symétrique est qu'une certaine séquence de 48 bits est utilisée pour cela. Dans ce cas, 16 cycles à partir d'un échantillon de clé de 48 bits sont utilisés pour les opérations. Mais! Tous les cycles sont similaires dans leur principe de fonctionnement, par conséquent, sur ce moment il n'est pas difficile de calculer la clé souhaitée. Par exemple, l'un des ordinateurs les plus puissants des États-Unis, d'une valeur de plus d'un million de dollars, "casse" le cryptage en trois heures et demie environ. Pour les machines d'un rang inférieur, il ne faut pas plus de 20 heures pour calculer même la séquence dans sa manifestation maximale.

    Cryptage AES

    Enfin, nous avons le système le plus courant et, comme on le croyait jusqu'à récemment, le plus invulnérable - l'algorithme de cryptage AES. Aujourd'hui, il est présenté en trois modifications - AES128, AES192 et AES256. La première option est davantage utilisée pour assurer la sécurité des informations appareils mobiles, le second intervient à un niveau supérieur. En tant que norme, ce système a été officiellement introduit en 2002 et sa prise en charge a été immédiatement annoncée par Intel Corporation, qui produit des puces de processeur.

    Son essence, contrairement à tout autre système de chiffrement symétrique, est réduite à des calculs basés sur la représentation polynomiale des codes et des opérations de calcul avec des tableaux à deux dimensions. Selon le gouvernement des États-Unis, il faudra environ 149 billions d'années pour qu'un décrypteur, même le plus moderne, craque une clé de 128 bits. Soyons en désaccord avec une source aussi compétente. Au cours des cent dernières années, la technologie informatique a fait un bond proportionnel à, il ne faut donc pas trop se leurrer, d'autant plus qu'aujourd'hui, il s'est avéré qu'il existe des systèmes de cryptage plus abrupts que ceux que les États-Unis ont déclarés complètement résistant au piratage.

    Problèmes avec les virus et le décryptage

    Bien sûr, nous parlons de virus. Récemment, des virus rançongiciels assez spécifiques sont apparus qui cryptent tout le contenu du disque dur et des partitions logiques sur l'ordinateur infecté, après quoi la victime reçoit une lettre avec une notification que tous les fichiers sont cryptés, et seule la source spécifiée peut les décrypter après payer une somme rondelette.

    Dans le même temps, le plus important, il est indiqué que le système AES1024 a été utilisé pour le cryptage des données, c'est-à-dire que la longueur de la clé est quatre fois supérieure à l'AES256 actuel et que le nombre d'options lors de la recherche du décrypteur approprié augmente tout simplement incroyablement.

    Et sur la base de la déclaration du gouvernement américain sur le délai de décryptage d'une clé de 128 bits, qu'en est-il du temps qu'il faudra pour trouver une solution au cas avec une clé et ses variantes d'une longueur de 1024 bits ? C'est là que les États-Unis ont échoué. Ils pensaient que leur système de cryptographie informatique était parfait. Hélas, il y avait des spécialistes (apparemment, dans l'espace post-soviétique) qui ont dépassé les postulats américains "inébranlables" à tous égards.

    Avec tout cela, même les principaux développeurs de logiciels antivirus, y compris Kaspersky Lab, les spécialistes qui ont créé Doctor Web, ESET Corporation et de nombreux autres leaders mondiaux haussent simplement les épaules, disent-ils, il n'y a tout simplement pas de fonds pour décrypter un tel algorithme , tout en silence à ce sujet il n'y a pas assez de temps. Bien sûr, lorsque vous contactez le service d'assistance, il est suggéré d'envoyer le fichier crypté et, s'il est disponible, de préférence son original - sous la forme dans laquelle il se trouvait avant le début du cryptage. Hélas, même une analyse comparative n'a pas encore donné de résultats tangibles.

    Le monde que nous ne connaissons pas

    Que puis-je dire, si nous poursuivons l'avenir, incapables de déchiffrer le passé. Si vous regardez le monde de notre millénaire, vous pouvez voir que le même empereur romain Gaius Julius Caesar a utilisé des algorithmes de cryptage symétrique dans certains de ses messages. Eh bien, si vous regardez Léonard de Vinci, cela devient généralement quelque peu inconfortable du simple fait de réaliser que dans le domaine de la cryptographie, cette personne, dont la vie est couverte d'un certain voile de mystère, a dépassé sa modernité pendant des siècles.

    Jusqu'à présent, beaucoup sont hantés par le soi-disant «sourire Gioconda», dans lequel il y a quelque chose de si attrayant que l'homme moderne n'est pas capable de comprendre. Soit dit en passant, certains symboles ont été trouvés relativement récemment sur la photo (dans les yeux, sur la robe, etc.), ce qui indique clairement que tout cela contient une sorte d'information cryptée par le grand génie, qu'aujourd'hui, hélas, nous pouvons extrait impossible. Mais nous n'avons même pas mentionné toutes sortes de structures à grande échelle qui pourraient bouleverser la compréhension de la physique de cette époque.

    Bien sûr, certains esprits sont enclins uniquement au fait que dans la plupart des cas, le soi-disant "nombre d'or" a été utilisé, mais cela ne donne pas la clé de l'ensemble du vaste référentiel de connaissances, qui, comme on le croit, est soit incompréhensible pour nous ou perdu à jamais. Apparemment, les cryptographes ont encore un travail incroyable à faire pour comprendre que les algorithmes de chiffrement modernes ne peuvent parfois pas être comparés aux réalisations des civilisations anciennes. De plus, s'il existe aujourd'hui des principes généralement acceptés pour la protection des informations, ceux qui étaient utilisés dans l'Antiquité nous sont malheureusement totalement inaccessibles et incompréhensibles.

    Encore une chose. Il y a une opinion tacite que la plupart des textes anciens ne peuvent pas être traduits simplement parce que les clés pour les déchiffrer sont soigneusement gardées par des sociétés secrètes comme les francs-maçons, les Illuminati, etc. Même les Templiers ont laissé leur marque ici. Que dire du fait que la bibliothèque du Vatican est encore absolument inaccessible ? N'est-ce pas là que sont stockées les principales clés de compréhension de l'Antiquité ? De nombreux experts sont enclins à cette version, estimant que le Vatican cache délibérément cette information à la société. Qu'on le veuille ou non, personne ne le sait encore. Mais une chose peut être dite avec certitude - les anciens systèmes de cryptographie n'étaient en aucun cas inférieurs (et peut-être même supérieurs) à ceux utilisés dans le monde informatique moderne.

    Au lieu d'une postface

    Enfin, il faut dire que loin de tous les aspects liés aux systèmes cryptographiques actuels et aux méthodes qu'ils utilisent ont été envisagés ici. Le fait est que dans la plupart des cas, il serait nécessaire de donner des formules mathématiques complexes et de présenter des calculs, à partir desquels la plupart des utilisateurs iront tout simplement en vrille. Il suffit de regarder l'exemple de description de l'algorithme RSA pour se rendre compte que tout le reste paraîtra beaucoup plus compliqué.

    L'essentiel ici est de comprendre et de pénétrer, pour ainsi dire, dans le fond du problème. Eh bien, si nous parlons de ce qu'ils sont systèmes modernes, proposant de stocker des informations confidentielles de manière à ce qu'elles soient accessibles à un cercle restreint d'utilisateurs, il n'y a guère de choix ici. Malgré la présence de nombreux systèmes cryptographiques, les mêmes algorithmes RSA et DES perdent clairement face aux spécificités d'AES. Cependant, la plupart des applications modernes développées pour des systèmes d'exploitation complètement différents utilisent AES (bien sûr, selon l'application et l'appareil). Mais l'évolution "non autorisée" de ce cryptosystème, c'est le moins qu'on puisse dire, en a choqué plus d'un, en particulier ses créateurs. Mais en général, sur la base de ce qui est disponible aujourd'hui, il ne sera pas difficile pour de nombreux utilisateurs de comprendre ce que sont les systèmes de chiffrement de données cryptographiques, pourquoi ils sont nécessaires et comment ils fonctionnent.

    Habituellement, de nouveaux algorithmes de chiffrement sont publiés pour examen public et étudiés dans des centres de recherche spécialisés. Les résultats de ces études sont également publiés pour examen public.

    Algorithmes symétriques
    Les algorithmes de chiffrement sont divisés en deux grandes classes : symétrique (AES, GOST, Blowfish, CAST, DES) et asymétrique (RSA, El-Gamal). Les algorithmes de chiffrement symétriques utilisent la même clé pour chiffrer et déchiffrer les informations, tandis que les algorithmes asymétriques utilisent deux clés - une pour chiffrer et une pour déchiffrer.

    Si les informations chiffrées doivent être transférées vers un autre endroit, la clé de déchiffrement doit également y être transférée. Le point faible ici est le canal de transmission de données - s'il n'est pas sécurisé ou s'il est écouté, la clé de déchiffrement peut parvenir à l'attaquant. Les systèmes basés sur des algorithmes asymétriques n'ont pas ce défaut. Puisque chaque participant à un tel système possède une paire de clés : clé publique et clé secrète.

    Clé de cryptage
    Il s'agit d'une séquence de bits aléatoire ou spécialement créée en fonction du mot de passe, qui est un paramètre variable de l'algorithme de chiffrement.
    Si vous cryptez les mêmes données avec le même algorithme, mais avec des clés différentes, les résultats seront également différents.

    Habituellement, dans les logiciels de chiffrement (WinRAR, Rohos, etc.), la clé est créée à partir d'un mot de passe que l'utilisateur spécifie.

    La clé de chiffrement est disponible en différentes longueurs, qui sont généralement mesurées en bits. À mesure que la longueur de la clé augmente, la sécurité théorique du chiffrement augmente. En pratique, ce n'est pas toujours vrai.

    En cryptographie, on considère que le mécanisme de chiffrement est une valeur non secrète, et un attaquant peut disposer du code source complet de l'algorithme de chiffrement, ainsi que du texte chiffré (règle de Kerckhoff). Une autre hypothèse qui peut avoir lieu est que l'attaquant peut connaître une partie du texte non chiffré (en clair).

    Force de l'algorithme de chiffrement.
    Un algorithme de chiffrement est considéré comme fort jusqu'à preuve du contraire. Ainsi, si un algorithme de chiffrement a été publié, existe depuis plus de 5 ans, et qu'aucune vulnérabilité sérieuse n'a été trouvée pour lui, on peut supposer que sa force est adaptée à la protection des informations secrètes.

    Durabilité théorique et pratique.
    En 1949, K.E. Shannon a publié un article "Théorie de la communication dans les systèmes secrets". Shannon considérait la force des systèmes cryptographiques comme pratique et théorique. La conclusion sur la sécurité théorique est encore pessimiste : la longueur de la clé doit être égale à la longueur du texte en clair.
    Par conséquent, Shannon a également examiné la question de la force pratique des systèmes cryptographiques. Le système est-il fiable si l'attaquant dispose de peu de temps et de ressources informatiques pour analyser les messages interceptés ?

    En règle générale, les vulnérabilités se trouvent dans les programmes qui chiffrent les données à l'aide d'un algorithme. Dans ce cas, les programmeurs font une erreur dans la logique du programme ou dans le protocole cryptographique, grâce auquel, après avoir étudié le fonctionnement du programme (à un niveau bas), on peut éventuellement accéder à des informations secrètes.

    Briser l'algorithme de chiffrement
    On pense que le cryptosystème a été résolu si l'attaquant peut calculer la clé secrète et également exécuter un algorithme de conversion équivalent au cryptoalgorithme d'origine. Et que cet algorithme était réalisable en temps réel.

    En cryptologie, il existe une sous-section - la cryptanalyse, qui étudie les problèmes de fissuration ou de falsification des messages chiffrés. Il existe de nombreuses façons et méthodes de cryptanalyse. La plus populaire est la méthode d'énumération directe de toutes les valeurs possibles de la clé de chiffrement (la méthode dite de la "force brute" ou de la force brute). L'essence de cette méthode est d'énumérer toutes les valeurs possibles de la clé de chiffrement jusqu'à ce que la clé souhaitée soit trouvée.

    En pratique, cela signifie qu'un attaquant doit :

    • Ayez à votre disposition un cryptosystème (c'est-à-dire un programme) et des exemples de messages chiffrés.
    • Comprendre le protocole cryptographique. En d'autres termes, comment le programme crypte les données.
    • Développer et mettre en œuvre un algorithme d'énumération des clés pour ce cryptosystème.
    Comment savoir si une clé est valide ou non ?
    Tout dépend du programme spécifique et de la mise en œuvre du protocole de cryptage. Habituellement, si après le déchiffrement le résultat est "garbage", alors c'est la mauvaise clé. Et si le texte est plus ou moins significatif (cela peut être vérifié), alors la clé est correcte.

    Algorithmes de chiffrement
    AES (Rijndael). Il s'agit actuellement de la norme de cryptage fédérale américaine. Approuvé comme norme par le Département du commerce le 4 décembre 2001. La décision est entrée en vigueur dès sa publication au registre fédéral (06.12.01). Une variante de chiffrement avec seulement une taille de bloc de 128 bits est acceptée comme standard.

    GOST 28147-8. Norme de la Fédération de Russie pour le cryptage des données et la protection contre les imitations. Initialement, il avait un cou (OV ou SS - on ne sait pas exactement), puis le cou a été systématiquement réduit, et au moment où l'algorithme a été officiellement exécuté via la norme d'État de l'URSS en 1989, il a été supprimé. L'algorithme est resté DSP (comme vous le savez, le DSP n'est pas considéré comme un cou). En 1989, il est devenu la norme officielle de l'URSS, et plus tard, après l'effondrement de l'URSS, la norme fédérale de la Fédération de Russie.

    poisson-globe Un schéma complexe de génération d'éléments clés complique considérablement une attaque par force brute contre l'algorithme, mais le rend inadapté à une utilisation dans des systèmes où la clé change fréquemment et où de petites données sont cryptées sur chaque clé. L'algorithme est le mieux adapté aux systèmes dans lesquels de grandes quantités de données sont chiffrées à l'aide de la même clé.

    DES Norme de chiffrement fédérale américaine 1977-2001. Adopté comme norme fédérale américaine en 1977. En décembre 2001, il a perdu son statut en raison de l'introduction d'une nouvelle norme.

    MOULAGE En un sens, un analogue du DES.

    Partager