La clé du monde numérique

Dossier : Carte à pucesMagazine N°637 Septembre 2008
Par Philippe GEYRES (70)

Une carte à puce en 2008

Une carte à puce a aujourd’­hui un micro­pro­ces­seur aus­si puis­sant que celui d’un ordi­na­teur de 1990, com­mu­nique avec USB2.0 et sa mémoire embar­quée se compte en giga­oc­tets. Elle peut ain­si conte­nir 500 fichiers MP3 ou JPEG, quelques DIVX, ou même

La clé du monde numérique

Cette carte à puce est la clé du monde numé­rique. Citons, par exemple, la clé d’ac­cès à la télé­vi­sion, hier dans un déco­deur de salon aujourd’­hui dans un mobile, la clé d’ac­cès à des ser­vices de voix sur IP (télé­pho­nie via Inter­net) avec une clé USB iden­tique à une carte SIM per­met­tant de retrou­ver le car­net d’a­dresses de son por­table sur un ordi­na­teur. La conver­gence numé­rique, c’est la dis­po­ni­bi­li­té de tous les ser­vices sur un même outil – PC, télé­phone mobile ou voi­ture. Déjà, un titre de trans­port peut être télé­char­gé dans la carte SIM d’un télé­phone mobile. Celui-ci avec NFC (Near Field Com­mu­ni­ca­tion) va com­mu­ni­quer en mode sans contact avec les ter­mi­naux de contrôle d’ac­cès. Là encore, la carte SIM est l’i­den­ti­té numé­rique de l’abonné. 

La nouvelle identité électronique

Décli­ner son iden­ti­té et, au nom de celle-ci, se voir recon­naitre cer­tains droits par un tiers est néces­saire dans une socié­té orga­ni­sée. L’i­den­ti­té est aujourd’­hui élec­tro­nique. Le pas­se­port élec­tro­nique embarque une carte à puce dans sa cou­ver­ture. La Bel­gique a été le pion­nier en Europe, la régle­men­ta­tion amé­ri­caine après le 11 sep­tembre a accé­lé­ré son adop­tion par­tout dans le monde. Le déve­lop­pe­ment d’In­ter­net a ren­du plus pré­gnant le besoin d’i­den­ti­fi­ca­tion élec­tro­nique, mais a éga­le­ment vu émer­ger le vol ou l’u­sur­pa­tion d’i­den­ti­té. Aujourd’­hui la plu­part des iden­ti­fi­ca­tions requises pour accé­der à des cyber­ser­vices reposent sur des numé­ros d’i­den­ti­fi­ca­tion asso­ciés à des mots de passe, avec un niveau de sécu­ri­té très insuffisant.

Le cryp­to­sys­tème RSA est l’algorithme le plus employé dans le monde pour les chif­fre­ments et signa­tures électroniques
Pour cacher l’information conte­nue dans un mes­sage m, cela consiste à effec­tuer le cal­cul y = me modu­lo ne et n sont des para­mètres publics. Pour retrou­ver m à par­tir de y, il faut être capable d’inverser l’exponentiation modu­laire, ce qui revient à trou­ver un élé­ment d tel que e d = 1 mod n. Ce cal­cul est répu­té être très dif­fi­cile si l’on ne sait pas décom­po­ser n en un pro­duit de plus petits nombres et devient facile (via un algo­rithme dû à Euclide) dans le cas contraire. Mal­gré son éton­nante sim­pli­ci­té, l’algorithme RSA a depuis qua­rante ans résis­té avec suc­cès aux attaques des mathé­ma­ti­ciens du monde entier.

Même si l’algorithme RSA est très résis­tant aux cryp­toa­na­lyses théo­riques, sa mise en oeuvre (comme celle de n’importe quel autre algo­rithme) peut être faci­le­ment atta­quée si elle a été faite sans pré­cau­tions par­ti­cu­lières. Le but de l’attaquant va être de retrou­ver la valeur secrète d sto­ckée dans la carte, par exemple en la per­tur­bant avec un laser qui génère à la sur­face de la puce un cou­rant pho­to­élec­trique et donc « injecte des fautes » pour chan­ger des bits en mémoire ou les états de portes logiques.

