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, dans laquelle nous avons expliqué pourquoi tant de geeks détestent Internet. Explorateur.
Image par xkcd, évidemment.
Les débuts du cryptage
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 de plusieurs 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».
Plain: ABCDEFGHIJKLMNOPQRSTUVWXYZ Cipher: 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 sous forme de charabia, mais la personne disposant du chiffre pourrait facilement le décoder et le lire.
D'autres chiffrements de chiffrement simples, tels que le carré Polybe, utilisaient un chiffre polyalphabétique qui répertoriait chaque lettre avec les positions numériques correspondantes en haut et sur le côté pour indiquer où se trouvait la lettre.
Enigma Machine
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 créé 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.
À l'époque, les gens ne disposaient pas d'une méthode de cryptage efficace pour sécuriser leurs communications électroniques.
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.
Pour en savoir plus sur l'analyse comparative de différents types de cryptage, consultez un rapport de l'Université de Washington à St. 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 cryptage sophistiqués dont nous avons parlé précédemment sont principalement utilisés pour deux types de cryptage différents:
- Algorithmes à clé symétrique utilisez 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és symétriques.
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 auparavant, 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.
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: c’est bien entendu 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, elle 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 de même faire en sorte que le cadenas ouvert d’Alice verrouille 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 Alice.
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 ceux-ci utilisent la clé publique pour chiffrer le message. Le destinataire utilise sa clé privée pour tous les messages chiffrés qui ont été chiffré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 bien au chaud 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
Depuis de nombreuses années, le protocole SSL (Secure Sockets Layer) sécurise les transactions Web en utilisant le 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 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 que le certificat 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écrypte les données http et le document HTML à l'aide de la clé symétrique et affiche les informations.
Avez-vous appris quelque chose?
Si vous en êtes arrivé là, nous en sommes à la fin de notre long périple vers la compréhension du chiffrement et un peu de son fonctionnement - à partir des premiers jours du chiffrement avec 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 chiffrement. Nous avons présenté de nombreuses façons différentes de faire des choses telles que:
- Premiers pas 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
- Ajouter des options de chiffrement / déchiffrement 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.