Programmation Web Avancée

Blogue

Les cours

Différencier l'encodage, le chiffrement et le hachage


Rédigé par , le
Après m'être moi-même confondu entre les termes, voici un bref résumé expliquant les différences entre le chiffrement, le hashing (hachage), et l'encodage.

Encodage
Processus de modification d'une valeur (texte, fichier, …) pour un autre.

Exemple :
- Encodage d'une vidéo avec un codec plus performant
- Compression d'un document (zip)
- Fonction retournant les 15 premiers caractères d'une phrase (exemple simpliste...)


Hachage
une fonction de hachage est un algorithme permettant de modifier un texte (appelé message) en valeur de longueur fixe (appelé hash).

Exemples de 2 fonctions PHP :
<?php
   // sha1 est une fonction de hachage qui retourne toujours 40 caractères
   sha1('test'); // a94a8fe5ccb19ba61c4c0873d391e987982fbbd3

   // md5 est une fonction de hachage qui retourne toujours 32 caractères
   md5('test');  // 098f6bcd4621d373cade4e832627b4f6
?>


Note : Un hash ne peut pas être dé-haché pour trouver le message initial.


Le chiffrement
En cryptographie, on encode un texte de telle sorte que seuls des personnes autorisées puissent le déchiffrer. Ici, le processus d'encodage se nomme : "chiffrement". Le mot cryptage n'existe pas.

Il existe deux modes de chiffrement.
1- Symétrique : On peut utiliser la même clé de chiffrement pour chiffrer/déchiffrer un message.
2- Asymétrique : Les clés pour chiffrer et déchiffrer sont différentes

Ainsi, seulement les personnes possédant la bonne clé peuvent accéder au message.

Exemple : https


Décrypter
Contrairement au terme cryptage qui n'existe pas, décrypter signifie tenter, sans la clé de déchiffrement, de retrouver le message original.

Les commentaires sur cet article
Par : Anonyme
2012-11-23 21:30:40

Excellente vulgarisation!

Par : HelloWorld
2014-12-02 08:47:15

Yes, merci pour cette distinction.

Par : Anonyme
2015-06-24 03:37:28

Sauf qu'on dit chiffrage ^^ Mais merci

Par : Frédéric
2015-06-24 09:09:00

@Anonyme

Pas certain pour chiffrage... si tu as une source fiable qui appuie ce terme, pourrais-tu la citer?

Par : LoVo67
2015-11-12 10:49:12

crypter/cryptage n'existent pas, décrypter/décryptage eux existent.
(1) déchiffrer = décoder un message chiffré EN CONNAISSANT la clé de chiffrement qui a été utilisée pour le rendre incompréhensible... c'est donc très rapide
(2) décrypter = décoder un message chiffré SANS CONNAITRE la clé de chiffrement qui a été utilisée pour le rendre incompréhensible... c'est un "sport" plus ou moins rapide qui est très pratiqué en temps de guerre par exemple quand on intercepte des messages chiffrés de l'ennemi.

-> chiffrer ou déchiffrer un message : on connait la clé de chiffrement
-> décrypter : on cherche à comprendre un message sans connaitre la clé de chiffrement (= "casser" la clé)
On comprend donc que "crypter" n'a aucun sens dans ce contexte.

C'est très bien expliqué et surtout illustré ici (un dessin vaut mieux qu'un long discours)
http://www.ryfe.fr/2011/08/les-mots-crypter-et-cryptage-n%E2%80%99existent-pas/

C'est comme demander son "poids" à quelqu'un est incorrect, car le poids s'exprime en Newton, on devrait donc lui demander sa "masse" qui s'exprime elle bien en Kilogrammes si on veut être correct.
Pourtant tout le monde le fait et l'utilise quand même alors que c'est incorrect ; c'est pareil ici, tout le monde utilise "crypter" au lieu de "chiffrer", c'est incorrect mais on le dit quand même ;-)

On peut juste "chiffre" et "déchiffrer" un message quand on connait la clé, ou tenter de le "décrypter" quand on ne connait pas la clé, mais "crypter" ne veut rien dire

Par : Anonyme
2017-05-31 04:50:36

Merci pour ces clarifications

Par : Anonyme
2018-06-12 04:49:33

merci d'avoir partagé ce savoir

Par : me
2018-11-25 18:21:19

limpide

Ajouter votre commentaire
(facultatif)
(facultatif et non divulgé)
Captcha image
Prenez le nombre affiché et faites moins 1.
 
Blog  

Les articles


Pour envoyer une demande d'assistance à l'enseignant, cliquez ici