Title: Tra
1Traçage des traîtres fondé sur des couplages
ENST 12/04/07
2Plan
- Diffusion de données chiffrées avec traçage des
traîtres - Courbes elliptiques et couplages en cryptographie
- Une attaque sur le schéma de traçage des traîtres
TSZ - (Eurocrypt05-avec Chabanne et Pointcheval)
- Schéma de traçage des traîtres basé sur
lidentité - (PKC07- avec Abdalla, Dent, Malone-Lee, Neven et
Smart)
3Diffusion de données chiffréesavec traçage des
traîtres
4Chiffrement vs. Diffusion de données chiffrées
Alice
Alice
Chiffrement à clé publique
Centre
Diffusion de données chiffrées
5Sécurité d'un schéma de diffusion de données
chiffrées
- Un bon chiffrement est nécessaire mais
insuffisant ! - Problème si Bob donne sa clé à Eve, Eve pourra
utiliser gratuitement les services du centre - Le but du centre décourager les usagers
légitimes de révéler des informations secrètes
6Décodeur pirate vs. Traçage des traîtres
- Un (ou plusieurs usagers) extrai(en)t des clés,
puis les utilise(nt) pour fabriquer un décodeur
pirate - Le but du centre à partir dun décodeur pirate,
retrouver au moins un des usagers malhonnêtes (un
des traîtres)
un schéma de traçage des traîtres (un
schéma de diffusion de données chiffrées
une procédure de traçage des traîtres)
7Traçage des traîtres basé sur lidentité
8Chiffrement basé sur lidentitéShamir84,
Boneh-Franklin01
- Le chiffrement à clé publique, où la clé publique
est l'identité du destinataire (qui peut être une
suite arbitraire de bits)
Alice
clé ?
- Inconvénient les clés secrètes doivent être
fournies par une autorité (PKG).
PKG
9Diffusion de données chiffrées basée sur
lidentité
PKG
Groupe 1 maths
Groupe 2 info
Bob
Alice
Groupe 3 éco
Charlie
10Diffusion de données chiffrées basée sur
lidentité
- Question est-ce un vrai inconvénient que les
clés secrètes doivent être fournies par une
autorité (PKG) ?
Non, même dans le cas classique cest le centre
qui génère des clés dusagers
11Modèle de sécurité
T coalition de traîtres
Challengeur
Pirate
A
Setup
KeyGen
, dID2 id2 , , dIDm idm
(ID, D)
S
12Couplages sur les courbes elliptiques en
cryptographie
13Hypothèses cryptographiques
- RSA
- La factorisation de est
difficile. - ElGamal dans un groupe cyclique
- (ou sur un sous-groupe cyclique de )
- DLP le logarithme discret dans un groupe
cyclique est difficile - Etant donné g, ga. Retourner a.
- CDH le problème Diffie-Hellman calculatoire est
difficile - Etant donné g, ga , gb. Retourner gab.
-
14Méthodes sous-exponentielles pour la
factorisation et le log discret dans Zn
- Log discret calcul d'indice (Index-calculus)
- Factorisation crible quadratique (Quadratic
Sieve), crible algébrique (Number Field Sieve) - Ces méthodes utilisent la notion de nombre
B-lisse et un test pour vérifier si un nombre est
B-lisse (i.e. ses facteurs sont tous inférieurs à
B). - Complexité Ln(1/3,2) , où
15Taille de la clé
Taille de la clé RSA ou Diffie-Hellman (bits)
Taille de la clé symétrique (bits)
1024
80
2048
112
3072
128
7680
192
15360
256
Source NIST Recommended Key Sizes
16Groupe des points sur une courbe elliptique
- En 1985, Neal Koblitz et Victor Miller ont
indépendamment proposé l'utilisation du groupe
des points sur une courbe elliptique
- Groupe des points sur une courbe elliptique il
n'y a pas encore de notion convenable d'élément
B-lisse avec un test efficace d'élément B-lisse
pour ce groupe
17Courbes elliptiques
- Courbe elliptique sur un corps
- y2 a1 xy a3y x3 a2x2a4xa6
- Si char( ) ? 2,3
- y2 x3 ax b
- Propriété importante on peut définir une
opération sur les points des courbes non
singulières ( 4a3 27b2 ? 0 ) telle quils
forment un groupe.
18Groupe des points sur une courbe elliptique
- Identité du groupe point à l'infini
- Il s'agit du point 0,1,0 en coordonnées
projectives - Y2 Z X3 aXZ2 bZ3
- la loi du groupe
- a une interprétation géométrique
- En tout cas
- s (yP - yQ) / (xP - xQ) si P ? Q
- s (3xP2 a) / 2yP si P Q
- xR s2 - xP - xQ
- yR -yP s(xP - xR)
- Lassociativité est bien vérifiée
O
19Log discret sur le groupe des points sur une
courbe elliptique
Complexité ( 2y opérations)
Taille de la clé ( x bits)
20Comparaison
Source NIST Recommended Key Sizes
21Couplage de Weil
- Courbe E sur un corps fini
-
- (le sous-groupe de points de n-torsion dans
) - Balasubramanian et Koblitz
- où k est le plus petit entier tel que n qk - 1
- Couplage de Weil
Skip
22Couplage de Weil un peu plus détail (1)
- Diviseur principale (diviseur associé à une
fonction rationnelle f sur E)
- Théorème
- (pour les courbes hyperelliptiques, il nexiste
pas cette isomorphisme et il faut donc travailler
directement sur )
23Couplage de Weil un peu plus détail (2)
- Etant donné P, Q? En, il existe des fonctions
fP , fQ - div(fP) nP nO, div(fQ) nQ nO
- Couplage de Weil
-
24Couplage de Weil propriétés
- 1. Bilinéarité ? P, Q ? En ,
- en(aP ,bQ ) en(P, Q)ab
- 2. en est alterné ? P,Q ? En, en(P, Q) en(Q,
P)-1. - 3. Non dégénérescence Si O ? P ? E n,
- il existe Q ? E n tel que en(P, Q) ? 1.
-
- G1 ltPgt, G2 ltQgt, GT lten(P,Q)gt ?
e G1 G2 ? GT
25Couplages en cryptographie
- e G1 G2 ? GT
- (G1, G2, GT sont considérés comme des groupes
multiplicatifs) - est
- Bilinéaire e(g1a, g2b) e(g1, g2)ab pour tout
a,b ?Zn , g1?G1 , g2 ? G2 - Non-dégénéré e(g1, g2) ? 1
- Calculable grâce à l'algorithme de Miller, les
couplages de Weil (et puis de Tate) sont
efficacement calculables (mais encore coûteux par
rapport aux exponentielles).
26Réduction MOV
e G1 G2 ? GT
- Réduction de lECDLP au DLP sur
- ECDLP(g1,g1a)
- DLP(e(g1,g2), e(g1a,g2))
- Conséquence il faut travailler sur des groupes
tels que est suffisamment grand.
27Pourquoi les couplages présente des avantages ?
Intuition
e G1 G2 ? GT
- Avantage il nous permet de résoudre un problème
analogue au problème de Diffie-Hellman - gT e(g1, g2).
- Etant donné g1a, g2b, on peut calculer
- gTa e(g1a, g2), gTb e(g1, g2b) et gTab
e(g1a, g2b) sans avoir besoin de connaître a,b - Exemple Joux 01 protocol déchange de clé de
trois parties
28Utilisation des couplages en cryptographie
- 1993 première utilisation réduction MOV du
ECDLP au DLP sur un corps fini - 2001 premier schéma pratique de chiffrement basé
sur lidentité Boneh-Franklin et
Sakai-Ohgishi-Kasahara - Depuis, plusieurs articles sur
- Chiffrement
- Signature Signature du group sans oracle
aléatoire - Diffusion de données chiffrées
-
29Attaque sur le schéma TSZ
30Schéma TSZ To, Safavi-Naini, Zhang03(le cas de
1-traitor tracing)
- Couplage ê G1 G1 ? GT.
- g1, g2 sont deux générateurs de G1 (dordre q
premier). - gT ê(g1, g2) est une générateur de GT
- f(x) x a0 sur Fq
- Clé secrète du centre g1, a0.
- Clé publique (gT, g2, g2 g2a0)
- Clé de u Ku g11/f(u)
- gT ê(Ku, g2 (ua0)) ê(Ku, g2) ê(Kuu, g2)
- Chiffrement C (M.gTr, g2r , g2r), pour r ?R
Zq - Déchiffrement gTr ê(Ku, g2r) ê(Kuu, g2r).
31Décodeur pirate anonyme
- Utilisateur u randomiser (Ku, Kuu)
- X0 Ku g2 z0 , pour z0 ?R Zq
- X1 Kuu (g2)-z0
- Un décodeur pirate (X0,X1)
- gr ê(X0, g2r) ê(X1, g2r)
- Pourquoi ce décodeur pirate nest pas traçable?
- (X0, X1) peut être défini dune façon
indépendante de u - X0 est aléatoirement choisi dans G1
- X1 g1 (X0 a0 )-1
32Traçage des traîtres basé sur lidentité
33Chiffrement basé sur lidentité de Waters
e G1 G2 ? GT
- G1, G2, GT dordre q
- Clé secrète ? ? Zq
- Clé publique g ?G1, g1g? , g2 ?G2,
- Un vecteur publique U ( u0, u1, un) ? G2n1
- Pour ID ? 0,1n
- ("j ? ID" si IDj 1)
- Exemple H(ID 01101) u0u2u3u5
34Chiffrement
- Génération de la clé pour ID
- Lutilisateur ID peut calculer
35Chiffrement à 2 niveaux
ID
Lidentité dun utilisateur est ID id
id
- Deux vecteurs U ( u0, u1, un) ? G2n1 et V
( v0, v1, vn) ? G2n1
- Génération de la clé pour ID id
36Diffusion basé sur lidentité
ID
- Chiffrement basé sur ID (identité du groupe) -
Tous les IDid avec id id1,,idN peuvent faire
le déchiffrement
idN
id1
id2
- Méthode naïve combiner tous les chiffrés
On peut calculer
37Problème principal que peut faire le traceur?
- Idée jouer sur une partie du chiffré
- Considérer un membre id
- Si idj 0, remplacer vtj par un aléa n'affecte
pas id - En effet H2(id)t ne dépend pas de vtj
- Si idj 1, remplacer vtj par un aléa rend
H2(id)t aléatoire et donc id recevra un clair
randomisé
38Coalition dutilisateurs (1)
- Considérer une coalition T id1, , idc
- Lemme 1 si idik 0, pour tout i 1,,c,
- T ne peut pas distinguer entre
- et
- où (vk)t est remplacé par un aléa R,
- sous lhypothèse que le problème Diffie-Hellman
décisionnel dans le groupe G2 est difficile
39Coalition dutilisateurs (2)
- Considérer une coalition T id1, , idc
- Lemme 2 si idik 1, pour tout i 1,,c
- le déchiffrement de T sur
- est différent de M,
- sous lhypothèse que le problème Diffie-Hellman
bilinéaire est difficile
40Procédure de traçage
- Pour chaque j 0,,n remplacer vtj par un aléa
- Si le décodeur déchiffre correctement, mettre
wj 0 - Si le décodeur déchiffre incorrectement ou refuse
de déchiffrer, mettre wj 1
Exemple
Codes résistants aux collusions Boneh-Shaw95 Si
c1,c2,c3 sont des mots dun code résistant aux
collusions Alors, à partir de w, on peut tracer
un des c1,c2,c3.
w 0 1 1 0 0 1 1 0. c1 0 1 1 0 c2
1 0 c3 0 1 0
Collusion
41Traçage des traîtres basé sur l'identité
Chiffrement
- Etant donné un code résistant aux collusions C(c,
N, ?) de longueur - Génération de la clé pour lutilisateur k du
groupe ID (ID k) - k est associé d'un mot ck (choisi aléatoirement)
du code C - La clé de lID k est
- Chiffré diffusé pour le groupe ID
- Théorème si une coalition de c utilisateurs
arrive à produire un décodeur pirate intraçable,
on peut donc casser la procédure de traçage pour
le code C.
42Discussion efficacité du schéma
- La taille du code
- Le code est long, les paramètres sont donc
grands. - Les couplages utilisés sont des couplages
asymétriques. - Le schéma ne supporte pas la traçabilité publique.
43Conclusion
- Couplages sur des courbes elliptiques en
cryptographie - Premier schéma de traçage des traîtres basé sur
l'identité - des couplages
- des codes résistants aux collusions
- Pistes damélioration
- dautres types de codes
- traçabilité publique