Title: Brevet et s
1Brevet et sécurité informatique les liaisons
dangereuses ?
- François Letellier
- INRIA / ObjectWeb
- francois.letellier_at_inria.fr
- Journées Académiques Microsoft
- Paris, 26 avril 2005
2Plan de la présentation
- Contexte
- Procédé dauthentification breveté
- Possibilités dattaque sur le procédé
- Apport du brevet à la sécurité
3- 1er centre de recherche publique en informatique
en Europe - double tutelle ministères en charge de la
recherche / en charge de l'industrie - 3000 personnes, 6 UR
- Consortium internationalgt 50 sociétés, gt1.500
individuels - Co-fondé, hébergé par lINRIA, FT RD, Bull
- Neutralité et but non lucratif création de
middleware - Large offre couvrant différents besoins de
lentreprise gt80 projets, 30 solutions - Conformité aux standards ouverts (W3C, OMG, OSGi,
)
4Algorithmes Cryptographiques Brevetés
- One Time Pad brevet US 1,310,719 (Gilbert
Vernam, 1917) - RSA brevet US 4,405,829 (Rivest, Shamir, and
Adleman)MIT sept 83 , domaine public sept.
2000(lecture conseillée http//www.cyberlaw.com/
rsa.html) - Europe rappel de la législation actuelle
- Et future ?
- Brevet européen EP 0 810 506 B1 Procédé et
dispositif didentification sécurisée entre deux
terminaux
5Notre sujet détude EP 0 810 506 B1
- Un brevet européen dûment délivré par lOffice
Européen des Brevets (23 avril 2003) - La présente étude a été réalisée exclusivement à
partir du document public - Brevet exploité commercialement notamment pour
de lauthentification forte en contexte bancaire
6EP 0 810 506 B1 une Invention Mise en Œuvre par
Ordinateur
Support personnalisé banal (CD, diskette)
Serveur banal
Client banal
Algorithme cryptographique
Canal de transmission banal
Utilisateur
0032 qui ne nécessite pas de modifier la
structure déjà existante des micro-ordinateurs
personnels utilisés et qui fait appel à un
support dauthentification connu 0034 aucun
matériel additionnel spécifique nest utile
0083 Diskette 3"1/4 -- 0073 Réseau Internet
Seul le logiciel est innovant ? nous étudions
(une version) de lalgorithme cryptographique
7Authentification parDéfi / Réponse
Je suis Bob
Défi Quel est le nom de jeune fille de votre
mère ?
Réponse Smith
Bob
Alice
Je suis Bob
Défi Nom de jeune fille de votre mère ?
Réponse Wilde
Oscar
- Fiabilité améliorée si
- Le défi (donc la réponse) change à chaque fois
- La réponse nest pas calculable secrets
aléatoires
? Non répudiation
8Mécanisme Défi / Réponse deEP 0 810 506 B1
Préparation
Fonction de décalage
Transmission sécurisée
Matrice serveur (aléatoire)
Matrice client (décalée)
Etape préparatoire Transmission des secrets
Transmission sécurisée
Utilisateur
9Mécanisme Défi / Réponse deEP 0 810 506 B1
Authentification
Défi (x0, y2)
Fonction de décalage
Bob
Coordonnées décalées (X3, Y0)
Matrice serveur
Alice
Réponse N
?
Matrice client
Authentification ou rejet
10Fonction de décalage0058, 0133
2
0
3
2
2
G
A
X
B
0
F
O
M
T
3
A
S
N
U
2
Décalage paramétrique colonne
E
K
Q
X
Décalage paramétrique ligne
11Apport du brevet EP 0 810 506 B1
- Recommandation matrices 255x255 cars alpha-num,
codes de 7 à 20 cars alpha-num, un défi
plusieurs couples de coordonnées - Selon le texte du brevet
- 0053 le code de décalage nexiste ni sur le
support dauthentification, ni sur le serveur, et
ne transite jamais sur le réseau - 0143 les conditions nécessaires à un pirate
pour se connecter au serveur en usurpant
lidentité dun utilisateur autorisé sont
tellement démesurées que le risque sapproche de
zéro
12Système dauthentification bancaire sécurisé
La matrice utilisateur ne nécessite pas dêtre
protégée car elle est décalée
Le code nest écrit nulle part
La matrice serveur est dans un environnement
protégé
Réseau Internet
Algorithme cryptographique
Bob
Le réseau nest pas sécurisé le code ne
transite jamais dessus, les défis ne sont pas
rejoués
Banque Alice
13Attaque de lalgorithme
?
- Oscar peut-il usurper lidentité de Bob ?
14Contraintes pour une authentification probante
- Pour tout défi, un seul (ou un petit nombre de)
code(s) doit permettre de fournir la bonne
réponse avec une matrice permutée donnée - La population de la matrice doit être homogène
- Plus la matrice est grande, plus les défis
doivent être long ( O (w2) ) - Une attaque est possible
- Après interception dun nombre suffisant de
défis/réponses - Force brute
15Attaque en force brute
- Fonction de décalage
- Code de longueur l c c 0.c 1.c 2 c
l - Matrice décalée M carrée dimension w
- Position défi colonne, ligne (x, y)
- Réponse V MX, Y
- Avec
- X (x c y mod l) mod w
- Y (y c X mod l) mod w
- Une dizaine dopérations darithmétique entière
pour chaque élément du défi - PC actuel 10.000 MIPS (?) entre 1M et 10M
codes/seconde codes jusquà 11 chiffres
décimaux en 1 journée
16Principe dune attaque heuristique
- Matrice décalée connue
- Défis interceptés (x0, y2) (1,2) (3,1) (3,0)
- Réponses interceptées N A T B
- On suppose connue la longueur du code (l3)
- Chaque couple défi / réponse élémentaire va
donner des hypothèses partielles sur le code
17Principe dune attaque heuristique (2)
- (x0, y2) -gt N
- N est en position (X3, Y0)
- 3 (0 c 2 mod 3) mod 4 c 2 mod 40 (2
c 3 mod 3) mod 4 (2 c 0) mod 4 - c 2 3c 0 2
X (x c y mod l) mod w Y (y c X mod l)
mod w
18Principe dune attaque heuristique (3)
- (x1, y2) -gt A
- A est en positions (X0, Y0) (X2, Y3)
- 0 (1 c 2 mod 3) mod 4 (1 c 2) mod 40
(2 c 0 mod 3) mod 4 (2 c 0) mod 4 - ou
- 2 (1 c 2 mod 3) mod 4 (1 c 2) mod 43
(2 c 2 mod 3) mod 4 (2 c 2) mod 4 - c 2 3, c 0 2 (on napprend rien)
- ou
- c 2 1
X (x c y mod l) mod w Y (y c X mod l)
mod w
19Principe dune attaque heuristique (4)
- (x3, y1) -gt T
- T est en position (X3, Y3)
- 3 (3 c 1 mod 3) mod 4 (3 c 1) mod 43
(1 c 3 mod 3) mod 4 (1 c 0) mod 4 - c 1 0, c 0 2
- Le code est 2 0 3
X (x c y mod l) mod w Y (y c X mod l)
mod w
20Attaque heuristique (5)
- Complexité de lattaque au pire de lordre de O
((w2/p)l/2) - Matrice 256 x 256, p256 val possibles / case
- Codes sur 4 positions x 8 bits (10 chiffres
déc.) - En moyenne, chaque position défi/réponse aboutit
à w2 / p hypothèses (ici 256) - Lattaque a été simulée avec un démonstrateur
moins dune minute (en PERL !) avec les
hypothèses ci-dessus
21EP 0 810 506 B1 en signature 0153
S A U N A
S A U N A
(2,1) (0,0) (1,2) (3,0) (2, 3)
Alice
Bob
- Codage par substitution
- Choix aléatoire des cases parmi celles contenant
les caractères du message à signer
22Attaques de EP 0 810 506 B1 en signature
- Sans vol de matrice décalée
- Attaque à texte clair choisi évidente
- On obtient directement une partie du contenu de
la matrice serveur - Attaque statistique à texte chiffré connu
- Possible avec corpus suffisant (épuisement de la
matrice) - Altérations possibles du texte signature
- Avec vol de matrice décalée
- Toute attaque réussi révèle de linformation sur
le code (cf défi / réponse)
23Peut-on améliorerEP 0 810 506 B1 ?
- Brûler les cases correspondant aux défis déjà
posés les modifier aléatoirement 0062 - Affaiblit la capacité à la non répudiation
- Choix des paramètres (?)
- Moyens non prévus dans le brevet
- Sécurisation du canal de transmission (SSL)
- Inscription de la matrice sur un support
impossible à lire sauf à travers un calculateur
(carte à puce) - Le brevet revendique de permettre de sen
dispenser - Ils rendent le recours au procédé breveté inutile
24Caution du brevet attention !
- Le brevet EP 0 810 506 B1 nest pas
inintéressant, mais il propose une méthode qui
nest pas suffisante à garantir les propriétés
revendiquées - Un système reposant sur ce brevet peut atteindre
un haut niveau de sécurité, mais à condition de
sappuyer sur dautres moyens de protection des
transmission et/ou des secrets - Les détenteurs des droits sur EP 0 810 506 B1
pourraient entraver lexploitation dune version
améliorée, ou tirer profit des perfectionnement
clefs apportés par dautres - La caution du brevet risque dendormir la
vigilance dexploitants dinventions mises en
œuvre par ordinateur - Quid déventuels litiges passés où la non
répudiation aurait été invoquée ?
25Brevet innovation ?
- Labsence de travaux antérieurs signifie-t-elle
invention, ou fausse bonne idée ? - Le nombre de brevets déposés est-elle une bonne
mesure de linnovation ? - Le processus de révision par lOEB na pas mis en
lumière les faiblesses du procédé - La révision paritaire (milieu de la recherche,
logiciel open-source), en particulier dans les
domaines sensibles, reste la seule option
raisonnable
26Quelles limites au champ du brevetable ?
- Esprit de la convention européenne sur le brevet
(art. 52c) qui exclut le logiciel du champ du
brevetable gt encourage la révision paritaire et
dissuade le brevetage de pseudo-science ? - Toute létude a été menée sans manipuler une
seule fois un appareil matériel (même si un
démonstrateur a été réalisé) ! - Un bon critère dappréciation du côté logiciel
dun brevet ?
27Merci pour votre attentionMerci à
MicrosoftQuestions ?
- François Letellier
- INRIA / ObjectWeb
- francois.letellier_at_inria.fr
- Journées Académiques Microsoft
- Paris, 26 avril 2005