Décrire le chiffrement et le hachage

Effectué

Une façon d’atténuer les menaces de cybersécurité courantes consiste à chiffrer les données sensibles ou précieuses. Le chiffrement est le processus qui rend les données illisibles et inutilisables pour les utilisateurs non autorisés. Pour que les données chiffrées puissent être utilisées ou lues, elles doivent être déchiffrées, ce qui impose d’utiliser une clé secrète.

Il existe deux types principaux de chiffrement : symétrique et asymétrique. Le chiffrement symétrique utilise la même clé pour chiffrer et déchiffrer les données. Le chiffrement asymétrique utilise une clé publique et une paire de clés privées. L’une ou l’autre clé peut chiffrer les données, mais la clé utilisée pour chiffrer ne peut pas être utilisée pour déchiffrer les données chiffrées. Pour déchiffrer les données, vous avez besoin de la clé associée. Par exemple, si la clé publique est utilisée pour chiffrer, seule la clé privée correspondante peut être utilisée pour déchiffrer. Le chiffrement asymétrique est utilisé pour les éléments qui accèdent à des sites sur Internet à l’aide du protocole HTTPS et des solutions de signature de données électroniques. Le chiffrement peut protéger les données au repos ou en transit. Pour plus d’informations sur les concepts de chiffrement, consultez Décrire les concepts du chiffrement.

Diagramme montrant le concept de chiffrement symétrique et asymétrique.

Chiffrement des données au repos

Les données au repos sont les données stockées sur un appareil physique, tel qu’un serveur. Elles peuvent être stockées dans une base de données ou un compte de stockage mais quelle que soit leur localisation, le chiffrement des données au repos garantit que les données ne sont pas lisibles sans les clés et les secrets nécessaires pour les déchiffrer.

Si un attaquant obtient un disque dur contenant des données chiffrées et qu’il n’a pas accès aux clés de chiffrement, il lui sera impossible d’en lire les données.

Chiffrement des données en transit

Les données en transit sont les données déplacées d’un endroit à un autre, comme sur Internet ou via un réseau privé. Un transfert sécurisé peut être géré par plusieurs couches différentes. Il peut être effectué en chiffrant les données au niveau de la couche application avant de les envoyer sur un réseau. HTTPS est un exemple de chiffrement en transit.

Le chiffrement des données en transit protège les données contre les observateurs externes, et fournit un mécanisme de transmission des données tout en limitant le risque d’exposition.

Chiffrement des données en cours d’utilisation

Un cas d’utilisation fréquent du chiffrement des données en cours d’utilisation implique la sécurisation des données dans un stockage non permanent, comme le cache RAM ou le cache processeur. Cela peut être réalisé par le biais de technologies qui créent une enclave (voyez cela comme une zone de verrouillage sécurisée) qui protège les données et les garde chiffrées pendant que le CPU traite les données.

Hashing

Le hachage utilise un algorithme pour convertir le texte en une valeur de longueur fixe unique appelée hachage. Chaque fois que le même texte est haché à l’aide du même algorithme, la même valeur de hachage est générée. Ce hachage peut ensuite être utilisé comme identificateur unique de ses données associées.

Le hachage est différent du chiffrement en ce qu’il n’utilise pas de clés, et la valeur hachée n’est pas ensuite déchiffrée pour revenir à l’original.

Le hachage est souvent utilisé pour stocker des mots de passe. Quand un utilisateur entre son mot de passe, l’algorithme qui a créé le hachage stocké crée un hachage du mot de passe entré. Ce hachage est comparé à la version hachée stockée du mot de passe. Si les deux hachages correspondent, l’utilisateur a entré son mot de passe correctement. Cela est plus sécurisé que de stocker des mots de passe en texte clair, mais les algorithmes de hachage sont également connus des hackers. Étant donné que les fonctions de hachage sont déterministes (la même entrée produit la même sortie), les hackers peuvent utiliser des attaques par force brute de dictionnaire en hachant les mots de passe. Pour chaque hachage mis en correspondance, ils connaissent le mot de passe réel. Pour atténuer ce risque, les mots de passe sont souvent « salés ». En d’autres termes, on ajoute une valeur aléatoire de longueur fixe à l’entrée des fonctions de hachage afin de créer des hachages uniques pour une même entrée.

Diagramme montrant le concept de hachage.