Le RSA est sou­vent mis en oeuvre en uti­li­sant l’astuce d’Henri Gar­ner et le théo­rème dit des restes chi­nois qui per­met de divi­ser par 4 le temps d’exécution. Notons p et q deux nombres pre­miers tels que n = pq, le mode de cal­cul RSA dit CRT per­met d’obtenir la signa­ture y = md mod n en cal­cu­lant tout d’abord Sp = md mod p et Sq = md mod q puis à appli­quer la recom­bi­nai­son de Gar­ner pour fina­le­ment obte­nir y = ((Sp-Sq) q-1 mod p)*q + Sq. Nous pou­vons alors remar­quer que l’on a y = a Sp + b Sqa § 1 mod p, a § 0 mod q, b § 0 mod p et b § 1 mod q. S’il per­turbe par exemple le cal­cul de Sp, un atta­quant va obte­nir une signa­ture erro­née y’ qui sera égale à a Sp’ + b Sq, où Sp’ désigne le résul­tat de cal­cul erro­né de Sp. En sous­trayant y à y’, l’attaquant va obte­nir la valeur a(y’ – y). Or, cette valeur est un mul­tiple du para­mètre secret q et l’attaquant peut donc retrou­ver la valeur de ce para­mètre en cal­cu­lant le plus petit divi­seur com­mun entre le n = pq et y’-y.

Le déve­lop­pe­ment des ser­vices de télé­pho­nie mobile exige une sécu­ri­té accrue
Uti­li­ser son télé­phone mobile pour des appli­ca­tions autres que la télé­pho­nie, et en par­ti­cu­lier le paie­ment sans contact, impose de nou­velles exi­gences sécuritaires.
La coexis­tence d’ap­pli­ca­tions four­nies par dif­fé­rentes socié­tés, telles que banques, opé­ra­teurs de trans­ports ou chaînes de maga­sins, demande des silos indé­pen­dants et sécu­ri­sés dans une carte SIM.
L’ac­ti­va­tion des droits aux ser­vices et la ges­tion des cartes SIM se font par le réseau (OTA, Over the Air), avec des pla­te­formes sécu­ri­sées. C’est le concept de TSM » Trus­ted Ser­vice Mana­ge­ment « , véri­table auto­ri­té de confiance entre les opé­ra­teurs de télé­pho­nie, les four­nis­seurs de ser­vices et les usagers.

Une carte à puce sous la forme d’une clé USB comme Webs­tick ? d’O­ber­thur allie les moyens cryp­to­gra­phiques d’une carte à puce, à la faci­li­té d’u­ti­li­sa­tion d’une clé USB. Il suf­fit d’in­sé­rer cette clé dans un PC, pour ouvrir un accès sécu­ri­sé aux ser­vices de banque en ligne, par exemple, authen­ti­fiant son por­teur grâce au code PIN asso­cié ou à la recon­nais­sance d’une empreinte digi­tale. L’au­then­ti­fi­ca­tion d’une iden­ti­té numé­rique uti­lise des algo­rithmes de cryp­to­gra­phie com­plexes comme RSA (du nom de ses trois inven­teurs, en 1977, Rivest, Sha­mir et Adle­man) ou les courbes ellip­tiques (ECC). Actuel­le­ment, la cryp­to­gra­phie ECC tend à s’im­po­ser par ses per­for­mances bien meilleures que le RSA à mesure que la résis­tance cryp­to­gra­phique requise aug­mente. Le pas­se­port bio­mé­trique de seconde géné­ra­tion, inter­opé­rable au niveau euro­péen, uti­li­se­ra l’ECC, sur lequel l’in­dus­trie de la carte à puce tra­vaille depuis plus de dix ans.

Une course inces­sante entre l’arme et la cuirasse

La sécu­ri­té des sys­tèmes et des pro­to­coles a his­to­ri­que­ment été pen­sée pour pro­té­ger les com­mu­ni­ca­tions d’un uti­li­sa­teur pla­cé dans un envi­ron­ne­ment hos­tile. Le monde numé­rique a fon­da­men­ta­le­ment modi­fié cette hypo­thèse. Aujourd’­hui la sécu­ri­té d’un sys­tème ne peut repo­ser sur l’hon­nê­te­té sup­po­sée de ces utilisateurs.

