Précédent : Panorama Remonter :
Domaines
d'applications Suivant : Certification de
compilateurs
Mots clés : télécommunications, commerce électronique, spécification formelle .
Les protocoles sont des programmes traitant les communications. Bien que leur taille soit souvent réduite, leur complexité est grande. En effet, ils sont amenés à fonctionner dans des milieux perturbés dont la modélisation précise n'est pas aisée. Au-dessus des protocoles sont construits de nombreux autres logiciels; d'où la nécessité d'une spécification rigoureuse des protocoles qui seront souvent régis par une norme.
De nombreux services utilisent les réseaux télématiques tels qu'Internet ou les téléphones mobiles. Il faut donc concevoir de nouveaux protocoles offrant de plus en plus de fonctionnalités et garantissant la qualité de service. Le commerce électronique ou la téléphonie mobile imposent que ces services garantissent la confidentialité des informations échangées.
Prouver un protocole est une tâche difficile, cependant la preuve ne variera en général pas beaucoup entre deux protocoles d'une même famille, il pourra être plus économique de revérifier un protocole après une modification que de rejouer à partir de zéro un jeu de tests. De plus les preuves apportent une connaissance approfondie des algorithmes et peuvent souvent être une aide précieuse pour concevoir de nouvelles méthodes.
Les preuves peuvent être faites de manière automatique lorsque les problèmes se ramènent à des modélisations finies de taille raisonnable. Cette contrainte nécessite souvent d'abstraire le problème réel. Les assistants à la démonstration tels que Coq permettent de formaliser un problème arbitrairement compliqué et de le résoudre en utilisant des étapes élémentaires correspondant au raisonnement mathématique usuel. Coq apparaît alors comme l'outil du spécialiste lui permettant de spécifier formellement un protocole et d'en justifier le bon fonctionnement. Outre l'assurance de la correction d'un protocole, Coq permettra de faire évoluer la preuve en même temps que le protocole et fournira les éléments nécessaires au processus de normalisation ou de certification. Coq est actuellement utilisé dans ce sens pour des preuves de protocoles de commerce électronique dans l'action VIP de Dyade et pour des preuves d'algorithmes intervenant dans les protocoles du réseau ATM au CNET.