Qu'est-ce qu'une somme de contrôle ? Notions de cryptographie

Une introduction aux sommes de contrôle cryptographiques, à leur utilisation et à la manière dont elles assurent votre sécurité.

Cryptography Basics: What is a checksum?

Si vous voulez passer une grande soirée en ville, vous aurez peut-être besoin d'une pièce d'identité (du moins si vous avez l'air jeune), mais lorsqu'il s'agit de télécharger un logiciel, la vérification est un peu différente. En vérifiant les sommes de contrôle cryptographiques, vous pouvez être sûr que votre téléchargement n'a pas été altéré sur le chemin qui mène des développeurs à vous. Plongeons dans l'aventure !


Qu’est-ce qu’une somme de contrôle ?

Une somme de contrôle est une chaîne de données, composée de lettres et de chiffres, qui est dérivée d’un fichier ou d’un programme par le biais d’une fonction de hachage de la somme de contrôle, et qui est utilisée pour vérifier que les données que vous avez téléchargées sont identiques aux données sources originales. S’assurer de l’intégrité des fichiers et des programmes que vous téléchargez sur votre machine locale est une pratique de sécurité cruciale pour vous protéger contre les faux programmes partagés qui incluent des logiciels malveillants pour récolter vos données.

Rappelez-vous qu’il est toujours préférable de vérifier la somme de contrôle des fichiers et des applications que vous téléchargez chaque fois que cela est possible.

Une caractéristique importante d’une fonction de somme de contrôle est que si des modifications sont apportées au fichier d’origine, elles se traduiront par un résultat différent, par exemple une somme de contrôle différente. Sans cette caractéristique essentielle, un acteur malveillant pourrait modifier les données par le biais d’une attaque de type “man-in-the-middle” ou d’une attaque de la chaîne d’approvisionnement, sans que les utilisateurs s’en aperçoivent.

Les sommes de contrôle doivent également garantir que non seulement les changements de données conduisent à une nouvelle clé, mais aussi qu’ils évitent que deux sources de données différentes créent des sommes de contrôle correspondantes. Ces événements sont connus sous le nom de collisions et la force d’une fonction de hachage cryptographique repose sur sa résistance aux collisions.

Les sommes de contrôle garantissent l’intégrité des données, et non leur authenticité.

Les sommes de contrôle sont principalement utilisées pour vérifier l’intégrité des données. Vous vous souvenez peut-être de notre introduction à la modélisation des menaces: l’intégrité signifie que les données ont été transférées sur votre machine dans un format numériquement identique. Cela signifie que vous recevez les données, qu’il s’agisse d’un fichier ou d’un programme exécutable, telles qu’elles ont été conçues par le créateur du contenu. Il convient de noter que les sommes de contrôle ne font que vérifier que les données que vous avez reçues sont identiques à 100 %, elles ne vérifient pas que la source elle-même est authentique. Il s’agit là d’un autre aspect de la sécurité de l’information qui peut être réalisé par le déploiement d’une signature numérique.

Pourquoi l’intégrité des données est-elle importante ?

L’intégrité des données est primordiale à tous les niveaux des opérations informatiques. Qu’il s’agisse du stockage des données de l’entreprise, des services d’urgence, des services du secteur public ou des photos des plats de vos dernières vacances. La corruption des données, qui est le contraire de l’intégrité des données, peut entraîner des erreurs de programme ou la disparition d’informations importantes. En maintenant des sommes de contrôle, vous pouvez être sûr que les données que vous copiez, téléchargez ou partagez sont identiques, sans avoir à les ouvrir et à les vérifier manuellement.

Si vous ne pouvez pas faire confiance à vos données, leur utilisation diminue considérablement. En tirant parti des sommes de contrôle, vous pouvez être sûr qu’une erreur que vous pourriez rencontrer avec ce nouveau programme a une autre origine et n’est pas due à un problème survenu lors du téléchargement initial. Cela peut vous faire gagner du temps et de l’argent. Si vous conservez des sauvegardes de vos données, la création et la surveillance des sommes de contrôle de ces sauvegardes est un excellent moyen de garder un œil sur l’état de toutes les données stockées. Si vous remarquez une différence, sans avoir effectué de modifications, vous pouvez être alerté de ce qui ne va pas.

Quelles sont les causes des sommes de contrôle non identiques ?

Il existe un certain nombre de problèmes, banals ou malveillants, qui peuvent entraîner une non-concordance des sommes de contrôle. Une interruption de la connectivité internet ou des problèmes d’espace de stockage peuvent être à l’origine de données manquantes, ce qui se traduit par une somme de contrôle qui ne correspond pas à celle fournie par le cours d’origine. Une fois le problème résolu, un nouveau téléchargement renvoie généralement la valeur correcte.

Toutefois, il existe des cas malveillants qui peuvent donner lieu à des inquiétudes. Des sommes de contrôle non concordantes peuvent également indiquer qu’un tiers a apporté des modifications aux données sources d’origine. Il peut s’agir de quelque chose de mineur, mais cela peut être le signe que des logiciels malveillants ont pu être inclus dans le téléchargement. Le problème se pose d’autant plus lorsque les programmes en question sont utilisés pour des données sensibles telles que le stockage de mots de passe ou de crypto-monnaies. Les “gestionnaires” de mots de passe malveillants reconditionnés peuvent envoyer vos données directement à des tiers qui peuvent en faire un usage abusif. Dans le cas de portefeuilles de crypto-monnaies imposteurs, les retombées de sommes de contrôle non concordantes peuvent entraîner la perte totale des actifs numériques.

Exemples d’algorithmes utilisés pour générer des sommes de contrôle.

Quel que soit l’algorithme de hachage utilisé pour créer la somme de contrôle, ils ont tous en commun d’être des fonctions à sens unique. La valeur générée par la fonction de somme de contrôle ne peut en aucun cas être utilisée pour “recréer” le fichier original. Il ne s’agit pas d’un cryptage et il n’y a rien à décrypter, nous n’avons donc pas affaire à des textes chiffrés.

A visualization of the cksum utility when used to create a checksum Visualisation de l’utilitaire cksum utilisé pour créer des sommes de contrôle à partir de mots et de phrases.

Certains de ces algorithmes peuvent sembler familiers et nous avons déjà abordé certains d’entre eux dans des entrées précédentes de cette série sur les bases de la cryptographie.

MD5

Tout comme pour le hachage des mots de passe, l’algorithme MD5 ne devrait plus être utilisé car il peut entraîner des collisions, ce qui signifie qu’un acteur malveillant pourrait créer une fausse version du logiciel que vous souhaitez télécharger et qu’une somme de contrôle ne parviendrait pas à déclencher l’alarme en cas de changement.

SHA-1

Cette fonction de hachage n’est plus considérée comme sûre depuis 2005 et le NIST a demandé qu’elle soit complètement retirée d’ici 2030. En 2017, Google et le groupe de cryptologie du Centrum Wiskunde & Informatica ont réussi à créer deux PDF différents dont l’empreinte SHA-1 était identique.

SHA256

La norme actuelle pour le hachage des sommes de contrôle est SHA256 (ou SHA-3 pour les fans de la nouvelle norme). SHA256 est également la fonction de somme de contrôle que nous utilisons pour que vous puissiez vérifier l’intégrité des données à chaque fois que vous téléchargez le client Tuta Desktop.

A screenshot of the latest release of the Tuta Desktop Client checksums. Un exemple des sommes de contrôle pour les clients de bureau Tuta version 244.240913.1

Comment vérifier la somme de contrôle de votre client Tuta Desktop.

Vérifier la somme de contrôle d’un téléchargement peut sembler être une tâche intimidante pour ceux qui ne sont pas très portés sur la technique, mais c’est une compétence rapide à apprendre qui peut vous épargner bien des maux de tête par la suite.

Avec chaque nouvelle version du client de bureau Tuta, nous publions les sommes de contrôle sur Github afin que vous puissiez les vérifier, quel que soit le système d’exploitation de votre appareil. La première étape consiste à visiter notre page d’accueil et à télécharger le client de bureau qui correspond à votre système d’exploitation. Allez-y, je peux attendre…

Super ! Vous êtes de retour ! Vous pouvez maintenant passer au système d’exploitation que vous utilisez actuellement et, en quelques étapes simples, vous pouvez vérifier les sommes de contrôle de votre téléchargement. Pour des raisons de simplicité, je vais écrire ces instructions en supposant que vous avez stocké le téléchargement dans votre dossier Téléchargements.

Windows

Sous Windows, ouvrez l’invite de commande à partir du menu Démarrer ou en exécutant cmd dans la fenêtre de dialogue Exécuter. Une fois l’invite de commande ouverte, tapez

  1. cd Téléchargements

  2. certutil -hashfile tutanota-desktop-win.exe SHA256

Cette sortie peut être comparée à la somme de contrôle que nous fournissons sur GitHub.

How to verify the Tuta desktop client checksum on Windows Les étapes de l’invite de commande pour afficher la somme de contrôle du client de bureau Tuta téléchargé sur Windows.

Vous pouvez télécharger le client Windows ici.

Sur Mac

Sur un Mac, vous pouvez ouvrir une fenêtre de terminal à partir du Launchpad. Une fois qu’elle est ouverte, entrez ce qui suit :

  1. cd Téléchargements

  2. shasum -a 256 ~/Downloads/tutanota-desktop-mac.dmg

Cette sortie peut alors être comparée à la somme de contrôle fournie sur GitHub.

How to verify the Tuta desktop client checksum on MacOS Les commandes de terminal pour vérifier une somme de contrôle sur macOS.

Vous pouvez télécharger le client Mac ici.

Linux

Enfin, mais certainement pas le moindre, vous pouvez vérifier la somme de contrôle de notre client Linux gratuit en ouvrant un terminal et en entrant :

  1. cd Téléchargements

  2. sha256sum tutanota-desktop-linux.AppImage

Vous pouvez alors comparer ce résultat à la somme de contrôle fournie par l’équipe de développement de Tuta pour confirmer l’intégrité de votre téléchargement.

How to verify the Tuta desktop client checksum on Linux Les commandes de terminal pour vérifier les sommes de contrôle sur une machine Linux.

Vous pouvez télécharger le client Linux ici.

Avec ce nouveau truc de sécurité dans votre manche, vous pouvez continuer votre voyage pour rester en sécurité sur le web. En intégrant la vérification des sommes de contrôle à votre hygiène numérique et en utilisant un gestionnaire de mots de passe, vous prenez des mesures pour vous protéger contre les cybermenaces.

Si vous cherchez à améliorer la sécurité de votre compte de messagerie, et nous vous le recommandons car la messagerie est au cœur de votre vie numérique, jetez un coup d’œil à Tuta Mail. Avec le cryptage de bout en bout par défaut, Tuta Mail simplifie la confidentialité et la sécurité. Créez votre compte de messagerie gratuit maintenant et utilisez-le avec nos clients de messagerie dédiés gratuits pour toutes les plateformes.

Et n’oubliez pas de vérifier la somme de contrôle ! 😉