• Aucun résultat trouvé

4.2 Mesure de la faille de sécurité

La première quantité qui peut être mesurée est donc la taille de la faille de sécu-rité détectée par la violation de l’opacité. Ainsi, l’opacité est violée lorsqu’une classe d’observation est complètement incluse dans le prédicat (ou dans le complémentaire du prédicat, dans le cas symétrique). On peut relaxer cette condition en mesurant

a,12

b,14

X,1

4 X,1

FIGURE4.1: L’automate probabiliste A2.

les classes d’observation qui permettent à un observateur de connaître la valeur du prédicat. Plus précisément, on mesure la probabilité pour une exécution tirée aléa-toirement (selon la distribution définie par l’automate A ) que l’observation trahisse complètement l’appartenance (ou non) au prédicatϕ.

Définition 4.1 (Opacité probabiliste faible). Soit A un automate probabiliste, O :

TExec(A ) → Obs une fonction d’observation, et ϕ⊆ TExec(A ) un prédicat. L’opacité (asymétrique) probabiliste faible (LPO2) deϕsur A relativement à O est donnée par :

POA

(A ,ϕ,O) = X

o∈Obs O−1(o)⊆ϕ

P(O = o)

L’opacité symétrique probabiliste faible (LPSO3) de ϕ sur A relativement à O est donnée par : POS (A ,ϕ,O) = X o∈Obs O−1(o)⊆ϕ P(O = o)+ X o∈Obs O−1(o)⊆ϕ P(O = o)

Comme on le montre dans la suite, ces valeurs sont nulles lorsque le système est – en dehors des lois de probabilités qui régissent son fonctionnement – opaque au sens classique du terme, donc peut être considéré comme sûr.

Dans le cas de la LPO, cela correspond au cas où chaque classe d’observation contient au moins une exécution dansϕ, comme sur la figure 4.2(a). En effet, puisque la LPO ne mesure que la probabilité des classes dont l’inclusion dans ϕest révélée, celles pour lesquelles c’est l’inclusion dans ϕqui est connue ne sont pas prises en compte. À l’inverse, l’autre valeur extrémale POA(A ,ϕ,O) = 1 est atteinte lorsque le prédicatϕest toujours vrai.

Lorsque la LPSO est nulle, cela signifie que chaque classe d’observation contient à la fois des exécutions dansϕet d’autres dansϕ, comme sur la figure 4.2(c). À l’op-posé, le système est totalement non sûr lorsque l’observation permet de connaître la valeur de vérité de ϕ. Dans ce cas,ϕest une union de classes d’observation comme sur la figure 4.2(e). Ceci peut aussi être interprété en terme de théorie de l’informa-tion : connaître O donne toute l’informal’informa-tion surϕ. Enfin, dans le cas intermédiaire, certaines classes d’observations, mais pas toutes, ne contiennent que des exécutions dansϕou seulement des exécution dansϕ, comme sur la figure 4.2(d).

Ces propriétés sont formalisées dans les propositions suivantes :

Proposition 4.1.

2. Pour Liberal Probabilistic Opacity.

(a) POA(A ,ϕ,O) = 0 (b) 0 < POA(A ,ϕ,O) < 1

ϕ

O

−1

(o)

Classes dont l’inclusion dans ϕ est détectée. Classes dont l’inclusion dans ϕ est détectée.

(c) POS(A ,ϕ,O) = 0 (d) 0 < POS(A ,ϕ,O) < 1 (e) POS(A ,ϕ,O) = 1 FIGURE4.2: Opacité (asymétrique et symétrique) probabiliste faible.

(1) 0 ≤ POA

(A ,ϕ,O) ≤ 1 (2) POA

(A ,ϕ,O) = 0 si et seulement siϕest asymétriquement opaque sur Unprob(A ) relativement à O.

(3) POA(A ,ϕ,O) = 1 si et seulement siϕ= TExec(A ).

Proposition 4.2.

(1) 0 ≤ POS(A ,ϕ,O) ≤ 1

(2) POS(A ,ϕ,O) = 0 si et seulement siϕest symétriquement opaque sur Unprob(A ) relativement à O.

(3) POS(A ,ϕ,O) = 1 si et seulement si H(ϕ|O ) = 0. Démonstration des propositions 4.1 et 4.2.

(1) Les évènements considérés étant mutuellement exclusifs, la somme de leur pro-babilités ne dépasse jamais 1.

