these doctorat une architecture de securité
these doctorat une architecture de securité
these doctorat une architecture de securité
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chapitre 5. Une <strong>architecture</strong> <strong>de</strong> sécurité <strong>de</strong> haut niveau<br />
En nous basant sur l’étu<strong>de</strong> bibliographique présentée dans ce manuscrit et <strong>de</strong>s contraintes<br />
suscitées, la solution d’authentification qui s’impose est l’utilisation d’<strong>une</strong> <strong>architecture</strong> à clé publique<br />
<strong>de</strong> type SPKI. Le choix <strong>de</strong> la solution SPKI s’explique par la nature même <strong>de</strong>s entités à<br />
i<strong>de</strong>ntifier. En effet, l’infrastructure SPKI permet l’attribution <strong>de</strong> certificats à <strong>de</strong>s objets logiques<br />
comme les runtimes, les nœuds ou encore les objets actifs ce qui n’est pas le cas <strong>de</strong> l’infrastructure<br />
PKI dont les certificats i<strong>de</strong>ntifient <strong>une</strong> entité physique ou morale en donnant son nom, son émail,<br />
sa localisation, . . . . Ainsi , l’i<strong>de</strong>ntification <strong>de</strong>s diverses entités sécurisées se fera en attribuant<br />
<strong>une</strong> i<strong>de</strong>ntité unique à chaque entité au moyen <strong>de</strong> certificats.<br />
Une autre fonctionnalité intéressante rési<strong>de</strong> dans la possibilité d’établir <strong>une</strong> chaîne <strong>de</strong> certificats.<br />
Le chaînage <strong>de</strong> certificats permet d’obtenir l’i<strong>de</strong>ntité <strong>de</strong> toutes les entités qui ont successivement<br />
généré <strong>de</strong>s certificats jusqu’au certificat final qui i<strong>de</strong>ntifie l’entité courante. En d’autres<br />
termes, à partir du certificat d’<strong>une</strong> entité, nous sommes capables <strong>de</strong> retrouver le certificat <strong>de</strong><br />
l’utilisateur qui l’a lancée. Il n’existe auc<strong>une</strong> limitation à la taille <strong>de</strong> cette chaîne <strong>de</strong> certificats.<br />
Cependant il convient <strong>de</strong> modérer la taille <strong>de</strong> cette chaîne : étant donné que la validation d’un<br />
certificat requiert la validation <strong>de</strong> tous les certificats présents dans la chaîne, plus cette chaîne<br />
est courte, plus la validation du certificat sera rapi<strong>de</strong>.<br />
tel-00239252, version 1 - 5 Feb 2008<br />
5.3.1 Un schéma d’authentification hiérarchique<br />
Le principal problème auquel nous <strong>de</strong>vons faire face rési<strong>de</strong> dans la dynamicité <strong>de</strong>s applications<br />
distribuées. En effet, <strong>une</strong> application évolue tout au long <strong>de</strong> son exécution. Son nombre<br />
d’objets ou le nombre <strong>de</strong> nœuds sur lesquels elle est déployée, par exemple, peut augmenter et<br />
diminuer dynamiquement suivant plusieurs paramètres externes ou internes à l’application. Du<br />
point <strong>de</strong> vue <strong>de</strong> la sécurité, on doit pouvoir générer <strong>de</strong>s certificats pour ces nouvelles entités sécurisées<br />
sans pour autant <strong>de</strong>voir interagir avec l’utilisateur.<br />
Selon le principe même <strong>de</strong>s certificats, chaque certificat engendré doit être unique dans un<br />
contexte et représenter <strong>une</strong> entité sécurisée donnée. Il est certes possible d’écrire le co<strong>de</strong> <strong>de</strong> création<br />
du certificat et d’effectuer l’association du certificat et <strong>de</strong> l’entité au sein <strong>de</strong> l’application.<br />
Cependant nous recherchons à automatiser ce processus et à le rendre transparent aux développeurs<br />
et aux utilisateurs.<br />
Afin <strong>de</strong> mettre en évi<strong>de</strong>nce l’inadéquation du modèle standard <strong>de</strong>s certificats et le besoin<br />
d’adaptation <strong>de</strong> ce mécanisme dans le cadre <strong>de</strong> notre modèle <strong>de</strong> sécurité, nous utiliserons le<br />
scénario suivant :<br />
1. L’utilisateur, muni <strong>de</strong> son certificat fourni par l’autorité <strong>de</strong> certification, crée l’objet appelé<br />
Entité 1. En tant qu’entité sécurisée, cet objet reçoit un certificat.<br />
2. Entité 1 va ensuite créer les entités Entité 2 et Entité 3.<br />
3. Entité 3 crée un nouvel objet actif Entité 4,<br />
4. finalement, Entité 4, à son tour, crée un objet actif Entité 5.<br />
En premier lieu, nous présentons la façon dont s’organise le chaînage <strong>de</strong> certificats dans le<br />
cas standard (figure 5.5). Un certificat comporte <strong>une</strong> partie référençant l’entité qui l’a généré<br />
et <strong>une</strong> partie qui l’i<strong>de</strong>ntifie. Dans notre exemple, chaque certificat, hormis celui <strong>de</strong> l’utilisateur,<br />
représente <strong>une</strong> entité sécurisée.<br />
Le scénario dans le cas standard est le suivant :<br />
1. Le certificat <strong>de</strong> l’Entité 1 contient l’i<strong>de</strong>ntité <strong>de</strong> l’utilisateur X dans la partie i<strong>de</strong>ntifiant le<br />
créateur du certificat.<br />
2. Le certificat <strong>de</strong> l’Entité 2 et <strong>de</strong> l’Entité 3 contiennent l’Entité 1 en tant que créateur<br />
du certificat.<br />
3. Le certificat <strong>de</strong> l’Entité 4 contient l’Entité 3 en tant que créateur du certificat.<br />
4. Le certificat <strong>de</strong> l’Entité 5 contient l’Entité 4 en tant que créateur du certificat.<br />
74