Menu
Libération

Une question de bits.

Article réservé aux abonnés
publié le 10 mars 2000 à 22h57

Comment crypte-t-on une carte à puce? En lui programmant un code

secret, le même pour toutes les cartes, qui valide les quatre chiffres tapés par l'utilisateur. La cryptologie moderne emploie souvent le système RSA (du nom de ses inventeurs Rivest, Shamir et Adleman, en 1976), qui s'écrit avec des dizaines et des dizaines de chiffres. Pour «briser» un code (on dit aussi le «factoriser»), il faut le décomposer en ses parties élémentaires, à savoir les nombres premiers. Ainsi, le code des cartes bancaires comporte 96 chiffres, soit 320 bits (chiffres binaires): «C'est très facile à casser avec les logiciels actuels, estime Paul Zimmermann, mathématicien à l'Inria (Intitut de recherche en informatique et en automatique). En fait, ce code était parfaitement sûr jusqu'en 1980.» Depuis, des concours de factorisation (parrainés par la firme RSA) font régulièrement tomber les records; le dernier en date, accompli l'an dernier, a passé la barre des 155 chiffres (512 bits). C e qui, à l'époque où le RSA fut inventé, «relevait de la science-fiction».

Pour être à l'abri aujourd'hui, «il faut utiliser des clés beaucoup plus grandes, comprenant des centaines de chiffres», estime le mathématicien. Selon un fabriquant français de cartes à puce, les prochaines cartes pourront aller jusqu'à 2048 bits, ce qui assurerait une protection de plusieurs «centaines d'années». Paul Zimmermann, pour sa part, est moins optimiste: «D'après nos projections, un code à 2048 bits serait inviolable jusqu'en 20