Thèse soutenue

Vers des références de première classe comme infrastructure de sécurité dans les langages dynamiquement typés

FR  |  
EN
Auteur / Autrice : Jean-Baptiste Arnaud
Direction : Stéphane DucasseMarcus Denker
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 18/02/2013
Etablissement(s) : Lille 1
Ecole(s) doctorale(s) : École doctorale Sciences pour l'ingénieur (Lille)
Partenaire(s) de recherche : Laboratoire : Laboratoire d'informatique fondamentale de Lille (2002-2014)

Mots clés

FR

Résumé

FR  |  
EN

Les langages de programmation orientés-objet dynamiquement typés ne peuvent pas fournir d’informations de type avant l'exécution. Deux de leurs principaux avantages sont qu'ils permettent le prototypage rapide et l'intégration de modifications lors de l'exécution. La capacité des langages dynamiquement typés accepter les changements du programme lors de son exécution et en l'absence d’informations de type, condamne les approches de sécurité classiques à l'échec.Contrôler les références des objets et des graphes d'objets est indispensable pour construire des systèmes sécurisés. Les approches existantes sont généralement basées sur un système de type statique et ne peuvent pas être appliquées aux langages dynamiquement typés.Cette thèse défend que:Dans le contexte des langages de programmation orientés-objet dynamiquement typés, réifier les références, contrôler leur comportement, et isoler l'état des objets par le biais de telles références, est un moyen pratique de contrôler les références.Cette thèse apporte cinq contributions:- Nous proposons la notion de dynamic read-only objects (DRO) comme un changement particulier (read-only) de comportement au niveau des références; - Nous généralisons le modèle DRO pour permettre des changements de comportement plus génériques et nous étendons l'environnement de programmation et le langage Pharo avec des Handles, qui sont des références avec la possibilité de changer le comportement des objets référencés;- Nous définissons le terme de Metahandle pour offrir flexibilité et adaptabilité aux références contrôlées; - Nous proposons la notion de SHandle, pour isoler les effets de bord au niveau des références;- Et enfin, nous décrivons formellement les modèles Handle et SHandle pour représenter et expliquer leur sémantique.Comme validation de notre thèse nous avons mis en place trois approches liées à la sécurité en utilisant nos modèles. En outre, nous avons étendu la machine virtuelle Pharo pour supporter les Handles, Metahandles et SHandles.