(2) Tout d’abord, remarquons que l’exécution totaleρXa une probabilité non nulle dans A si et seulement si c’est une exécution acceptante dans Unprob(A ). Supposons que POA(A ,ϕ,O) = 0. Alors il n’y a pas d’observable o ∈ Obs telle que P(O = o) > 0 et O−1(o) ⊆ϕ. Donc pour toute observable o, O−1(o)*ϕ. Réciproquement, siϕest opaque sur Unprob(A ), il n’y a pas d’observable o telle que O−1(o) ⊆ϕ, donc POA(A ,ϕ,O) est nulle.

Le cas de la LPSO est analogue, la seule différence étant qu’il faut aussi traiter le cas deϕ, dual à celui deϕ.

(3) Dans le cas de la LPO, cela découle directement de la définition. Pour la LPSO, H(ϕ|O ) = 0 si et seulement si

X o∈Obs i∈‚ P(ϕ= i|O = o) · log¡ P(ϕ= i|O = o)¢ = 0.

Puisque tous les termes de la somme ont le même signe (en l’occurrence négatif), la somme n’est nulle que si chaque terme l’est. En posant, pour o ∈ Obs,

f (o) = P(ϕ|O = o) = 1 − P(ϕ|O = o), on obtient H(ϕ|O ) = 0 si et seulement si

∀o ∈ Obs, f (o) · log(f (o)) + (1 − f (o)) · log(1 − f (o)) = 0.

Étant donné que l’équation x · log(x) + (1 − x) · log(1 − x) = 0 n’admet que 1 et 0 comme solutions, cela revient à dire que pour toute observable o, les exécutions (totales)ρtelles que O(ρ) = o sont soit toutes dansϕ, soit toutes hors deϕ. Donc H(ϕ|O ) = 0 si et seulement si pour toute observable o, soit O−1ϕsoit O−1ϕ,

c’est-à-dire POS(A ,ϕ,O) =Po∈ObsP(O = o) = 1. 

Exemple 4.1 (Non interférence). On considère les systèmes A5et A6de la figure 4.3. Ces automates sont tous deux étiquetés par A = {h,1,2}. Soit ϕN I le prédicat cor-respondant à la 1-non interférence, où h est la seule action de haut niveau :ϕN I= tr−1(AhA). De même, la fonction d’observation est celle qui ne garde que la trace sur {1,2}: OL=π{ℓ1,ℓ2}◦ tr.

Dans le cas non probabiliste, les systèmes A5et A6se comportent identiquement. Et dans les deux cas, la propriété de 1-non interférence n’est pas respectée car l’obser-vation de2 seul (c’est-à-dire qui n’est pas précédé d’un 1) trahit la présence d’une action h.

Cependant, si l’on prend en compte les probabilités de ces systèmes, on remarque que l’exécution h2X, qui pose un problème de sécurité, apparaît moins fréquemment dans A5 que dans A6. En effet, considèrons toutes les exécutions de ces automates, comme il est fait sur la table 4.1. L’ensemble des exécutions dont l’observation est

12, qui comprend les exécutionsρ1 etρ2, intersecte à la foisϕN I (avec l’exécution

ρ2) etϕN I(avecρ1). A contrario, l’ensemble des exécutions d’observation2, en réalité réduit au singletonρ3, est tout entier contenu dansϕN I.

Le calcul de l’opacité probabiliste faible donne alors : POA¡ A5,ϕN I,OL¢ =1 4 PO A ¡ A6,ϕN I,OL¢ =3 4. 1,12 h,14 h,14 1,1 2,1 2,1 X,1 (a) Automate probabiliste A5

1,18 h,34 h,18 1,1 2,1 2,1 X,1 (b) Automate probabiliste A6 FIGURE4.3: Automates probabilistes qui ne sont pas 1-non interférents.

tr(ρ) PA5(ρ) PA6(ρ) ϕN I OL(ρ)

tr(ρ1) =12X 1/2 1/8 0 12

tr(ρ2) = h12X 1/4 1/8 1 12

tr(ρ3) = h2X 1/4 3/4 1 2

TABLE4.1: Exécutions totales de A3 et A4.

On peut en conclure que le système modélisé par A5 est plus sûr que celui modé-lisé par A6, car l’exécution qui transmet de l’information sur le prédicat arrive plus souvent.

Dans cet exemple, la LPO et la LPSO coincident, mais ce n’est évidemment pas toujours le cas. Même dans le cas non probabiliste, les notions asymétrique ou symé-trique de l’opacité de ϕN I relativement à OL expriment des interprétations légère-ment différentes de la propriété « un observateur extérieur ne sait pas si l’action h a eu lieu ». Dans le cas asymétrique, cela correspond exactement à la non interférence non déterministe forte de [GM82], tandis que le cas symétrique est appelé propriété de sécurité parfaite dans [A ˇCZ06].