Return to search

Vérification de code-octet avec sous-routines par code-certifié

Des applications compilées en code-octet et encodées dans le format de fichier class sont normalement chargées et exécutées par une machine virtuelle. La vérification du code-octet
est un processus utilisé par une machine virtuelle pour renforcer la sécurité des systèmes distribués en garantissant la conformité du code de classes avec les règles du langage. Les algorithmes actuels de vérification du code-octet utilisent des approches comme l'analyse de flot de données, le model checking ou le code-certifié (similaire au proof-carrying code). Mais l'on dénote certains problèmes, en particulier dus aux sous-routines, avec soit des spécifications informelles et incomplètes, soit des algorithmes ne supportant qu'un sous-ensemble du jeu d'instructions du code-octet, ou encore des performances exponentielles proportionnellement à la taille du code des méthodes à vérifier. Dans ce mémoire nous présentons une technique de vérification du code-octet avec sous-routines par code-certifié. Nous présentons en particulier la conception d'un format de certificat, d'un algorithme de calcul de certificat et d'un algorithme de vérification pour l'ensemble du jeu d'instructions du code-octet. Notre algorithme de vérification a une complexité linéaire en proportion de la taille du code des méthodes. Le développement d'un vérificateur et d'un compilateur de certificats a servi à conduire des expérimentations qui montrent que le format de certificat proposé est suffisamment riche pour effectuer la vérification du code-octet. De plus, nous présentons les résultats de l'évaluation du coût en espace mémoire de la certification de classes avec une telle technique. L'observation montre un accroissement relativement faible de la taille d'un échantillon de plus de 35 000 classes suite à leur certification. ______________________________________________________________________________ MOTS-CLÉS DE L’AUTEUR : Vérification, Code-octet, Code-certifié, Analyse de flot de données, Sous-routines, Java.

Identiferoai:union.ndltd.org:LACETR/oai:collectionscanada.gc.ca:QMUQ.769
Date January 2007
CreatorsCorbeil, Mathieu
Source SetsLibrary and Archives Canada ETDs Repository / Centre d'archives des thèses électroniques de Bibliothèque et Archives Canada
Detected LanguageFrench
TypeMémoire accepté, PeerReviewed
Formatapplication/pdf
Relationhttp://www.archipel.uqam.ca/769/

Page generated in 0.0017 seconds