PFE mohamed

  • Published on
    29-Jun-2015

  • View
    1.064

  • Download
    3

Embed Size (px)

Transcript

<p>UNIVERSIT MOHAMED VDpartement de Mathmatique et Informatique Facult de Sciences Rabat-Agdal</p> <p>Pour lobtention dune Licence d'tudes Fondamentales -Sciences Mathmatiques et Informatique</p> <p>Sous le thme :</p> <p>Les cartes puce sous la technologie Java cardRalis par :Ibrahim Madi MOHAMED Mezzour TARIQ</p> <p>Les membres du Jury Mr El Mamoun SOUIDI Professeur de l'Enseignement Suprieur facult de Science Rabat (Encadrant) Mr Said EL HAJJI Professeur de l'Enseignement Suprieur facult de Science Rabat Mlle G. ORHANOU Professeur de l'Enseignement Suprieur facult de Science Rabat</p> <p>2008-2009</p> <p>1</p> <p>Nous tenons remercier tout d'abord notre encadrant qui nous a accompagn de prs durant tout ce travail Mr E.M Souidi pour sa disponibilit, sa confiance qu'il a su nous accorder, sa patience qu'il a su exercer notre gard et les prcieux conseils qui nous a prodigus tout au long de ce modeste projet. Nous adressons galement nos remerciements aux membres de jury qui nous ont honor en acceptant de lire et corrig notre projet. Enfin, je profite cette occasion pour prsenter mes vifs remerciements mes parents, sans eux je ne serai plus ici aujourdhui. Je pense en particulier mon pre et ma mre, qui nont mnag aucun effort pour que je puisse tre ici ce moment. Ma tante Hassanati Mkouboi qui ma offert mon premier ordinateur, mon petit frre Youssouf qui ma beaucoup aid sur mes tudes et mon inoubliable amie Mlle BIRRATI Halidi, qui ma encourag, soutenu et beaucoup conseils. En fin, je dsire galement exprimer mes vifs remerciements tout ceux qui ont contribu de prs ou de loin la ralisation de ce travail.</p> <p>2</p> <p>Cest potique :</p> <p> Je suis trs mue de vous dire que jai bien compris lautre jour que vous avez toujours une envie folle de me faire danser. Je garde un souvenir de votre baiser et je voudrais que ce soit l une preuve que je puisse tre aime par vous. Je suis prte vous montrer mon affection toute dsintresse et sans calcul. Si vous voulez me voir ainsi dvoiler, sans aucun artifice, mon me toute nue, daignez donc me faire une visite et nous causerons en ami et en chemin. Je vous prouverai que je suis la femme sincre, capable de vous offrir laffection la plus profonde et la plus troite amiti, en un mot, la meilleure amie que vous puissiez rver. Puisque votre me est libre alors que labandon o je vis est bien long, bien dur et bien souvent pnible ; ami trs cher, jai le cur gros ; accourez vite et venez me le faire oublier. A lamour je veux me soumettre. Ce quoi, Alfred de Musset brillant stganographe rpondit : Quand je vous jure, hlas, un ternel hommage. Voulez-vous quun instant je change de langage. Que ne puis-je avec vous, goter le vrai bonheur. Je vous aime, ma belle, et ma plume en dlire couche sur le papier ce que je nose dire avec soin de mes vers, lisez le premier mot vous saurez quel remde apporter mes maux. George Sand rpondit videmment : Cette grande faveur que votre ardeur rclame, nuit peut-tre lhonneur mais rpond ma flamme</p> <p>3</p> <p>Le thme du projet est sur les carte a puce avec la technologie Java Card. Cette technologie consiste au Dveloppement et la mise en place d'applet sur des cartes Puces intelligentes, les "Smart Cards ". Ces applets sont dveloppes avec une sous partie du langage Java. Vous trouverez tout d'abord un tat de l'art de la technologie ainsi qu'une prsentation de tous les aspects qui sont ncessaires pour comprendre et dvelopper des applications pour cette technologie. Ensuite on va dvelopper un tutorial dcrivant les cartes puce, expliquera galement la technologie Java Card ainsi que la scurit de la carte puce. Enfin la dernire partie traitera d'un exemple d'application pour comprendre concrtement les tapes de ralisation d'une application java card dans une carte puce. C'est une occasion pour nous de se familiariser d'environnement tel que Eclipse Netbeans, Java Card et Latex avec beaucoup</p> <p>The project subject is on te smart card with Java Card technology. This technology is the development and implementation applet on smart card chips, the "Smart Cards". These applets are developed with a sub part of the Java language. You first find the state of the art smart card and the technology as well as a presentation of all aspects that are necessary to understand and develop applications with this technology. Then we will develop a tutorial describing the smart card will also explain the Java Card technology and the security of the smart card. The last part deals with a sample application to understand the practical steps for the realization of an application in a Java Card smart card. For as, it's a occasion to see lot of environment : Eclipse Netbeans, Java Card et Latex</p> <p>4</p> <p>Introduction.La carte puce peut tre peru comme un support lectronique de haute technologie permettant dintgrer des applications des applications dintgrit et de confidentialit dans des systmes dinformation. La carte puce est invente part Roland Moreno en 1974, mais cest une ide allemande. Son succs remarquable, le doit plus sur le domaine de tlcarte. La carte puce jouit des avantages considrables tout dabord par sa taille qui lui permet daffronter les tests de torsion sans tre dtriore. Puis par le fait que tout est rassembl au mme endroit. Part sa conception, la carte puce apparat comme lment hautement scuris dun systme pouvant garder et protger des secrets. La carte puce propose des nouvelles fonctionnalits tout en gardant ses qualits qui on fait sa rputation, un objet portable, personnalis et scuris. Elle est devenue une plate forme dexcution part entire. Les cartes multi applicatives capable dabriter plusieurs applications font leur apparution. Ces cartes deviennent un support gnrique permettant dembarquer plusieurs applications potentiellement communicantes, en fournissant une fournissant une plate forme dexcution dapplication utilisant des technologies objet lintrieur de la carte. Avec plus dun milliard dunits fabriques par an, la carte puce est un outil important de nos jours. On les rencontre plus particulirement dans les domaines suivants : Montique : Carte bancaire, porte monnaie. Identification : Carte didentit nationale (ex : Comores), E-passeport (Comores). Enseignement : Carte dtudiant. Tlphonie mobile : Carte SIM. Secteur mdical : Carte Vitale (en France), carte SIS (en Belgique). Titre de transport : Passe Navigo ( Paris), Oyster ( Londres). Scurit informatique (authentification forte et signature lectronique). Dans ce cas la carte contient un crypto-processeur pour la gnration des cls et le stockage de la cl prive.</p> <p>5</p> <p>I- La Carte puce.Une carte puce est un carte plastique dote dau moins un circuit intgr ou "puce" capable de contenir de linformation. Ce circuit intgr peut se limiter des circuits de mmoire non volatile ou bien comporter un microprocesseur capable de traiter cette information. Son utilisation ncessite un quipement spcialis qui sont les lecteurs de la carte cette lecture peut seffectuer avec ou sans contact avec la puce.</p> <p>1. Chronologie et historique de la carte puce.Presque plus de trois dcennies que le premier prototype de carte puce a t conu et pourtant elle est toujours aussi mconnue car volontairement entoure par ses fabricants de beaucoup de secrets. Mme la paternit de son invention est de discussion et ainsi suivant le pays son inventeur change. Le bref historique ciaprs est celui qui semble nanmoins le plus universellement admis. En 1968 : Deux Allemand J.Dethloff et H.Grotrupp introduise un circuit intgr dans la carte plastique. En 1970 : K.Arimuva au japon dpose un brevet sur la carte puce. En 1974/78: Roland Moreno, le pre de la carte puce dpose 47 brevets dans 11 pays. En 1978 : Dpt du brevet SPOM pour la dtermination dune architecture ncessaire au fonctionnement auto programmable la puce. Une technologie qui permet au microprocesseur de modifier son comportement sil y a une alerte, au pire sa destruction. En 1979 : La sortie de la premire carte intelligente munie dune mmoire et dun microprocesseur (Motorola). Cration de la carte mmoire et system (Schulemberger). En 1983 : Premier carte tlphonique mmoire. En 1984 : Adoption de la "carte bleu" (Sur un prototype Bull-CP8). Actuellement on est version 'Bo'. En 1984-87 : Normalisation sous la rfrence ISO 7816. En 1997 : Apparition du premier java carde.6</p> <p>2. Les types des cartes puce.On distingue deux grandes familles de type de carte. Les cartes avec contact et les cartes sans contact.</p> <p>Table 2.1 _ ceci rsume les diffrentes types de carte puce</p> <p>2.1. Les cartes avec contact.Ce type de carte communique via un microcontact reli la puce (microchip) par des fils dor. Cet assemblage se nomme micromodule. Les cartes contact doivent tre insres dans un appareil et dans un sens particulier (Exemple : les cartes bancaires). On distingue microprocesseur. les cartes mmoire et les cartes </p> <p>Table 2.2 _ Le micromodule1</p> <p>1</p> <p>Source : Rapport de stage I4 Globalisation des rsultats dans les mesures de performance sur les plateformes Java Card ESIEE - Laboratoire Cdric</p> <p>7</p> <p>2.1. a. Les cartes mmoire. La carte mmoire na quune la mmoire et linterface dEntre/ Sortie, pas de processeur donc pas de systme dexploitation. Elles runissent sur un circuit intgr de la mmoire non volatile permettant de stocker quelques centaines de bits ainsi quun peu de logique pour effectuer les oprations de Lecture/ Ecriture et excuter les algorithmes dauthentification rudimentaire. Leurs fonctionnalits sont limites. On distingue deux sortes de carte mmoire. Les cartes mmoire simple et les cartes mmoire logique cble. La plus part de leur caractristiques sont communes. Sur les cartes mmoire simple, les seules possibilit sont le Lecture/ Ecriture en mmoire. Les cartes mmoire logique cbl, laccs peut tre restreint avec un PIN. Exemple : la carte tlphonique qui contient un compteur dunit, un numro de srie et une donne secrte permettant dauthentifier la carte. Les donnes dj prsentes sont traites par des fonctions simples programmes sur la puce, le circuit ayant un nombre limit de fonction qui ne peut tre reprogramms. Les cartes mmoire ne peuvent pas tre rutilises et sont donc jets la fin de leur utilisation. Les contactes et linterface lectrique ne sont pas normalis. Leur faiblesse sur la standardisation dans ce domaine rend compliquer lidentification lors de linsertion dans un lecteur. Ce dernier travaille par essaie/ erreur. Essaye diffrent protocole jusqu obtenir une rponse, ce qui fait que son cot est trs faible. 2.1. b. Les cartes microprocesseur. Elle contient une puce, ce dernier fait lobjet dun brevet SPOM intgr dans une seule puce de silicium, et constitue un micro-calculateur. Une fois connecte son lecteur, cest un vritable ordinateur dmuni dun clavier et dcran. Elle fonctionne sous le contrle dun systme dexploitation inclus dans la puce. Ces puces possdent galement un coprocesseur cryptographique qui ralise les oprations de chiffrement et dchiffrement de manire cble amliorant ainsi grandement les performances. Ce coprocesseur cryptographique est associ un gnrateur de nombres alatoires RNG (Random Number Generator).</p> <p>8</p> <p>Le microprocesseur prsent sur les cartes puce et le plus souvent un microprocesseur 8-16-32 bits. Certaines cartes permettent de multiplier mme la vitesse dhorloge par 2-4-8 atteignant une vitesse dhorloge de 40 Mhz. Les cartes puce comporte trois sorte de mmoire : ROM, EEPROM et RAM. Le ROM (Read Only Memory) : Mmoire persistante, il est utilis pour stocker les programmes fixes de la carte, les routines du microprocesseur et de donne permanentes. On ne peut ainsi ni les modifier, ni les supprimer. Aucune alimentation nest ncessaire pour conserver les donnes. LEEPROM (Electrical Erasable Programmable Read Only Memory) : Comme le ROM, il peut conserver les donnes quand la mmoire nest plus alimente. La diffrence et que lon peut modifier les donnes stock en mmoire. En fait cest lquivalent du disque dur (H.D.D du PC) pour les cartes puce. La RAM (Random Access Memory) : Mmoire volatile, elle est utilise comme espace temporaire pour modifier et stoker les donnes. Son contenu nest pas prserv larrt de lalimentation. Dautre technologie de mmoire sont galement en train dapparatre sur les cartes puce comme la mmoire Flash. Celle-ci est en effet plus efficace en espace et en temps que le EEPROM.</p> <p>2.2. Les cartes sans contacte.Les cartes sans contacte, elles nont pas besoin dtre places dans une machine. Elles communiquent avec lextrieur grce une antenne interne relie au micro-chip. Lnergie peut tre fourni par une batterie interne ou capte par lantenne. Elles transmettent alors leurs donnes un appareil par onde lectromagntique. Ces cartes sont donc trs populaires dans des situations ncessitant des transactions rapides (Exemple : carte pour satellite). Bien sr, que ces cartes posent aussi quelques problmes. Par exemple, la distance de communication entre la borne de lecture et la carte est limite (environ 10 cm). Un autre problme est que la carte est souvent en mouvement rapide dans lespace dchange et que le temps pour raliser la transaction est de lordre de 200 ms ce qui limite la taille des donnes change. Par ailleurs, ces cartes sont beaucoup plus chres que les cartes contact. Elles sont surtout utilises pour les applications o linsertion et le retrait dans un lecteur ne sont pas pratiques.</p> <p>9</p> <p>Dans la suite de ce travail, on traitera spcifiquement des cartes contact, mme si la plupart des concepts sont transportables directement aux cartes sans contact.</p> <p>3. Caractristique physique des cartes puce.Le plus important standard dfinissant les caractristiques des cartes puce qui fonctionne avec un contact lectrique est le ISO 7816. On note 4/15 normes pour les cartes puce. LISO 7816-1 : Elle dfinit les caractres physiques des cartes puce La gomtrie : Mme si on connat en gnral deux formats de la carte puce. Celui de la carte bancaire et celle de SIM. La rsistance : Les cartes dois tre opaque au rayon UV et X, rsist aux dtrioration de sa surface et protger le puce lors de manipulation du stockage lors dutilisation normale. Elle ne doit pas tre endommage par un champ magntique statique. LISO 7816-2 : Elle dfinit les aspects lectriques et la situation des contacts sur la carte. Elle spcifie les dimensions physiques (extrieur) des contacts de la puce. Elle distingue huit diffrents contacts, dont deux est rgie par une autre norme ISO, qui est le 7816-12, utilis pour lUSB. VCC : Tension dalimentation positive de la carte fournie par le lecteur. La tension varie entre 3-5 voltes. RST : Cest le Reset initialise le microprocesseur et rtablissement de lalimentation. CLK : Horloge fourni la carte par le lecteur. GND : Masse lectrique de la carte, sa tenson est zro. VPP : Tension de programmation de la carte fournie par le lecteur, cette option nest plus utilis actuellement. I/O : utilis pour le transfre des donnes et des commandes entre la carte et le lecteur en mode semi-duplexe...</p>