Sécu­ri­ser les com­mu­ni­ca­tions de façon fiable et éco­no­mique pour un usage par le grand public a long­temps été un défi jus­qu’à l’ap­pa­ri­tion des pre­mières cartes à puce : une par­tie de la mémoire d’une carte peut en effet être pro­té­gée par des méca­nismes hard­ware très effi­caces (appe­lés inhi­bi­teurs). Une telle pro­tec­tion n’existe géné­ra­le­ment pas pour les mémoires des ordinateurs.

Dans les années quatre-vingt-dix, des équipes de cher­cheurs ont éla­bo­ré de nou­veaux types d’at­taques ne consis­tant plus à accé­der direc­te­ment aux don­nées sen­sibles mais à ana­ly­ser leurs mani­pu­la­tions par la carte. Ces attaques reposent sur le constat que le com­por­te­ment d’un sys­tème embar­qué est très for­te­ment dépen­dant des valeurs des don­nées qu’il mani­pule. Les échanges d’in­for­ma­tion entre une carte à puce et l’ex­té­rieur peuvent être déce­lés, par exemple, par la consom­ma­tion d’éner­gie de la carte, son rayon­ne­ment élec­tro­ma­gné­tique, son temps d’ac­ti­vi­té ou son rayon­ne­ment calo­ri­fique. En obser­vant le temps ou l’éner­gie néces­saire à un cal­cul, il est pos­sible d’en déduire les opé­randes. Sup­po­sons qu’une carte à puce ait à effec­tuer le pro­duit entre une don­née publique x et une don­née secrète y. Le temps néces­saire au cal­cul x*y est très dif­fé­rent selon que y est nul ou non, la plu­part des micro­pro­ces­seurs incluant des méca­nismes d’op­ti­mi­sa­tion. Un atta­quant peut retrou­ver un peu d’in­for­ma­tion sur y. Depuis leur intro­duc­tion, les attaques par ana­lyse de canaux cachés ain­si que les méca­nismes mis en place pour les contrer ont for­te­ment évo­lué. Les attaques actuelles recourent à des ana­lyses sta­tis­tiques ou de trai­te­ment du signal tan­dis que les contre-mesures modi­fient les algo­rithmes. L’é­tude de la sécu­ri­té embar­quée est ain­si au car­re­four de domaines scien­ti­fiques divers comme l’al­gèbre, l’a­na­lyse sta­tis­tique, le trai­te­ment du signal, la théo­rie de l’in­for­ma­tion, l’élec­tro­nique, l’informatique.

Il existe une autre grande famille d’at­taques, dites par injec­tion de fautes ou par per­tur­ba­tion, qui essaient de mettre le sys­tème ciblé dans un état anor­mal de fonc­tion­ne­ment. Elles consistent, par exemple, à faire en sorte que cer­taines par­ties d’un code ne soient pas exé­cu­tées ou que cer­taines opé­ra­tions soient rem­pla­cées par d’autres. La carte à puce pour­rait alors se retrou­ver à agir contre son inté­rêt, par exemple en ren­voyant des don­nées sen­sibles comme des clefs de chiffrement.

Ces attaques ont en com­mun d’être des menaces de type externe. La carte à puce va essayer de les contrer comme on défend une place forte contre des enva­his­seurs. Tant que la carte à puce est res­tée un sys­tème fer­mé ne répon­dant qu’à un très petit nombre de requêtes et ne conte­nant que des appli­ca­tions vali­dées et cer­ti­fiées, ce modèle a été suf­fi­sant. Récem­ment, la carte à puce pour ses nou­veaux usages est deve­nue une plate-forme ouverte sur laquelle sont char­gées des appli­ca­tions ban­caires ou mul­ti­mé­dias par exemple. Notre place forte doit alors aus­si faire face à des menaces internes. De ce point de vue, cer­taines pro­blé­ma­tiques de sécu­ri­té de la carte à puce ont rejoint celles du domaine plus vaste de la sécu­ri­té des sys­tèmes et des réseaux.

REPÈRES
Ober­thur est le 2e acteur mon­dial de l’industrie de la carte à puce, avec 5 500 col­la­bo­ra­teurs, pré­sents dans 40 pays. 

Poster un commentaire