Chapitre 1.2.3
Chapitre 1.2.3
Chapitre 1.2.3
3
1. Introduction :...............................................................................................................................4
2. Les réseaux de capteurs sans fil :...............................................................................................4
2.1 Définition :.............................................................................................................................4
2.2 Un capteur :............................................................................................................................5
2.3 Les composants d’un capteur :..............................................................................................5
2.3.1 Coté hardware :..............................................................................................................5
2.3.2 Coté software :................................................................................................................6
3. Les caractéristiques des capteurs sans fil :...............................................................................6
3.1 Routage :................................................................................................................................7
3.2 Energie :.................................................................................................................................8
3.3 Topologie :...........................................................................................................................10
3.4 Tolérance aux pannes :........................................................................................................11
3.5 Evolutivité:..........................................................................................................................11
3.6 Puissance de calcul :............................................................................................................12
4. Domaines d’application des réseaux de capteurs sans fil :....................................................12
4.1 Applications médicales :......................................................................................................12
4.2 Applications environnement:...............................................................................................13
4.3 Applications militaires :.......................................................................................................14
4.4 Applications agriculture :....................................................................................................14
4.5 Applications contrôle d’édifices:.........................................................................................15
4.6 Applications Détection d’intrusions :..................................................................................15
4.7 Applications métier :............................................................................................................15
4.8 Découvertes de catastrophes naturelles :.............................................................................16
4.9 Applications de sécurité :.....................................................................................................16
5. Conclusion :...............................................................................................................................17
CHAPITRE II : cryptographie et signature numérique..............................................................18
1. Introduction :.............................................................................................................................19
2. Cryptographie :.........................................................................................................................19
2.1 Définition :...........................................................................................................................19
2.2 Historique :..........................................................................................................................19
2.2.1 Cryptographie manuelle :.............................................................................................19
2.2.2 Cryptographie mécanisée :...........................................................................................20
2.3 Les types de d'algorithmes de chiffrement :........................................................................20
2.3.1 Cryptographie symétrique :..........................................................................................20
2.3.2 Cryptographie asymétrique :........................................................................................25
2.3.3 Fonctions de hachage :.................................................................................................29
3. La signature électronique :.......................................................................................................29
3.1 Les caractéristiques de signature numérique.......................................................................30
3.2 Les types de signature numérique :.....................................................................................30
3.3 Fonctionnement de signature numérique :...........................................................................31
4. Le lien entre la cryptographie et la signature numérique :...................................................32
5. Conclusion :...............................................................................................................................32
CHAPITRE I :
GENERALITES SUR LES
RESEAUX DE CAPTEURS
SANS FIL
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
1. Introduction :
La prolifération des réseaux de communication sans fil au cours des dernières années a été
largement propulsée par les avancées de la microélectronique et de la miniaturisation. Ces progrès
ont tracé la voie à l'émergence des réseaux de capteurs sans fil, composés de petits dispositifs
électroniques autonomes dotés de capteurs capables de communiquer entre eux de manière sans
fil. Les réseaux de capteurs se distinguent comme des éléments clés, offrant une approche
révolutionnaire pour collecter, traiter et transmettre des données en temps réel à partir de
l'environnement qui nous entoure.
Ce chapitre offre une introduction approfondie aux réseaux de capteurs, mettant en lumière les
opportunités captivantes qu'ils offrent ainsi que les défis stimulants auxquels ils font face.
4
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
2.2 Un capteur :
Un capteur (sensor en anglais) est un minuscule appareil électronique doté de capacités
indépendantes et restreintes, capable de collecter, d'analyser et de transmettre des données sans fil à
d'autres entités, telles que des capteurs ou des unités de traitement, dans une portée limitée de
quelques mètres. Il existe différents types de capteurs, chacun conçu pour détecter des grandeurs
physiques spécifiques (capteurs de température, de lumière, de pression... etc.).
5
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
b. Unité de stockage : Les informations stockées peuvent être des informations qui viennent
d'être entrées dans la machine, ou résultats d'un traitement.
● Une unité d’énergie (batterie) :Permet d’alimenter le reste des composants. Elle est
souvent inchangeable.
On peut également avoir d’autres unités suivant l’application. Parmi ces unités : Une unité de
localisation, un générateur d’énergie et une unité assurant la mobilité.
6
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
3.1 Routage :
Pour limiter le nombre de communications coûteuses en énergie, les réseaux de capteurs sans fil
utilisent des protocoles de routage efficaces. Une solution souvent utilisée est la mise en cluster
(clustering), qui regroupe les nœuds capteurs en clusters. Dans chacun de ces clusters, un nœud
maître (cluster-Head) est élu et a pour mission de récupérer les informations des nœuds du cluster,
dont il a la charge, pour les transmettre aux autres clusters et inversement. Le choix du nœud maître
sera fait en désignant, par exemple, le nœud avec l’énergie la plus importante, pour augmenter la
durée de vie du réseau.
Les différents algorithmes de routage connus :
Routage hiérarchique : Le réseau est divisé en "clusters". Un groupe est composé
d'un dirigeant (Cluster Head) et de ses membres. Avant de les envoyer au sink, le
chef de groupe collecte, agrège et vérifie si les données ne sont pas redondantes.
Cela permet d'économiser de l'énergie en réduisant le nombre de messages envoyés
au destinataire. LEACH est l'un des premiers protocoles de routage pour les réseaux
de capteurs.
Routage basé sur la localisation : L'emplacement des nœuds est utilisé pour
effectuer le routage. Il est possible de déterminer la distance du nœud voisin le plus
proche en fonction de la force des signaux entrants. En évitant l'inondation
d'informations dans l'ensemble du réseau, ils permettent la transmission
directionnelle de l'information. Ainsi, le coût de gestion de l'algorithme est réduit et
le routage est optimisé (RSSI : Received Signal Strength Indicator). De plus, la
topologie réseau basée sur la localisation des nœuds rend la gestion du réseau plus
facile.
Routage plat : Tous les nœuds remplissent la même fonction. Chaque nœud
transmet les données aux autres nœuds dans leurs rayons de transmission.
L'utilisation du lien de transmission varie selon le protocole.
Protocoles de routage multi-chemins : Ces protocoles fonctionnent bien pour la
gestion multidirectionnelle. Au lieu d'envoyer les données collectées sur un seul lien,
les nœuds envoient les données sur plusieurs liens. Parce qu'il existe un chemin
alternatif lorsque le chemin primaire échoue, cela permet une bonne fiabilité et une
bonne tolérance aux pannes dans le réseau.
Protocoles de routage basés sur les interrogations : Les requêtes émises par la
station de base sont diffusées via le routage basé sur les interrogations. La station de
base envoie des requêtes qui demandent des informations spécifiques aux nœuds du
7
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
3.2 Energie :
Un capteur est intrinsèquement restreint par sa source d'énergie, et dans la plupart des cas, il est
impossible de remplacer sa batterie. Par conséquent, la durée de vie d'un capteur est étroitement liée
8
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
à celle de sa batterie. Les communications représentent l'activité la plus énergivore, suivie par les
calculs qui, bien que moins coûteux, restent significatifs. Ainsi, il est impératif de restreindre le
nombre de communications entre capteurs autant que possible, de même que le nombre d'opérations
de calcul, afin de préserver l'énergie et prolonger la durée de fonctionnement du capteur.
Plusieurs techniques peuvent être utilisées pour conserver l'énergie et prolonger la durée de vie
des capteurs. Voici quelques-unes des méthodes les plus courantes :
Traitement local des données : effectuer le prétraitement des données directement sur le
capteur pour réduire la quantité de données à transmettre. Utiliser des algorithmes de
traitement embarqués pour réduire la charge de traitement côté serveur.
Dans les réseaux sans fil, la désignation des nœuds principaux par choix de tête de cluster
réduit la consommation d'énergie. En outre, l'agrégation des données dans les clusters avant
la transmission réduit la charge de communication. En incluant le clustering dans la gestion
de l'énergie globale, la collecte, le traitement et la transmission des données sont optimisés,
ce qui contribue considérablement à prolonger la durée de vie opérationnelle des capteurs
dans des environnements énergétiquement limités.
3.3 Topologie :
Un réseau de capteurs sans fil (RCSF) est constitué d'un ensemble de nœuds capteurs organisés
en champs sensoriels. Chaque nœud capteur a la capacité de collecter des données et de les
transmettre aux nœuds passerelles, via une architecture multi-sauts. Les données sont ensuite
acheminées par le puits vers l'ordinateur central, connu sous le nom de "Gestionnaire de tâches", par
le biais d'Internet ou par satellite. Cela permet l'analyse des données et la prise de décisions
éclairées.
Les réseaux de capteurs sans fil ont plusieurs topologies. Les principales topologies présentées
dans les résultats de recherche sont les suivantes :
Topologie en étoile : Tous les capteurs du réseau sont connectés à un point central appelé
"point de collecte" ou "puits", qui caractérise cette topologie. Bien que cette topologie soit
simple à mettre en place, elle peut être coûteuse en termes d'énergie.
10
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
Topologie point à point (Peer to Peer) : Dans cette topologie, une chaîne de capteurs est
formée par les connexions de chaque capteur à un autre capteur. Bien que cette topologie soit
adaptée aux réseaux linéaires, les pannes de capteurs peuvent l'affecter.
Architecture de groupe : Cette topologie est caractérisée par la formation de groupes de
capteurs "Cluster" qui collaborent pour accomplir une tâche particulière. Cette topologie est
appropriée pour les applications nécessitant une collaboration de capteurs.
Topologie hybride : Cette topologie combine plusieurs des topologies susmentionnées pour
répondre aux besoins uniques de l'application. Une topologie hybride, par exemple, peut
combiner une topologie en étoile pour la collecte de données avec une topologie maillée pour la
fiabilité et la redondance.
3.5 Evolutivité:
L'évolutivité des réseaux de capteurs sans fil fait référence à la capacité du réseau à s'adapter à
l'ajout de nouveaux nœuds capteurs ou à la suppression de nœuds existants. Plusieurs techniques et
mécanismes peuvent être utilisés pour garantir l'évolutivité. Voici quelques aspects détaillés de
l'évolutivité dans les réseaux de capteurs sans fil :
Malgré les changements dans la disposition des capteurs, des mécanismes de routage
dynamique sont fréquemment utilisés pour maintenir la connectivité et l'efficacité du
réseau.
Performances du Réseau : En veillant à ce que l'ajout de nouveaux capteurs n'affecte
pas de manière significative les délais de transmission ou la qualité de service,
l'évolutivité doit être équilibrée avec les performances du réseau.
Sécurité et Confidentialité : Pour garantir que les mécanismes de sécurité et de
confidentialité continuent d'être efficaces même lorsque le réseau s'étend, l'évolutivité
doit être prise en compte. Les protocoles de sécurité doivent être capables de gérer un
nombre croissant de capteurs et de communications tout en maintenant la confidentialité
et l'intégrité des données.
Redondance et Tolérance aux Pannes : Pour garantir la fiabilité et la tolérance aux
pannes, l'évolutivité permet l'intégration de mécanismes de redondance dans le réseau. En
cas de défaillance d'un capteur, le réseau doit pouvoir redistribuer les tâches et les
données pour maintenir les opérations sans interruption importante.
Gestion de l'Énergie : En particulier lorsque de nouveaux capteurs sont ajoutés, les
réseaux de capteurs sans fil doivent être capables de gérer efficacement l'énergie. Pour
garantir que l'extension du réseau n'entraîne pas une augmentation excessive de la
consommation d'énergie, des protocoles d'économie d'énergie sont nécessaires.
L'évolutivité des réseaux de capteurs sans fil comprend la capacité du réseau à s'adapter de
manière transparente pour répondre aux exigences changeantes tout en garantissant la fiabilité, la
sécurité et les performances du système.
Cependant, grâce aux progrès technologiques, certains capteurs sans fil plus récents intègrent des
processeurs plus puissants ou utilisent des techniques de traitement des signaux plus sophistiquées
pour effectuer des calculs plus complexes, tels que l'apprentissage machine ou le traitement
d'images légères. Ces avancées permettent aux capteurs de réaliser des tâches plus complexes
12
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
localement, réduisant ainsi la nécessité de transmettre des données brutes vers des systèmes
centraux pour un traitement ultérieur.
13
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
14
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
15
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
La mise en place d'un réseau autonome peut être réalisée en disséminant les nœuds de manière
dispersée dans l'environnement naturel. Ces capteurs sont capables de détecter divers événements
tels que les incendies de forêt, les tempêtes ou les inondations. Cette approche facilite une réponse
rapide et efficace des services de secours en permettant une détection précoce des situations
d'urgence.
Les capteurs peuvent être intégrés dans les murs ou dans le béton afin de détecter les altérations
dans la structure d'un bâtiment, suite à un séisme ou à un vieillissement. Un RCSF de mouvements
peut constituer un système d'alarme qui sert à détecter les intrusions sur un large secteur.
Les réseaux de capteurs sans fil (RCSF) sont utilisés pour une variété de choses. Grâce aux
progrès dans la miniaturisation, l'allongement de la durée de vie des batteries et le développement
de nouveaux capteurs, le développement de cette technologie récente est prometteur, ce qui permet
d'élargir les domaines d'application déjà nombreux. L'agriculture, le militaire, la sécurité des biens
et des personnes, la santé, etc. sont quelques-unes des applications des RCSF. Cependant,
l'émergence de ces réseaux entraîne des problèmes tels que la gestion de l'hétérogénéité
technologique des capteurs, la sécurité et la confidentialité des données, ainsi que l'économie
d'énergie.
16
CHAPITRE I : GENERALITES SUR LES RESEAUX DE CAPTEURS SANS FIL
5. Conclusion :
Dans ce chapitre, nous avons expliqué les concepts généraux sur les réseaux de capteurs sans fil.
Cela nous a permis de découvrir les multiples domaines d’utilisation de ces derniers grâce à la
facilité de déploiement et aux faibles coûts des capteurs sans fil. Nous avons vu que les capteurs
sans fil souffrent de plusieurs limitations, notamment une mémoire et une puissance de calcul
limitées, ce qui crée un défi dans la mise en œuvre du cryptage. Dans le prochain chapitre, nous
allons étudier la cryptographie.
17
CHAPITRE II: cryptographie
et signature numérique
18
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
1. Introduction :
Dans un monde où les échanges d'informations se font de plus en plus par des canaux
numériques, la sécurité des données est devenue une préoccupation majeure. Dans cette optique, la
cryptographie et la signature numérique jouent un rôle crucial en assurant la confidentialité,
l'intégrité et l'authenticité des données échangées. Ce chapitre se propose d'explorer en profondeur
les concepts fondamentaux de la cryptographie et de la signature numérique. Il examinera
notamment les principes sous-jacents à ces techniques de protection des données, ainsi que leur
mise en œuvre pratique dans divers contextes numériques.
2. Cryptographie :
2.1 Définition :
Le mot "cryptographie" dérive du mot grec "kryptos", qui signifie "caché". "Crypt", le préfixe,
signifie "caché" ou "coffre-fort", tandis que "graphie", le suffixe, signifie "écriture". La
cryptographie est un terme générique désignant l'ensemble des techniques permettant de chiffrer des
messages, c'est-à-dire de les rendre inintelligibles sans une action spécifique. Le verbe "crypter" est
parfois utilisé, mais on lui préférera le verbe "chiffrer".
La cryptographie utilise des algorithmes codés, des hachages et des signatures pour protéger les
informations. Les données peuvent être au repos, en transit ou en cours d'utilisation. Il existe quatre
objectifs principaux pour la cryptographie :
Confidentialité :Les informations ne peuvent être consultées que par les utilisateurs
autorisés.
Intégrité : L'intégrité garantit que les données n'ont pas été manipulées.
Authentification : garantit que les informations ou l'identité d'un utilisateur sont
authentiques.
Non-répudiation : Empêche un utilisateur de nier des engagements ou des actions
passées.
2.2 Historique :
Il y a deux types de cryptographie :
19
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
exemple, les artistes ont employé des symboles hiéroglyphiques inhabituels plutôt que les images
habituelles. Cependant, il est probable que ce ne soit pas un message codé, mais plutôt une tentative
d'utiliser des symboles plus dignes.
Avançons d'environ 2800 ans et nous verrons la forme la plus avancée de cryptographie
manuelle et sa disparition progressive. Comme vous l'avez deviné, la cryptographie manuelle était
réalisée par des humains. Les algorithmes ne pouvaient donc pas être aussi longs ou compliqués. Si
c'était le cas, au moment où le message était décodé, il pourrait ne plus être pertinent.
Le passage aux machines a permis le cryptage, l'envoi et le décryptage des messages de manière
beaucoup plus rapide et efficace que les techniques manuelles traditionnelles. De plus, l'utilisation
de machines réduisait considérablement la probabilité d'erreurs humaines.
Ces machines fonctionnaient à l'aide de plusieurs rotors alignés manuellement. Les rotors
imprimaient un message crypté lorsque vous tapiez un message. Chaque jour, les réglages des rotors
étaient modifiés selon un nouveau code, rendant le système extrêmement difficile à décrypter. La
cryptographie était principalement utilisée à des fins militaires jusqu'à la fin de la Seconde Guerre
mondiale, mais elle a ensuite commencé à gagner en popularité commerciale.
Au fil du temps, la cryptographie est devenue beaucoup plus complexe et plus sûre grâce aux
progrès technologiques considérables. En 2000, la quantité de données cryptées qu'un seul dispositif
était capable de traiter avait été multipliée par plus d'un milliard.
Le chiffrement de flux est fréquemment employé dans des applications nécessitant des
communications en temps réel, telles que le Wi-Fi. Cependant, il est crucial de noter que cette
méthode n'est pas incassable et peut être sujette à des attaques par recherche exhaustive.
Deux types de chiffrement de flux sont couramment utilisés, chacun caractérisé par un
fonctionnement légèrement différent :
21
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
la synchronisation peut être perdue.Les algorithmes de chiffrement de flux synchrone les plus
couramment utilisés incluent RC4, Salsa20 et Chacha
Cette méthode est auto-synchronisante, ce qui signifie que si des caractères sont perdus ou
ajoutés dans le texte chiffré, le processus de déchiffrement se resynchronise après un certain
nombre de caractères. Les algorithmes de chiffrement de flux auto-synchronisé les plus
couramment utilisés sont le chiffrement autokey et le chiffrement de Vernam.
La rapidité. Le chiffrement de flux est généralement plus rapide que d'autres techniques, y
compris le chiffrement par bloc.
22
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
taille de bloc varie généralement entre 32 et 512 bits ; dans les années 1990, le standard était de 64
bits, mais depuis 2000 et le concours AES, le standard est de 128 bits.
Remplacer les caractères par un code binaire (par exemple, le code ASCII en base 2) pour
obtenir une longue chaîne de 0 et de 1.
Découper cette chaîne en blocs de longueur donnée, par exemple 64 bits.
Chiffrer un bloc en l'appliquant une transformation bit par bit avec une clé.
Déplacer certains bits du bloc.
Répéter éventuellement un certain nombre de fois l'opération précédente, appelée ronde.
Passer au bloc suivant et retourner au point précédent jusqu'à ce que tout le message soit
chiffré.
Le tableau ci-dessous présente les algorithmes de chiffrement par blocs les plus connus :
RC5 16 Breveté par RSA The RC5 Encryption Algorithm par Ronald L.
Data Security Rivest. Proceedings of the 1994 Leuven
Workshop on Fast Software Encryption
(Springer 1995), pages 86-96.
DES 16 Clef de 56 bits Cryptographie - Théorie et pratique, par
Douglas Stinson, pp. 65-100
23
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
Le chiffrement à clé publique suppose que le destinataire (futur) dispose d'une paire de clés (clé
privée ou clé publique), et que les émetteurs potentiels ont accès à sa clé publique. Dans ce cas,
24
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
l'émetteur utilise la clé publique du destinataire pour chiffrer le message, tandis que le destinataire
utilise sa clé privée pour le déchiffrer. Cette méthode est plus sûre que la cryptographie symétrique,
car la clé privée n'est connue que du destinataire, tandis que la clé publique peut être distribuée
librement.
Chiffrement RSA :
Utilise une paire de clés, une clé publique et une clé privée, pour chiffrer et déchiffrer des
données. Il a été développé par Ron Rivest, Adi Shamir et Leonard Adleman en 1977. Le
chiffrement RSA repose sur la difficulté de factoriser de grands nombres premiers.
Le chiffrement RSA est largement utilisé dans de nombreuses applications, notamment
pour sécuriser les connexions web via SSL/TLS, pour chiffrer les e-mails via le protocole
PGP, et pour les transactions en ligne telles que celles effectuées avec le Bitcoin. Cependant,
le chiffrement RSA est généralement plus lent et nécessite plus de calculs que le chiffrement
symétrique.
25
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
26
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
Les courbes elliptiques possèdent des propriétés spéciales qui les rendent intéressantes et utiles
pour les mathématiciens et les cryptographes. Tout d’abord, les courbes elliptiques sont symétriques
horizontalement. Lorsque l’image est réfléchie par rapport à l’axe des x (la ligne horizontale), les
deux côtés sont identiques, comme une image miroir.
De plus, toute ligne droite non verticale tracée à travers une courbe elliptique l’intersectera
toujours en trois points au maximum. Dans l’exemple ci-dessous, ces points sont marqués P, Q et R.
Cette caractéristique implique que l’ECC peut offrir une sécurité comparable, voire meilleure, à
l'algorithme RSA avec des clés de taille bien inférieure.
RSA ECC
applications en réseau
Scalabilité vulnérable à la scalabilité et plus scalable et peut être
commence à devenir vulnérable adaptée aux futurs besoins
Pour être utilisable en cryptographie, une fonction de hachage doit posséder ces qualités :
3. La signature électronique :
28
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
garantir l'intégrité d'un document (c'est-à-dire qu'il n'a pas été altéré entre sa signature et
sa lecture).
authentifier son auteur (c’est-à-dire s’assurer de l’identité de la personne signataire)
rapporter la preuve du consentement.
Infalsifiable : une personne ne peut pas se faire passer pour une autre.
Non réutilisable : la signature est intégrée au document signé et ne peut être déplacée vers
un autre document.
simple : la signature électronique simple est une signature de niveau 1, soit le niveau de
sécurité et d’identification du signataire le plus bas
avancée : la signature électronique avancée est une signature de niveau 2. Elle impose le
téléchargement de la carte d’identité pour valider la signature.
29
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
qualifiée : la signature électronique qualifiée est une signature de niveau 3, soit le niveau de
sécurité et d’authentification électronique le plus élevé. Elle garantit l’identité numérique du
signataire via la délivrance d’un certificat de signature électronique qualifiée.
30
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
5. Conclusion :
Dans ce chapitre, nous avons présenté d’une manière globale, les différents concepts de base pour la
cryptographie et la signature numérique. Nous nous sommes concentrés sur la façon dont fonctionnent
la cryptographie et la signature numérique. Le chapitre suivant présentera l'un des algorithmes de
signature numérique que nous allons utiliser dans notre système. Cet algorithme est l’algorithme de
signature numérique en courbe elliptique.
Au sein de ce chapitre, nous avons présenté d’une manière globale des concepts fondamentaux
de la cryptographie et de la signature numérique. Notre attention s'est portée sur la compréhension
approfondie du fonctionnement de ces deux disciplines. Dans le chapitre suivant, nous explorerons
en détail l'un des algorithmes clés de la signature numérique, qui sera optimisé pour s'adapter aux
contraintes du réseau de capteurs. Plus précisément, il s'agira de l'algorithme de signature
numérique basé sur les courbes elliptiques.
31
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
CHAPITRE III :
L’ALGORITHME DE
SIGNATURE NUMERIQUE
EN COURBE ELLIPTIQUE
32
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
1.Introduction :
L'algorithme de signature numérique en courbe elliptique est une technique de chiffrement
asymétrique utilisée pour assurer la sécurité des communications électroniques. Il repose sur la
propriété des courbes elliptiques qui permettent de réaliser des opérations mathématiques
complexes. Cette introduction présente les objectifs et le contexte de cet algorithme, ainsi que
l'importance de sécuriser les échanges de données numériques. Nous expliquerons également les
principes de base de l'algorithme et les différentes parties qui le composent, notamment la
génération des clés, la signature d'un message, la sécurité de l'algorithme et ses applications
pratiques.
Pour signer un message m, il est nécessaire de calculer son hachage H(m). Par la suite, un nombre
aléatoire k est généré, utilisé une seule fois (on parle d'un nonce). Deux points sont calculés sur la
courbe, (x1, y1) et (x2, y2), en utilisant respectivement k * G et H(m) + d * x1. Le couple (r, s) est
donc la signature, où r est x1 mod n et s est k^-1 * (H(m) + r * d) mod
2.3 Vérification de signature :
Pour vérifier une signature (r, s) pour un message m, il est nécessaire de vérifier d'abord si r et s
sont compris entre 1 et n-1. Par la suite, on détermine w = s^-1 mod n, u1 = H(m) * w mod n et u2 =
r * w mod n. Sur la courbe, vous obtenez deux points, (x1, y1) et (x2, y2), qui sont respectivement
u1 * G + u2 * Q et r * G. Si x1 vaut r, la signature est valide.
2.4 Sécurités :
L'algorithme ECDSA est sécurisé en utilisant le problème du logarithme discret sur une courbe
elliptique. Il est essentiel d'avoir une puissance de calcul exponentielle pour déterminer la clé privée
à partir de la clé publique, ce qui permet à l'algorithme de faire face aux attaques par force brute.
33
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
La sélection de la courbe elliptique revêt une importance capitale pour assurer la sécurité de
l'algorithme ECDSA. Il est important de choisir attentivement les courbes elliptiques afin de
s'assurer qu'elles offrent un niveau de sécurité approprié tout en maintenant des performances
acceptables.
3.Génération de clefs :
La génération des clefs aussi bien publique qui privées est un l’outil qui va nous permettre
« d’ouvrir et de fermer les verrous » d’un système de cryptographique.
On associe un couple de clefs pour une courbe elliptique à des paramètre de domaine particuliers
D=(q,FR,S,a,b,P ,n,h).le clef publique est un point Q de la courbe elliptique choisi aléatoirement
dans le groupe (P) généré par P.la clef privée correspondante est d = logPQ . L’entité A qui
génère le couple de clefs d o i t être assurée que les paramètres de domaine sont valides. De
plus, l’association de paramètres de domaines et d’une clef publique doit être véritable par toutes
les entités qui pourraient, plus tard, être amener à utiliser la clef publique de l’entité A. En
pratique, cette association peut être obtenue à l’aide de moyens cryptographiques
(e.g., l’autorité de certification génère un certificat qui atteste cette association) ou selon le
contexte (e.g., toutes les entités utilisent les mêmes paramètres de domaine)
Nous avons maintenant un outil qui nous permet de créer une paire de clés (clé publique, clé privée)
que nous utiliserons lors de la signature de messages. Comment pouvons-nous garantir la validité de
ces clés en fonction des paramètres du domaine utilisé ? Cette validité est garantie par l'algorithme
de la figure 1.2 qui accepte ou rejette une paire de clés en fonction des paramètres de domaine
proposés.
En multipliant le point de base G par la clé privée d, cet algorithme permet de vérifier que la clé
publique a été correctement calculée et que la clé publique obtenue se trouve correctement sur la
courbe elliptique définie par les paramètres du domaine. Cela assure que la paire de clés est générée
de manière adéquate et peut être utilisée.
34
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
L'algorithme ECDSA (Elliptic Curve Digital Signature Algorithme) est le plus célèbre pour sa
signature électronique. Sa sécurité repose sur l'impossibilité de résoudre le logarithme discret dans
un sous-groupe d'une courbe elliptique. Il a été initialement proposé par Scott Vanstone répond à un
appel d'offres du National Institute of Standards and Technology (NIST) pour les signatures
numériques.
Il est reconnu par l'ISO depuis 1998, par l'ANSI depuis 1999 et par l'IEEE 34 2.5. Depuis 2000, les
crypto systèmes utilisent les courbes elliptiques et NIST.
Il est crucial de pouvoir avoir la possibilité de signer un message que l'on envoie, c'est-à-dire de
pouvoir s'authentifier, s'identifier et garantir son authenticité. Dans cette optique, nous exposerons
les différentes étapes de l'algorithme de signature numérique à courbe elliptique (ECDSA).
Il est supposé qu'Alice et Bob utilisent la même courbe elliptique E(Fp) afin de garantir la
communication entre eux. Nous supposons que la clé publique d'Alice est Qa = ka ∗P, où ka est sa
clé privée et P est le point de générateur de l'ordre n.
Afin de donner sa signature à un message M , Bob vérifie la signature du message après avoir reçu
le message signé :
— Vérifiez si Qa ̸ = ∞ (point à l'infini) et si Qa ∈ E(Fp).
— Assurer que n ∗ Qa = ∞. Puisque n ∗ Qa = n ∗ ka ∗ P et ordp(P) dépend de n.
— Assurez-vous que (r, s) se trouvent dans la zone [1, n − 1].
— Faire le calcul de w = s −1 (mod n) et H(M).
35
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
36
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
5.3 Algorithme ECNR : ECNR signifie "Elliptic Curve Negated Recovery". C'est un
algorithme asymétrique de signature numérique utilisant des courbes elliptiques et une
méthode de récupération négative pour produire des signatures. Les algorithmes ECDSA et
ECGDSA sont moins connus que l'algorithme ECNR, mais il est néanmoins employé dans
certaines applications.
37
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
6.1 Attaques par force brute : Les attaques par force brute consistent à tester toutes les clés
possibles jusqu'à trouver la bonne. Cependant, la longueur des clés utilisées dans les
algorithmes de signature numérique moderne, tels que ECDSA, ECGDSA et ECNR, rendent
cette méthode inefficace et irréalisable dans la pratique.
6.2 Attaques par clé publique : Les attaques par clé publique tentent de dériver la clé privée en
utilisant uniquement la clé publique. Toutefois, les algorithmes de signature numérique sont
conçus de manière que la clé privée ne puisse pas être inférée à partir de la clé publique,
même en employant des techniques avancées d'analyse mathématique.
6.3 Attaques par clé privée : Les attaques ciblant la clé privée cherchent à obtenir cette dernière
à l'aide de méthodes illégitimes telles que l'interception de communications ou l'exploitation
de failles de sécurité. Afin de réduire les risques associés à de telles attaques, les concepteurs
d'algorithmes de signature numérique mettent en place des mesures de sécurité telles que
l'utilisation de méthodes de génération de clés robustes et la protection renforcée de la clé
privée contre tout accès non autorisé.
38
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
La signature numérique en courbe elliptique assure l'intégrité des données en assurant qu'elles n'ont
pas été modifiées ou corrompues lors de leur transmission ou de leur stockage. Cela revêt une
importance capitale dans les domaines où la protection des données revêt une importance capitale,
comme les opérations financières, la médecine électronique et la sécurité nationale.
39
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
Dans cette figure (9.1), Alice signe un message avec sa clé privée, et Bob vérifie la signature à
l'aide de la clé publique d'Alice
40
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
9.2 DSA (Digital Signature Algorithm) : utilise un processus très similaire à la signature RSA
en interne, mais spécifie les étapes particulières de génération de clé et de hachage nécessaires pour
créer correctement des signatures. Plus important encore, sa sécurité repose non pas sur la difficulté
de la factorisation des nombres entiers mais sur la difficulté du problème du logarithme discret.
DSA est uniquement destiné aux signatures, pas au chiffrement ou à l'échange de clés.
Malheureusement DSA et ECDSA sont fragiles : ils nécessitent de choisir une valeur au hasard
pour chaque signature créée.
Dans cette figure, le processus de génération et de vérification de la signature DSA est présenté. Le
signataire crée une signature à l'aide de sa clé privée, tandis que le vérificateur vérifie la signature à
l'aide de la clé publique du signataire.
9.3 EdDSA (Edwards-curve Digital Signature Algorithm ) : est une méthode de signature
numérique qui exploite les propriétés des courbes elliptiques pour produire des signatures.
Son objectif est d'être à la fois plus rapide et plus sécurisé que les algorithmes ECDSA et
DSA.
41
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
9.4 Comparaison et conseil (tips) : Chaque algorithme de signature numérique présente ses points
forts et ses points faibles, et la sélection de l'algorithme est déterminée par les exigences
particulières de l'application. Le RSA est couramment utilisé et garantit une sécurité satisfaisante,
cependant il requiert des tailles de clés plus élevées par rapport aux algorithmes basés sur les
courbes elliptiques tels que ECDSA et EdDSA. ECDSA et EdDSA proposent des niveaux de
sécurité similaires grâce à des tailles de clés plus réduites, ce qui les rend plus adaptés aux
environnements où les ressources sont limitées. Pour assurer la sécurité des signatures numériques,
il est essentiel d'utiliser des générateurs de nombres aléatoires performants, de protéger les clés
privées et de respecter les recommandations de taille de clé.
42
CHAPITRE III: l’algorithme de signature numérique en courbe elliptique
10.Conclusion
Les signatures numériques peuvent être générées grâce à l'algorithme de signature numérique en
courbe elliptique (ECDSA), une méthode puissante et efficace. Il utilise les règles de la
cryptographie des courbes elliptiques et garantit une grande sécurité pour les échanges numériques.
On retrouve fréquemment l'ECDSA dans différentes applications, comme les communications
sécurisées, la vérification de l'identité numérique et la technologie blockchain. L'ECDSA se
distingue par ses temps de génération et de vérification des signatures plus rapides par rapport à
d'autres algorithmes de signature numérique comme RSA, DSA et EdDSA, ainsi que par ses tailles
de clé plus réduites. Toutefois, il est crucial de vérifier que les paramètres de domaine utilisés dans
l'ECDSA sont correctement validés et que la clé privée est générée et stockée de manière sécurisée.
Dans l'ensemble, l'ECDSA est un outil précieux pour assurer la sécurité et l'intégrité des
transactions numériques.
43