Page d'accueil » comment » Qu'est-ce que le cryptage et comment fonctionne-t-il?

    Qu'est-ce que le cryptage et comment fonctionne-t-il?

    Le cryptage a une longue histoire qui remonte à l'époque où les anciens Grecs et Romains envoyaient des messages secrets en substituant des lettres déchiffrables uniquement par une clé secrète. Rejoignez-nous pour une petite leçon d'histoire et en savoir plus sur le fonctionnement du cryptage.

    Dans l'édition d'aujourd'hui de HTG Explains, nous allons vous donner un bref historique du cryptage, son fonctionnement et quelques exemples de différents types de cryptage. Assurez-vous également de consulter l'édition précédente, où nous avons expliqué pourquoi tant de geeks détestent Internet. Explorateur.

    Image par xkcd, évidemment.

    Les débuts du cryptage

    Les Grecs de l'Antiquité utilisaient un outil appelé Scytale pour chiffrer plus rapidement leurs messages à l'aide d'un chiffrement de transposition: ils enroulaient simplement la bande de parchemin autour du cylindre, écrivaient le message et, une fois déroulé, n'avaient aucun sens..

    Bien sûr, cette méthode de cryptage est assez facile à utiliser, mais c’est l’un des premiers exemples de cryptage réellement utilisé dans le monde réel..

    Jules César a utilisé une méthode quelque peu similaire au cours de son temps en décalant chaque lettre de l'alphabet vers la droite ou la gauche d'un nombre de positions - une technique de cryptage connue sous le nom de chiffrement de César. Par exemple, en utilisant l'exemple de chiffrement ci-dessous, vous écririez «GEEK» en tant que «JHHN»..

    Ordinaire: ABCDEFGHIJKLMNOPQRSTUVWXYZ
    Chiffre: DEFGHIJKLMNOPQRSTUVWXYZABC

    Étant donné que seul le destinataire du message connaissait le chiffre, il serait difficile pour la personne suivante de décoder le message, ce qui apparaîtrait comme du charabia, mais la personne qui en avait le chiffrement pouvait facilement le décoder et le lire..

    D'autres chiffrements de chiffrement simples comme le carré Polybe utilisent un chiffrement polyalphabétique qui répertorie chaque lettre avec les positions numériques correspondantes en haut et sur le côté pour indiquer où se trouve la position de la lettre..

    En utilisant une table comme celle ci-dessus, vous écrivez la lettre «G» sous la forme «23» ou «GEEK» sous la forme «23 31 31 43»..

    Enigma Machine

    Pendant la Seconde Guerre mondiale, les Allemands utilisaient la machine Enigma pour transmettre des transmissions cryptées, ce qui prenait des années avant que les Polonais ne soient en mesure de déchiffrer les messages et de donner la solution aux forces alliées, déterminantes pour leur victoire..

    L'histoire du cryptage moderne

    Voyons les choses en face: les techniques de cryptage modernes peuvent être un sujet extrêmement ennuyeux. Au lieu de les expliquer simplement avec des mots, nous avons rassemblé une bande dessinée qui raconte l'histoire du cryptage, inspirée du guide des chiffres clés de Jeff Moser sur AES.  Remarque: il est clair que nous ne pouvons pas tout dire sur l'historique du cryptage dans une bande dessinée..

    À cette époque, les gens n’avaient pas une bonne méthode de cryptage pour sécuriser leurs communications électroniques..

    Lucifer était le nom donné à plusieurs des premiers chiffreurs civils de bloc, développés par Horst Feistel et ses collègues d'IBM..

    La norme de chiffrement de données (Data Encryption Standard - DES) est un code chiffré en bloc (une forme de chiffrement secret partagé) choisi par le National Bureau of Standards comme norme fédérale de traitement de l'information (FIPS) pour les États-Unis en 1976 et qui a ensuite fait utiliser à l'international.

    Les préoccupations relatives à la sécurité et au fonctionnement relativement lent du logiciel dans les logiciels ont poussé les chercheurs à proposer une variété de conceptions alternatives de chiffrement par blocs, qui ont commencé à apparaître à la fin des années 1980 et au début des années 1990: RC5, Blowfish, IDEA, NewDES, SAFER, CAST5, etc. FEAL

    Le gouvernement américain a adopté l’algorithme de chiffrement Rijndael en tant que chiffrement standard à clé symétrique ou AES (Advanced Encryption Standard). L’Institut national de la normalisation et de la technologie (NIST) a annoncé le 26 novembre 2001 le nom de US FIPS PUB 197 (FIPS 197), au terme d’un processus de normalisation d'une durée de cinq ans au cours duquel quinze conceptions concurrentes ont été présentées et évaluées avant que Rijndael ne soit choisi. algorithme de cryptage approprié.

    Performance de l'algorithme de chiffrement

    Il existe de nombreux algorithmes de cryptage, et ils sont tous adaptés à des objectifs différents. Les deux caractéristiques principales qui identifient et différencient un algorithme de cryptage sont sa capacité à sécuriser les données protégées contre les attaques et sa rapidité et son efficacité..

    Comme bon exemple de la différence de vitesse entre différents types de cryptage, vous pouvez utiliser l'utilitaire d'analyse comparative intégré à l'assistant de création de volume de TrueCrypt. Comme vous pouvez le constater, AES est de loin le type de cryptage fort le plus rapide..

    Il existe des méthodes de cryptage plus lentes et plus rapides, et elles conviennent toutes à des objectifs différents. Si vous essayez simplement de décrypter de temps en temps une minuscule donnée, vous pouvez vous permettre d'utiliser le cryptage le plus puissant possible, voire le crypter deux fois avec différents types de cryptage. Si vous avez besoin de vitesse, vous voudrez probablement utiliser AES.

    Pour en savoir plus sur l'analyse comparative de différents types de cryptage, consultez un rapport de l'Université Washington de Saint-Louis, où ils ont effectué une tonne de tests sur différentes routines et expliqué le tout dans un article très geek..

    Types de cryptage moderne

    Tous les algorithmes de chiffrement sophistiqués dont nous avons parlé précédemment sont principalement utilisés pour deux types de chiffrement différents:

    • Algorithmes à clé symétrique utiliser des clés de chiffrement associées ou identiques pour le chiffrement et le déchiffrement.
    • Algorithmes de clé asymétrique utilisez des clés différentes pour le cryptage et le décryptage (on parle généralement de cryptographie à clé publique).

    Cryptage par clé symétrique

    Pour expliquer ce concept, nous allons utiliser la métaphore du service postal décrite dans Wikipedia pour comprendre le fonctionnement des algorithmes à clé symétrique..

    Alice met son message secret dans une boîte et la verrouille à l'aide d'un cadenas sur lequel elle a une clé. Elle envoie ensuite la boîte à Bob par courrier ordinaire. Lorsque Bob reçoit la boîte, il utilise une copie identique de la clé d'Alice (qu'il a obtenue d'une manière ou d'une autre, peut-être par une réunion en face à face) pour ouvrir la boîte et lire le message. Bob peut alors utiliser le même cadenas pour envoyer sa réponse secrète.

    Les algorithmes à clé symétrique peuvent être divisés en chiffrements de flux et les chiffrements par blocs chiffrent les bits du message un par un, et les chiffrements par blocs prennent un nombre de bits, souvent par blocs de 64 bits à la fois, et les chiffrent comme une seule unité. Vous pouvez choisir parmi de nombreux algorithmes, les algorithmes symétriques les plus populaires et les plus respectés étant Twofish, Serpent, AES (Rijndael), Blowfish, CAST5, RC4, TDES et IDEA..

    Chiffrement asymétrique

    Dans un système à clé asymétrique, Bob et Alice ont des cadenas séparés, au lieu du cadenas simple à plusieurs clés de l'exemple symétrique.. Remarque: ceci est, bien sûr, un exemple extrêmement simpliste du fonctionnement de ce logiciel, qui est beaucoup plus compliqué, mais vous aurez l’idée générale..

    Premièrement, Alice demande à Bob de lui envoyer son cadenas ouvert par courrier ordinaire, en gardant sa clé pour lui. Lorsqu'Alice le reçoit, il l'utilise pour verrouiller une boîte contenant son message et l'envoie à Bob. Bob peut alors déverrouiller la boîte avec sa clé et lire le message d'Alice. Pour répondre, Bob doit également demander au cadenas ouvert d’Alice de verrouiller la boîte avant de la lui renvoyer..

    L'avantage essentiel d'un système à clé asymétrique est que Bob et Alice n'ont jamais besoin de s'envoyer une copie de leur clé. Cela empêche une tierce partie (peut-être, dans l'exemple, un postier corrompu) de copier une clé en transit, ce qui lui permet d'espionner tous les futurs messages envoyés entre Alice et Bob. En outre, si Bob était négligent et permettait à quelqu'un d'autre de copier le sien clés, les messages d’Alice à Bob seraient compromis, mais les messages d’Alice à d’autres personnes resteraient secrets, car les autres personnes fourniraient des cadenas différents pour qu’Alice puisse les utiliser..

    Le cryptage asymétrique utilise différentes clés pour le cryptage et le décryptage. Le destinataire du message crée une clé privée et une clé publique. La clé publique est distribuée parmi les expéditeurs de message et ils utilisent cette clé pour chiffrer le message. Le destinataire utilise sa clé privée pour tous les messages cryptés qui ont été cryptés à l'aide de la clé publique du destinataire..

    Le cryptage de cette manière présente un avantage majeur par rapport au cryptage symétrique. Nous n'avons jamais besoin d'envoyer quoi que ce soit de secret (comme notre clé de cryptage ou notre mot de passe) sur un canal non sécurisé. Votre clé publique est transmise au monde entier. Elle n'est ni secrète ni nécessaire. Votre clé privée peut rester confortable sur votre ordinateur personnel, où vous l'avez générée - elle n'a jamais besoin d'être envoyée par courrier électronique, ni lue par des attaquants..

    Comment le cryptage sécurise la communication sur le Web

    Pendant de nombreuses années, le protocole SSL (Secure Sockets Layer) sécurisait les transactions Web à l'aide du cryptage entre votre navigateur Web et un serveur Web, vous protégeant ainsi de toute personne pouvant surveiller le réseau au milieu..

    SSL lui-même est conceptuellement assez simple. Cela commence lorsque le navigateur demande une page sécurisée (généralement https: //)

    Le serveur web envoie sa clé publique avec son certificat.

    Le navigateur vérifie que le certificat a été émis par une partie de confiance (généralement une autorité de certification racine de confiance), que le certificat est toujours valide et qu'il est lié au site contacté..

    Le navigateur utilise ensuite la clé publique pour chiffrer une clé de chiffrement symétrique aléatoire et l'envoie au serveur avec l'URL chiffrée requise ainsi que d'autres données http chiffrées..

    Le serveur Web décrypte la clé de chiffrement symétrique à l'aide de sa clé privée et utilise la clé symétrique du navigateur pour déchiffrer son URL et ses données http..

    Le serveur Web renvoie le document HTML demandé et les données http cryptées avec la clé symétrique du navigateur. Le navigateur déchiffre les données http et le document HTML à l’aide de la clé symétrique et affiche les informations..

    Et maintenant, vous pouvez acheter en toute sécurité cet objet eBay dont vous n'aviez vraiment pas besoin.

    Avez-vous appris quelque chose?

    Si vous en êtes arrivé là, nous en sommes à la fin de notre long cheminement pour comprendre le chiffrement et son fonctionnement - depuis les débuts du chiffrement chez les Grecs et les Romains, la montée de Lucifer et enfin comment SSL utilise un cryptage asymétrique et symétrique pour vous aider à acheter ce lapin rose moelleux sur eBay.


    How-To Geek est un grand fan de cryptage et nous avons présenté de nombreuses façons différentes de faire des choses comme:

    • Débuter avec TrueCrypt (pour sécuriser vos données)
    • Ajouter le cryptage automatique de site Web à Firefox
    • BitLocker To Go chiffre les lecteurs Flash portables dans Windows 7
    • Comment sécuriser votre PC Linux en cryptant votre disque dur
    • Ajout d'options de cryptage / décryptage au menu contextuel de Windows 7 / Vista
    • Premiers pas avec TrueCrypt Drive Encryption sur Mac OS X

    Bien sûr, le cryptage est un sujet beaucoup trop compliqué pour vraiment tout expliquer. Avons-nous oublié quelque chose d'important? Ne hésitez pas à poser des connaissances sur vos collègues lecteurs dans les commentaires.