Les signatures numériques reposent sur une architecture de cryptographie à clé publique pour vérifier l'authenticité d'un document et l'identification de l'expéditeur. Les deux méthodes standard pour obtenir des signatures numériques sont les algorithmes RSA (Rivest-Shamir-Adleman) et DSA (Digital Signature), mais les deux diffèrent dans l'exécution des fonctions de cryptage et de décryptage.
L'article donne un aperçu de l'un des algorithmes standard de l'industrie DSA, son processus de travail avec un bref aperçu de la génération et de la vérification des clés et des signatures, des étapes impliquées dans le processus global, de ses avantages/inconvénients et de ses application.
Introduction aux algorithmes de signature numérique
DSA (Digital Signature Algorithm) intègre les propriétés algébriques des problèmes de logarithme discret et des exponentiations modulaires pour générer une signature électronique pour diverses applications. Il a été proposé en 1991 et adopté en tant que norme fédérale de traitement de l'information par le NIST (National Institute of Standards and Technology) en 1994.
La plupart des algorithmes de création de signature numérique suivent la technique typique de signature du résumé du message (hachage du message réel) avec la clé privée source pour créer l'empreinte numérique.
Cependant, la situation est différente dans DSA car il génère deux signatures en incorporant deux fonctions de signature et de vérification complexes et uniques. Ainsi, l'algorithme DSA n'est pas une simple utilisation de clés privées et publiques au début et à la fin de la communication.
Importance de l'algorithme de signature numérique
En raison de l'augmentation constante des cybermenaces, chaque fois qu'un utilisateur envoie des données sur Internet, il est nécessaire d'identifier et de vérifier l'authenticité du propriétaire. Nous devons nous assurer que le propriétaire du document est crédible et que personne n'a apporté de modifications lors de la transmission.
Les signatures numériques sont les signatures électroniques qui aident le destinataire à authentifier l'origine du message. Vous pouvez créer ces signatures électroniques via divers algorithmes, et DSA en fait partie. Dans DSA, l'expéditeur crée une signature numérique pour l'inclure dans le message afin que n'importe qui puisse l'authentifier à la réception.
Les avantages offerts par DSA sont :
- Non-répudiation : après vérification de la signature, l'expéditeur ne peut prétendre ne pas avoir envoyé les données.
- Intégrité: la modification des données pendant la transmission empêche la vérification finale ou le déchiffrement du message.
- Authentification des messages : la bonne combinaison de clés privées/publiques permet de vérifier l'origine de l'expéditeur.
Comment l'algorithme authentifie-t-il l'expéditeur ?
L'algorithme DSA fonctionne sur le mécanisme de calcul systématique qui calcule une valeur de hachage et une signature numérique constituée de deux nombres de 160 bits à partir du résumé du message et de la clé privée. Le caractère aléatoire rend la signature non déterministe. Il utilise une clé publique pour l'authentification de la signature, ce qui est bien plus complexe que RSA.
Le cycle DSA suit ces trois étapes principales pour terminer le processus :
- Génération de clé: Le processus repose sur le concept d'exponentiation modulaire pour obtenir des clés privées (x) et publiques (y) qui satisfont les conditions mathématiques de 0 < x < q et y = gx mod p. Où q est un diviseur premier, p est un nombre premier et g satisfait ces conditions g**q mod p = 1 et g = h**((p–1)/q) mod p. Créant ainsi des packages de clés privées et publiques {p, q, g, x} et {p, q, g, y}.
- Génération de signatures: Un algorithme de hachage génère un résumé de message, qui est transmis comme entrée à une fonction de signature pour créer deux variables sorties, r et s, conditionnées sous forme de signature {r, s} de sorte que le message et ces variables soient envoyés sous forme de bundle au receveur.
- Vérification de la signature: Le processus utilise la fonction de hachage pour produire le résumé et incorpore la variable s avec d'autres paramètres de l'étape de génération de clé pour produire le composant de vérification v. La fonction de vérification compare la variable calculée v au paramètre r du groupe {M, s, r}.
Pour résumer le processus ci-dessus de manière non mathématique :
- Vous créez des clés à l'aide de l'algorithme de génération de clés pour signer le document.
- Utilisez ensuite un algorithme de signature numérique pour générer la signature.
- Utiliser un fonction de hachage pour créer un résumé de message, et combinez-le avec DSA pour générer la signature numérique.
- Envoyez la signature avec les données pour que le destinataire s'authentifie.
- Le récepteur authentifie la signature à l'aide d'un algorithme de vérification. C'est la fonction de hachage utilisée ci-dessus pour créer le résumé du message.
Avantages de l'utilisation de l'algorithme de signature numérique
- Calcul de signature rapide
- Nécessite moins d'espace de stockage pour l'ensemble du processus
- Librement disponible (sans brevet) pour une utilisation mondiale gratuite.
- Petite longueur de signature
- Observation en temps réel
- Non invasif
- DSA est accepté dans le monde entier pour la conformité légale.
- Gain de temps (faible consommation de temps par rapport aux processus de signature physique, etc.)
Inconvénients de l'utilisation de l'algorithme de signature numérique
- Le processus n'inclut pas les capacités d'échange de clés.
- le cryptographie sous-jacente doit être neuf pour assurer sa solidité.
- La normalisation des fournisseurs de matériel informatique et de logiciels sur RSA peut entraîner des problèmes en raison de la deuxième norme d'authentification de DSA.
- Les opérations de reste complexes nécessitent beaucoup de temps de calcul et donc de vérification de signature.
- Il assure uniquement l'authentification, pas la confidentialité, car l'algorithme ne crypte pas les données.
- Les algorithmes DSA calculent le hachage SHA1 pour générer le résumé du message. Par conséquent, il reflète tous les défauts de la fonction de hachage SHA1 dans l'algorithme.
DSA contre RSA
L'algorithme de signature numérique est un algorithme de cryptage à clé asymétrique adopté par les agences américaines pour les communications secrètes et non secrètes. Alors que RSA est un algorithme de cryptographie à clé publique qui utilise également l'arithmétique modulaire, sa force repose sur le problème d'une factorisation des nombres premiers pour sécuriser les communications et les signatures numériques. Par conséquent, contrairement aux algorithmes de chiffrement habituels tels que RSA, DSA est une norme uniquement pour les signatures numériques.
Même si les deux intègrent des algorithmes mathématiques différents, la puissance de la cryptographie est équivalente. La principale différence entre les deux algorithmes se limite à la vitesse, aux performances et à la prise en charge du protocole SSH.
- Contrairement à DSA, RSA est lent en termes de déchiffrement, de génération de clés et de vérification, mais rapide en termes de chiffrement et de signature. Cependant, l'authentification nécessite les deux, et les écarts de vitesse sont insignifiants dans les applications du monde réel.
- Une autre différence réside dans la prise en charge du protocole réseau Secure Shell. RSA prend en charge le SSH d'origine et sa deuxième version sécurisée SSH2, tandis que DSA ne fonctionne qu'avec SSH2.
Authentifier la source de données avec DSA
Les signatures numériques sont nécessaires dans le monde interconnecté d'aujourd'hui pour créer un environnement sûr et sécurisé. Ils constituent un excellent moyen d'authentifier n'importe quel enregistrement sur Internet. L'article présente les algorithmes de signature numérique avec un bref aperçu de son processus de travail, ses avantages, ses inconvénients, ses limites de sécurité et sa comparaison avec RSA.
On parle souvent de ces deux protocoles de chiffrement ensemble, mais que sont-ils et comment fonctionnent-ils ?
Lire la suite
- Sécurité
- Signatures numériques
Rumaisa est rédactrice indépendante au MUO. Elle a porté plusieurs casquettes, de mathématicienne à passionnée de sécurité de l'information, et travaille maintenant en tant qu'analyste SOC. Ses intérêts incluent la lecture et l'écriture sur les nouvelles technologies, les distributions Linux et tout ce qui concerne la sécurité de l'information.
Abonnez-vous à notre newsletter
Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !
Cliquez ici pour vous abonner