7.4.2 Contrôle d'intégrité
Le processus contrôle d'intégrité comme
nous l'avons indiqué dans la phase de conception, nécessite deux
aglets : le premier va calculer un hash relatif au message puis il le transmet
avec ce dernier afin que le deuxième aglet puisse recalculer ce hash et
le comparer à celui envoyé pour pouvoir s'assurer que le document
qui a circulé dans le réseau n'a pas été
altéré par une station malveillante.
L'approche contrôle d'intégrité
présente une sorte de sécurité sur les données
à envoyer puisque les empreintes MD5 (qui est une fonction d'hachage
cryptographique) permettent de contrôler l'intégrité des
fichiers. En crée une empreinte (ou résumé
électronique) des fichiers et à tous moment on peut
vérifier si les fichiers correspondent toujours à leurs
empreintes.
Si un fichier ne correspond plus à son empreinte cela
signifie soit que ce fichier a été endommagé
accidentellement (support physique, transmission...) soit que ce fichier a
été volontairement infecté. L'empreinte MD5 garantit
sérieusement l'intégrité du document.
Trois cas se présentent :
· Si un fichier ne correspond plus à son empreinte
il a forcement été modifié ou alors c'est l'empreinte qui
a été modifiée.
· Si un fichier correspond à son empreinte, il y
à une très forte probabilité qu'il soit intègre.
· La probabilité que deux fichiers différents
présentent la même empreinte est très faible.
7.4.3 Assurer l'authentification
Pour augmenter le degré de la sécurité de
la communication de nos aglets au niveau de la propriété
authentification, nous avons eu l'idée d'implémenter une approche
qui sert à vérifier l'identité des aglets communicants
avant l'envoi ou la réception des données.
Cela veut dire, protéger la communication des deux
aglets contre une troisième entité malveillante qui essayera
d'apparaître comme l'un des deux en leur volant leurs identité
(numéro de port ou adresse IP),ce qui lui permettra de recevoir et
d'envoyer des messages et même de brouillée la communication.
Notre approche consiste en un simple test qui doit être
exécuté par les aglets communicants avant de commencer
l'échange de leurs données.
Considérons deux aglets A et B qui communiquent par
messages et que A va commencer la transmission.
Prenons par exemple la question : « qui est tu ?»
sa réponse : « Je suis celui qui devrait te
répondre »
La question et sa réponse sont encryptées
(Encquestion et Encréponse) et les deux aglets A et B doivent avoir ces
quatre paramètres : question, réponse, Encquestion et
Encréponse
Le processus d'authentification se fait donc comme suit:
1) L'aglet A envoie à B la question encrypter
«Encquestion»;
2) L'aglet B qui reçoit la question encrypter «
Encquestion» la décrypte puis la compare avec la sienne si c'est la
même il envoie alors à A la réponse encrypter
(Encréponse).
3) Lorsque l'aglet A reçoit la réponse encrypter,
il la décryptera et la comparera avec la sienne :
- Si c'est la même alors il sera sûr que l'aglet B
est bien ce qu'il affirme être, si non il conclura qu'il s'agit d'un
aglet malveillant qui a voler l'identité de l'aglet B.
|