Home
        Plus loin avec les cartes à puce
         Contents
1.                         lt  00 01 00 00 00 03    gt  9000  SW1 SW2   Use foo    gt  15 44 EF c pes    lt  00 09 00 00 06 02   Keyl   Challenge data  JO2 OB OC OD OE OF    lt  OA 0B OC OD OE OF C Key2      gt  9000   SW1 SW2  Certificate   94 FF Authenticate   gt  94 FF             El  MAD   marer    7  CardEasy BIEN 11 27             E HET EST  lel xj   View Help  Memory Card   ACOS1   Commands   About      Chip ID   rea    Card ID Area        29 D6 9D 41 OD             Counter 4096 a  Counter 512 Keys Verification x   Counter 64  Counter 8 Key name   Transport Code  3 bytes     Counter 1   AB CD EF  Control Area E Value  z  Aux  Data Area i    Authentication Ce Heg f Asci                dnthentir a    T New value  7 SIMS JE Change to the new value    94 FF   00 01 00 08 00 0l  9000  SW1 SW2Z    00   00 01 00 00 00 03  9000  SW1 SW2   15 44 EF   00 01 00 03 00 05  3000  SW1 SW2   29 D6 9D 41 0D                   VAT ANA    v                AD  maner   f CardEasy EA Paint Shop Pro   BIEN 11 29    72       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE       AUTOUR DES CARTES SYNCHRONES                                  W CardEasy  lelxi  View Help  Update  xi    Memory Card   ACOS1   Commands   About    l l a l l m Memory area to be updated i    a  i Start   oo 08 Length   oi Read Again    1E  Manufacturer A    Issuer Area    Counter 4096      Counter 512 Read  Write options   
2.         Voici un exemple de rapport produit par ce logiciel  en l   occur   rence    partir d une carte bancaire    BO          ATR Analyser   Developed by Advanced Card Systems Ltd     ATR    TS    TO    TB1    TC1      3F 65 25 08 36 04 6C 90 00  3F   Inverse convention  65    TB1 1C1  5 bytes historical bytes follow    25   11 1  P1 5  08   N 8        F 372  D 1  I 50  P 5  volts N 8 etu           default     TOI    T02    T03    TO4    T05      36   The meaning of these historical bytes are proprietary  04    6C    90    00           End of Report         39       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUL  PLUS LOIN AVEC LES CARTES A PUCE    Le plus important est de remarquer que cette carte    protocole    T 0   fonctionne en   convention inverse     et   galement  qu elle se contente des param  tres de communication    par  d  faut    utilis  s pour la transmission de son ATR     Certaines cartes  en effet  peuvent proposer au lecteur de    n  gocier    une vitesse plus   lev  e  ce qui explique certains ph     nom  nes qui apparaissent parfois lorsque l   on tente d observer  la suite du dialogue     Les    caract  res historiques     pour leur part  ont ici une signifi   cation    propri  taire     c est    dire d  finie par une sp  cification  propre    l   metteur de la carte     En pr  sence d une carte dont les caract  res historiques ont une  signification normalis  e  ANALYSER EXE proc  derait bien   vi   demment    l
3.        DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __     PLUS LOIN AVEC LES CARTES A PUCE    responsabilit   sur les fabricants des t  l  phones  et ceux ci    sur  la carte SIM      Premier exemple   une m  me carte SIM donne correctement acc  s  aux informations m  t  o par SMS sur un t  l  phone de marque A   mais pas du tout sur un appareil de marque B     Le d  pouillement des enregistrements effectu  s avec notre    espion    met en lumi  re des diff  rences au niveau de la com   mande    Terminal response    envoy  e    la carte  suite    la s  lec   tion de la rubrique    m  t  o     N   13h  du menu    SMS infos         AO 14 00 00 OF 81 03 01 24 00 82 02 82 81 03 01 00 10 01 13   succ  s     AO 14 00 00 OF 81 03 01 24 00 82 02 82 81 83 01 02 90 01 13     chec     Certaines sont parfaitement l  gitimes  car elles correspondent     des variantes autoris  es par la norme  03h au lieu de 83h  ou 10h  au lieu de 90h      En revanche  l   octet 02h au lieu de 00h signifiant    missing  information    au lieu de    success     on peut excuser la carte de  refuser de lancer l application  bien qu elle dispose en r  alit   de  toutes les informations n  cessaires     Le t  l  phone est donc le principal coupable  ma  s la carte pour   rait tout de m  me faire preuve d   un peu plus de souplesse       Second exemple   l application    m  t  o      tant enfin ouverte  la  carte demande    l utilisateur d entrer le num  ro du d  parteme
4.       Les choses sont un peu plus compliqu  es en ce qui concerne les  valeurs possibles de INS  car il va falloir op  rer une recherche  syst  matique pour chaque classe reconnue par la carte  et c est l    que l on risque de d  couvrir des diff  rences suggestives      Le programme INST EXE  obtenu par compilation de INST BAS   commence donc par demander quelle classe il va devoir tester        partir de cette valeur  il va construire un fichier INS BAS  qu il  faudra encore compiler en INS EXE  l ex  cutable fourni    titre  d exemple op  re avec CLA   00h      Lors de son ex  cution  il s   affichera petit    petit la liste compl  te  des codes op  ratoires INS que la carte reconna  t  dans la classe  consid  r  e     Cette fois ci  chaque code op  ratoire possible est essay   dans une  commande affubl  e de param  tres aussi invraisemblables que  possible   P1 et P2   FFh  Le   FFh  toujours en vertu du    prin   cipe de pr  caution           titre d illustration  voici les r  sultats obtenus avec une carte  bancaire  classe BCh   p  rim  e depuis 2002  et donc non encore  compatible    EMV         41       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE  PLUS LOIN AVEC LES CARTES A PUCE    2 5 DES LOGICIELS G  N  RALISTES    Dans le dossier    PCSC     nous avons ajout   quelques logiciels  utiles  aimablement offerts par les partenaires qui nous ont bien  aid  s dans la pr  paration de cet ouvrage   ACS et ZeitControl     SCARD EXE  ou
5.     afficher  1   alphanum  rique   2   hexad  cimal  4   num  rique  8   num  rique avec signe      e 3   octet   nombre de positions    afficher  00h   tout afficher     notons qu   en format num  rique  les z  ros inutiles seront  supprim  s automatiquement     e 4 octet   position du point d  cimal  00h s   il n   y en a pas      e 5   octet   dur  e d affichage  1    254 intervalles de 0 2 s  ou 0  pour un affichage jusqu au retrait de la carte     e 6 octet  1 si d   autres donn  es attendent de pouvoir   tre affi   ch  es  0 s il n   y en a plus     e 7e au 16   octet   donn  es    afficher     Le cas le plus simple correspond    l affichage d   un seul bloc de  donn  es  6   octet    00h   qui se fera d  s que la carte aura r  pondu     la commande re  ue du lecteur     Il en sera ainsi  par exemple  si l on se contente de lire le nombre  de points que contient une carte de fid  lit    ou encore le solde  d un PME     Mais dans la plupart des cas  l application    carte    sera plus  bavarde   si elle indique au lecteur  en mettant le 6   octet    01h   qu elle a encore quelque chose    afficher  alors le lecteur enverra  une nouvelle commande  dont le premier octet sera incr  ment    d   une unit    d  s que la dur  e d affichage requise aura expir       La carte r  pondra alors    cette commande en surchargeant de  nouveau s  lectivement le bloc de donn  es re  u  et le lecteur  mettra son affichage    jour     154     DUNOD 2004   Plus loin avec les cartes    puce 
6.     allonger quelque peu la plaquette   afin qu en toutes circonstances  l   embase HE 10 reste    l ext  rieur  du lecteur     POSITION ISO    oO Nooo  gt       NE     gt        Le trac   de la figure 2 5 a   t   dessin   dans cette optique  sa  longueur de 106 mm ayant   t   optimis  e pour que la d  coupe    Figure 2 5   Trac   du  circuit imprim      d une plaque pr  sensibilis  e de 100 x 160 mm d  gage des chutes de la    fausse carte        de dimensions encore utilisables     59       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________      PLUS LOIN AVEC LES CARTES    PUCE    Le cas   ch  ant  la partie d  bordant du format    carte de cr  dit     pourrait   tre r  duite    sa plus simple expression  par rognage     partir des amorces pr  vues    cet effet  Cela pourrait faciliter  l insertion dans certains lecteurs particuli  rement    contra   riants          Des    fausses cartes    SIM Micro    Le format    SIM Micro    est apparu avec la miniaturisation des  t  l  phones portables  mais ce serait une erreur de penser qu il se  limite    ce domaine particulier     Les    modules de s  curit       SAM   qui   quipent de plus en plus  de lecteurs investis de responsabilit  s s  curitaires  l      pousent  aussi tr  s volontiers     Et n oublions pas toutes les applications rendues possibles par  ces lecteurs de cartes    SIM Micro    qui se pr  sentent sous la  forme si commode d   une fiche USB      Il est donc au mo
7.     bloquer leur carte Vitale en lui envoyant plusieurs commandes  BC 40 00 00 00  ratification d un code PIN non pr  sent    et  donc consid  r   comme erron     puis    se la faire    d  bloquer     par les soins de leur caisse  qui a  par cons  quent  d ores et  d  j   acc  s aux outils n  cessaires       Notons qu   en revanche  un code PIN est tout de m  me indispen   sable  et c   est la moindre des choses  pour l   utilisation des cartes  de professionnel de sant       132       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit         gt   gt   gt   gt   gt   gt   gt            CHAPITRE       AUTOUR DES CARTES    SANT         Il n est donc pas interdit d imaginer qu une s  curisation suppl     mentaire par code    porteur    pourrait   tre instaur  e  si le besoin  devait s en faire sentir un jour     Toujours dans le cas d ADMAX   2188h  on trouvera les poin   teurs des diff  rentes zones dans le second octet des mots de  32 bits dont voici les adresses  calcul  es par simple soustraction  r  cursive de la valeur 08h      168h  158h  150h  148h  140h  138h  130h                            En prime  on trouvera le num  ro de s  rie de la carte  sur 25 bits      l adresse 2178h  un certain nombre de param  tres techniques  aux adresses 2180h et 2170h  et le   type d application     sur  14 bits  en 2160h     Nous avons ainsi fait le tour complet de ce qu il est convenu  d appeler la    z
8.     celle de la carte pr  sen   t  e par l utilisateur   une variante  en somme  du    module de  s  curit      dont sont   quip  es les applications les plus    pointues      offerte    sur un plateau    par notre banque habituelle       6 5 VERS LES CARTES    EMV       Dans un communiqu   diffus   en mai 2002  les organisateurs du  salon CARTES citaient une d  claration d   un administrateur du  GIE Cartes Bancaires      Les banques fran  aises vont investir environ  1 milliard d euros sur 7    8 ans pour assurer le passage des cartes et des  terminaux    la norme EMV        150       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE          DUNOD   La photocopie non autoris  e est un d  lit     AUTOUR DES CARTES DE PAIEMENT    Cela  alors que les cartes et les terminaux supportant cette nou   velle technologie existaient d ores et d  j    puisqu une transaction  EMV avait   t   r  ussie  d  s le 7 f  vrier 2002  chez un commer  ant  fran  ais     Avec une carte bancaire    anglaise  cependant  30 millions de  cartes EMV circulant d  j       cette   poque  outre Manche     En fait  le d  lai annonc   avoisine le temps jug   n  cessaire pour  achever le programme de migration au niveau mondial  et en par   ticulier aux   tats Unis  o   pas moins de 800 millions de cartes     pistes magn  tiques sont concern  es      En France  il faut s attendre    rencontrer des cartes    technologie  mixte B0  EMV pendant une p  riode transitoire qui 
9.     des fins inavouables      UTHENTI FI C AT I ON  55 54 48 45 4E 54 49 46 49 43 41 54 49 4F 4E  4E 54 49 46 49 43 41 54 49 4F 4E    Au lieu d appliquer  au bloc de 16 octets qui lui est soumis   l algorithme    A3A8     au demeurant secret    que renferment  les   vraies    cartes SIM  la n  tre retourne   b  tement    les  12 derniers     Si l on osait enregistrer l identifiant  IMSI  d une carte valide dans  la BasicSIM  donc  un processus d inscription pourrait effective   ment   tre initi   sur tel ou tel r  seau fran  ais ou   tranger  mais  toute demande d authentification   chouerait forc  ment  n est ce  pas      Pas question  par cons  quent  de t  l  phoner gratuitement avec  ce genre de carte  que l   on ne peut donc en aucune fa  on assimi   ler    un    clone        Cela m  ritait  nous semble t il  d   tre fermement pr  cis         Bien entendu  le m  me programme pourra   tre essay   avec de  v  ritables cartes SIM  valides ou non  afin d examiner le genre de  r  ponse que l   on obtient  quitte    faire varier quelque peu les  donn  es envoy  es     De quoi proc  der    d   difiantes comparaisons avec les autres  cartes auxquelles nous allons nous int  resser dans les prochains  chapitres       127       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       CHAPITRE PAGE    AUTOUR DES    CARTES    SANTE       5 1 La carte Vitale      une carte    SCO
10.    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES DE PAIEMENT    Ce processus peut se r  p  ter    l infini  avec ou sans changement  de format d affichage d   une commande    l   autre     Bien que notre application PRSPY BAS tienne en quelques lignes  de ZCBasic  il convient de ne pas sous estimer ses talents   voir dossier    POCKET    de notre c  d  rom      Charg  e  apr  s compilation  dans une ZC 3 9  PRSPY39 IMG   ou une ZC 3 3  PRSPY33 IMG   elle transforme celle ci en un  redoutable outil d investigation      Ins  r  e dans n importe quel terminal acceptant les cartes    puce  T 1  par exemple Mon  o  nous y voila     la carte enregistre  l en t  te  CLA  INS  P1  P2  Lc ou Le  de toutes les commandes  qu elle en re  oit     Cela    concurrence de 100 commandes  mais la capacit   EEPROM  disponible permettrait de faire bien davantage si n  cessaire     Il est  en effet  navrant de constater combien d applications d  ve   lopp  es    professionnellement    peuvent encha  ner    en aveugle     jusqu    des dizaines de commandes  sans se formaliser le moins  du monde des r  ponses  m  me aberrantes  qu   elles peuvent  recevoir      Il faut dire que notre carte retourne syst  matiquement un compte  rendu de bonne ex  cution  SW1SW2   9000h par d  faut   et un  bloc de donn  es    vide     Les choses seraient  tout de m  me    diff  rentes si l   on faisait en  sorte que la carte r  ponde   classe 
11.    Suit un   l  ment qui commence par un tag 85h  nature      alpha  ID     et qui contient 09h octets de donn  es  en l occurrence le  texte    Proactive    qui n   est autre que l intitul   du menu    ins  rer      Les rubriques de ce menu suivront enfin  annonc  es chacune par  un tag 8Fh  nature   service item   un octet de longueur  et un  num  ro de rubrique         8F 0E 01 pour une rubrique N  1 baptis  e    Term  profile           8F 0A 02 pour une rubrique N  2 intitul  e    BasicCard     etc     108       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES SIM    Bien entendu  le t  l  phone rend compte    la carte de la bonne  ex  cution  ou non    de cet ordre  ce qui se fait par une com   mande    Terminal Response     CLA   AQh  INS   14h         partir du moment o   le nouveau menu est install    l utilisateur  peut en s  lectionner une option    tout moment     D  s que cela se produit  le t  l  phone pr  vient la carte en lui en   voyant une commande    Menu Selection Envelope     INS   C2h      Dans notre cas  ce pourrait   tre    AO C2 00 00 09 D3 07 82 02 01 81 90 01 02    Le dernier octet stipule ainsi que c est la rubrique N  2  Basic   Card  qui a   t   s  lectionn  e     On remarque  juste apr  s les cinq octets d   en t  te de la com   mande  un tag D3h pr  cisant que ce qui suit se compose encore  d   l  ments    TLV     dont la long
12.    en parall  le  puisqu   en plus de l horloge  de l   alimenta   tion  et de la masse  certaines cartes peuvent g  rer jusqu    quatre  contacts du micromodule  et notamment les    REU    ISO 4 et  ISO 8      Le sch  ma de la figure 3 8 r  sout ce probl  me au moyen d   une  m  moire    Zeropower     48208   capable de stocker 8 192 mots  de 8 bits   ce sera amplement suffisant      Elle est associ  e    un classique compteur 4040  mais de fa  on  plut  t inhabituelle  puisque celui ci ne pilote que ses lignes  d adresse A1    A12     La ligne d adresse de poids faible  A0   pour sa part  est directe   ment attaqu  e par le signal d horloge de la carte     Il en r  sulte que les   tats des contacts ISO 2  4  7  et 8 seront  m  moris  s dans les deux   tats possibles du contact d horloge    91       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE  PLUS LOIN AVEC LES CARTES    PUCE                      en parall  le  sur la carte                                  6 8 KQ 6 8 KQ  3   4 4011  I   H  CHE 2 2 nF  Figure 3 8  id T il  Sch  ma de l   espion 7 2 2 nF    de cartes synchrones      ISO 3    dans les adresses paires quand ISO 3 est    0  et dans les  adresses impaires quand il est    1     C   est absolument indispensable  car avec une m  me carte  il peut  se passer des choses tr  s diff  rentes lors d   un front avant ou arri  re  du signal d horloge      Le compteur d adresses   tant attaqu   par ce m  me signal  d horloge  un artifice
13.    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES    La quatri  me ligne applique l algorithme SHA 1    la cha  ne E   ainsi construite  op  ration rendue possible par l inclusion pr  a   lable de la biblioth  que Sha 1 def     Remarquons que la variable de cha  ne P  ayant  elle aussi    t    d  clar  e    public     son contenu pourra   tre exploit   par n im   porte quelle autre commande  en l occurrence RESP  une com   mande    sortante     cette fois ci  Le 0 indiquant qu il n   y a pas de  donn  es entrantes      Pourrait on imaginer plus simple que ces douze lignes de  ZCBasic  qui suffisent pour mettre en   uvre les fonctions de base  de ce dongle      Aussi avons nous un peu cors   les choses en imaginant une  option     Il suffirait de retirer les mots REM du fichier DONGLE BAS pour  mettre en service huit lignes suppl  mentaires  lesquelles fixent  une limite de dix sollicitations du dongle  correspondant  par  exemple     la p  riode d essai gratuit d un logiciel      Les quatre derni  res lignes    galement facultatives  d  finissent  une commande ISO  A0 90 00 00 00  permettant de remettre le  compteur    z  ro  autrement dit d autoriser dix nouvelles ex  cu   tions     Bien entendu  il serait possible de perfectionner cette commande  en introduisant un mot de passe  mais ce n   est l   qu   une sugges   tion que nous soumettons    l imagination de nos lecteurs  c est  a
14.    reset     On trouvera ADMAX dans les troi   si  me  poids fort  et quatri  me  poids faible  octets du mot re  u  en r  ponse  Ses deux derniers octets  dits TA et PZT2  renseignent  respectivement sur le type d   algorithme cryptographique sup   port   par la carte  et sur les modalit  s de protection de la zone de  travail N  2     Une carte Vitale typique pourra ainsi r  pondre ADMAX   2188h   TA   0Eh  et PZT2   08h  En clair  cela signifie qu elle contient un  peu plus de 8000 quartets  la premi  re adresse accessible   tant  invariablement 0200h   soit environ 4000 octets  que la carte  supporte le DES  un algorithme pas franchement moderne   et  que la zone de travail N  2 est libre en lecture  mais prot  g  e en    criture   tout comme la zone de travail N   1     5 2 DES MYST  RES    DISSIPER    Les remarques suivantes s imposent tout naturellement    un  explorateur averti        La capacit   m  moire est largement sup  rieure    celle d une  carte bancaire  tout juste 1 024 octets   et pourrait donc poten   tiellement h  berger un volume significatif de donn  es  confi   dentielles          L int  gralit   des donn  es  crypt  es ou non  que contiennent  les zones de travail est librement accessible  en lecture  par  n importe quel d  tenteur  l  gitime ou non  de la carte     e Aucun code PIN  code porteur  n   est remis au titulaire  bien  que le m  canisme correspondant existe dans les cartes SCOT    d intr  pides exp  rimentateurs sont d   ailleurs parvenus 
15.   CT Compile for Terminal  default    C1 1 Compile for Compact BasicCard  ZC1 1   C3 x Compile for Enhanced BasicCard  2C3 x   CFconfig file Compile for card in config file   ZCF    Dsymbol  val  Define symbol  default val 1    ECexe file  Win32 Console application   EXE    Ipath Search path for  Include files     0D debug file  Debug file   DBG    0Elerror file  Error file   ERR    OI image file  Image file   IMG    OLCTist file  List file   LST    OM map file  Map file   MAP            Sstack size Set size of P Code stack   Sstate Set card state     L oad  P ers  T est  R un    Prenons ainsi pour exemple le court programme que voici  dont  le code source porte  dans le dossier    PCSC    de notre c  d  rom   le nom de GETHIST BAS       Include CARDUTIL DEF    Include COMMERR DEF   ComPort 101   Call WaitForCard     ResetCard  P     Call CheckSWISW2      36       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE          DUNOD   La photocopie non autoris  e est un d  lit     AUTOUR DES CARTES ASYNCHRONES    CLS Print Caract  Historiques de 1 ATR      FOR F 1 TO Len P     M ASC MID  P  F 1     M  HEX  M  IF Len M   1 Then M   0  M   PRINT M        NEXT F   Print Print Call WaitForNoCard    En supposant le kit logiciel de la BasicCard convenablement  install    et ce code source copi   dans le dossier C  BasicCardPro   il suffira de taper  dans une fen  tre MS DOS ouverte sur ce m  me  r  pertoire  la commande ZCMBasic  CT  E GETHIST BAS p
16.   Counter 64     Normal     Counter 8 wis Cl Eras Gts    Counter 1   Hex C Asci gen  FE  SI F 442 LA   ya           Start  8 C iite ple  foo 10  Ce paectte MEME l  80 C Write carry the memory I Backup bit enabled  00 01 00 08 00 01  9000  SWL SW2Z   LE    VAN ANA          00 01 00 08 00 O1  9000  SW1 SW2Z   1E   00 01 00 08 00 01  9000  SW1 SW2   lE                   AD  marer   8 CardEasy R Paint Shop Pro    4O 11 40    type    boulier     voir nos ouvrages Cartes    puce     Initiation et  applications et PC et cartes    puce      Chacun des compteurs    huit bits qui les   quipent est affect   d un     poids    huit fois sup  rieur    celui du compteur qui le suit dans  l espace m  moire     Chaque unit   consomm  e est mat  rialis  e par la mise    z  ro    cri   ture  d   un bit qui   tait encore    un dans le compteur    par un        Lorsque les huit bits de celui ci se retrouvent    z  ro  la mise     z  ro d   un seul bit dans le compteur de poids imm  diatement  sup  rieur  donc    par huit     autorise la remise    un  effacement   en bloc de tous ses bits  et ainsi de suite    criture dite    avec  retenue         Dans les cartes les plus simples de cette famille  quarante bits  sont r  partis en cinq compteurs  par 1  par 8  par 64  par 512  et  par 4 096   ce qui permet d  j   de compter jusqu      plus de trente  mille unit  s     Parmi les variantes disponibles  on peut citer un compteur suppl     mentaire  des zones    utilisateur     reprogrammables apr  s e
17.   Professional    en carte SIM permet   tant de   bricoler    librement avec la majorit   des t  l  phones  portables  m  me    verrouill  s    par un op  rateur     Comme on pouvait s y attendre  les versions de cartes se sont  succ  d  es    un rythme effr  n    et la ZC 4 1 employ  e    l   poque  est d  j   compl  tement d  pass  e par la ZC 5 4  et que dire de la  toute r  cente ZC 5 5        Nous avons profit   du    portage    de notre application    Basic   SIM   sur ces nouvelles plates formes mat  rielles  pour en  exploiter les possibilit  s accrues     Le dossier    SIM    du c  d  rom accompagnant cet ouvrage  contient ainsi un fichier BasicSIM IMG  qui attend avec impatience  d   tre charg   dans une ZC 5 4    Rev  A     distribu  e en France par  http   www hitechtools com      Un sous dossier est consacr      la ZC5 5  Rev  B   une toute  nouvelle version offrant une capacit   m  moire encore sup  rieure     Diff  rents fichiers batch facilitent au maximum l op  ration  selon  le mod  le de lecteur de cartes install   sur le PC     Tous trois mettent    contribution l utilitaire BCLOAD EXE  extrait  du kit BasicCard ayant servi    la compilation de notre code source     Gr  ce    la nouvelle    puce    dont est   quip  e la carte  il est dor  na   vant possible de l utiliser dans certains t  l  phones    technologie    3 volts     autoris  s    interrompre le signal d horloge de la SIM  lorsqu ils passent en mode   faible consommation    ce qui     plantait   
18.   ULEG  x        Memory Card   ACOS1   Commands  About    emo area to be updated    Authentication      a2 13 10 91 FF FF    Stat  CTI Length   20 Read Again    Authentication FF FF FF FF FF FF   SLE 4404 FF FF FF FF FF DZ    A2 13 10 91 FF FF 81 15  ISLE 4418 00 04 00 FF FF FF  FF FF FF FF FF FF FF FF  ISLE 4428 FF FF FF FF FF D2 76 00          ISLE 4442 Read  Write options    Protected Mem 5    Normal  p write f   Main Memory    Hex C Asci    ui E     rates  ss                   gt  FF FF FF FF FF FF FF FF FF FF FF 1  FF FF FF FF FF FF FF FF    lt  00 01 00 00 00 Z4    gt  3000  SW1 SW2     gt  A2 13 10 91 FF FF 81 15 FF FF FF    00 04 00 FF FF FF FF FF 30 FF 1F F8   lt  00 01 00 00 00 24    gt  9000  SWL1 SW2     gt  A2 13 10 91 FF FF 81 15 FF FF FF FF FF FF FF FF FF FF FF FF FF D2 76 00  00 04 00 FF FF FF FF FF 30 FF 1F F8                               AD   maner    7  CardEasy S Paint Shop Pro   BITES 11 36      Proches des cartes    protocole    3 fils     les cartes de cette famille  utilisent un mode de communication diff  rent  rappelant un peu  l I2C  et n offrent qu une capacit   de 256 octets  soit 2 048 bits      Les m  canismes s  curitaires sont   galement assez voisins  le  code confidentiel du SLE4442  ou PCB2042  tenant toutefois sur  trois octets     Ces cartes se pr  tent bien    des applications de fid  lisation  et ont  notamment   t   adopt  es par les magasins    Boots    en Grande  Bretagne     Pr  cisons d   ailleurs que la carte ELEA 500  qui a   t 
19.   aient  en France  l   id  e de ces porte clefs    testeurs    de t  l     cartes  qui ont v  ritablement    fait un malheur    dans les milieux  concern  s     En pratique  des applications aussi fondamentalement diff  rentes  peuvent mettre    contribution  si elle est bien con  ue  une seule  et m  me plate forme mat  rielle     Il suffit  en effet  de d  velopper le logiciel appropri    puis de le  charger dans la m  moire Flash du lecteur  quitte    passer    une  version ROM si les volumes devaient le justifier     1 4 DES TERMINAUX AUTONOMES       mi chemin entre les lecteurs de poche et les applications    tournant    sur un PC  il y a place pour toute une vari  t   d   appa   reils dot  s de fonctions    carte    puce    plus ou moins   labor  es        cent lieues des incontournables terminaux de paiement  les    copieurs de cartes SIM    sont un bon exemple de machines  relativement simples  dot  es pourtant de deux lecteurs de cartes     puce     En effet  face au probl  me que pose le transfert des donn  es  personnelles  annuaires  messages  etc   lors du renouvellement  de la carte SIM d un t  l  phone portable  ou en cas de change   ment d op  rateur      il a bien fallu imaginer de petits appareils  capables d automatiser l op  ration     Alors m  me que les op  rateurs voient toujours d   un tr  s mauvais    il que leurs clients    bricolent    leurs cartes SIM  certains fabri   cants semblent compter sur eux pour leur offrir un copieur en  m  me temps que 
20.   alisation     Les programmes pour microcontr  leurs PIC ont   t   d  velopp  s  en Basic     l   aide de versions gratuites  7 00 et 7 10  du compila   teur LET BASIC  que l   on pourra installer en ouvrant  respective   ment  Setup700 exe ou Setup710 exe      Le manuel de ce puissant outil  dont les versions compl  tes sont  distribu  es par Selectronic  est   galement offert  sous la forme  d un fichier PDF    ouvrir avec Acrobat Reader     R  pertoire Vitale    Il y a l   tout le n  cessaire pour faire plus ample connaissance  avec les cartes    Scot    en g  n  ral  et avec la carte Vitale en parti   culier  selon la d  marche sugg  r  e au chapitre 5     Dans le sous dossier    Auth     on trouvera le programme  code  source ZCBasic et ex  cutable  n  cessaire pour proc  der aux  exp  riences d   authentification propos  es     162       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       CHAPITRE    LE C  D  ROM DU LIVRE    Quel ordinateur utiliser      Le kit BasicCard et les programmes pour lecteurs PC SC ne  peuvent fonctionner que sous Windows 95 ou sup  rieur  le maxi   mum de confort   tant obtenu en ne d  passant pas Windows 98  ou     la rigueur  Me  XP d  conseill        C   est dire qu un PC   quip   d un processeur 486 DX 100 MHz ou  davantage peut suffire  m  me si un Pentium cadenc      au moins  166 MHz est pr  f  rable     Quelques applications de ce livre fonctionnent exclusivement  sous MS DOS  3 30 ou sup  rieur      On 
21.   asynchrones        Ce sera un peu plus compliqu   qu en T   0  mais tous les d  tails  du protocole T  1 figurent dans le manuel du kit BasicCard   dont notre c  d  rom contient une version PDF     156       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       CHAPITRE    AUTOUR DES CARTES DE PAIEMENT    En attendant  voyons un peu ce qu enregistre notre carte dans un  lecteur de GeldKarte  pour PC  de technologie 100   allemande    pas moins de quinze commandes  cette fois     commencer par      00 A4 00 OC 00  00 A4 04 OC 09  00 A4 00 OC 00  00 A4 02 OC 02  00 B2 01 04 08    Il y a     tout le moins  une certaine similitude      Mais le plus   tonnant  c est qu    aucun moment le logiciel ne se  rend compte qu il n   est pas en pr  sence d   une carte authentique    il affiche des   crans entiers qui en disent long sur tout ce que doit  contenir  et sans doute retransmettre    qui de droit  ce genre de  PME     De quoi comprendre un peu mieux l extr  me r  ticence qui accom   pagne la mise en place d   un tel    gadget bancaire     qui semble  aller tr  s exactement    contre courant des attentes de ses utilisa   teurs potentiels     157       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       LE C  D  ROM  DU LIVRE    Le c  d  rom accompagnant cet ouvrage rassemble tous les logi   ciels d  velopp  s par l   auteur  les trac  s des 
22.   contient certainement pas de donn  es purement m  dicales  telles  qu un   quivalent de l in  narrable    carnet de sant          Il semblerait plut  t qu   elle rassemble un certain nombre de     fiches     avec pour chacune d elles un num  ro de s  curit    sociale et une date de mise    jour  format    ann  e  mois  jour         Une premi  re fiche identifierait le titulaire de la carte  chef de  famille   les suivantes correspondant sans doute chacune    l   un  de ses ayants droit     D apr  s ce que parviennent    lire les bornes de consultation et les  lecteurs de poche  il est clair que chaque fiche contient aussi des  informations plus    confidentielles        tat civil  nom  pr  noms     134     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES    SANT         date de naissance   validit   des droits  caisse de rattachement   etc  Rien de plus  en somme  que ce qui   tait imprim   sur les cartes    papier         Compte tenu du faible nombre d octets de chaque fiche  il se  confirme qu un semblant de codage doit   tre appliqu    op  rant  au passage une certaine forme de compression     Il est toutefois int  ressant de remarquer que tous les lecteurs  savent proc  der au d  codage correspondant  vraisemblablement  pas bien compliqu    m  me s ils fonctionnent ind  pendamment  de la    carte de professionnel de sant       CPS      Le r  le de cel
23.   d  ploy  e  dans de nombreuses applications extr  mement vari  es  n   tait  autre qu une carte de cette famille  pr  personnalis  e de fa  on  particuli  rement astucieuse par ELEA CardWare     77       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       PLUS LOIN AVEC LES CARTES    PUCE     lelxi    E CardE asy    View Help  Memory Card   ACOS1   Commands   About      Authentication 2  Authentication          SLE 4428  SLE 4432  SLE 4442 Read  Protected Mem    Main Memory ma    Hex C Asci    v      2 13 10 91 FF FF 81 15  FF FF FF FF FF FF FF FF  FF FF FF FF FF D2 76 00  00 04 00 FF FF FF FF FF       Keys Verification  x                     Start  0      E E       Key name  Security Code  3 bytes  X  Vale   12 34 56    Fori       Hex C Ascii  New value  I Change to the new value  NewWalue  foo oo 00           lt  00 0l 00 00 00 24   gt  9000  SW1 SW2     gt    2 13 10 91 FF FF 81 15 FF FF FF FF FF F   00 04 00 FF FF FF FF FF 30 FF 1F F8             Cancel                  A D  marer    7  CardEasy R Paint Shop Pro      Cartes    protocole 12C  code famille 02h     e AT24C01  AT24C02  AT24C04  AT24C08  AT24C16  Atmel     D2000  D4000  D8000    E CardE asy  View Help    Memory Card   ACOS1   Commands   About      a    E    Er ST14C02C  E  ST14C04C  Er ST1333 C Hex    Asci    s iront yg fis     gt  43 41 52 54 45 53 39 38 FF FF FF  FF FF FF FF FF FF FF FF    lt  00 01 00 00 00 20    gt  9000  SW1 SW2     gt  43 41 52 54 45 53 39 38 FF FF FF  FF 
24.   en faut pas davantage pour s int  resser de tr  s pr  s    toutes  sortes de cartes asynchrones existantes  et m  me pour produire  ses propres cartes     2 1 D  VELOPPER EN PC SC    L initiative PC SC n aurait sans doute jamais vu le jour si Micro   soft n avait pas r  v    excusez du peu  de s approprier la carte     puce     En fait  la grande aventure    Windows for smart cards    a tourn    court  et ce sont des syst  mes d exploitation concurrents que l   on  rencontre d  sormais dans les cartes     Cela ne retire rien  tout au contraire     l int  r  t de PC SC  car il  faut bien faire la distinction entre les deux domaines  certes com   pl  mentaires  que sont les applications destin  es aux cartes  et  celles qui pilotent les lecteurs     Le d  veloppement d applications embarqu  es dans les cartes est  une sp  cialit      part enti  re  apparent  e    de la programmation  de microcontr  leurs  tandis qu il devient courant d int  grer des  fonctionnalit  s   carte    puce    dans des logiciels destin  s        tourner    sur PC     PC SC est une opportunit   exceptionnelle pour les d  veloppeurs  d applications Windows  qui peuvent d  sormais cr  er des logi   ciels supportant les cartes    puce  sans devoir encha  ner l utilisa   teur final    tel ou tel mod  le de lecteur bien sp  cifique  et pas  forc  ment r  utilisable pour d autres usages     Que ce soit d origine ou par mise    niveau  installation des    Microsoft Smart Card Base Components      il faut mai
25.   gt  B3 THEN GOTO False   NEXT BO    OUTB 6    STOP   False  OUTB 0    B4 255   GOTO Led   Led  FOR BO 0 TO 10   HIGH B 1   DELAYMS B4    LOW B 1   DELAYMS B4   NEXT BO   END    En plus des autres composants     c  bler selon la figure 1 8  il fau   dra ajouter un connecteur pour cartes    puce et un cordon d inter   connexion  le tout r  alis   selon les plans fournis au chapitre 2   Des outils connectiques      Sans entrer de nouveau dans tous les d  tails  pr  cisons que cette  serrure fonctionne par    apprentissage         Le cavalier de commutation   tant plac   en position   court   circuit     toute t  l  carte ins  r  e dans le connecteur sera lue  et  son contenu m  moris   dans la m  moire non volatile  EEPROM   du PIC     Le cavalier   tant retir    toute carte ins  r  e par la suite sera compa   r  e    cette    image    de r  f  rence  et le relais ne collera que si la  carte originale  ou une carte strictement identique  est reconnue     Mais nous allons maintenant montrer qu il est possible de suivre  une voie radicalement diff  rente  en utilisant cette fois un PIC  12C508        DUNOD   La photocopie non autoris  e est un d  lit     21       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       PLUS LOIN AVEC LES CARTES    PUCE    Figure 1 7   Trac   du  circuit imprim       Figure 1 8   Plan de c  blage     Liste des composants   PIC 16F84    programmer   SMARTLET HEX   1x78L05   1 x Led rouge   1 x 2N 2222   2 x 1N 4148   2xX22
26.   lodies plus longues se  paie toutefois par la quasi impossibilit   de les composer manuel   lement     Voici  par exemple  un SMS contenant une m  lodie nettement  plus longue que notre   chantillon cod   en iMelody   largement  plus compact  mais    peu pr  s ind  chiffrable      07 07 91 33 86 09 40 00 FO 51 FF 0B 91 33 x6 xx     3      0  83    xx xx Fx 00 F5 A7 34 06 05 04 15 81 00 00 02 44     gt  4   3A 59 05 B9 D1 A1 95 B4 04 00 37 1E 86 57 41 84  Y          7   WA    18 41 A4 17 49 86 1A 41 C4 1C 42 48 A1 07 12 69  A   l   A  BHi  i  86 10 69 06 10 5D 06 10 00 00 00 FF FF FF FF FF     i               FF FF FF FF FF FF FF FF FF FF FF FF FF FF OFF FF ceecee  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FEFF ecetet  FF FF FF FF FF FF FF FF FF FF FF FF FF FF OFF FF ceecee  FF FF FF FF FF FF FF FF FF FF FF FF FF FF OFF FF cesse     FF FF FF FF FF FF FF FF FF FF FF FF FF FF OFF FF cesse     FF FF FF FF FF FF FF FF FF FF FF FF FF FF OFF FF ces          d  faut d un logiciel sp  cialis    on peut songer    op  rer par    conversion depuis un autre format  Cela peut m  me se faire en    124     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE    AUTOUR DES CARTES SIM    ligne  et gratuitement dans la limite de trois m  lodies par  24 heures  http   www convert ringtones com      Une autre particularit   du format Nokia est que le SMS est d   un  type sp  cial  DCS   F5h au lieu d
27.   me      L organisation logique des cartes SCOT repose sur des mots de  32 bits  4 octets   mais l   adressage se fait au niveau du quartet   groupe de 4 bits      Une commande de lecture  transmise par n importe quel lecteur  de cartes    puce asynchrones  sera de la forme BC BO P1 P2 LE   l adresse    lire   tant d  sign  e par les deux octets P1 et P2  le  nombre d   octets    lire  maximum 256    tant  quant    lui  indiqu    par l   octet LE     Il faudra donc incr  menter P1P2 de deux unit  s pour avancer  d un octet  c est    dire de deux quartets   et de huit unit  s pour  avancer d   un mot de 32 bits     L espace m  moire d   une carte SCOT est partitionn   en plusieurs  zones  dont les adresses initiales sont stock  es dans autant de  pointeurs sp  cifiques      Clefs   metteur   Jeu secret   Codes porteur   Zone d acc  s   Zone de travail N  2  dite  confidentielle      131       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    5    EE  PLUS LOIN AVEC LES CARTES    PUCE    ADT   Zone de travail N  1  ADL   Zone de lecture    Les valeurs de ces pointeurs  et bien d   autres informations utiles   r  sident dans la zone de lecture qui  comme son nom l indique   est toujours    lecture libre  Chacun peut donc en prendre  connaissance apr  s avoir calcul   les adresses o   ils r  sident  Cela  n  cessite de se procurer la valeur ADMAX  adresse de fin de  m  moire   8h   en envoyant une commande BC CO 00 00 08    la  carte juste apr  s un 
28.   phone     Celui ci va alors spontan  ment le chercher  en envoyant une  commande    FETCH    de la forme A0 12 00 00 XX     En d  but de session  il s agira souvent d   un ordre d insertion  d   une rubrique suppl  mentaire dans le menu d   origine du t  l     phone     Comme on le voit dans notre code source STKM BAS  un tel  ordre commence par un octet DOh  suivi d   un octet pr  cisant la  longueur de ce qui vient apr  s     Prenons l exemple d   un tel ordre    SET UP MENU    qui commen   cerait par les octets suivants      DO 30 81 03 01 25 00 82 02 81 82 85 09    Il s   agit  en pratique  d une suite d   l  ments    TLV     Tag  Length   Value   dont le premier s   crit  81 03 01 25 00     Le   tag    81h  nature de l   l  ment      command details     est  suivi d   un octet de longueur  03h   puis tr  s logiquement de trois  octets de donn  es     Parmi ceux ci  l   octet 25h identifie un ordre    SET UP MENU        L   l  ment suivant se compose d   un tag 82h  nature     identi   ties      d   un octet de longueur 02h  et de deux octets de donn  es    81h indiquant que les donn  es qui vont suivre proviennent de la  carte SIM  et 82h qu elles sont destin  es au syst  me d   exploita   tion du t  l  phone     Cela para  t   vident  mais le destinataire pourrait tout aussi bien    tre le r  seau  83h  en cas d   mission d   un SMS    l initiative de la  carte  l   couteur  03h  pour l   mission d un   bip     ou encore  l   cran  02h  pour l affichage d   un texte  
29.   sup  rieur ou   gal  donc     la longueur de  TXT     Dans notre exemple  TXT  contient le texte    Bonjour      cod    sur 7 bits  mais notre programme SMS8 BAS exploite une  variante permettant d op  rer   en clair    sur 8 bits     charge  pour le SMSC d op  rer la conversion en 7 bits      PID  Chr   amp H3F   DCS  Chr   amp H04   TXT   Bien le bonjour     LTX  Chr  Len TXT       Il est int  ressant d observer ce que devient un m  me message   selon qu on le transmet avec tel ou tel mod  le de t  l  phone  ou  par l entremise de tel ou tel op  rateur fran  ais ou   tranger     Voila ainsi ce que donne notre exemple  confi      un Philips FIZZ    quip   d une carte SIM   mise par Orange avec le num  ro   33 6 8a bc de fg  SMSC  33 6 89 00 40 00       07 07 91 33 86 09 40 00 FO 11 FF OB 91 14 97 ih  kj ml Fn 3F 04 17 11 42 69 65 6E 20 6C 65 20 62  OF 6E GA 6F 75 72 20  2I EF mises sise FF    116       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE          DUNOD   La photocopie non autoris  e est un d  lit     AUTOUR DES CARTES SIM    La transmission a   t   effectu  e  le 22 11 02    17h 30  54   vers un  Motorola M3188  inscrit sur le r  seau Bouygues  mais   quip    d une carte SIM suisse  num  ro de la forme  41 79 hi jk Imn    dans laquelle il a   t   retrouv   ceci      01 07 91 33 86 09 40 00 FO 04 0B 91 33 86 ba dc  fe Fg 3F 00 20 11 22 71 03 45 00 11 C2 74 D9 0D  62 97 41 E2 B7 5B FD AE CB 41 21 FF          FF    On consta
30.   surtax      du destinataire  20220       e le texte du message   m  t  o76     111       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________      PLUS LOIN AVEC LES CARTES A PUCE    Rien de plus  en somme  que ce que l on enverrait manuellement  sion ne se faisait pas aider par une application    Proactive SIM         On remarquera  au passage  que l alphabet utilis   diff  re de  ASCII au niveau des caract  res accentu  s  le            tant cod   05h      Imaginons enfin que l envoi du SMS   choue  par exemple parce  que l   on se trouve dans une zone non couverte par le r  seau      Le t  l  phone signalera cet   chec    la carte au moyen d   une  commande    Terminal response    du genre      AO 14 00 00 OD 01 03 01 13 00 02 02 82 81 03 02 20 00    On y remarquera la r  p  tition d   une partie de la commande  pr  c  dente     commencer par l   octet 13h     SEND SMS         Les deux derniers octets pr  cisent  quant    eux  la raison de  l   chec  t  l  phone actuellement incapable de traiter la  commande      La carte r  agira g  n  ralement en faisant s afficher un message  d erreur appropri       Gr  ce    un compte rendu 9119 au lieu de 9000  elle priera le t  l     phone de venir chercher 19h octets de donn  es  ce qu il fera au  moyen d   une nouvelle commande    FETCH      A0 12 00 00 19     La carte transmettra alors les donn  es suivantes      DO 17 01 03 01 21 01 02 02 81 02 0D OC 04 45 63 68 65 63  20 65 6E 76 
31.   tre num  rique  ou un simple oscilloscope  sur la  prise coaxiale     C est aussi simple que cela      65    Figure 2 12   Trac   du  circuit imprim       L adaptateur pour  fr  quencem  tre        DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __     PLUS LOIN AVEC LES CARTES A PUCE    2 8 UN ESPION DE CARTES ASYNCHRONES    Sans revenir en d  tail sur un sujet abondamment trait   dans nos  ouvrages PC et cartes    puce et T  l  phones portables et PC  il nous  para  t utile de faire b  n  ficier nos lecteurs des derni  res am  liora   tions qu il nous a   t   possible d apporter    ce projet  dont se sont  d   ailleurs largement inspir  s certains de nos distingu  s confr  res     Rien de chang   sur le plan mat  riel  comme en t  moignent le trac    du circuit imprim    figure 2 13  et le plan de c  blage  figure 2 14    reproduits ici pour la commodit   du lecteur     Figure 2 13   Trac   du  circuit imprim       Figure 2 14   Plan de c  blage        Le c  d  rom du pr  sent ouvrage contient par contre  dans son  dossier    ESPASYNC     des logiciels sensiblement am  lior  s     Cela  afin de tenir compte de l     volution des caract  ristiques des  cartes    puce  de plus en plus difficiles       espionner    sans  recourir    de nouveaux artifices     En pratique  ceux ci permettent d   viter les arr  ts du programme   sur un message d erreur  d  s que le flot de donn  es provenant de  la carte diff  re un peu trop de ce que veut b
32.   tre reprogramm  e aussi souvent  qu on le souhaitera     Si l   on pr  f  rait se servir d   un lecteur CyberMouse ou ACR  20 30 S en mode    propri  taire     on utiliserait alors le param  tre   P1  lecteur branch   sur le port COM1   ou  P2  port COM2       Rappelons cependant qu a ce mode    ligne de commande     dont  l extr  me simplicit   justifie notre pr  f  rence  il peut   tre substitu    un    environnement de d  veloppement    int  gr   sous Windows     Directement disponible dans le    menu d  marrer programmes     apr  s installation du   kit BasicCard     il prend en charge la  compilation  la simulation et le t  l  chargement  en quelques clics  de souris     L   authentification    interne       En mati  re de protection de logiciels  le bon vieux    dongle     branch   sur un port s  rie ou parall  le pourrait bien avoir fait son  temps      La tendance est en effet de plus en plus aux    clefs    s ins  rant  dans un port USB  ou m  me carr  ment aux cartes    puce     Le pr  sent projet est enti  rement compatible avec ces deux  approches  puisque la BasicCard servant de    S  same    peut   tre  ins  r  e dans n importe quel lecteur PC SC  ordinaire ou en  forme de fiche USB  tel le    SIMTracker    d ACS      Le prix tr  s raisonnable de la BasicCard    enhanced     ZC 3 3 ou  ZC 3 9  permettrait ainsi d offrir une protection par clef mat  rielle    Le    SIMTracker       un lecteur PC SC  dans une fiche USB         44     DUNOD 2004   Plus loin avec 
33.   vait tout bonnement pas de lecteurs de cartes    puce dans le  commerce de d  tail      Des dizaines de milliers de passionn  s ont donc embo  t   le pas     l   auteur de ces lignes qui  dans son ouvrage Cartes    puce     Initia   tion et applications a publi    quitte    faire grincer quelques dents   les premiers plans de lecteurs    construire soi m  me     Outre un prix de revient n  gligeable  cette approche pr  sentait   et pr  sente toujours  un certain nombre d avantages     Le principal est sans doute que l   on op  re au plus bas niveau  possible en mati  re de protocoles de communication  puisque  l on g  re les signaux   lectriques aux bornes m  mes du connecteur  de carte     On peut ainsi observer tout ce qui s   y passe  y compris un certain  nombre de singularit  s de telle ou telle carte  mais aussi faire  varier librement toutes sortes de param  tres au del   de ce qui est  prescrit par les sp  cifications   cela pour la bonne et simple raison  que le logiciel pilotant le lecteur est enti  rement personnalisable   et en aucune fa  on       prendre ou    laisser        Il doit donc   tre parfaitement clair que les lecteurs    maison     ont  et auront toujours  leur place dans l arsenal d outils d   un  bon explorateur de cartes    puce  ou lorsqu il s agira de faire lire  des cartes    puce par un montage autonome     Dans cet ouvrage  nous allons pourtant d  fricher une piste diam     tralement oppos  e   celle qui consiste    mettre en   uvre des  lect
34.  1100   0000        DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE MM  PLUS LOIN AVEC LES CARTES    PUCE    ST1301  CyberMouse     Pr  sentation code PIN  ABCDh  sans Vpp    80 80 80 80 80 80 80 80  80 80 80 80 80 80 80 80  80 80 80 80 80 80 80 64  64 64 64 64 80 80 80 80 0 0 1 1  Ah   1100   80 80 64 64 80 80 80 64 10 1 1  Bh   1101   64 64 80 80 64 64 80 80 0 1 0 1  Ch   1010   80 80 80 80 64 64 80 80 1101  Dh   1011   80 96 64 112 80 208 80 80    SLE 4442  Cyber Mouse     Lecture des 16 premiers bits  A213 h           144 144 0 16 16  0 0 0 0 16 16  16 16 16 16 16 16  0 0 16 16 0 0  0 0 0 0 0 0    0 0 1 0  2h   0010   0 0 0 1 0  Ah   1010   0 1110  3h   0011   0 0 1 0 0  1h   0001   0 0    Se                Carte I2C 2K  D2000  GFM2K     Lecture s  quentielle des 24 premiers bits  434152h     16 16 0 16 16 0 0 16 START  16 0 0 0 0 0 0 0 Select  W  1010 0000  0 0 0 0 16 0 0 0  0 0 0 0 0 0 0 0 Address 0000 0000  0 0 0 0 0 0 16 16 START  0 16 16 0 0 16 16 0 Select  R  1010 000  0 0 0 0 0 0 0 16  0 0 0 0 16 16 0 0   010  4h   0100  0 0 0 0 0 0 16 16 0001  3h   0011   16 16 16 0 0 0 16 16 1  0 1  4h   0100   0 0 0 0 0 0 0 0 0000  1h   0001  0 0 16 16 16 0 0 0 01 0  16 16 0 0 16 16 0 0 1010  5h   0101   0 0 16 16 0 0 16 0 010   2h   0010       S agissant d un protocole    2 fils     aucun autre contact n entre en  jeu  et on n enregistre tr  s logiquement que des valeurs 16 ou 0   un peu plus d  licates    interpr  ter     Il y a donc vraiment 
35.  176 octets qu occupe  dans la SIM  tout SMS norma   lement constitu     41h     Le fait que le bit de poids 64 y soit    1 signale que ce message  contient un UDH ou User Data Header     En clair  cela signifie que le texte du message  10 14 0E 01  soit     ABC     cod   en format    par d  faut     est pr  c  d   d   un bloc de  donn  es    vocation particuli  re  ne devant normalement pas   tre  affich    mais on a parfois des surprises        La longueur de cet    en t  te    est pr  cis  e  ici  dans le 23   octet    4Fh  c est    dire 79 octets     Le premier de ceux ci  0Ch  d  finit le type de contenu que  renferme l en t  te  selon les conventions de la sp  cification 3GPP  TS 23 040  version 6 0 1 de septembre 2002      Suit    nouveau un octet de longueur  4Dh  soit tr  s logiquement  deux unit  s de moins   puis un 03h demandant que la m  lodie  soit jou  e apr  s l affichage du troisi  me  et dernier  caract  re du  texte     OCh signifie  en effet  que nous sommes en pr  sence d   un user  defined sound  autrement dit d   une m  lodie compos  e par l   utili   sateur  ou pr  lev  e dans l     chantillonnage offert d   origine avec  le t  l  phone      OBh d  signerait un son pr  d  fini  qu   un seul octet suffirait     identifier   ODh une animation pr  d  finie  10h un logo    bitmap     de 128 octets  etc     121       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE OULUUN  PLUS LOIN AVEC LES CARTES    PUCE    Notons que cet 
36.  2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE    AUTOUR DES CARTES SYNCHRONES          1150 5  cng                                      s02 s7   _  s07   o   PIC 16F84       Fausse carte       01 pF vers lecteur  PC SC  T  isos  cn  I505       ISO 1  cc   so2     I503     Is04     1 0  iso 7       39kQ  Vi  501  F Figure 3 3   Vpp Sch  ma  ISO 6 de l adaptateur     Selon la profondeur d insertion de la carte dans le lecteur utilis     la longueur de celle ci pourra d   ailleurs   ventuellement   tre  r  duite  mais ce n   est nullement une obligation     Le c  blage de la    fausse carte    se limite    la mise en place d   un  support DIL 18 broches       wrapper        Apr  s soudage  les longues queues tr  s rigides de celui ci seront  ins  r  es une nouvelle fois dans les trous de la seconde carte   pr  alablement   quip  e de ses composants selon le plan de la  figure 3 6     On notera que le contact    pr  sence carte    du connecteur de  carte    puce n   tant pas mis    contribution  il est possible d   utili   ser aussi bien un mod  le    contact normalement ouvert  N O    que normalement ferm    N F   au hasard des prix promotion   nels pratiqu  s ici ou l      Nous avons tenu compte de cette opportunit   dans le pastillage  du circuit imprim    qui peut accepter des mod  les de diff  rentes  marques  ITT CANNON  ALCATEL  etc      Seuls les huit balais de contact correspon
37.  64  64  64  80  64  64  80    64  64  80  80  64    16  64  80  64  64  64  80  64  64  80  80    208  80  80  80  80  80  80  80  80    128          16  16  16    208  64  80  80  64    16  64  80  64  64  64  80  64  64  80  80       16  64  64  64  64  64  64  64  64       128  16    16    16    80  64  64  64  64    16  80  64  64  64  64  64  64  80  64  80    16  80  80  80  80  80  80  80  80       64  64  64  64  64    16  80  64  64  64  64  64  64  80  64  80    16  80  80  64  64  64  64  64  80    Oo             64  64  64  64  80       CHAPITRE    AUTOUR DES CARTES SYNCHRONES    TMS 3561  lecteur    maison        D  codage des 32 premiers bits    80    80  80  64  80  64  64  64  80  64  80  64    64  80  64  64  64  80  64  80  80  80  64             hR          h O   9    mr          mm     D O  O  0O  0O  n0 a a     o    OH OH H    ST1200  lecteur    maison        D  codage des 32 premiers bits    80  80  80  80  80  80  80  80  80    64  64  64  64  64  64  64  64  64    80  80  80  80  80  80  80  80  80    BB       h               moe E E E  arr E  a S a O0 OS E 2  O9 O0 a a a o      SLE 443x  CyberMouse     Lecture des 32 premiers bits    pam R r R ar       16  16   0  16  16    16   0  16  16  16  16    16   0  16  16  16  16    ao       ao       ES ee SS S     SAS  EX es 0     OO R B BB              ao    SLE 4404  CyberMouse     Lecture des 16 premiers bits  810Ch     64  64  80  64  64    100  1h  0000  8h  1001  Ch  1000  Oh  0    99    0001   1000  
38.  En   oo  NNNNNNNNNE RTE TT     OOGGO0O00GOGOOOGGG  1 00 00 LU L 00 09 0 CN Li 0 0 UN 1 ON N  0 D D D D N D D D D N D D D D D  HUUU  64 62 60  SEG28 1e SEG11  SEG29 2 SEG10  SEG30 3 SEG9  SEG31 4 SEG8  RESET 5 SEG7  ISP_SEL OSC_ SEL 6 SEG6  PA7 7 SEG5  NC 8 SEG4  PA6 9 SEG3  NC 10 SEG2  PAS 11 SEG1  PA4 12 SEGO  PA3 13 COM3  ISPCLK2 PA2 COM2  ISPDATA2 PAI COMi  x TIMIO PAO EI COMO  Na   Lo  22  5 UUUUUUUUUUUUUULUL   T OL OMAN Tr    NM L lt Q lt AQZ O  3 ZUHPR  R  RRFE8099 0       gt  SGLZES        6     O  2 Aa DBOE LU  5 TT IL D D   amp  O QA W  z 2a N              2 ETES  a 9    g           D  lt   E S  5 5  l E   y 4  Q Interface carte  Z  ISO 7816  Figure 1 2   a Le brochage    du ST 72411 R     9       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    _________       PLUS LOIN AVEC LES CARTES    PUCE    D apr  s son brochage  reproduit    la figure 1 2  on voit du premier  coup que ce membre de la famille ST7 dispose tout    la fois d une  interface directe pour afficheur LCD  4 lignes de 32 caract  res  alphanum  riques   de six lignes d interface ISO 7816 pouvant  rejoindre directement un connecteur de cartes    puce  asyn   chrones et ou synchrones   et de ports d   entr  e sortie capables  de g  rer  par exemple  un clavier organis   en matrice     Diff  rents modes    basse consommation    et des possibilit  s de  r  duction de la fr  quence d horloge    carte    lui permettent de se  contenter de deux piles    bouton    au l
39.  Endormie sur ses lauriers pendant quelques ann  es  la puce B0   a renou    vers 1995  avec une   volution qui n   a plus gu  re cess    depuis  Il est facile de s   en rendre compte en allant lire les valeurs  d   une poign  e de    pointeurs    dans les cartes que l   on a peut   tre  eu la  bonne    id  e de ne pas d  truire au fil de leurs renouvel   lements successifs     Il faut savoir que la m  moire d   une carte B0  se compose  en tout  et pour tout  de 256 mots de 32 bits  soit un total de 1 024 octets     Leur adressage se fait curieusement par quartets  fa  on    Bull  CP8     plut  t que par octets  et en aucune fa  on par s  lection de  fichiers  fa  on GSM ou EMV      142     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE          DUNOD   La photocopie non autoris  e est un d  lit     AUTOUR DES CARTES DE PAIEMENT    Notons au passage qu en raison de la pr  sence de bits de contr  le   chaque mot compte g  n  ralement moins de 32 bits de    charge  utile        La premi  re adresse d  finie est 0200h  tandis que la premi  re  adresse physiquement non existante est 0A00h     La diff  rence entre ces deux valeurs hexad  cimales est 0800h   ce qui correspond bien    2 048 quartets ou 1 024 octets     L adresse 09C0h joue un r  le clef  dans le sens o   elle marque le  d  but de la seule zone fixe de l   espace m  moire de la carte     Cette    zone de fabrication        lecture libre  contient un certain  nombre de param  
40.  HEX  pr  t      tre programm   dans le  PIC     On ne manquera pas de remarquer que le programme ainsi  compil   n occupe que 106 mots de m  moire sur les 512 disponi   bles dans le PIC  preuve tangible que ce compilateur g  n  re un  code redoutablement efficace  et par ricochet d une foudroyante  rapidit        crire un programme plus complexe n  cessiterait   videmment  d acqu  rir la version compl  te du compilateur  la version gratuite    tant    brid  e    en mati  re de nombre de lignes du code source     Une remarque  enfin  au sujet de l avant derni  re ligne du pro   gramme     Lorsqu une    mauvaise    carte est rep  r  e  le programme allume  la Led pendant 255 ms  ce qui alimente en m  me temps le tran   sistor de commande du relais     Comme celui ci ne doit  bien   videmment  coller qu   en pr  sence  d une    bonne    carte  un condensateur de 1 000 pF retarde suffi   samment la conduction du transistor pour que le collage ne se  produise pas     Cet artifice permet de se contenter du fort petit nombre de lignes  d   entr  e sortie disponibles sur le PIC 12C508  malgr   la r  cup     ration de celles d  volues au circuit d horloge  utilisation de l oscil   lateur interne de 4 MHZ      Le second programme  LOCK508 BAS  r  utilise la m  me s  quence  d initialisation et de reset  les six premi  res lignes   puis teste  cette fois les neuf premiers octets de la carte  c est    dire 72 bits  sur les 96 que compte la zone inalt  rable     28       DUNOD 2004   Plu
41.  SCardTiPci    33       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE OULU  PLUS LOIN AVEC LES CARTES A PUCE    On devine que cela n   est pas aussi simple qu on aurait pu le  croire       En pratique  on est fermement incit      acqu  rir le    Smart Card  SDK    aupr  s de Microsoft  et    l associer    un outil de d  velop   pement Windows de m  me provenance       Mais il existe fort heureusement d excellentes alternatives      Dans le r  pertoire    DELPHI    du dossier    PCSC    de notre  c  d  rom  on d  couvrira ainsi comment ACS propose d utiliser  un environnement de programmation r  solument concurrent       crit en Pascal  WinScard pas se charge ainsi de l importation de  tous les services de WinScard dll  les rendant facilement acces   sibles depuis Delphi     I n emp  che qu   une man  uvre aussi   l  mentaire que l affichage  de la r  ponse au reset  ATR  de la carte pr  sente dans un lecteur   n  cessite un code source  PCSC_MCU _atrpas  bien long par  rapport    la simplicit   de l op  ration     L auteur n appr  ciant gu  re la lourdeur  ne jurant que par le Basic   et pr  f  rant les outils de d  veloppement gratuits  il ne pouvait pas  rester insensible aux charmes d   une tout autre approche  qu il va  maintenant vous pr  senter avec une certaine jubilation     2 2 LA BASICCARD    Fondamentalement  la BasicCard est    la premi  re carte    puce  programmable en Basic    et m  me  depuis l abandon de     Windows for sma
42.  aimablement offerte par ACS  qui  constitue une excellente introduction au d  veloppement  d   authentiques applications PC SC sous Delphi     Dans le sous dossier    CLASSINS     se trouvent les diff  rents    l  ments  code source ZCBasic et ex  cutables compil  s  du    scanner    de commandes pr  sent   au chapitre 2     Dans le r  pertoire    AUTH     enfin  on trouvera les applications     carte    et    terminal    utilis  es dans les exp  riences d   authenti   fication    interne    et    externe    sugg  r  es au chapitre 2     R  pertoire Pocket    C est ici que l   on trouvera le n  cessaire pour transformer une  ZC 3 3 ou une ZC 3 9 en    espion    de terminal T   1  susceptible  d     tre relu avec le lecteur de poche    Pocket Reader    que contien   nent les kits BasicCard du commerce  http   www hitechtools   com      R  pertoire SIM    Outre la toute derni  re version  Phase 2   de notre   mulateur     BasicSIM     destin  e      tre programm  e dans une BasicCard  ZC 5 4  Rev  A uniquement  ou ZC 5 5  Rev  B   ce dossier contient  notre application ZCBasic d exploration de cartes    SIM Toolkit      code source STKM BAS et ex  cutable STKM EXE      Un sous dossier    Auth    contient le programme  code source et  ex  cutable  destin   aux exp  riences d   authentification propos  es  au chapitre 4     R  pertoire SMS    Dans ce r  pertoire figure tout le n  cessaire pour charger  dans  une carte SIM en cours de validit    toutes sortes de mini messages    
43.  apporte les primitives de base  comme l attente d   une carte  Wa  tForCard   ou de son retrait   Wa  tForNoCard      COMMERRLDEF  pour sa part  permet    CheckSW1SW2 d afficher  les   ventuels messages d erreur carte   en clair     et non plus  sous la forme peu parlante de codes num  riques     37       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE OULU  PLUS LOIN AVEC LES CARTES A PUCE    La ligne ComPort 101 joue un r  le important  dans la mesure o    elle indique que le programme doit se servir du lecteur PC SC  num  ro 1  On lui substituerait ComPort 1 si l on voulait faire  fonctionner  en mode    propri  taire     un lecteur    CyberMouse     branch   sur le port s  rie COM1      Cette ligne peut   ventuellement   tre omise  mais il faut alors  d  clarer le lecteur utilis    dans la variable d environnement  ZCPORT de Windows  ajouter la ligne SET ZCPORT 101 dans  l   autoexec bat  par exemple      En fait  la t  che principale tient en une ligne  la cinqui  me   on y  d  clenche  comme il faut syst  matiquement le faire  le    reset     de la carte  puis on s assure qu il ne s   est pas produit d erreur     Les caract  res historiques de son ATR peuvent alors   tre r  cup     r  s dans la cha  ne P   pr  c  demment affect  e    cet usage     C   est aussi simple que cela  et tout le reste n   est que de la mise en  page    Bien entendu  des applications infiniment plus ambitieuses    peuvent   tre d  velopp  es en ZCBasic  et nou
44.  aupr  s de Conrad Elec tronique   cela pour les lecteurs  se branchant sur un port s  rie  car il existe aussi des lecteurs  PC SC pour port USB  port clavier  dit PS2   ou port PCMCIA     Moyennant l installation  r  ussie    des bons drivers  une appli   cation d  velopp  e dans l esprit PC SC doit fonctionner de fa  on    transparente    sur tout lecteur PC SC  quel que soit le port  mat  riel qu il utilise     Notre ouvrage T  l  phones portables et PC  paru dans cette m  me  collection  en fournit la parfaite illustration      partir de sa seconde    dition  ao  t 2002   son c  d  rom contient toute une collection  d utilitaires PC SC pour cartes SIM     6       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    LES LECTEURS DE CARTES A PUCE    Mais la plupart des lecteurs PC SC disposent   galement d   un  mode de fonctionnement    propri  taire     plus ou moins s  v  re   ment incompatible avec le mode PC SC     Il peut servir  et nous ne nous en priverons pas     g  rer des cartes  ou des fonctionnalit  s non support  es par la sp  cification PC SC   ou bien  et c est nettement moins glorieux     emp  cher l utilisa   tion  avec un lecteur concurrent  d un logiciel servant de    produit    d appel        D une fa  on g  n  rale  si le driver PC SC d   un lecteur est install     il s activera spontan  ment si le lecteur est d  j   connect   au PC  lors de sa mise en route  comportement    Plug  amp  Play      Cela  contrariera alors bien s
45.  avanc  e 70  3 2 Un adaptateur PC SC                pour cartes synchrones 81   3 3 Un    espion    de cartes    puce  synchrones 90  4 Autour des cartes SIM 103  5 Autour des cartes    sant      130  6 Autour des cartes de paiement 141  7 Le c  d  rom du livre 159                69       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________      PLUS LOIN AVEC LES CARTES    PUCE    C   est avec des cartes synchrones  et en particulier avec des t  l     cartes   puis  es  que l   on commence g  n  ralement       bricoler     les cartes    puce   cela  en attendant de succomber    la tentation  de s attaquer aux cartes asynchrones  carte bancaire  carte Vitale   cartes SIM des t  l  phones portables  porte monnaie   lectronique   etc         ce stade  le savoir faire progressivement acquis incitera bien  souvent l explorateur    s int  resser de nouveau aux cartes syn   chrones  mais avec des moyens d investigation nettement plus  puissants     Tel est pr  cis  ment le th  me de ce chapitre      3 1 DES OUTILS D EXPLORATION AVANC  E    Dans leur grande majorit    les heureux possesseurs d   un lecteur  de cartes    puce ACR 20  ACR 30  ou    CyberMouse    sont loin  de se douter qu   il permet de lire et   crire dans toutes sortes de  cartes    puce synchrones   cela gr  ce    un logiciel fourni gratuite   ment par son fabricant  ACS   ou m  me en d  veloppant carr  ment  une application    sur mesures    autour d   un contr  le A
46.  broches du PIC utilis  es pour la communication   m  nageant ainsi la possibilit   d   ventuelles extensions du mon   tage    partir des lignes d   entr  e sortie restant disponibles     C est l   toute la diff  rence avec un microcontr  leur sp  cialis     qui utilise couramment jusqu    36 lignes pour piloter un afficheur  sans    intelligence    incorpor  e  et donc tr  s largement moins  co  teux en production de s  rie     Le PIC sera programm   au moyen du fichier I2CPIC HEX produit  par le compilateur  et dont notre c  d  rom contient une version    enrichie    des positions des fusibles de configuration  oscillateur  en mode XT  WDT OFF  PWRT OFF  et CP OFF      18       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    LES LECTEURS DE CARTES A PUCE    On remarquera au passage que l op  ration ne consomme que  391 mots de m  moire  soit un gros tiers des 1 024 mots disponi   bles   dont l essentiel correspond d ailleurs aux biblioth  ques de  gestion de l   afficheur et du bus I2C     Le PIC sera mont   de pr  f  rence par l interm  diaire d un support     contacts    tulipe     et il ne restera plus qu      alimenter la maquette  sous une tension continue de 9 ou 12 V     L alimentation se faisant    travers le contact    pr  sence carte    du  connecteur de carte    puce  rien ne doit se passer tant qu une  carte n est pas introduite        ce moment seulement  l   afficheur doit s     clairer et la lecture  peut commencer     Apr  s le
47.  carr  ment le syst  me d exploitation des ZC 4 x      Mais ce n   est pas tout  loin de l     cette nouvelle    BasicSIM     appartient    la    phase 2     et non plus    la    phase 2     suppor     104     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES SIM    tant par cons  quent des fonctionnalit  s    SIM Toolkit     il reste  n  anmoins possible de la    brider       la phase 2  en remettant     02h l unique octet que contient le fichier 7F20 6FAE      En pratique  elle dotera tout t  l  phone portable compatible  d un     menu    suppl  mentaire  baptis      Proactive        Parmi les fonctions    Proactive SIM    auxquelles il donne acc  s   signalons la lecture instantan  e du    Terminal Profile    du t  l     phone  ainsi que l activation  la d  sactivation  et le vidage du  fichier    log    dans lequel la carte peut enregistrer les commandes  qu elle re  oit     Le programme    SPYUTIL EXE    offre des possibilit  s compa   rables  depuis le lecteur du PC  mais aussi et surtout celle de  rapatrier ce fichier CARD LOG sur le disque dur     des fins  d analyse approfondie        noter que  contrairement    la version pr  c  dente  cette    Basic   SIM    n   a pas besoin d     tre initialis  e avant sa premi  re utilisation   elle le fait spontan  ment      Bien entendu  nos lecteurs sont invit  s    se reporter    l ouvrage  pr  cit    2     
48.  ce que fait notre programme CB2 BAS  ou  sa version compil  e CB2 EXE      En toute rigueur  la s  ret   du syst  me suppose que l   on n utilise  chaque al  a  ou    num  ro de clef     qu   une seule et unique fois     Remarquons tout de m  me qu un texte al  atoire de 256 octets  peut   tre scind   en 42 cha  nes de 6 octets  ce qui suffit ample   ment pour g  n  rer un couple al  a r  sultat chaque jour  pendant  un bon mois     On peut donc imaginer que  chaque mois  l   on doive    r  habi   liter    la carte en lui faisant produire une trentaine de couples  al  a r  sultat  dont on utilisera un nouveau chaque jour pour  acc  der    un local  ou pour d  marrer un poste de travail informa   tique  au lieu d afficher simplement    Carte reconnue          Cela  en se servant tout simplement de sa carte bancaire habituelle   p  rim  e ou en cours de validit    ce qui ne lui fera aucun mal     Et pour aller encore plus loin dans la voie de la s  curit    pourquoi  ne pas imaginer d effacer du fichier KEY KEY tout couple ayant  servi une seule fois  ou encore de produire les couples    partir  d   une adresse n  cessitant la pr  sentation du code confidentiel de  la carte      On authentifierait ainsi non seulement la carte  mais aussi son  porteur     Enfin  n oublions pas l approche qui consisterait  nous y voila      remplacer le fichier KEY KEY par une seconde carte munie du  m  me jeu secret  ins  r  e dans son propre lecteur      On viendrait alors comparer sa r  ponse
49.  celui ci  de concentrer tous ses efforts sur la partie    applicative    de son  projet  et donc d aller beaucoup plus loin  infiniment plus vite   sans se disperser     Ajoutons enfin que nos fid  les ports s  rie et parall  le pourraient  bien dispara  tre un jour des PC  tandis que certains syst  mes  d exploitation s ing  nient d  j      d  courager leur manipulation  directe       1 2 PC SC   VERS DES LECTEURS    G  N  RIQUES       Aussi aberrant que cela puisse para  tre  puisque la carte    puce  est une invention fran  aise  on aura beaucoup    tra  n   les pieds     en France avant de commercialiser des lecteurs de cartes    puce  aupr  s du grand public  leur prohibition aurait m  me   t      un  moment envisag  e      C   est donc vers l   tranger  Allemagne  Grande Bretagne  Asie   qu il a fallu se tourner pour d  nicher les lecteurs     la fois perfor   mants et peu co  teux  qui sont maintenant disponibles au d  tail     Bien que d excellents lecteurs soient depuis longtemps produits  en France  et d ailleurs largement vendus    l exportation     il  semble donc   vident que l   norme march   de l   quipement des  PC grand public profitera surtout    des fabricants asiatiques   Comprenne qui pourra      Quoi qu il en soit  il faut aujourd   hui consid  rer le lecteur de  cartes    puce pour PC comme un produit    g  n  rique      peu  importent la marque et le mod  le  pourvu qu il soit certifi       PC SC        En clair  tout logiciel d  velopp   dans le resp
50.  chaque note d   un chif   fre pr  cisant sa dur  e     0 correspondant    une note   enti  re     1 indique une dur  e  moiti   moindre  2 une dur  e quatre fois moindre  et ainsi de suite  jusqu    5 qui correspond    32 fois moins  on retrouve l   les  notions classiques de    rondes        noires        croches     etc       Pour plus de finesse  on peut faire suivre le chiffre d   un signe    modificateur    de dur  e   un point pour une note point  e  ou  un signe    deux points    pour une note double point  e     Sauf indication contraire  les notes sont r  put  es appartenir     l octave 4  La    880 Hz   identifi  e par la notation     4        122       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES SIM    S il faut changer d octave  on ins  rera l indication correspon   dante  par exemple  5  avant la note    jouer     Les octaves d  finies vont de  0  La   55 Hz      5  La  1 760 Hz    mais les plus graves s av  rent inexploitables sur les haut parleurs  de la plupart des t  l  phones portables      De multiples possibilit  s suppl  mentaires sont offertes par la  sp  cification iMelody  aux d  pens toutefois du nombre de notes  pouvant tenir dans les 140 octets de    charge utile    d un SMS    tempo  style  normal  staccato  legato   volume  etc     Attention   Il faudra scinder toute ligne de texte iMelody plus  longue que 75 octets     Ma
51.  de cartes    l   autre     Les choses peuvent aller infiniment plus loin avec les cartes SIM  de Phase 2   autrement dit    SIM Toolkit     qui adh  rent cette  fois    une normalisation tr  s pr  cise     Non contentes de pouvoir envoyer spontan  ment des SMS   comme nous venons de le voir  elles peuvent aussi en recevoir  tr  s discr  tement     Cela aussi bien pour les besoins d   une application r  sidant d  j    dans la carte  paiement   lectronique  par exemple   que pour la  mise en place de telle ou telle fonctionnalit   nouvelle     113       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __     PLUS LOIN AVEC LES CARTES A PUCE    Dans un contexte    multiapplication     la responsabilit   de la  man  uvre incombe    l op  rateur ayant   mis la carte  m  me s   il  l effectue pour le compte d   un tiers  par exemple  une banque      La plupart du temps  elle se traduit par l apparition de nouvelles  options dans le syst  me de    menus    du t  l  phone  mais une  application peut aussi rester parfaitement cach  e  voire     dormante        Bien   videmment  de telles possibilit  s de t  l  chargement de  code ex  cutable  souvent des   applets    Java  peuvent faire  craindre l introduction de virus    ventuellement susceptibles de  se propager  toujours par SMS  aux num  ros enregistr  s dans le  r  pertoire de la carte SIM     Sans les sp  cifications GSM 02 48 et 03 48  qui pr  conisent des  mesures de s  curit      parfaite
52.  de profiter des  am  liorations imagin  es entretemps  par exemple les instructions  DATA  les parenth  ses dans les formules  etc   sans obliger nos  lecteurs    acheter la version commerciale        DUNOD   La photocopie non autoris  e est un d  lit     29       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       CHAPITRE PAGE    AUTOUR  DES CARTES  ASYNCHRONES    2 1 D  velopper en PC SC 32  2 2 La BasicCard 34  2 3 Le ZCBasic 35  2 4 Des logiciels d investigation 38  2 5 Des logiciels g  n  ralistes 42  2 6 Des exp  riences   d   authentification 43  2 7 Des outils connectiques 55    2 8 Un espion de cartes asynchrones 66                               3 Autour des cartes synchrones 69   4 Autour des cartes SIM 103   5 Autour des cartes    sant      130   6 Autour des cartes de paiement 141   7 Le c  d  rom du livre 159  31       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULM  PLUS LOIN AVEC LES CARTES A PUCE    Avec l   quipement progressif des PC en lecteurs de cartes    puce  certifi  s PC SC  on assiste petit    petit au ralliement des d  velop   peurs d applications  professionnels ou amateurs     ce standard  vraisemblablement appel      faire l unanimit       Cela d autant plus que d excellents outils de d  veloppement  sont disponibles  dont les plus faciles    mettre en   uvre sont  enti  rement gratuits      Il n 
53.  en poss  de une  on dispose   galement d   un  programmateur ad hoc     Il y avait l   une excellente occasion de simplifier notre montage   en n y incorporant aucune fonction de relecture de la m  moire     97    Figure 3 13   Plan de c  blage     Le c  t   composants  de la    fausse carte           DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUL  PLUS LOIN AVEC LES CARTES    PUCE    Cette op  ration se fera tout simplement en transportant celle ci   puisqu elle est    non volatile       sur un programmateur capable  de lire les 27C64  dont le brochage est 100   compatible en mode    lecture        Rappelons que notre ouvrage pr  cit   contient les plans et logiciels  d un programmateur extr  mement simple  convenant parfaite   ment    cet usage        ce stade  il est int  ressant de commenter quelques   chantillons  d   enregistrements  r  alis  s sur un certain nombre de cartes avec  lesquelles le logiciel    CardEasy    nous a d  j   donn   l occasion  de faire plus ample connaissance     Ils ont   t   effectu  s soit dans un lecteur    maison     voir Cartes     puce     Initiation et applications   soit dans un lecteur    Cyber   Mouse    plac    pr  cis  ment  sous le contr  le du logiciel    Card   Easy        Pr  cisons que les octets lus dans la Zeropower sont pr  sent  s en  format d  cimal  le poids 16 correspondant    la ligne d entr  e   sortie  contact ISO 7   Un niveau haut sur cette ligne sera ainsi  mat  rialis   par
54.  est un d  lit        CHAPITRE  AUTOUR DES CARTES    SANT      5    Une autre m  thode consiste    programmer la BasicCard pour  qu elle enregistre  dans sa propre m  moire  toutes les commandes  qu elle re  oit du lecteur   il suffit  pour ce faire  d y charger  SPYSCOT IMG au lieu d EMUSCOT IMG     L utilitaire SPYUTIL EXE servira    activer ou d  sactiver ce m  ca   nisme     r  cup  rer l enregistrement dans un fichier  CARD LOG   sur le disque dur du PC  et enfin    lib  rer la m  moire de la carte  apr  s usage     On d  couvrira ainsi que bien peu de commandes de lecture suffi   sent     la plupart des lecteurs  pour acc  der    tout ce dont ils ont  besoin     Cela pourrait   tre      BC BO 21 30 28  BC BO 20 C8 30  BC BO 02 98 04  BC BO 03 50 1C  BC BO 02 FO 30    D  s lors  il suffit d examiner attentivement les donn  es  tr  s  personnelles    retourn  es par la carte  pour s apercevoir que  presque tout est finalement enregistr      en clair        Simplement  les lettres  uniquement des majuscules  sont cod  es  sur seulement 5 bits  selon le tableau 5 1           Tableau 5 1   P 10000 Le codage des lettres   A 00001 Q 10001  B 00010 R 10010  c 00011 S 10011  D 00100 T 10100  E 00101 U 10101  F 00110 V 10110  G 00111 W 10111  H 01000 X 11000  I 01001 y 11001  J 01010 Z 11010  K 01011  L 01100  M 01101  N 01110  0 01111             Les chiffres  pour leur part  sont tr  s classiquement cod  s en BCD   sur 4 bits  selon le tableau 5 2     137       DUNOD 2004   Plu
55.  et par cons  quent d en appr  cier objectivement la qualit       C est la firme britannique Crownhill Associates  d   ailleurs tr  s  active dans le domaine des cartes    puce  qui   dite ce compilateur     Le c  d  rom de cet ouvrage contient  dans le dossier    TERMIN      deux versions    Lite    assez repr  sentatives de l     volution du  produit      e la version 7 00  setup700 exe  supporte de nombreuses r  f     rences de PIC  dont les 12C50x  ce dont nous ne nous priverons  pas de profiter un peu plus loin       Comme toutes les versions interm  diaires de n importe quel  logiciel  elle souffre toutefois encore de quelques imperfections  parfois d  licates    contourner      e la version 7 10  setup710 exe   tr  s sensiblement am  lior  e  ne  supporte plus  en revanche  que le PIC 16F84     Les versions ult  rieures pourront   tre t  l  charg  es sur le site  http   www letbasic com sous la forme d   un unique fichier  nomm   setup exe     L ex  cution de ce fichier entra  ne l installation du logiciel et d une  version r  cente de MPASM pour Windows  le tout   tant accom   pagn   d   un manuel tr  s complet en format PDF    Celui ci est   galement reproduit  dans sa version 7  sur notre  c  d  rom  et ses versions successives seront aussi t  l  chargeables  sur le m  me site     On s   apercevra imm  diatement que cet outil se d  marque claire   ment du PBasic  Parallax Basic  h  rit   du Basic Stamp  pour  revenir    un dialecte beaucoup plus g  n  raliste de ce 
56.  exploit     La valeur FOh correspond ainsi au codage sur  7 bits d   un SMS de    classe 0     ne devant pas   tre enregistr    dans la carte SIM lors de sa r  ception  mais seulement affich     Message    Flash      04h indiquerait par contre que le message   cod   sur 8 bits  n appartient    aucune    classe    particuli  re et  doit donc   tre automatiquement sauvegard      C   est l   que l   on butera sur une caract  ristique de certains t  l     phones r  cents  qui refusent de transmettre  et ou d afficher   les SMS appliquant ce codage    utilisateur       8 bits  Les mobiles  les plus anciens ne souffrent g  n  ralement pas de cette limi   tation  et s   ach  tent d occasion pour une bouch  e de pain  Un  mod  le convenant particuli  rement bien aux exp  riences qui  nous int  ressent est le Philips FIZZ  information    libre de  toute publicit             VALS pr  cise la dur  e de validit   du message  c est    dire le  temps pendant lequel le SMSC est pri   de tenter d acheminer le  message si le mobile destinataire est indisponible  par exemple  arr  t     Cette valeur ob  it    un codage complexe  mais voici  quelques exemples amplement suffisants   05h  30 minutes    0Bh  1 heure   17h  2 heures   A7h  24 heures   ABh  5 jours    FCh  60 semaines        TXT  repr  sente le contenu utile du message  dont LTX  indi   que la longueur en caract  res  En codage 8 bits  ce sera tout  simplement le nombre d octets  mais en codage 7 bits  ce sera  le nombre de septets
57.  m  me processus de concat  nation  de la clef secr  te et de la cha  ne al  atoire     La g  n  ration de celle ci associe plusieurs processus pseudo   al  atoires  bien que notre application ne n  cessite pas vraiment  un hasard de    qualit   cryptographique      il suffit que la cha  ne  al  atoire soit diff  rente d   une fois sur l   autre  et autant que  possible impr  visible     La    graine     seed  n  cessaire    la    culture    de cha  nes al  atoires  est ainsi obtenue en construisant le texte hexad  cimal d une valeur  num  rique fournie  sur 4 octets  par la fonction RND du Basic     Bien entendu  nos lecteurs pourront remplacer la derni  re ligne  par leur propre application   crite en ZCBasic  d ailleurs pas  forc  ment orient  e    cartes    puce    puisque le ZCBasic est aussi  un fort honn  te Basic g  n  raliste     Une autre approche pourrait consister    programmer ici une sous   fonction indispensable    l ex  cution d   un logiciel d  velopp    par  exemple  en Delphi  et que celui ci appellerait  dans une fen  tre  visible ou non  par un    CreateProcess        Sur le plan purement s  curitaire  une remarque s impose toutefois     Volontairement compos  e d un texte intelligible    la lecture  la  cha  ne servant de clef secr  te  KEY   appara  t en clair dans l   ex     cutable obtenu par compilation      Une fa  on   l  gante d   viter de ruiner ainsi toute la s  curit   du sys   t  me consiste    traiter CHECK EXE avec un quelconque logiciel    
58.  marque  voire le mod  le  de son t  l  phone     Re  ue sur un mobile non compatible  une m  lodie prendra  souvent la forme d   un texte sybillin  mais dont l analyse octet  par octet sera  l   encore  riche d enseignements      120       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     07  XX  49  3A  53  65  4c  FF  FF  FF  FF       CHAPITRE    AUTOUR DES CARTES SIM    Tout aussi int  ressante est l   tude du contenu de messages com   pos  s  mettons  sur un Alcatel One Touch 311  compatible EMS    dans lesquels on aura ins  r   une m  lodie     R  cup  rons donc  sans m  me le transmettre  un SMS ainsi cons   truit  puis soigneusement sauvegard   dans la carte SIM      07 91 33 86 09 40 00 FO 41 FF 0B 91 33 x6 xx     3      A  83   xx Fx 00 00 5F 4F OC 4D 03 42 45 47 49 4E 3A      _O M BEGIN   4D 45 4C 4F 44 59 0D OA 56 45 52 53 49 4F 4E IMELODY   VERSION  31 2E 30 OD OA 46 4F 52 4D 41 54 3A 43 4C 41  1 0  FORMAT CLA  53 31 2E 30 0D 0A 4D 45 4C 4F 44 59 3A 64 33 SS1 0  MELODY d3  34 64 34 65 33 3A OD OA 45 4E 44 3A 49 4D 45 e4d4e3    END  IME  4F 44 59 OD OA 10 14 0E 01 FF FF FF FF FFFF  LODY              FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ceecee  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF eee  FF FF FF FF FF FF FF FF FF FF FF FF FF FFER eee  FF FF FF FF FF FF FF FF FF FF FF FF FF FFER ceecee    Le point de d  part de l exploration se situe  ici  au niveau du  dixi  me des
59.  on a besoin  d enregistrer l activit    souvent int  ressante   mais lors de la mise  sous tension du montage  en m  me temps que la carte  et donc  avant le    reset    de cette derni  re      Selon les cas  on peut donc commencer l enregistrement    la  seconde adresse de la m  moire et non pas    la premi  re  qui  contiendra alors une valeur plus ou moins al  atoire     Il suffit de le savoir  et d en tenir compte lors de l interpr  tation  de l enregistrement     Pour les cas difficiles  il est d   ailleurs possible d ajouter un pous   soir de remise    z  ro  RAZ  manuelle  Il permettrait  par exemple   de    court circuiter    un processus d   initialisation que l   on aurait  d  j     tudi   en long et en large  pour n   enregistrer que ce qui se  passe lors d une op  ration bien particuli  re  sciemment d  clen   ch  e au moment opportun     93       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE E  PLUS LOIN AVEC LES CARTES    PUCE    a o   LE  E  X LLL       Le circuit imprim    principal de l   espion     L int  gralit   du montage tient sur un circuit imprim   simple face   dont la figure 3 10 fournit le trac    assez dense mais ne pr  sentant  pas de v  ritable difficult   de gravure     Tout au plus fera t on attention aux trois fines pistes qui passent  entre les pastilles du 4040  mais il s agit l   d   une technique  courante     La mise en place des composants  dont trois straps  se fera selon  le plan de la figure 3 11  
60.  r  clame pas d   accus   de  r  ception  ou 31h dans le cas contraire     PID  d  finit le    protocole    que l   on souhaite employer  la  valeur par d  faut qu utilisent les t  l  phones portables   tant 00h   La valeur 5Fh sugg  re ici au mobile d offrir une possibilit   de  rappel imm  diat du num  ro de l exp  diteur   une formule  normalement destin  e aux op  rateurs  pour avertir de l   arriv  e  d   un message dans le r  pondeur   mais que l   on peut tr  s faci   lement s approprier     Les valeurs 7Fh  7Dh  et 7Eh identifieraient des SMS    desti   nation  respectivement  du syst  me d exploitation de la carte  SIM ou du t  l  phone  ou destin  s    d  verrouiller le mobile     distance    Il est int  ressant d observer dans quelle mesure les r  seaux  et ou les SMSC refusent l   acheminement des SMS de cet acabit   potentiellement suspects lorsqu ils   manent d   un particulier et  non d un op  rateur    Une valeur 3Fh  enfin  indiquerait au SMSC qu on lui demande  de se charger d   une conversion de format  par exemple de  8 bits vers 7 bits     DCS  d  crit  pr  cis  ment  le type de format utilis    la valeur  par d  faut   tant l   encore 00h  Dans ce mode    texte     on utilise  un codage affreusement compliqu    servant juste       emballer     160 caract  res    7 bits dans 140 octets  ce qui n   est pourtant pas    115       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __     PLUS LOIN AVEC LES CARTES A PUCE    un
61.  se voit fort bien dans la r  ponse au reset  avec l utilitaire     Analyser exe     dossier    ACS    du c  d  rom   qui pourrait affi   cher  par exemple  un rapport ressemblant    ceci         ATR Analyser   Developed by Advanced Card Systems Ltd   ATR   3B E2 00 FF 81 31 20 75 90 00   TS   3B   Direct convention   TO   E2    TB1 TC1 1D1 2 bytes historical bytes follow  TB1   00   II 0  P1 0   TC1   FF   N 255   TD1   81      TD T 1 protocol is supported   TD2   31   TA TB   1 1 protocol is supported   TA3   20   IFSC 32   TB3   75   CWT 18 work etu  BWI 7         F 372  D 1  I 25 P RFU N minimum           default   T01   90   The meaning of these historical bytes are proprietary  T02   00              End of Report         Le lecteur de poche XL 2500  pour sa part  semble consid  rer    par d  faut    que toute carte T   1 qui lui est pr  sent  e est un  PME    Mon  o        Comme on peut se tromper      Mis en pr  sence de notre BasicCard    PRSpy     il lui transmettra     les yeux ferm  s    la suite d   en t  tes de commandes suivante      00 A4 04 OC 06  00 B2 01 64 04  00 B2 01 BC 16    Avant m  me d   avoir eu la moindre carte    Mon  o    entre les mains   on sait donc d  j   par quel bout commencer son exploration   elle  reconna  t la classe 00h  la plus courante   et les instructions  normalis  es A4h  Select  et B2h  Read Record      On se doute qu il ne sera pas bien difficile de pousser plus loin  les investigations  par exemple avec notre   espion de cartes
62.  technique est naturellement n  cessaire pour  d  clencher une   criture en m  moire  impulsion n  gative sur WR   un peu apr  s chaque front avant et arri  re     Ce r  sultat est obtenu en diff  rentiant    la fois le signal d horloge  et son compl  ment logique  puis en appliquant une fonction ET     ces deux canaux     Les valeurs des r  seaux RC diff  rentiateurs sont fix  es par la  limite sup  rieure de la fr  quence d horloge  50 kHz   et il en va  de m  me pour le condensateur  470 pF  charg   d augmenter arti   ficiellement le    temps de propagation    du circuit        DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE          DUNOD   La photocopie non autoris  e est un d  lit     AUTOUR DES CARTES SYNCHRONES    ADR 0 1 2 3 4 5 6 7  CLK   Ao                               4  ISO 2 D7  128   ISO 4 D6  64   ISO 7 D4  16   ISO 8 D5  32   ISO 1   Vcc ISO 5   Gnd ISO 6   Vpp  N C    DO          D3  0  Figure 3 9   Le chronogramme  d  taill       Le chronogramme de la figure 3 9 montre comment on arrive ainsi     commander la m  morisation    un instant o   les niveaux sont  stables  condition n  cessaire    l acquisition de donn  es pr  sentant  toutes garanties de validit       Une exception qui confirme la r  gle est le premier octet de la  48708  dont la valeur ne sera g  n  ralement pas significative     En effet  la remise    z  ro du compteur d adresses ne se fait pas     partir du contact    Reset    de la carte    puce  dont
63.  un   quivalent  doit absolument faire partie de la  panoplie d utilitaires de tout possesseur d   un lecteur PC SC   quelle qu   en soit d   ailleurs la marque     Il permet  en effet  de composer de toutes pi  ces des commandes  ISO 7816 pour dialoguer    en direct    avec n importe quelle carte  asynchrone     Cette petite application supportant aussi bien les cartes T   1 que  T  0  on notera que dans ce second cas  il faudra indiquer une  longueur de bloc de donn  es seulement dans Lc si la commande  est    entrante     ou bien uniquement dans Le si la commande est    sortante     l   octet de longueur inutilis     tant alors mis    00h     De son c  t    PCSCINEEXE est un outil de test  servant    faire  l inventaire des lecteurs PC SC connus du syst  me d   exploita   tion  qu ils soient actuellement connect  s ou qu ils l aient   t   un    Jour     Un lecteur logiciellement install   mais physiquement d  connect    sera ainsi list    mais signal   comme   tant en d  faut     Pour notre part  nous avons souhait   montrer    nos lecteurs avec  quelle simplicit   le ZCBasic peut  lui aussi  interroger le syst  me  d exploitation au sujet des lecteurs PC SC r  pertori  s     Un code source d une seule et unique ligne suffit ainsi pour affi   cher le nom du lecteur PC SC num  ro 1  qui sera d   ailleurs bien  souvent le seul         If PCSCCount gt 0 Then Print PCSCReader 1     Il convient d admirer cette   tonnante simplicit    en songeant au  nombre de lignes de code qu 
64.  un fichier CLASS BAS  et le r  sultat de sa  compilation   CLASS EXE     40     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES    L ex  cution de ce programme    interm  diaire    produit le fichier  CLA BAS  tellement compliqu   que sa compilation en CLA EXE  prendra un bon moment     Ex  cutons maintenant ce dernier programme  et nous verrons  progressivement s afficher toutes les classes ISO que reconna  t la  carte ins  r  e dans le lecteur  PC SE  bien s  r        Il peut n   y en avoir qu une  par exemple BCh pour une carte  bancaire ou A  h pour une carte SIM de t  l  phone portable  ou  bien plusieurs     00h est d   ailleurs une valeur    par d  faut    assez r  pandue     Il est int  ressant d observer comment certaines cartes reconnais   sent une ou plusieurs classes    secondaires     inutilis  es pendant  la phase de vie    normale    de la carte     Il est bien tentant d imaginer que les commandes employant  cette classe ne serviraient qu en usine  lors de la production des  cartes     Pr  cisons tout de m  me que chaque classe possible est essay  e  avec un code op  ratoire INS   gal    00h  Cette valeur ne corres   pondant  la plupart du temps     aucune commande valide  on n   a  normalement pas    craindre de d  clencher une    catastrophe     dans la carte     On sait bien  cependant  que le    risque z  ro    n existe pas 
65.  une valeur 16 si tous les autres contacts sont au  niveau bas  ou encore par 80 si le contact ISO 4  poids 64   et lui  seul  est simultan  ment au niveau haut     Cela correspond    deux variantes courantes du processus de  remise    z  ro de la carte     On ne manquera pas de remarquer    galement  la diff  rence de  comportement entre les t  l  cartes  T1G  d origine Texas Instru   ments  TMS 3561  et STMicroelectronics  511200    les premi  res  pr  sentent le bit lu  sur le contact ISO 7  d  s que le contact  d horloge  ISO 3  arrive au niveau haut     Les secondes attendent  par contre  le retour de celui ci au niveau  bas     L   se situe l explication de ces tr  s nettes    colonnes    de valeurs  80  qui correspondent    cet   tat transitoire 1 sur ISO 7 pendant  qu ISO 3 est    1  et cela  quel que soit l     tat du bit adress       Et ne parlons m  me pas de ce qui se passe avec les lecteurs  et ils  sont l  gion    qui ne d  livrent pas de 5 volts au contact Vpp   ISO 6        Bien que plus complexe  le protocole des cartes   I2C    est    galement    d  cortiqu      dans ses moindres d  tails par notre  montage   on peut suivre tr  s nettement les   tats de la ligne SDA   poids 16  au fil des transitions  aussi bien positives que n  ga   tives  de la ligne SCL  horloge      98       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     64  80  64  64  64  80  64  80  80  80    64 
66. 0 Philips  disponible au d  tail chez  Selectronic    cela afin de profiter d un second p  riph  rique  virtuel  capable de g  rer de fa  on transparente l acc  s    une  m  moire  2C externe  par ses lignes SCL et SDA  horloge et  donn  es      Le sch  ma de la figure 1 3 montre toutefois que le PIC 16F84  ou  16C84  communique avec les autres contacts du connecteur de  carte  d   o   la possibilit   de reprogrammer le montage pour lire     peu pr  s n importe quelle sorte de carte synchrone     Nous verrons  au chapitre 3  comment prendre connaissance du  protocole de communication de ce genre de carte  m  me inconnue   en vue d en programmer les principales    micro instructions     sous la forme de quelques lignes de Basic   cela au prix de l     cri   ture d   un logiciel forc  ment plus long  et exigeant donc le recours     la version payante du compilateur     Pour l heure  le code source que voici affiche le r  sultat de la  lecture sous la forme de seize groupes de seize octets  convertis  chacun en un caract  re d  duit du code ASCII correspondant     L exp  rience montre  en effet  que bien des cartes I2C contiennent  en r  alit   des caract  res ASCII   cartes jeu longtemps distribu  es  par Gemplus au salon CARTES     Password Card     de Towitoko   utilis  e pour m  moriser les mots de passe d   un utilisateur de PC   etc     Chaque bloc de caract  res est affich   pendant une seconde et  demie  six fois le maximum de 255 ms autoris   par le compila     14     D
67. 1 chez Infineon  n   exige lui aussi que du 5 V     On retrouve la GPM896 et ses   quivalents dans des applications  de type    cartes de fid  lit       et de petite mon  tique  stationne   ment  clubs  restauration  transports  etc      Cartes    protocole    3 fils     code famille 05h     e SLE4418  SLE4428  Siemens Infineon    e GPM amp K  Gemplus    e Primeflex Store 8K  Schlumberger     Ces cartes dites    intelligentes     et par cons  quent difficiles     mettre en   uvre sur des lecteurs    maison     offrent une capacit    assez importante de 1 Ko  soit 8 192 bits        tout moment  chaque octet peut   tre prot  g   individuellement  contre l   criture  et cela de fa  on irr  versible     Par rapport au SLE4418  le SLE4428 dispose  en suppl  ment   d   un syst  me de code confidentiel  2 octets    tant que celui ci    76       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE    AUTOUR DES CARTES SYNCHRONES    n aura pas   t   pr  sent    seules des op  rations de lecture pourront    tre r  alis  es    Bien entendu  la carte se bloque d  finitivement au del   d un  certain nombre de pr  sentations de codes erron  s      Cartes    protocole    2 fils     code famille 06h      e SLE4432  SLE4442  Siemens Infineon    e PCB2032  PCB2042  Philips    e GPM2K  Gemplus    e Primeflex Store 2K  Schlumberger      ELEA 500  Elea CardWare            iE CardEasy  lel xi  View Help
68. 6F 69    L octet 21 en sixi  me position identifie un ordre    DISPLAY  TEXT     ledit texte     Echec envoi     occupant les onze derniers  octets du bloc de donn  es     On le voit  ce genre d investigation n   est pas pr  cis  ment simple   mais permet de mettre en   vidence des quantit  s de choses que  les op  rateurs s   vertuent    dissimuler  Cela m  rite bien quelques  efforts     commencer par la lecture attentive de la sp  cification  GSM 11 14      4 3    BRICOLER    LES SMS    Les SMS  Short Message Service  constituent un service essentiel  du syst  me GSM  et sont surtout connus sous la forme de    mini   messages    d un maximum de 160 caract  res affichables     Il faut cependant savoir que la norme d  finit de tr  s nombreuses  variantes  dont des possibilit  s de    concat  nation    permettant  de mettre plusieurs messages bout    bout pour transporter des  volumes de donn  es plus importants     112       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE    AUTOUR DES CARTES SIM    Il existe aussi des cat  gories de SMS dont la r  ception peut se  faire totalement    l insu de l utilisateur  en vue d op  rer des  modifications plus ou moins profondes dans les cartes SIM ou  les m  moires non volatiles des t  l  phones     En milieu industriel  enfin  les SMS sont de plus en plus souvent  utilis  s pour t  l  commander et t  l  surveiller toutes sortes d   qu
69. 7   Les micro instructions  mises en   uvre        Chacun aura compris que tout le    secret    de ce montage r  side  dans le logiciel  fichier SYNC HEX  qui devra   tre programm    dans le PIC     Le code source de celui ci associe la partie sp  cifique    la lecture     criture des t  l  cartes  SYNC ASM   au jeu de routines    T   0     d  crit dans notre ouvrage PC et cartes    puce     Du c  t      asynchrone     le montage se comporte comme une carte  qui ne reconna  trait que les deux commandes ISO suivantes      e 22 44 00 00 00  avance d   un bit avec lecture     e 22 22 00 00 00  mise    1 du bit courant      Cela correspond respectivement aux    micro instructions    UP et  PGM de la figure 3 7  la micro instruction RESET   tant  pour sa  part  automatiquement ex  cut  e toutes les fois que le lecteur  PC SC effectue lui m  me un reset     ISO 2 ISO 4 ISO 3 p a  efo lije          Pr  cisons que la dur  e des impulsions d horloge  CLK  appli   qu  es    la t  l  carte  de quelques microsecondes    quelques milli   secondes selon l op  ration    effectuer  est calibr  e par le PIC      partir de la fr  quence d horloge   mise par le lecteur PC SC   de l   ordre de 3 58 MHz            DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES SYNCHRONES    Il en r  sulte que le    timing    est syst  matiquement correct  quelle  que soit la fr  quence d horl
70. CD Rom    Patrick Gueulle    EE E  PLUS LOIN AVEC LES CARTES    PUCE    ADC  Zone confidentielle    2F8  AD1  Zone des clefs    210  ADS  Clef de transaction    230  AD2  Zone des codes    2C0  Num  ro de Fabricant   1    Avec une carte   mise quatre ans plus t  t par la m  me banque                                                           on pourrait obtenir    Code Application   3FE5  ZF  Zone de fabrication    gco  ADL  Zone de lecture    8E0  ADT  Zone de transaction    2B0  ADM  Zone d   tat    290  ADC  Zone confidentielle    2B0  AD1  Zone des clefs    210  ADS  Clef de transaction    230  AD2  Zone des codes    278  Num  ro de Fabricant   2  0 11 91 11 93 06 96 03 98 03 00 06 00 06 02 DATE D   MISSION  CLEFS FABRICATION  OUVERTURE  BANQUE A  230 ADS  248  JEU SECRET  0 G  ERS BORTECE  CLEF DE TRANSACTION   480BITS   128BITS  278    300 B0     B0  CLEFS PORTEUR g   2 CODES CONFIDENTIELS  E  i  816 128 BITS S  o OCTETS ZONE D   TAT     fi 20 ON EEPROM 2  pe   per i BUGG  Nera  M 92 ZONE 676 CLEFS  a CONFIDENTIELLE OCTETS PORTEUR  9 208 ADM  a pes 156 OCTETS    FFh 128  ca  SELON BANQUE  BITS  Q 2F8 ADT  636  3E8 i      ZONE DE TRANSACTION  7F0   f   ADL    520 OCTETS    7 L FFFFFFFF      636   232  228 OCTETS  TREMENTS     8E0  ZONE DE LECTURE  LIBRE   900 9C0  ZONE DE FABRICATION  32 OCTETS  y       A00    Figure 6 1   La carte bancaire     travers les   ges       144     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La phot
71. CHAPITRE    TABLE DES MATI  RES       PAGE    Avant propos VII  Les lecteurs de cartes    puce 1  11 Construire ou acheter   2  12  PC SC  vers des lecteurs    g  n  riques    4  13 Des lecteurs de poche 7  1 4 Des terminaux autonomes 11  1 5 Un lecteur autonome    maison    12  16 Des serrures    cartes    puce 19  Autour des cartes asynchrones 31  2 1 D  velopper en PC SC 32  2 2 La BasicCard 34  2 3 Le ZCBasic 35  24 Des logiciels d investigation 38  25 Des logiciels g  n  ralistes 42  26 Des exp  riences d   authentification 43  2 7 Des outils connectiques 55  28 Un   espion    de cartes asynchrones 66  Autour des cartes synchrones 69  3 1 Des outils d exploration avanc  e 70  3 2 Un adaptateur PC SC pour cartes synchrones 81  3 3 Un   espion    de cartes    puce synchrones 90  Autour des cartes SIM 103  41 Une BasicSIM    PHASE 2     104  42 Explorer les cartes    SIM Toolkit    105  43    Bricoler    les SMS 112  44 Des exp  riences d   authentification 127  Autour des cartes    sant      129  5 1 La carte Vitale   une carte    SCOT      130  5 2 Des myst  res    dissiper 132    vV       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE a r UO aM  PLUS LOIN AVEC LES CARTES    PUCE    5 3 Une n  cessaire surveillance 133  5 4 Des copies de sauvegarde   135  5 5 Et avec un lecteur de poche    136  5 6 Des exp  riences d   authentification 138  6 Autour des cartes de paiement 141  6 1 L   volution des cartes bancaires 142  6 2 Par o   commen
72. FF FF FF FF FF FF FF    lt  00 01 00 00 00 20    gt  9000  SWL SW2               gt  43 41 52 54 45 53 39 38 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF    FF FF FF FF FF FF FF FF       ST14C02C  ST14C04C  STMicroelectronics      Philips     GEMIK  GFM2K  GFM4K  GFM8K  Gemplus   Open 2K  Open 4K  Schlumberger             Update  m Memory area to be updated    Start  Length  fzo Read Again      43 41 52 54 45 53 39 38  FF FF FF FF FF FF FF FF  FF FF FF FF FF FF FF FF       00 00       Write options    Normal  tre HE SeECted COrntECt WIE  Gl Erase the complete card content with FE    Wiehe comp ete cardicarnterit WA  oo 00    Cie poecihe MENON        Cie can the menoy  M Backup bteneoed    Vemeounten                                D  marrer     f CardEasy R Paint Shop Pro      78       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle                          DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE       AUTOUR DES CARTES SYNCHRONES    Les cartes de cette famille offrent un acc  s totalement libre aux  donn  es qu   elles contiennent  aussi bien en lecture qu en   criture     Organis  e par octets  et non plus par bits   leur m  moire peut  atteindre une capacit   de 2 Ko  soit 16 384 bits     Leur protocole de communication est conforme    la sp  cification  I2C  la ligne SCL du bus correspondant au contact d horloge  et  la ligne SDA au contact d   entr  e sortie de donn  es     Le cas   ch  ant  les cartes    puce I2C 
73. IEI  Information Element Identifier  peut prendre  256 valeurs diff  rentes  dont certaines sont des plus    sensibles      contenus destin  s    des interventions    Over The Air    dans la  carte SIM  par exemple        En ce qui nous concerne  le contenu utile de l en t  te est fort  anodin   un texte  en ASCII    8 bits     d  crivant une courte parti   tion musicale selon le codage    iMelody        D  velopp   par l association IRDA  http   www irda org  stan   dards pubs imelody pdf   ce format de description de m  lodies  a l avantage de se pr  senter sous une forme directement lisible      BEGIN  IMELODY  VERSION 1 0  FORMAT   CLASS1 0  MELODY   d3e4d4e3   END   IMELODY    On peut trouver d innombrables fichiers iMelody  portant  l extension  IMY  sur Internet  en obtenir par transcodage depuis  d   autres formats musicaux  RTTTL  MIDI  etc    ou bien  et c est  de loin le plus motivant    en   crire de toutes pi  ces si l   on poss  de  quelques notions de solf  ge     Le format iMelody permet  en effet  de transcrire les caract  ris   tiques essentielles d   une partition  que sont la hauteur et la dur  e  des notes     Dans le cas le plus simple  une note sera cod  e sous la forme  d une lettre  minuscule  suivie d un chiffre     Selon une correspondance famili  re aux musiciens  c  d  e  f  g  a  et b repr  sentent Do  R    Mi  Fa  Sol  La et Si     On peut ajouter un b  mol   amp   ou un di  se     devant une note   tandis qu   il est obligatoire de faire suivre
74. M     Tout le d  tail du fonctionnement du SHA 1 est en effet public   puisque d  crit dans le document FIPS 180 1 du Federal Information  Processing Standards am  ricain  http   www itlnist gov  div897   pubs fip180 1 htm      En pratique  SHA 1 extrait un    condens       Hash  de 20 octets   de toute suite d   octets de longueur quelconque que l on voudra  bien lui soumettre     Dans notre cas  il s agira de la concat  nation de la clef secr  te et  de la cha  ne al  atoire     concurrence de 256 octets  ce qui est  amplement suffisant pour l usage qui est le n  tre     Bien que pr  vu pour   tre charg   dans une ZC 3 3 ou dans une  ZC 39  qui sont des cartes    protocole T  1  le programme     DONGLE BAS    a   t   con  u pour pouvoir    ventuellement     tre r  utilis   en mode T   0     iR 2 R  A  BasicCard  ER The first smart card you  can program in BASIC    ZeitControl cardsystems GmbH       http   www basiccard com    47    La BasicCard      Professional     est bi protocole  T 0ouT 1        DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________      PLUS LOIN AVEC LES CARTES A PUCE    C est pour cette raison qu il est fait appel    deux commandes  distinctes  DONG et RESP   respectivement entrante et sortante     En pur T  1  il aurait   t   possible de combiner ces deux com   mandes en une seule     la fois entrante est sortante     Cette l  g  re complication accentue la ressemblance avec la com   mande    RUN GSM ALGO
75. M 03 40 et GSM 03 38  Rappelons qu elles sont de  nature publique  et t  l  chargeables gratuitement sur  http   www etsi org     Des paiements   lectroniques par SMS    Le paiement par t  l  phone portable   bi fente       quip   d   un  lecteur de carte bancaire  est bas   sur une carte SIM    phase 2       h  bergeant une application    SIM Toolkit    sp  cialis  e     117       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________      PLUS LOIN AVEC LES CARTES    PUCE    Ce v  ritable logiciel embarqu   communique  d une part  avec  l utilisateur par l afficheur et le clavier  et d autre part  avec le  serveur mon  tique par   change de SMS    pas forc  ment crypt  s     Normalement   mis et re  us sans que l utilisateur ne s   en rende  compte  ceux ci peuvent   tre d  tourn  s de leur itin  raire normal   moyennant un peu d   astuce     L exemple suivant est une    facturette    re  ue par un mobile  en  r  ponse    une demande de rechargement de sa formule pr  pay  e      ce stade  il ne s   agit que d   une op  ration    pro forma     que l   on  peut valider  en l   authentifiant avec une carte bancaire  ou aban   donner     Le mobile ayant initi   la proc  dure de rechargement a   t   arr  t    juste apr  s la s  lection du montant de la recharge  puis sa carte  SIM a   t   retir  e     Ins  r  e imm  diatement dans un autre t  l  phone  suffisamment  vieux pour ne pas supporter le    SIM Toolkit     celle ci a accueill
76. PLUS LOIN AVEC LES CARTES    PUCE                                                          1N4001    oP    P 12V  oatsv   PIJN Finas   22  1004F    i 0 47 uF   47 Hi  7m 2N2222 se  O    fi 7  Utilisation   OD al  6 8 5 6      1 000 uF       o    kQ L kQ  Tir 4 4  270Q     Led  N C   N   ISO l b b  Le      Vers connecteur de carte    puce      Figure 1 9     Sch  ma de la serrure    personnalisable     sur une simple pile de 9 V  mais il n   est nullement interdit  d utiliser une alimentation secteur ou une batterie  par exemple  celle d   une centrale d alarme      Dans tous les cas  un r  gulateur 78L05 fait travailler le PIC sous  5 V  tandis qu un transistor permet au relais de fonctionner     partir de la tension non r  gul  e  9    15 V      La r  alisation pratique du module principal suppose la gravure  d   un circuit imprim   conforme au trac   de la figure 1 10  puis son  c  blage selon le plan de la figure 1 11     Un bornier    quatre circuits sert au raccordement de la source  d alimentation et du circuit command   par le contact du relais   utilisation   tandis qu   un tron  on de barrette s  cable    double  rang  e de picots carr  s coud  s permet l   enfichage de la prise  HE 10    dix contacts du c  ble provenant d   un connecteur de  cartes    puce     24       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       LES LECTEURS DE CARTES    PUCE    SRE RELAIS 12 
77. Q   1x47Q   1x150 Q   3x3 9kQ   3 x 5 6 KQ   1x27 pF   1x47 pF 16 V radial   2 x 0 22 uF   Relais DIL 12 V 2RT  Bornier 4 circuits 5 08 mm  Barrette s  cable    doubles  picots carr  s coud  s  Barrette s  cable    picots  carr  s droits   Cavalier de court circuit  2 54 mm    Le circuit imprim    principal de la serrure        22       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    LES LECTEURS DE CARTES A PUCE    Rappelons que ce microcontr  leur  particuli  rement   conomique   ne contient pas d EEPROM de donn  es  et dispose de beaucoup  moins de lignes d   entr  e sortie  ce qui change tr  s sensiblement  la donne      On sait bien que tout l int  r  t d   une serrure    carte    puce r  side  dans l   infinie vari  t   des codages envisageables    partir de cartes  de r  cup  ration    ventuellement reprogramm  es     Une simple t  l  carte usag  e  par exemple  renferme un    num  ro  matricule    unique  facile    lire dans sa m  moire mais tr  s difficile     modifier ou    contrefaire     Une serrure programm  e pour reconna  tre cet identifiant ne  pourra  par cons  quent    tre actionn  e que par cette seule et  unique carte     moins d arriver    en fabriquer un    clone    fid  le     Diverses approches sont envisageables pour que plusieurs    clefs     puissent ouvrir la m  me    porte         e programmer la serrure avec une liste limitative d identifiants  devant   tre indiff  remment reconnus      e utiliser des cartes contena
78. RICK    Mot d option  1 1 1 1 1101000  ADL   08E0 ADT   0280 ADC   0280 ADM   0260 AD2   0248    ADS   0230  Ep   0  Zone de transaction prot  g  e en   criture   Lp   0  Zone de transaction prot  g  e en lecture   AD1   0210    N   de fabricant  1  CP8 Oberthur   N   de s  rie   00000000000000011111111111    146       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     Mot       CHAPITRE    AUTOUR DES CARTES DE PAIEMENT    des verrous  1 0 0 1 1  10011   carte en phase    d utilisation     6 3    L HISTORIQUE DES TRANSACTIONS    Occupant entre 50 et 80   de la capacit   m  moire de la puce  la  zone de transaction ne peut   tre lue qu apr  s pr  sentation et rati   fication d   un code confidentiel valide     Il est donc bien clair que le porteur de la carte est parfaitement  fond      prendre connaissance de son contenu  soit avec un lecteur  du commerce  Xiring  Lexibook  etc    soit   et pourquoi pas    au  moyen d   un logiciel pour PC     D  s 1995  l auteur r  v  lait dans son ouvrage PC et cartes    puce  comment proc  der    l op  ration avec un lecteur    construire soi   m  me     Les choses   tant naturellement plus confortables avec un lecteur  PC SC  une application ZCBasic  ADT EXE  a   t   d  velopp  e  depuis pour d  charger  sur disque  l int  gralit   de la zone de  transaction de toute carte bancaire suffisamment r  cente     Cette restriction est li  e au fait que  pour d
79. RITHM    des cartes SIM  auxquelles  nous avons d   ailleurs emprunt   la classe ISO AOh et les codes  op  ratoires 88h et COh     Voyons donc comment est programm  e la commande DONG      Declare ATR  DONGLE    include Sha 1 def   Public P  As String   Public KEY    c 2001 Patrick GUEULLE     Command  amp HAO  amp H88 DONG S  Disable Le   SW1SW2  amp H9F14   E  KEY  S    P  ShaHash E     End Command    Command  amp HAO  amp HCO RESP Lc 0 S    S  MID  P  P1P2 1 Le   End Command    En fait  le code source d   un programme    carte    consiste surtout     d  finir  limitativement  le jeu de commandes que devra recon   na  tre la carte     Chacune d elles est identifi  e par un octet CLA  ici AOh  et un  octet INS  ici 88h      Les donn  es entrantes ou sortantes  v  hicul  es par la commande   passent tr  s simplement par une cha  ne  en l occurrence S       tant ici pr  cis    Disable Le  que la commande est entrante  la  carte re  oit des donn  es  mais n   en retourne pas      La seconde ligne de la commande fixe la valeur des deux octets  de compte rendu  SW1 et SW2  que la carte doit renvoyer  une  valeur par d  faut de 9000h   tant utilis  e en l absence d instruc   tions contraires  ici 9F14h      La troisi  me ligne exploite le bloc de donn  es re  u par la carte   en le concat  nant avec KEY    une cha  ne qui  ayant   t   pr  ala   blement d  clar  e    public     est accessible    partir de tout point  du programme     48       DUNOD 2004   Plus loin avec les cartes 
80. T      130  5 2 Des myst  res    dissiper 132  5 3 Une n  cessaire surveillance 133    5 4 Des copies de sauvegarde   135  5 5 Et avec un lecteur de poche    136  5 6 Des exp  riences          d   authentification 138  6 Autour des cartes de paiement 141  Le c  d  rom du livre 159                129       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________      PLUS LOIN AVEC LES CARTES    PUCE    Un peu partout dans le monde  il se dessine une tendance    la  simplification des proc  dures bureaucratiques  gr  ce    des outils  informatiques au premier rang desquels figurent les cartes    puce     C   est particuli  rement net en mati  re de cartes d assurance  maladie  voire de    cartes sant      au sens le plus large du terme     Mais ce n   est qu une   tape sur le chemin d   un v  ritable    e   gouvernement      il faut s attendre  semble t il     ce que chacun  poss  de un jour une carte    multiapplication    qui remplacera      elle seule  la carte nationale d identit    la carte d   assur   social   le permis de conduire  la carte d     lecteur  voire certains moyens  de paiement et de signature   lectronique     Cela soul  ve tr  s naturellement des interrogations en mati  re de  s  ret   et de protection de la vie priv  e  que seule une franche  transparence pourrait vraiment dissiper     Or  on en est tr  s loin   le    culte du secret    a la vie dure  m  me  s il a   t   amplement d  montr   que  loin de contribu
81. UE     du dossier    CB    de notre c  d  rom contient une application  Windows en bonne et due forme  capable d afficher et imprimer  l int  gralit   de l historique d une carte bancaire BO   ins  r  e dans  un lecteur PC SC correctement install       D  velopp   en Delphi 3  code source fourni dans le sous r  pertoire     DELPHI      ce logiciel sous traite l essentiel de son travail     l application ZCBasic  appel  e par un m  canisme  CreateProcess   qu il n   est pas inint  ressant d examiner     Le m  me subterfuge pourrait  en effet    tre employ   dans bien  d   autres circonstances  pour d  velopper en PC SC sous ZCBasic   sans pour autant renoncer    l interface graphique Windows     Reste que pour l utilisateur final  l installation est extr  mement  simple   il suffit de double cliquer sur SETUP EXE  et un assistant  cr     avec Installshield Express se charge de tout      Mais pour les inconditionnels du mode    console     un fichier  batch  CB BAT  permet d encha  ner la panoplie compl  te des  ex  cutables compil  s avec le kit BasicCard 4      SET ZCPORT 101  ADL exe   ZCdecADL exe   ADT exe   Type ADT 1og More gt CON    En pr  sence d   un lecteur PC SC  on obtiendra d   abord l affichage  en clair de tout le contenu de la zone de lecture  zone de fabrica   tion comprise  de la carte bancaire que l   on voudra bien y intro   duire     Apr  s pr  sentation du code confidentiel  on visualisera aussi le  contenu de la zone de transaction  en Francs ou en centi
82. UNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE    LES LECTEURS DE CARTES    PUCE          Contact N O     pr  sence carte                        Connecteur de  carte    puce   position ISO        o                                                                              SCL CLOCK 3  CNRS SDA DATA  N   ISO  IE nE  i contacts  T   M  Data LED   hexa   si r  tro     Afficheur LCD   clair    PET  2 lignes   16 caract  res Sch  ma  du lecteur autonome  programmable  en Basic     teur   surmont   d   une ligne rappelant ses adresses de d  but et de  fin en hexad  cimal  ce qui fournit l   occasion d exp  rimenter avec  plusieurs formes possibles de l instruction PRINT      Le cas   ch  ant  il serait d   ailleurs extr  mement facile de modifier  le programme pour que l affichage se fasse en d  cimal ou en hexa     DEVICE 16F84   INCLUDE LCD   INCLUDE I2CBUS   DIM     B  C  F  G  H  INIT LCD PortB    15       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE   E  PLUS LOIN AVEC LES CARTES    PUCE    INIT I2CBUS    for g 0 to 15   CLS   H   16 G   C   H 15   PRINT  H                 C   CURSOR 1 2  FOR F 0 to 15   B H F   A MEMREAD B    PRINT  A   NEXT F   GOSUB tempo   GOSUB tempo   GOSUB tempo  NEXT G   CLS   PRINT  Lecture terminee    CURSOR 1 2   PRINT  Retirer la carte    STOP   tempo  delayms 255    delayms 255    return  END    Toute la complexi
83. V B      2N2222 RE   f  1000 uF    6 8 kQ     mm    oG      78L05    22Q 0 47 uF       Figure 1 10   Trac   du  circuit imprim       Figure 1 11   Plan de c  blage     Liste des composants   1 PIC 12C508    programmer   LOCK508 HEX   ou TEST508 HEX    1 x 78L05   1x 2N 2222   1x 1N 4001   1x 1N 4148   1 Led rouge   3x22 Q   1x5 6 kQ   1x 6 8 KQ   1x3 9 KQ   1x270 Q   3 x 0 47 pF   1x100 pF 16 V radial  1x 1000 pF 6 V radial    Le montage sera install      en lieu s  r     autrement dit    l int  rieur Relais 12 V 2RT DIL  des locaux prot  g  s  par exemple au dos d   une porte   mais pas Bornier 4 circuits  trop loin du connecteur    viter de d  passer 50 cm de c  ble m  plat   5 08 mm    Barrette s  cable    L ex  cution m  canique d  pendra largement des conditions dans    doubles picots  lesquelles sera utilis  e la serrure  une technologie    antivandales    carr  s coud  s    devant   tre envisag  e dans les cas les plus difficiles     Il aurait naturellement   t   fort imprudent de r  unir tous les com   posants du montage sur le m  me circuit imprim   que le connec     25       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    La serrure  personnalisable           teur de carte  faute commune    bien des d  veloppements    pro   fessionnels    dont il faut d  plorer la conception aussi simpliste     Dans certains h  tels  il suffit m  me de retirer les vis d   un   robuste    plastron  pour pouvoir extraire tout le montage et  acc  der    d
84. a mon  tique  ou la t  l  phonie mobile  sont l   pour en t  moigner      Une    recette    permettant d imiter le protocole    T   0    avec un  PIC est d ailleurs d  taill  e dans notre ouvrage PC et cartes    puce     D un autre c  t    nous avons d  montr   au chapitre 1 qu il   tait  extr  mement simple de lire une t  l  carte avec un PIC  et l     cri   ture n   est gu  re plus compliqu  e        Toute l originalit   du pr  sent projet consiste    r  unir ces deux  techniques dans un seul et m  me PIC  ins  r   entre un connecteur  de cartes    puce et une    fausse carte    en circuit imprim   de  8 10 mm     Un    prolongateur    actif  en quelque sorte  venant s   intercaler  entre la t  l  carte et le lecteur PC SC     Sur le plan mat  riel  rien de plus simple comme en t  moigne le  sch  ma de la figure 3 3        part un condensateur de d  couplage du Vcc et une r  sistance  de tirage sur la ligne de donn  es de la carte synchrone  il ne  s agit que d amener au PIC les contacts des connecteurs    m  le  et femelle        On n   a m  me pas besoin d alimentation ni de g  n  rateur d hor   loge  tout cela   tant fourni par le lecteur PC SC        vrai dire  c   est surtout la r  alisation pratique qui appelle quel   ques commentaires     Deux circuits imprim  s distincts devront   tre grav  s  l   un sur  de l     poxy simple face    mince    de 8 10 mm  figure 3 4   et  l autre sur de l   poxy simple face    ordinaire    de 16 10 mm   figure 3 5      82       DUNOD
85. a zone d   tat  celle ci a alors pu   tre r  duite     128 bits  au grand b  n  fice de la zone de transaction  d   une  capacit   record de 816 octets  80   de la m  moire disponible   avant recyclage     Cela  jusqu      ce que l   on s   aper  oive qu une clef cryptographique  de 90 bits ne pr  sentait plus des garanties de s  curit   suffisantes   d o   une extension    270 bits de ce    jeu secret        En contrepartie  la zone de transaction est tomb  e    la capacit    encore confortable de 792 octets  sauf chez les banques se r  ser   vant une    zone confidentielle    de 156 octets     Souvent compl  tement vierge     FFh   cette zone pourrait bien  avoir un rapport avec certains projets  parfois mort n  s  de     porte monnaie   lectronique        L   tape suivante concerne la    zone de lecture     dans laquelle  r  sident des informations   quivalentes    ce qui est emboss    dans le plastique  num  ro  identit   du porteur  date de validit      ainsi que la fameuse    valeur d   authentification    de 320 bits   dite    prestataire 03h         145       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUL  PLUS LOIN AVEC LES CARTES    PUCE    L apparition  dans cette zone    lecture libre  d   un bloc de 112 octets    4 octets d en t  te   2E 16 70 3A   baptis      prestataire 16h      fait penser    une seconde valeur d   authentification  d   une lon   gueur tournant cette fois autour de 784 bits utiles     Cela serait assez c
86. aire     Cela peut s effectuer au moyen d   un m  canisme encore plus  simple  suffisamment m  me pour pouvoir   tre programm   dans  une BasicCard    Compact        Dans le jargon des d  veloppeurs d applications    cartes    puce      on appelle volontiers    authentification interne    le processus  permettant    une carte de prouver son authenticit    sans pour  autant r  v  ler aucun secret     Le    dongle    dont nous venons de d  crire la r  alisation fonc   tionne selon ce principe     Dans le processus inverse  commun  ment appel      authentifi   cation externe     c est le terminal qui doit prouver    la carte qu il  conna  t la clef secr  te qu elle contient  mais qui ne doit   tre trans   mise sous aucun pr  texte     C   est alors la carte qui fournit     la demande du terminal  un  nombre al  atoire  et le terminal qui retourne    celle ci le r  sultat  d   un calcul cryptographique effectu    l   encore  par les deux  parties en pr  sence     Si l   authentification interne sert surtout    n   accorder une presta   tion  ex  cution d   un logiciel  acc  s    un r  seau  validation d   un  paiement   qu au d  tenteur d   une carte bien pr  cise  l authentifi   cation externe a plut  t pour vocation de prot  ger l acc  s    des  donn  es    sensibles    stock  es dans la carte elle m  me     Dans un cas comme dans l   autre  on est    cent lieues de l   incroya   ble na  vet   avec laquelle certaines applications    profession   nelles    se contentent d   un c
87. ait  h  las  que fort peu de chances de s imposer au pays de  Colbert       151       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       PLUS LOIN AVEC LES CARTES    PUCE    MONDEX   peut   tre   le porte monnaie    lectronique id  al             Theure o   l auteur   crit ces lignes  tout laisse    penser qu un  PME franco fran  ais payant  centralisateur  et potentiellement  indiscret  ne fera pas vraiment l unanimit       Faudra t il donc l incorporer    de gr   ou de force    dans les cartes  bancaires  lors de leur renouvellement  que l   on peut cependant  toujours refuser          Mais le plus    croustillant     c est qu avant m  me d   avoir seule   ment touch   une carte Mon  o  on peut d  j   commencer un  semblant d exploration      Cela  en mettant    contribution des lecteurs de poche     commen   cer par celui qui accompagne les kits BasicCard du commerce     Le lecteur de poche   Pocket Reader   des kits BasicCard        152       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES DE PAIEMENT    D une fa  on g  n  rale  ce    Pocket Reader    reste trop souvent  inemploy    et c est fort dommage      Il faut dire que l application programm  e dans la carte de  d  monstration qui l accompagne ne met pas vraiment l   eau    la  bouche     Elle a  tout de m  me  l int  r  t de montrer les diff  rentes variantes  de 
88. ation    CardEasy     offerte par ACS sur le c  d  rom de cet  ouvrage     Son installation  Setup  met automatiquement en place le driver  propri  taire  totalement ind  pendant du driver PC SC   il faudra  donc parfois    forcer    l environnement dans lequel on souhaite  travailler      Si le driver PC SC a d  j     t   install    il ne faudra brancher le  CyberMouse sur le port s  rie qu apr  s le d  marrage r  ussi de  Windows  par exemple    l   aide d un commutateur R5232 manuel   si l on pr  f  re op  rer en mode    propri  taire           d  faut de cette pr  caution  le lecteur ne pourrait pas   tre  d  tect   sur le port s  rie  celui ci   tant d  j   accapar   par le driver  PC SC     L application    CardEasy    doit   tre un peu consid  r  e comme  une    vitrine    des possibilit  s du CyberMouse  que le fichier  d aide et le manuel PDF d  crivent par le menu  r  pertoire     DOC    du dossier    ACS    du c  d  rom      En plus des cartes asynchrones  avec leurs classiques commandes  ISO 7816 ou    APDU     le CyberMouse  ACR 20  supporte la  quasi totalit   des cartes synchrones existantes  avec leurs   ven   tuelles fonctionnalit  s sp  cifiques  par exemple l   authentification  cryptographique des    Eurochip          En pratique  le logiciel dialogue avec le CyberMouse au moyen  de commandes sp  ciales  que le microcontr  leur du lecteur  traduit en    micro instructions    de bas niveau  propres    chacune  des familles de cartes support  es     Des rest
89. caract  ristiques tout    fait sp  cifiques  et d   ailleurs  fort int  ressantes  ces composants sont couverts par pas moins de  trois codes famille distincts     Bien que le fichier d aide de CardEasy fournisse des informations  relativement d  taill  es  on ne saurait trop conseiller de se repor   ter aux documentations du fabricant     D une fa  on g  n  rale  il convient d   ailleurs de noter que certaines     puces    sont produites en concurrence  parfois avec de subtiles  diff  rences  par plusieurs marques de semiconducteurs  et que  les fabricants de cartes s   approvisionnent volontiers aupr  s de  sources diversifi  es     Les t  l  cartes de France Telecom  par exemple  sont indiff  rem   ment   quip  es de puces d   origine STMicroelectronics ou Texas  Instruments     En principe  CardBasy sera utilisable avec toutes les r  f  rences  de puces ou de cartes r  unies sous un m  me    code famille      et avec leurs   quivalents existants ou    venir    ventuellement  disponibles sous d   autres marques     Retenons par cons  quent que cette liste n   est en rien limitative      En pr  sence d   un lecteur ACR 30  seul un sous ensemble de cette  liste serait support    couvrant cependant l essentiel des cas de  figure les plus int  ressants  l onglet    About    de CardEasy  affiche  entre autres d  tails techniques  la liste des codes famille  des cartes effectivement support  es par le lecteur en place      Pour   tre parfaitement honn  te  nous devons reconna  t
90. cer l exploration   143  6 3 L historique des transactions 147  6 4 Des exp  riences d   authentification 149  6 5 Vers les cartes    EMV    150  6 6 Et voici    Mon  o      151  7 Le c  d  rom du livre 159  VI       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    AVANT PROPOS    Qu on le veuille ou non  la carte    puce n   est d  cid  ment plus la     chasse gard  e    d   un club tr  s ferm   de professionnels      N importe quel PC peut d  sormais   tre   quip   d   un lecteur de  cartes    puce aussi facilement que d   une souris  et pour    peine  plus cher  tandis que se d  mocratisent des lecteurs de poche  faisant entrevoir le contenu des cartes les plus populaires     Des outils de d  veloppement sur PC  puissants et gratuits   viennent en m  me temps faciliter la cr  ation de logiciels capables  de lire  voire   crire  dans la plupart des cartes en circulation     Certains donnent d   ailleurs    tout un chacun les moyens de  produire ses propres cartes  parfois tr  s sp  ciales      Il n   en faut pas davantage pour explorer la    face cach  e    des  diff  rentes applications    carte    que nous utilisons dans la vie  courante  et leur d  couvrir peut   tre des possibilit  s insoup     onn  es       Bien mieux  l utilisateur final de cartes    puce dispose ainsi du  n  cessaire pour   valuer lui m  me  en toute objectivit    le degr    de confiance qu il peut raisonnablement leur accorder   et apr  s  tant d ann  es de   culte du s
91. circuits imprim  s des  montages propos  s  ainsi que de puissants outils de d  veloppe   ment offerts par les partenaires qui nous ont aid  s    concr  tiser  ce projet     R  pertoire ACS    On trouvera ici toute la documentation relative aux lecteurs  ACR 20 et ACR 30 d ACS  http   www acs com hk   ainsi que  plusieurs versions de leurs drivers  aussi bien PC SC que     propri  taires        Accompagn   de son code source en langage C  l utilitaire  ANALYSER EXE permet d analyser la    r  ponse au reset     ATR   de toute carte asynchrone ins  r  e dans un ACR 20 s  rie  ou dans  un    CyberMouse        Pr  cisons que le lecteur doit fonctionner en mode    propri     taire      si son driver PC SC a   t   install    on ne branchera le  lecteur sur le port s  rie qu apr  s le d  marrage r  ussi de Windows     R  pertoire BasicCard    Ce dossier contient l int  gralit   du kit de d  veloppement Basic   Card  dont le langage ZCBasic   et sa documentation en format  PDF     L ouverture du fichier BasicCardKit msi d  clenche l installation  de la version 4 52 du kit logiciel de la BasicCard  pourvu que  l utilitaire    Microsoft Installer    soit d  j   install   sur le PC        d  faut  InstMsiA exe et InstMsiW exe  selon votre syst  me   sont fournis pour proc  der au pr  alable    cette installation     Le fichier bck4_32 zip contient  pour sa part  la version 4 32   celle l   m  me dont l   auteur s   est servi pour d  velopper les appli   cations PC SC offertes sur ce c  
92. com   le prototype de la    Cartulette     avait d  j   fait sensation au salon CARTES 91     Permettant  d  s cette   poque  de consulter l historique des tran   sactions d   une carte bancaire  ou de lire le solde d   unit  s d   une       DUNOD   La photocopie non autoris  e est un d  lit     7       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __     PLUS LOIN AVEC LES CARTES    PUCE    t  l  carte  cette maquette avait pour objectif plus lointain de sup   porter le    PME     autrement dit le Porte monnaie   lectronique   dont La Poste nourrissait l ambition d     tre un acteur majeur     Quelques ann  es plus tard  une version    coupleur acoustique  incorpor     tait imagin  e   l anc  tre  en somme  de bien des pro   duits d   authentification par t  l  phone d aujourd hui      Maintenant  le lecteur de cartes    puce de poche se pr  sente sous  la forme ultra miniaturis  e d un porte clefs  ou bien d   un   tui  dans lequel la carte peut rester rang  e     De par ses dimensions plus g  n  reuses  cette seconde pr  senta   tion permet de mettre en   uvre des fonctions de type    calcu   lette     au moyen d   un clavier et d   un afficheur    plusieurs  lignes     La fabrication de masse est devenue tr  s peu co  teuse gr  ce   notamment     la technologie chip on board  Elle est  bien entendu   r  alis  e presque uniquement en Asie  soit selon des plans con  us  en Europe  soit    partir de d  veloppements locaux     C   est ai
93. compacteur d   ex  cutables     voir  par exemple  http   www   blinkinc com      Outre la r  duction de taille qui est habituellement le but princi   pal de la man  uvre  il en r  sulte g  n  ralement un cryptage qui  brouille compl  tement la clef     Tel qu il est compil    ce programme n  cessite un lecteur de cartes     puce compatible PC SC  qui peut   tre reli   indiff  remment     un port s  rie ou USB     condition que les drivers correspondants  soient correctement install  s     50       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES       d  faut de lecteur PC SC  il suffirait de remplacer la ligne  ComPort 101 par ComPort 1 ou ComPort 2 pour pouvoir utiliser la  carte    dongle    dans un CyberMouse s  rie branch   sur COM1   ou sur COM2      Les heureux possesseurs d   un kit BasicCard du commerce devront  donc recompiler CHECK BAS ainsi modifi    s ils d  sirent exp  ri   menter cette possibilit    ou tout bonnement s ils souhaitent mettre  en service les lignes REM     L   authentification    externe       Nous venons de montrer comment transformer une BasicCard     Enhanced    en un    dongle    capable de prouver son authenti   cit   au terminal dans lequel elle est ins  r  e     R  ciproquement  une carte    puce peut avoir besoin de v  rifier  que l entit   qui cherche    communiquer avec elle est bien habi   lit  e    le f
94. consid  rer que le dongle est authen   tique  car ce dernier lui a prouv   qu il contenait la bonne clef  secr  te  sans toutefois transmettre celle ci     Intercepter et r  utiliser une r  ponse du dongle ne servirait    rien   puisque la probabilit   est infime que la m  me cha  ne al  atoire  soit de nouveau   mise par le logiciel  si toutefois celui ci a bien    t     crit en respectant cette discipline s  curitaire      Enregistrer et analyser un grand nombre de couples question   r  ponse serait   galement inefficace  pour autant que l algorithme    46       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES    ait bien   t   con  u pour d  jouer cette forme courante de    crypta   nalyse        L algorithme SHA 1 se pr  te bien    ce genre de travail  et b  n     ficie pr  cis  ment d une grande confiance de la part de l ensemble  de la communaut   cryptographique internationale     Il est d   ailleurs employ   dans les plus s  curis  s des    iButtons     de Dallas  les DS 1961S et DS 19635     vocation mon  tique     Inutile  donc  d y chercher  car elles auraient depuis longtemps    t   trouv  es    des failles comparables    celles mises en   vidence   d  s 1998  par des universitaires am  ricains dans le tr  s confi   dentiel    COMP128     l algorithme d   authentification implant    par d  faut dans les cartes SIM des t  l  phones GS
95. ctiveX de  m  me provenance        la fois performant et bon march    le    CyberMouse    est large   ment compatible avec l ACR 20S  parfois baptis      Yuhina       et   quipe notamment le fameux kit BasicCard     Cela pour sa version s  rie RS232  car il existe aussi un mod  le  USB  ACR 20 U   ainsi que des variantes    all  g  es     ACR 30 S  et ACR 30 U     Moyennant l installation d   un driver appropri    tous ces lecteurs  fonctionnent fort bien en mode PC SC  ce qui permet de les  consid  rer comme des lecteurs de cartes    puce    g  n  riques     pour Windows  voir chapitre 1      Dans cette configuration  on mettra essentiellement en   uvre  des cartes    puce    asynchrones     autrement dit    microproces   seur  op  rant en protocole T   0 ou T   1     En mode    propri  taire     il est possible de d  velopper des appli   cations Windows d  di  es  qui ne fonctionneront bien   videmment  qu avec un lecteur de la marque  cela par l entremise d   un driver  sp  cifique  ACSR2032 DLL      Ce contexte se pr  te tout particuli  rement    la d  couverte des  vastes possibilit  s du CyberMouse en mati  re de cartes    puce  synchrones     70       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES SYNCHRONES    Sans m  me   crire une seule ligne de code  il est possible de se  livrer    d innombrables exp  riences en installant simplement  l applic
96. d  rom     159       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________       PLUS LOIN AVEC LES CARTES    PUCE    Les versions suivantes seront disponibles  au fur et    mesure de  leur sortie  sur http   www basiccard com  en t  l  chargement  gratuit     R  pertoire CardEasy    Ce dossier contient  dans le sous dossier    Setup     la version  compl  te du logiciel CardEasy offert par ACS  sp  cifiquement  destin   aux lecteurs de cartes    puce    CyberMouse     ACR 20   ou ACR 30 de cette marque  on ne tentera donc pas de l utiliser   par exemple  avec un lecteur    maison           Une documentation pr  sentant ces excellents lecteurs est fournie  dans le sous dossier    Doc        R  pertoire CB    Il y a l   le r  sultat de plus de dix ans d   exp  rimentation autour  des cartes bancaires      e un jeu de programmes d exploration    crits en ZCBasic   pouvant   tre utilis  s s  par  ment ou appel  s    tour de r  le par  CB BAT      e une application Windows de lecture de l historique des tran   sactions sur un lecteur PC SC  sous r  pertoire    Historique       Notons que son code source complet est fourni  dans le sous   dossier    Delphi         e diff  rents programmes ZCBasic permettant de proc  der aux  exp  riences d   authentification du chapitre 6  sous r  pertoire     Auth         R  pertoire CyberMouse   Ce r  pertoire contient la documentation et les drivers du lecteur     CyberMouse      quipant les kits Ba
97. d instruction inconnue      SW1SW2   6E00h      De m  me  chacun est libre de choisir    sa guise  et selon l   inves   tigation    effectuer  le contenu des    caract  res historiques    de  la r  ponse au reset  premi  re ligne du code source      Une fois la carte retir  e du terminal  on se servira du    Pocket  Reader    pour prendre connaissance  sans   quipement lourd  de  ce qu elle aura ainsi enregistr       Il s   affichera  RST          chaque fois que le terminal aura remis  la carte    z  ro  lors d une ou plusieurs sessions successives    0000000000 lorsque rien n aura   t   enregistr    ou bien les cinq  octets  soit dix caract  res hexa  d   en t  te des commandes re  ues   Attention  toutefois     ne pas confondre    b    avec    6     ou bien    B  avec  8       Chaque bloc de donn  es lu   tant aussit  t effac    la carte est  imm  diatement pr  te    servir de nouveau d  s que son contenu a    t   visualis    autant que possible en entier     155       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUL  PLUS LOIN AVEC LES CARTES    PUCE    Comme nous le laissons entendre depuis un moment  il est int     ressant d   exp  rimenter cette carte sur des lecteurs destin  s au  porte monnaie   lectronique    Mon  o        En effet  celui ci fonctionne en T  1  cons  quence directe de  l emprunt  par notre pays pourtant    leader de la carte    puce      de la technologie vieillissante de la    GeldKarte       allemande     Cela
98. dant aux cartes avec  puce en position    ISO    sont connect  s  ce qui est compatible  avec toutes les T2G et avec les derni  res s  ries de T1G     83       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE                    E  PLUS LOIN AVEC LES CARTES    PUCE    Figure 3 4   Trac   du circuit  imprim   8 10 mm     Figure 3 5   Trac   du circuit  imprim   16 10 mm        Dans le cas  peu probable  o   l   on tiendrait absolument    pouvoir  op  rer aussi sur de    vieilles    cartes avec puce en position    84       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE          DUNOD   La photocopie non autoris  e est un d  lit     AUTOUR DES CARTES SYNCHRONES       TANS    Dans lecteur PC SC      poxy  8 10    r 5  9000000000     PIC16F84       i  00000000 0      Support    wrapper     Connecteur de Figure 3 6   Carte    Puce Plan de c  blage       poxy  16 10 Liste des composants  PIC 16F84     programmer   SYNC HEX   1 x 39 kKQ  1X01uF  connecteur     de cartes    puce  support    wrapper  T  l  carte DIL 18       AFNOR  il suffirait de souder huit courts fils de c  blage c  t    cuivre  pour mettre en parall  le les deux jeux de balais que l   on  trouve encore sur certains connecteurs  les pastilles correspon   dantes sont pr  vues   Tel est le prix    payer pour   chapper    un  circuit double face       85       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    Figure 3 
99. de l agenda    SIM Toolkit    r  side  dans un serveur h  berg   par l op  rateur       Outre les probl  mes de confidentialit   et de s  curit   que cela  pose  il en r  sulte qu un SMS  sinon plusieurs  est   mis    chaque  fois que l utilisateur consulte ou actualise son agenda      La mise en   vidence irr  futable de ce genre de pi  ge suppose  des investigations assez pouss  es  par exemple au moyen d un    espion   de cartes asynchrones tel que celui d  crit au  chapitre 2     Elle n  cessite   galement une bonne connaissance des modalit  s  de dialogue entre une carte    SIM Toolkit    et un t  l  phone compa   tible  autrement dit de la sp  cification GSM 11 14  t  l  chargeable  sur http   www etsi org      Comme l appellation    Proactive SIM    le laisse entendre  une  carte    Phase 2     peut prendre le contr  le du t  l  phone  alors  que selon la norme ISO 7816  c est pourtant le    terminal    qui est  le ma  tre absolu des   changes avec la carte     Cette apparente contradiction est adroitement r  solue par une  extension des valeurs que peuvent prendre les octets de compte  rendu SW1SW2  que retourne la carte apr  s avoir ex  cut   une  commande     107       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE OULUUN  PLUS LOIN AVEC LES CARTES A PUCE    Si la carte r  pond 91XX au lieu de 9000 en cas d ex  cution correcte   cela signifie qu   elle a un ordre long de XXh octets    transmettre  au syst  me d exploitation du t  l
100. dire l   criture dans un  nombre donn   d   emplacements de 16 bits  qu il est aussi possi   ble de prot  ger de fa  on irr  versible     L   encore  le montage de composants   quivalents sur une     fausse carte    en   poxy de 8 10 pourrait permettre d     muler  cette famille de cartes  ou d utiliser le CyberMouse en tant que  programmateur d EEPROM s  rie     Cartes    composants Xicor X76041 ou X76F041  code famille OAh    X76F128 ou X76F640  code famille OEh   X76F100  code famille 10h      E CardE asy  lel xi  View Help  Memory Card   ACOS1   Commands   About      Xicor aj hr   X24645  B  X76F041       Block0  Block1  Block2  Block3  E  X76F128           Key name        Write Password  8 bytes   8b    Value   Read Password                               E  X76F640  E  X76F100   Hex N a  v _ New value  ER UOTE   f  Start  0 I Change to the new value                                   lt  00 01 00 00 00 20 New Value  foo 50 00 Clear    gt  9000  SW1 SW2     gt  LE 13 10 91 FF FF 81 15 E Quit   00 04 O0 FF FF FF FF FF   D  marrer    7  CardEasy R Paint Shop Pro   BALE 11 44    80       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE          DUNOD   La photocopie non autoris  e est un d  lit     AUTOUR DES CARTES SYNCHRONES    Sp  cialiste des EEPROM  notamment s  rie  Xicor propose un  certain nombre de m  moires s  curis  es qui ne pouvaient manquer  de trouver des applications dans le domaine des cartes    puce     Pr  sentant des 
101. dit en strict    synchronisme     avec celui ci     Chaque famille de cartes    synchrones    reconna  t ainsi un jeu de     micro instructions    qui lui est propre  pour lire ou   crire un bit   atteindre une adresse donn  e  pr  senter un code confidentiel bit  par bit  etc     En principe  il faudrait au minimum un analyseur logique pour  inspecter finement le dialogue entre une telle carte et son lecteur   ce qui peut s av  rer fort instructif     Comme la fr  quence d horloge mise en jeu est presque toujours  inf  rieure    50 kHz  c est une exigence de la norme ISO 7816 3    il est cependant possible d imaginer des solutions plus simples   voire originales  et pourquoi pas   l  gantes     D  s que le dialogue avec une carte    puce atteint un certain degr    de complexit    et cela va vite     il devient difficile de proc  der     une interpr  tation en temps r  el     Les milliers d   octets   chang  s  par exemple  entre un t  l  phone  GSM et sa carte SIM  doivent n  cessairement   tre enregistr  s  puis  analys  s    t  te repos  e  voir notre ouvrage T  l  phones portables  et PC      On peut songer    pratiquer ce genre d enregistrement au moyen  d   un PC  mais   galement d   un dispositif autonome et peu encom   brant  dont on    videra    ult  rieurement la m  moire dans le PC  utilis   pour son    d  pouillement        Dans le cas particulier des cartes    puce synchrones  il est n  ces   saire de disposer d un outil capable d enregistrer plusieurs     voies 
102. dition  ao  t 2002  pour d  couvrir  si ce n   est d  j   fait   les passionnantes exp  riences auxquelles un tel outil permet de  se livrer  en toute libert   vis    vis des op  rateurs     4 2 EXPLORER LES CARTES    SIM TOOLKIT       Tout comme notre nouvelle    BasicSIM     la plupart des cartes SIM  r  centes appartiennent    la    phase 2      et sont donc compatibles     SM Toolkit    ou    Proactive SIM        Cela signifie non seulement qu elles peuvent greffer leur propre  menu sur celui du t  l  phone  mais aussi qu elles sont capables  d   mettre et de recevoir des appels ou des SMS    l insu de  l utilisateur      Cela m  rite assur  ment toute notre vigilance  car des facturations  inattendues peuvent en r  sulter  tandis qu il n   est pas invraisem   blable de craindre que ce genre de m  canisme ne puisse servir     des fins malveillantes  voire    la prolif  ration de virus d   un  nouveau genre     Cela   tant pr  cis    il faut bien reconna  tre que cette technologie  tr  s prometteuse permet aux op  rateurs  ou    des prestataires  tiers  de proposer des services extr  mement innovants  dont on ne  pourra toutefois profiter que sur un t  l  phone raisonnablement  r  cent     105       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________      PLUS LOIN AVEC LES CARTES    PUCE    Rien de plus simple que de savoir si une carte SIM est potentiel   lement compatible    STK      il suffit de lire l unique octet que  c
103. e    double rang  e de picots carr  s  coud  s     Ainsi  c est le circuit imprim   lui m  me qui fera office de d  trom   peur  l   ergot de la fiche venant buter dessus si celle ci est pr  sent  e  dans le mauvais sens     C  t   cuivre  figure 2 4   il est pr  vu de souder  dans le bon sens     un connecteur pour cartes au format    SIM Micro     telles qu en  utilisent les t  l  phones portables     R  alis   en technologie CMS  le mod  le 33 7089 de Selectronic  pr  sente l avantage d     tre muni de huit contacts  contre seulement  six pour la plupart de ses concurrents     57    Figure 2 3   Plan de c  blage  du c  t   composants     Implantation  du c  t   composants        DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       PLUS LOIN AVEC LES CARTES    PUCE    Figure 2 4   Plan de c  blage  du c  t   cuivre           Implantation  du c  t   cuivre     Cela permet  par exemple  d utiliser des t  l  cartes d  coup  es    ce  format tr  s populaire  sans passer par un adaptateur m  canique     Notons que le connecteur    SIM      tant branch   en parall  le avec  le jeu de balais    ISO    du connecteur    plein format     il convient  de ne pas laisser une carte dans l   un lorsque l on se sert de l   autre      Une    fausse carte    ISO allong  e    Sous le terme un rien provocateur de    fausses cartes     on  regroupe en fait de multiples variantes de circuits imprim  s  d   paisseur 8 10 mm  destin  s      tre ins  r  s dans toutes so
104. e   vid  e pour lib  rer au  maximum son pourtour     Le plan de c  blage de la figure 3 13 pr  voit  par ailleurs  l implan   tation de deux r  sistances de 15 000 Q  dont le but est d   viter de  laisser    en l air    les contacts ISO 8 et ISO 4  inutilis  s sur certaines  cartes     Normalement  le lecteur est cens   les mettre    la masse  mais    sur le terrain     on rencontre un peu tout et n importe quoi       Pr  cisons tout de m  me que cette    fausse carte    n   a  en aucun  cas  vocation      tre introduite dans des automates publics  tels  que ces parcm  tres qui pr  sentent syst  matiquement le code de  rechargement de la carte  m  me lors d   une simple op  ration de  lecture d   un cr  dit      puis       96       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES SYNCHRONES    i    2x 15kQ       On se doute  en effet  qu ils doivent   tre   quip  s de    d  tecteurs  de m  taux    leur permettant de rejeter les cartes munies de telles  connexions vers l ext  rieur  et donc potentiellement suspectes      Cela   tant pos    il reste maintenant    exploiter les enregistrements  ainsi r  alis  s en tout bien tout honneur     Typiquement  la m  moire 48Z08 a toujours   t   un outil de d  ve   loppeur d applications    base d EPROMS  voir notre ouvrage  Composants   lectroniques programmables sur PC   et il y a donc gros     parier que si l   on
105. e 00h   Cela implique qu    la  r  ception  il sera interpr  t      au vol     sans transiter par la carte  SIM     Normalement  il n   est donc pas question de le retransmettre    en  douce    vers un autre mobile  ni m  me de proc  der    son inspec   tion  sauf si l on s arrange pour le recevoir sur un t  l  phone non  compatible      En fait  l en t  te du SMS ne contient plus la m  lodie elle m  me    sa longueur n   est que de six octets  tandis que son type de  contenu est 05h  ce qui correspond    des    num  ros de ports     cod  s cette fois sur 16 bits   1581h  destinataire  et 0000h  prove   nance      Or  le port 1581h correspond  dans les t  l  phones Nokia  au     Ringing Tone Reader     vers lequel tout le reste du message sera  automatiquement dirig       Celui ci contient justement la m  lodie  qui se termine par un    marqueur de fin    compos   d   un bloc de bits    0     Malgr   toutes ces complications  notre programme peut   tre  transform   pour fonctionner en mode   Smart messaging       NOKGOD BAS     La principale restriction est qu   on ne pourra pas   couter  en local   la m  lodie sans la transmettre  alors que c   est tr  s faisable avec  un message    EMS        Dans N   on retrouvera  en format    noktxt     la m  lodie conte   nue dans le SMS que nous venons d analyser  la m  me d   ailleurs  que celle cod  e en iMelody dans EMSGOD BAS     Ces deux variantes ont   t   converties automatiquement depuis  une version MIDI du    God Save the Que
106. e bon sens  cuivre visible  sur ce qui  d  passe encore des picots     La continuit     lectrique sera   tablie soit par soudure  en cas de  cuivre 35 am sur Kapton   soit avec une r  sine conductrice   Elecolit 340 ou Jeltargent   si on a r  ussi    graver un autre film  m  tallis   moins co  teux     Il serait   galement possible de mettre en   uvre une cr  me     braser  gr  ce    un pistolet d  capeur thermique     Cette d  licate op  ration achev  e  on mettra en place la seconde  plaquette  dont le r  le est purement m  canique   et l on serrera le  tout par deux boulons de 3 mm plac  s en diagonale     Dans les cas o   le trac   de la figure 2 7 ne conviendrait pas  on  pourra lui pr  f  rer celui de la figure 2 10     c  bler selon la  figure 2 11     On ne saurait d   ailleurs trop recommander  pour   tre par      toute    ventualit    de construire les deux versions         63       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    Mise en   uvre  des    fausses cartes     SIM Micro     EE  PLUS LOIN AVEC LES CARTES    PUCE    Figure 2 10      gauche   Trac   de la      fausse carte      SIM Micro souple     Figure 2 11      droite   Plan de c  blage  de la    fausse carte        Un adaptateur pour fr  quencem  tre    L une des applications les plus int  ressantes de ce kit connectique  sera  naturellement  le branchement d   un dispositif   espion     entre une carte    puce et l appareil destin      l accueillir     Ce pourra aussi bie
107. ecret     sinon de d  sinformation   c est tout simplement r  volutionnaire      VII     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       CHAPITRE PAGE    LES LECTEURS DE  CARTES    PUCE    1 1 Construire ou acheter   2  1 2 PC SC   vers des lecteurs      g  n  riques    4  1 3 Des lecteurs de poche 7  1 4 Des terminaux autonomes 11    15 Un lecteur autonome    maison    12             1 6 Des serrures    cartes    puce 19  2 Autour des cartes asynchrones 31  3 Autour des cartes synchrones 69  4 Autour des cartes SIM 103  5 Autour des cartes    sant      130  6 Autour des cartes de paiement 141  7 Le c  d  rom du livre 159                1       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE OULUUN  PLUS LOIN AVEC LES CARTES A PUCE    Qu il soit connect      un micro ordinateur  int  gr      un appareil  quelconque  ou compl  tement autonome  le    lecteur    est le  point de passage oblig   pour lire ou   crire dans n importe quelle  carte    puce     Bien plus qu un simple connecteur  le lecteur de cartes    puce est  un    terminal    intelligent  qui prend plus ou moins largement  en charge les protocoles de communication de    bas niveau     avec les cartes     1 1 CONSTRUIRE OU ACHETER      Il n   y a encore que bien peu d ann  es  la question ne se posait  m  me pas  du moins pour le    simple particulier      on ne trou 
108. ect de la sp  cification  PC SC pourra  en principe    fonctionner sur n importe quel  lecteur PC SC convenablement install    avec les bons drivers     Bien entendu  l   auteur de ce livre adh  rant avec enthousiasme     cette d  marche  la plupart de ses logiciels sont d  sormais compa   tibles PC SC        ce point de notre expos    il faut bien comprendre que  fruit  d une initiative rassemblant les grands noms de la carte    puce et    4     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    LES LECTEURS DE CARTES A PUCE       DUNOD   La photocopie non autoris  e est un d  lit     de l informatique autour de Microsoft  la compatibilit   PC SC  ne prend vraiment tout son sens qu   en environnement Windows  32 bits     M  me si cette sp  cification est th  oriquement ouverte    d   autres  syst  mes d exploitation  Mac  Linux  etc    PC SC est en effet  surtout l arme secr  te de Windows pour s approprier la carte     puce et ses lecteurs     Certaines versions de Windows supportent ainsi de fa  on    native    les fonctionnalit  s    carte    puce     tandis que la mise     niveau de Windows 95  98  ou Millenium n  cessite simplement  l installation des   Microsoft Smart Card Base Components      disponibles gratuitement ou m  me pr  sents  dossier SCARD  sur  le c  d  rom d installation du syst  me     La figure 1 1 montre qu il s agit simplement d   une    couche     logicielle suppl  mentaire  venant s intercaler entre Windows  32 bits et le
109. ecteur ne se donne t il m  me  pas la peine de la v  rifier      Esp  rons tout de m  me que les donn  es mat  rialisant les droits  du porteur soient trait  es avec un peu moins de d  sinvolture     5 6 DES EXP  RIENCES D AUTHENTIFICATION    M  me s il ne sert s  rement pas autant qu il le pourrait  un  m  canisme d   authentification assez performant r  side bel et bien  dans la carte Vitale     138       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       CHAPITRE    AUTOUR DES CARTES    SANT         Il est extr  mement facile de le faire jouer  tout comme nous l avons  fait au chapitre 4 pour les cartes SIM des t  l  phones portables    tout le n  cessaire se trouve dans le r  pertoire    AUTH    du  dossier    VITALE    de notre c  d  rom     Notre programme AUTHVIT BAS permet de constater qu il fonc   tionne d   une fa  on assez sensiblement diff  rente    tablissant en  quelque sorte un    certificat       partir du contenu d   une adresse  carte librement choisie     Cela  en lui combinant une valeur al  atoire de 48 bits transmise  par le lecteur  ici  la cha  ne    AUTHEN      et naturellement une  clef secr  te qui n   est jamais directement lisible        noter que si l adresse carte       certifier    r  sidait dans une zone  prot  g  e en lecture par un code confidentiel    porteur     il faudrait  tout d   abord pr  senter et ratifier celui ci     Authentifiant    la fois la carte et son porteur  cela garantirait un  fort bon nivea
110. en    trouv  e sur un site     britannique     Les    fausses notes     en fait des sauts d   octave  que les plus  musiciens de nos lecteurs ne manqueront pas d y d  tecter  en  disent long sur la difficult   de ce genre de transcodage  qu il sera  souvent n  cessaire de fignoler manuellement     Histoire de se fixer les id  es  nous avons soumis une tr  s simple  m  lodie  en fait  une gamme     un service de conversion en ligne     Parmi ses douze formats de sortie  dont certains hautement     propri  taires     voici quelques exemples assez repr  sentatifs    125       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUM  PLUS LOIN AVEC LES CARTES    PUCE    des diff  rentes approches que l   on peut suivre pour coder une  partition     Cela avec plus ou moins de bonheur  d   ailleurs  car les informa   tions de rythme  dur  e ou tempo  ne sont pas toujours prises en  compte     Dans le format iMelody     l inverse  apparaissent les valeurs     par d  faut    de param  tres que l   on a g  n  ralement tendance     omettre  afin de ne pas trop alourdir le message     Le tempo  en particulier  mot clef BEAT    peut varier entre 25 et  900 bpm  avec une valeur par d  faut de 120    la minute     Il est int  ressant de comparer les diff  rentes notations utilis  es  pour indiquer les changements d   octave  point d  licat s   il en est   tous les formats n   utilisant pas forc  ment les m  mes valeurs par  d  faut ni la m  me syntaxe    Forma
111. en prenant la pr  caution de choisir un  support de bonne qualit   pour la m  moire 48208  que l   on aura  souvent l occasion de d  brocher et rembrocher     Sans aller jusqu      conseiller un support    force d insertion nulle   ZIF   nous recommanderons un mod  le    contacts    tulipe      autant que possible dor  s     Afin d   viter tout risque d endommagement     la longue  des  broches de la 48708  on pourra  si ce n   tait d  j   fait    installer  celle ci    demeure dans un second support    tulipe    neuf  et donc  un peu    dur         Ce sont alors les broches de celui ci  nettement plus rigides  que  l on introduira tour    tour dans le support du montage  et dans  celui du programmateur d EPROM dont nous allons bient  t  d  couvrir le r  le     En cas d accident  on aura juste    remplacer le support interm     diaire  les broches de la m  moire restant absolument intactes     On s   tonnera peut   tre de l absence de tout branchement d   ali   mentation sur ce montage  En fait  il    vole    le 5 volts dont il a    94     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE       AUTOUR DES CARTES SYNCHRONES    T  m  T  A  T       O    besoin sur le contact Vcc  ISO 1  de la carte  ce qui assure du m  me  coup le fonctionnement de son circuit de RAZ automatique     La mise en parall  le de l espion sur la liaison carte terminal n  ces   site l usage d   une connec
112. en tirera les meilleures performances en quittant compl     tement Windows  ou m  me en d  marrant carr  ment l ordinateur     partir d une disquette DOS    bootable        Il y a l   une bonne occasion de faire reprendre du service    de    vieux    PC d  pourvus de Windows   notre    espion de cartes  asynchrones     en particulier  fonctionne encore honorablement  sur un 8088 sans disque dur  cadenc         4 77 MHz     Il conviendra alors de copier les ex  cutables n  cessaires     partir  du c  d  rom  vers une simple disquette     Cette possibilit   ne devrait pas   tre d  daign  e  car elle pourra  rendre service lorsque telle ou telle exp  rience n  cessitera de  mettre    contribution plusieurs PC simultan  ment     163       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    
113. er    la s  curit    des applications les plus    sensibles     il excite fort logiquement la  curiosit      C   est ainsi que le porteur d   une telle carte risque de d  couvrir   lors d   une exploration de routine visant    se faire une id  e de ce  qu elle contient vraiment  de grossi  res failles de s  curit   dont il  n aurait jamais os   soup  onner l existence     5 1 LA CARTE VITALE   UNE CARTE    SCOT         Apr  s une entr  e en sc  ne plut  t laborieuse  la carte Vitale a fini  par faire ses preuves  au point d   veiller l int  r  t d   un certain  nombre d   autres pays      Assez proche de celle de la carte bancaire  sa technologie m  rite  assur  ment d     tre pass  e au peigne fin  compte tenu du caract  re    minemment personnel des donn  es qu elle est appel  e    g  rer     Nous verrons au prochain chapitre que la carte bancaire B0  est  bas  e sur la technologie BULL CP8  mais qu   elle n   exploite que  tr  s imparfaitement  et c   est le moins que l   on puisse dire      le puissant arsenal s  curitaire dont sa puce est pourtant dot  e     Datant forc  ment d avant 1998  l ann  e de sa mise en place dans  des r  gions test   la carte Vitale semble avoir   t   d  velopp  e sur  une base tr  s comparable  Un simple passage au    scanner      voir page 40  montre  en effet  que la carte Vitale reconna  t sensi   blement le m  me jeu de commandes  avec une    classe ISO       gale    BCh  que sa cousine germaine     130       DUNOD 2004   Plus loin avec le
114. es de code source  des applica   tions destin  es    toutes sortes de cartes existantes     Elles fonctionneront    merveille avec n importe quel lecteur  PC SC     On ne r  sistera cependant pas longtemps    l envie de programmer  aussi des cartes  pour toutes sortes d usages  m  me des plus     pointus     et on ne regrettera assur  ment pas l exp  rience     Il sera alors avantageux d acqu  rir un kit BasicCard    Pro     complet  http   www hitechtools com   qui rassemble un lecteur     CyberMouse     tous les logiciels de d  veloppement  un   pais  manuel    papier     et    un   chantillonnage de cartes     2 3 LE ZCBASIC    La BasicCard   tant une cr  ation de la PME allemande Ze  tControl   on comprend pourquoi son langage de programmation s appelle  ZCBasic     L auteur ne reviendra pas ici  une fois de plus  sur tous ses argu   ments en faveur du Basic   ses lecteurs pas encore tout    fait  convaincus les trouveront dans son ouvrage Basic pour micro   contr  leurs et PC  paru dans cette m  me collection     Remarquons simplement que le ZCBasic est un Basic compil    et  non pas interpr  t   comme GWBasic ou QBasic   de conception  ultramoderne  qui peut m  me servir    d  velopper tout autre chose  que des applications    cartes    puce           vrai dire  il faut le situer bien plus pr  s de Visual Basic que du     Basic Microsoft    des ordinateurs familiaux d il y a vingt ans     M  me s   il laisse de c  t   l interface graphique de Windows  ce que  nous nous 
115. es nous avons arbitrairement affect   une     classe ISO      gale    50h     La commande    RAND     code op  ratoire 02h  a pour unique  objet de construire une cha  ne al  atoire longue de quatre octets   soit 32 bits     Rien n interdirait de faire plus  mais cette valeur est coh  rente  avec les quatre    huit caract  res des codes    PIN    qui prot  gent  bien des applications dites    sensibles        La fonction RND du ZCBasic g  n  rant des nombres al  atoires de  type   Long     entiers sign  s de quatre octets  compris entre      2147483648 et   2147483647   un petit    bricolage    convertit  son r  sultat en une cha  ne de quatre caract  res  DATS      La commande    RESP     code op  ratoire 04h  ex  cute un tr  s  simple algorithme cryptographique    partir de la cha  ne al  a   toire produite par la derni  re commande RND  et d une clef  secr  te qui se compose  pour les besoins de la d  monstration  des  quatre octets ABh  CDh  EFh  AFh     L algorithme se borne    appliquer un op  rateur logique AND   OR  ou XOR     chacune des quatre paires d octets extraites des    52       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE    AUTOUR DES CARTES ASYNCHRONES    op  randes que sont la cha  ne al  atoire et la clef  ce qui conduit  bien   videmment    un r  sultat tenant  lui aussi  sur quatre octets     Rien    voir  donc  avec une fonction de type    Hash     i
116. es raisons mat  rielles   certaines puces un peu anciennes ne sont pas correctement  support  es par les lecteurs les plus r  cents  qui ne peuvent ainsi  acc  der aux zones prot  g  es par le code confidentiel     Le fichier ADT LOG cr     par ce programme est un v  ritable     relev   de compte    en langage clair  qui peut   tre consult   ou  imprim   avec n importe quel   diteur de texte      sense Mois 0204                   157   16   110   22   150  aa Mots 0205             13   143   29   363   pu Mois 0206             4  500   4  518   10   58   13   500   13   518   14   104   24   533   24   500   24   107    147       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULM  PLUS LOIN AVEC LES CARTES    PUCE    C est    ce stade que l   on aura la croustillante surprise de d  couvrir  que bien des cartes   mises courant 2002 enregistrent toujours en  francs les paiements effectu  s en euros      On remarquera aussi qu   elles enregistrent 200 F  500 F  ou m  me  800 F tout rond pour tout achat de carburant effectu   dans une  station service automatis  e     L explication est simple   comme le client r  cup  re sa carte avant  d aller se servir  on y enregistre un montant arbitraire  grassement  arrondi    hauteur de l autorisation obtenue     L histoire ne dit pas de combien serait d  bit   le compte bancaire  en cas d incident technique entra  nant la perte du montant r  el       Pour un maximum de confort  le r  pertoire    HISTORIQ
117. eur interpr  tation d   apr  s la norme ISO 7816 4     Un    scanner    de commandes    Les lecteurs de nos pr  c  dents ouvrages sur les cartes    puce  savent bien que celles ci ob  issent    des    commandes    identifi  es  par deux octets   CLA  classe ISO  et INS  code op  ratoire      L ensemble des combinaisons CLA INS reconnues par une carte  donn  e constitue ainsi le    dictionnaire    des commandes utili   sables        d  faut d   un document technique  confidentiel    qui en fourni   rait le d  tail  il est parfaitement possible d en dresser la liste par  une recherche syst  matique  bien   videmment automatis  e     La mise en application de cette id  e  sous ZCBasic  va  d  j       nous permettre de montrer comment pousser ce langage tr  s au   del   de ses possibilit  s initiales     En fait  nous allons faire appel    un premier outil pour d  terminer  la ou les classes que reconna  t la carte  puis    un second pour  chercher  dans une classe donn  e  quels codes op  ratoires sont  reconnus     Tout le probl  me  c   est que dans un programme    terminal      chaque combinaison CLA INS que l   on souhaite employer doit    tre explicitement d  clar  e   pas question d inclure tout bonne   ment CLA ou INS dans une boucle FOR NEXT      Qu    cela ne tienne   nous allons carr  ment faire construire un code  source ZCBasic par un programme lui m  me   crit en ZCBasic      Dans le r  pertoire    CLASSINS    du dossier    PCSC    du c  d     rom  on trouvera ainsi
118. eurs de cartes    puce du commerce  int  gr  s d   origine aux PC  ou adapt  s apr  s coup     Les avantages de ce choix sont enti  rement diff  rents et ouvrent  la voie    des aventures d   une tout autre dimension     2       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE 1       Deux lecteurs      maison      de conception   tr  s diff  rente        Un lecteur de cartes    puce du commerce  associ      son    driver     logiciel  se charge en effet de toutes les    basses besognes     et en  particulier du strict respect des protocoles de communication  normalis  s     C est fort appr  ciable  dans la mesure o   ceux ci ont   volu   au  fil des ann  es    videmment dans le sens d   une plus grande  complexit    rendant    la fois plus d  licat et plus fastidieux le  d  veloppement d applications ambitieuses sur des lecteurs     maison           DUNOD   La photocopie non autoris  e est un d  lit           DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE OULU  PLUS LOIN AVEC LES CARTES A PUCE    Le lecteur    tout fait    permettra d acc  der  en toute s  curit        des cartes tr  s diverses  de fa  on largement   transparente      depuis un langage de programmation simplement dot   de quel   ques instructions sp  cialis  es  relativement simples    mettre en    uvre     Bref  en affranchissant le d  veloppeur de toute la gestion  f  t elle  passionnante    des protocoles de bas niveau  il permet   
119. eux fils qui  mis en court circuit  ouvrent la porte de  la chambre       En tout   tat de cause  le brochage de l   embase est compatible  avec les diff  rentes variantes de connecteurs d  crites dans nos  pr  c  dents livres  et au chapitre 2     On veillera   videmment    ce que le jeu de huit balais de contacts  utilis   corresponde    la position  ISO ou AFNOR  de la puce des  cartes employ  es          a  a       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    LES LECTEURS DE CARTES A PUCE    Une fois encore  tout le secret de la simplicit   de l   lectronique  r  side dans le programme qu   ex  cute le PIC     Comme le principe m  me de ce projet consiste      crire et compiler  un programme sp  cifique pour chaque application  nous nous  bornerons    fournir deux exemples  n  anmoins faciles    adapter     toutes les situations courantes     DEVICE 12C508   DIM B0 B1 B2 B3 S   DEFINE PortB 200101000   MOVLW O   OPTION   OUTB 0    HIGH B O   HIGH B 1   LOW B 1  LOW B 0   HIGH B 1   LOW B 1   HIGH B 2  FOR B0 1 TO 5   GOSUB jump   NEXT B0   B3 117   GOSUB check   B3 130   GOSUB check   OUTB 16    STOP   check    B2 0   FOR B1 0 TO 7   B2 B2 2   S INPORTB  amp  32   S S 32  B2 B2 S  HIGH B 1   LOW B 1   NEXT B1   IF B2  lt  gt  B3 THEN GOTO False   RETURN   jump  FOR B1 0 TO 7   HIGH B 1   LOW B 1   NEXT B1   RETURN   False  OUTB 16    DELAYMS 255    OUTB 0   END    Le premier  TEST508 BAS  est   crit pour reconna  tre indiff  rem   ment le
120. faut compter avec une multi   tude de cartes permettant de r  gler commod  ment de petits  montants dans les parcm  tres  publiphones  distributeurs auto   matiques  automates de p  age  etc     Cela  en attendant qu   un    porte monnaie   lectronique    digne  de ce nom vienne f  d  rer  dans des conditions enfin acceptables   toutes ces applications r  solument disparates     Et n oublions pas que les op  rateurs de t  l  phonie mobile r  vent  de concurrencer les banques  en offrant des possibilit  s de     micropaiements       partir de leurs formules pr  pay  es     6 1 L   VOLUTION DES CARTES BANCAIRES    Confront  e aux probl  mes de s  curit   que l   on sait  la carte  bancaire   volue lentement mais s  rement     En attendant la g  n  ralisation de la technologie    EMV     le  masque B0  a d  j   subi nombre de    repl  trages     qu il est int     ressant de mettre en   vidence par des manipulations finalement  fort simples     Et n   en d  plaise aux mauvaises langues  la carte bancaire s   est  tr  s sensiblement perfectionn  e au fil des ann  es  moins vite  toutefois que la technicit   des attaques dont elle est la cible     Il faut dire qu avec une p  riodicit   de renouvellement de deux  ans  il n y a pas de petites   conomies      l   inertie du syst  me  demeure consid  rable     La premi  re r  volution technologique a   t   le passage du masque  B0     technologie    EPROM OTP     au masque B0      technologie  EEPROM  autrement dit r  inscriptible     
121. fface   ment  des bits de sauvegarde dits    anti arrachement     et surtout  des m  canismes d   authentification cryptographiques plus ou  moins perfectionn  s     Dans tous les cas  une zone    fabricant    contient l identification   inalt  rable  du composant   lectronique interne  tandis qu   une  zone      metteur    peut   tre prot  g  e contre toute modification  une fois la carte mise en circulation     73       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________      PLUS LOIN AVEC LES CARTES    PUCE    Les cartes de cette famille sont principalement utilis  es dans les  publiphones des  nombreux  pays n ayant pas adopt   la techno   logie fran  aise  mais aussi dans diverses applications de type     carte    jetons     petits paiements  fid  lit    etc     Cartes    protocole    T2G     code famille OBh      e ST1303  ST1331  ST1332  ST1333  ST1353  STMicroelectronics    e TMS3582  Texas Instruments    e GPM271  GAM273  Gemplus     IE CardEasy  lexi  View Help    Memory Card   ACOS1   Commands   About      6711333 21  22 06 cc 11 08 30  Circuit ID Area  Card ID Area  Counter 4096    Counter 512  Counter 64  Counter 8    Certificate 2e  Authentication   Hex C Asci    bnit tearinp flar 2   of  Stat s2       lt  00 01 00 02 00 06   gt  9000  SW1 SW2Z      lt  00 09 00 00 04 0l     lt  0A 0B OC 0D   Poore    gt  9000  SW1 SW2  Starting Address  100 02   gt  06     lt  00 01 00 02 00 06   gt  9000  SW1 SW2Z  Cancel       
122. format d affichage que supporte le lecteur  sur son   cran LCD     une seule ligne de dix caract  res     Les quatre premi  res positions peuvent afficher    peu pr  s  n importe quel symbole alphanum  rique  tandis que les six  derni  res sont limit  es    des caract  res num  riques  hexad     cimaux  c est    dire y compris les lettres A    F  et aux signes   et         Un point d  cimal  faisant office de    virgule     peut   galement    tre ins  r   dans les valeurs num  riques     Deux points essentiels doivent   tre parfaitement compris avant  de tenter d utiliser le lecteur      e Il ne supporte que les cartes    protocole    T   1     BasicCard     Compact    ZC 1 X et    Enhanced    ZC 3 X  ou    Professional     ZC 4 X   ZC 5 X en mode T   1  etc         Tout   change entre lecteur et carte se fait au moyen de la seule  et unique commande dont la classe est C8h  et le code op  ra   toire 00h     En pratique  d  s qu une carte asynchrone  et pas forc  ment une  BasicCard  est introduite dans le lecteur  celui ci lui envoie une  commande T   1 de la forme C8 00 00 00 Lc DATA Le     Si la carte ne comprend pas cette commande  elle renvoie un code  d erreur SW1SW2  que le lecteur affiche in extenso  par exemple    6E00 Error   ou    6D00 Error     Cela pourra d  j   servir     l occasion      Si aucun   change n   est possible  cas  notamment  d   une carte  synchrone   il s affiche simplement    READ Error        Si le lecteur a besoin d   un petit d  lai pour op  re
123. gt  22 06 CC 11 08 30                                     D  marrer    7  CardEasy F3 Paint Shop Pro   BJO na          La    t  l  carte de seconde g  n  ration    ou    T2G    a   t   imagin  e  d  s 1989  sous le pr  texte officiel de faire face    l obsolescence de  la technologie EPROM NMOS des T1G     Il se pourrait bien  cependant  que la v  ritable motivation soit la  lutte contre la fraude par    clonage     dont l ampleur commen  ait  sans doute d  j      devenir pr  occupante     Fruit d   un partenariat avec STMicroelectronics  la T2G fait appel  au m  me principe de compteur d unit  s       boulier    que les  cartes de la famille    Eurochip        Simplement  elle fonctionne selon un protocole de communica   tion    6 contacts au lieu de 5     Contrairement    l Eurochip  elle est   galement    vierge    0     ce  qui signifie que l   on y    grille    des unit  s en mettant    un des  bits qui   taient encore    z  ro     Parall  lement aux composants ST1303 ou 511332     l usage  exclusif de France Telecom  des versions d  riv  es ou m  me    74     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE          DUNOD   La photocopie non autoris  e est un d  lit     AUTOUR DES CARTES SYNCHRONES    concurrentes sont commercialis  es pour les applications les  plus diverses     Certaines b  n  ficient d un m  canisme d   authentification crypto   graphique  mais avec un algorithme diff  rent     et d autres pas     Bien des carte
124. i   pements munis de   modems GSM     y compris    bord des trains     Les applications dites Over The Air  OTA  des SMS sont    cent  lieues des    petits mots    que s     changent si volontiers les jeunes   et parfois les moins jeunes     en mode    texte        C est   videmment par SMS que certains prestataires peuvent  t  l  charger    distance  et bien entendu    titre payant  les r  per   toires de num  ros des cartes SIM de leurs clients  des m  lodies  de sonnerie  ou des logos graphiques     C est aussi par SMS que s est fait le basculement d Itin  ris     Orange  astucieusement effectu   par remplissage    distance du  fichier 7F20 6F46 des cartes SIM       crite dans ce fichier   Service Provider Name    la cha  ne  d octets 00 4F 72 61 6E 67 65 20 46 FF FF FF FF FF FF FF FF  impose  du moins sur les mobiles compatibles  l affichage du  texte    Orange F       la place du nom d   origine du r  seau sur  lequel le mobile est inscrit  sauf    l   tranger o   les deux peuvent  m  me appara  tre ensemble     Gr  ce    la technologie    ESMS    si ch  re    Gemplus  ce genre de  man  uvre fonctionne m  me avec certaines cartes SIM de  phase 2     En gros  le SMS contient une suite de commandes  que la carte  est pri  e d ex  cuter comme si elle les avait re  ues directement du  terminal dans lequel elle est ins  r  e     Cela peut aller jusqu      la cr  ation de nouveaux fichiers  gr  ce     des commandes   administratives    qui diff  rent  h  las  d   un  fabricant
125. i  la    facturette    comme un SMS ordinaire  on ne peut plus facile     examiner avec des outils courants     En effet  si le SMS en question se trouve en premi  re position  dans la carte SIM  il suffit d encha  ner les trois commandes  suivantes pour en afficher le contenu  par exemple avec  SCARD EXE      AO A4 00 00 02 7F 10  avec Le   00   AO A4 00 00 02 6F 3C  avec Le   00   AO B2 01 04 BO  avec Le   00     Transf  r   par    coup   coll      vers un simple   diteur de texte      bloc notes    de Windows   le fichier ainsi pr  lev   sera alors  sauvegard    puis soumis    un   diteur hexad  cimal tel que  PDED EXE  disponible apr  s installation du logiciel de d  mons   tration fourni dans le r  pertoire    MQP    du dossier    SMS         03 07 91 33 86 09 40 00 F0 04 05 83 12 00 FO 7F      3             F6 20 11 71 71 81 31 00 8C 01 35 14 00 35 20 00    qq  1    5  5  00 25 00 09 78 17 18 11 11 17 02 68 52 10 30 36      x       hR 06  38 33 3x 3x 3x 3x 3x 3x 30 34 00 00 00 01 82 06  83xxxxxx04    6  2A 34 32 38 37 30 36 3x 3x 3x 30 30 30 37 31 08   428706xxx00071  18 44 66 6C 61 20 6D 6F 62 69 63 61 72 74 65 05   Dfla mobicarte  81 12 00 FO FF FF FF FF FF FF FF 45 55 52 27 31 O               EUR 1  72 65 63 68 2E 32 35 1B 65 OA 2B 35 1B 65 20 6F rech 25 e  5 e o  66 66 65 72 74 73 OA 76 61 6C 69 64 69 74 05 3A  fferts validit     33 20 6D 6F 69 73 20 20 20 20 20 20 20 20 20 20 3 mois   20 20 20 20 FF FF FF FF FF FF FF FF FF FF FF FF    118       DUNOD 2004   Plus lo
126. icro   instructions        Et pr  cis  ment  nous y arrivons      3 3 UN    ESPION    DE CARTES    PUCE SYNCHRONES    Nous avons vu qu intercepter le dialogue entre une carte    puce  asynchrone et son terminal ne pr  sente pas de grandes difficult  s     Paradoxalement  il est bien plus d  licat de faire de m  me avec  une carte synchrone  pourtant beaucoup moins perfectionn  e     En protocole asynchrone  T   0 ou T   1   tout le dialogue entre  la carte    puce et le terminal dans lequel elle est ins  r  e se fait sur  un seul fil  le contact ISO 7 du micromodule      un rythme qui  d  pend   troitement de la fr  quence du signal d horloge appliqu    sur le contact ISO 3  CLK      Une certaine similitude avec le protocole RS232 permet d obtenir  des r  sultats fort convaincants en    d  tournant    astucieusement  un port s  rie de PC  voir chapitre 2      Dans le cas des cartes    puce synchrones  t  l  cartes  I2C  2 3 fils   etc    on sait qu il existe de nombreux protocoles diff  rents  qui  mettent en   uvre des s  quences d   tats plus ou moins compli   qu  es sur plusieurs contacts    la fois     Le principal point commun est que toutes les op  rations significa   tives se font    l occasion d   une transition  soit positive soit n  ga     90       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE    AUTOUR DES CARTES SYNCHRONES    tive  du signal d horloge  autrement 
127. ien d  coder UART  du PC     Que dire  alors  sinon    bonne chance          ceux qui ont la pr  ten   tion de se contenter d   un    shareware    d inspection de port s  rie   tout b  tement trouv   sur Internet      66       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES    Quatre variantes de notre programme sont fournies  tant en code  source Turbo Basic que sous une forme ex  cutable  MS DOS    pour les cartes    convention directe ou inverse  et pour le port  s  rie COM1  ou COM2  du PC     Bien entendu  le kit connectique dont nous venons de d  crire la  r  alisation facilitera au maximum la mise en   uvre de ce puissant  instrument d investigation  dans toutes les situations susceptibles  de se pr  senter        Le cas le plus d  routant est celui des cartes  encore assez rares  qui  appliquent la proc  dure dite    PPS     Protocol Parameters Selection    en collaboration avec un lecteur compatible  comme les    Cyber   Mouse    et ACR 20 30      Ces cartes se rep  rent    certaines particularit  s de leur r  ponse  au reset  que signale bien s  r tout bon logiciel d analyse d   ATR     Supposons que le param  tre F soit   gal    512  au lieu de 372   valeur par d  faut   et que D soit   gal    8 au lieu de 1     Le rapport F D passe ainsi de 372    64  ce qui signifie que le  rythme de transmission  sur le contact ISO 7 de la carte  
128. ign   Infineon  Siemens   mais qui  n   a pas besoin de Vpp  Prudence  donc         101       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    L espion complet   en ordre de marche        DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       CHAPITRE PAGE    AUTOUR DES  CARTES SIM    4 1 Une BasicSIM    PHASE 2    104  4 2 Explorer les cartes                SIM Toolkit    105  43    Bricoler    les SMS 112   44 Des exp  riences  d   authentification 127  5 Autour des cartes    sant      130  6 Autour des cartes de paiement 141  7 Le c  d  rom du livre 159                103       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       PLUS LOIN AVEC LES CARTES A PUCE    Pr  sente dans chaque t  l  phone portable GSM  la carte SIM fait  partie des cartes    puce les plus r  pandues dans le public     Nous avons montr    dans notre ouvrage T  l  phones portables et PC      quel point il peut   tre int  ressant de l explorer    l   aide d   un PC    quip   d   un lecteur appropri    que cela plaise ou non    l op  ra   teur qui l   a   mise      Dans ce nouvel ouvrage  nous allons d  couvrir les m  canismes  les plus intimes des cartes SIM les plus r  centes  mais aussi de  services dont on n utilise bien souvent qu une infime partie des  possibilit  s  parfois cach  es      4 1 UNE BASICSIM    PHASE 2        Nous avons montr    dans notre pr  c  dent ouvrage  comment  transformer une BasicCard  
129. il faudrait pour obtenir le m  me  r  sultat en utilisant les services de WinScard dil    partir d   un  langage plus conventionnel       Dans le fichier LIST BAS  nous avons tout de m  me ajout   une  ligne suppl  mentaire   vitant que  dans certaines configurations  de Windows  la fen  tre MS DOS ne se referme avant que l on  n ait eu le temps de prendre connaissance de ce qui s   est affich       42     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES    PCSCATR EXE  enfin  est l ex  cutable de l application Delphi  PCSC_MCU_atr pas  pr  sent  e au d  but de ce chapitre  et dont  tout le code source se trouve dans le r  pertoire    DELPHI    du  dossier    PCSC        2 6 DES EXP  RIENCES D AUTHENTIFICATION    Jusqu    pr  sent  nous n avons gu  re utilis   le ZCBasic que pour  d  velopper des applications    terminal        exp  rimenter avec  des cartes    puce existantes     Voici venu le moment de d  couvrir avec quelle facilit   cet   ton   nant langage permet aussi     tout un chacun  de cr  er ses propres  cartes      Cela  avec des fonctionnalit  s s  curitaires bas  es sur les meilleurs  algorithmes cryptographiques du moment     C   est dans le r  pertoire    AUTH    du dossier    PCSC    de notre  c  d  rom  que l   on trouvera tous les fichiers permettant de passer  imm  diatement    la pratique     Comme dans le cas d   un progra
130. in avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE    AUTOUR DES CARTES SIM       Le premier des 176 octets qu occupe le SMS dans le fichier  7F10 6F3C de la carte SIM indique que nous sommes en pr  sence  d   un message re  u  non lu  il serait    01h si on avait pris la peine  de le faire d  filer enti  rement sur l afficheur du mobile      Suit le num  ro du SMSC  centre de messagerie  ayant achemin    le SMS  l octet de type  91h  indiquant qu il est pr  sent   en  format t  l  phonique international   33 6 89 00 40 00      Le num  ro de l exp  diteur du message  21000  est sp  cifique     l op  rateur  type 83h   et d   ailleurs accessible gratuitement   m  me en cas de cr  dit   puis    sinon  on ne pourrait pas  recharger        Les octets 7Fh et F6h pr  cisent que le SMS   tait destin      la carte  SIM  et qu il est cod   en format    8 bits        C   est ce qui explique que les textes  que l application SIM Toolkit  devait afficher sur l   cran du mobile  apparaissent   en clair     dans notre   diteur hexad  cimal     Les sept octets qui suivent indiquent la date  17 11 02  et  l heure  17h 18  13   d envoi du SMS  ainsi que le fuseau horaire  local  ici 00h      L octet 8Ch  enfin  correspond    la longueur  140 octets  du  contenu utile du message  qui le suit d   ailleurs imm  diatement     Celui ci comprend  toujours en clair     le montant    payer  25        la date et l heure d   tab
131. ins aussi int  ressant d   tudier le fonctionne   ment d   une carte SIM micro  que celui d   une carte de format  ISO       Pourtant  le remplacement de la    vraie    carte par une    fausse     est bien plus d  licat dans un tel contexte de miniaturisation   d autant que la carte est souvent compl  tement enferm  e     d mo    Figure 2 6  E    o    Une    fausse carte    SIM a m eu    Micro    minimum        PONO       Le minuscule circuit imprim   de la figure 2 6 peut d  j   rendre  service dans un certain nombre de situations  car les six pastilles  reli  es    ses contacts se situent dans une zone souvent assez  facile d acc  s     Il suffit alors d y souder directement les six bons fils  parmi les  dix d   un c  ble m  plat termin   par l   habituelle fiche HE 10  pour  pouvoir y connecter des accessoires externes     Ma  s dans la plupart des cas  il faudra d  ployer des moyens plus    labor  s      C est ainsi que la    fausse carte    de la figure 2 7 pourra indiff     remment   tre grav  e sur du pr  sensibilis   8 10  que sur du  circuit imprim   souple  Kapton       60       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE    AUTOUR DES CARTES ASYNCHRONES       Figure 2 7    Trac   de la      fausse carte    SIM  Micro souple     Il ne saurait   videmment   tre question de mettre directement en    uvre un film conducteur aussi fin  que l   on aura d   ailleurs tout  
132. int  r  t    rev  tir d   un plaquage d or  kit de galvanoplastie dispo   nible chez Conrad Electronique     Du c  t      carte     il suffira de le contre coller  au ruban adh  sif  double face mince  sur une    fausse carte    d  coup  e dans un  quelconque mat  riau isolant suffisamment rigide  l   paisseur  totale devant se situer entre 0 75 et 0 8 mm     Du c  t   HE 10  figure 2 8   on ex  cutera un assemblage en    sand   wich     entre deux plaquettes grav  es  sur du stratifi   8 10  selon  le trac   de la figure 2 9     61       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle        PLUS LOIN AVEC LES CARTES A PUCE    Figure 2 8   Plan de c  blage  de la    fausse carte        Figure 2 9   Trac   des deux circuits  imprim  s raidisseurs        62       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES    L une sera perc  e au diam  tre de 1 mm  les trous des coins   tant  ensuite agrandis    3 mm   avant d y souder  mais cette fois ci c  t    cuivre  l habituel tron  on de barrette s  cable    double rang  e de  picots carr  s coud  s     La seconde sera perc  e    2 5 mm  ce qui fera carr  ment dispara  tre  les pastilles carr  es   c est voulu      On poin  onnera alors les dix trous du circuit imprim   souple  avec une pointe ac  r  e  compas  par exemple   avant d   enfiler  d  licatement celui ci  dans l
133. ique parfaitement aux algorithmes  cryptographiques  dont il est maintenant reconnu que les m  ca   nismes les plus intimes doivent   tre largement rendus publics     Entretenir le myst  re autour du fonctionnement d   un algorithme  ne peut servir qu      retarder la d  couverte de ses   ventuelles fai   blesses  avec les cons  quences catastrophiques que l on imagine  si des applications qui en font usage ont   t   massivement  d  ploy  es entre temps     Les meilleurs algorithmes actuels se sont donc impos  s dans  un contexte de totale transparence   leur adoption en tant que  standards n est intervenue qu   au terme d   une mise    l   preuve  impitoyable par la communaut   cryptographique internationale     Cela garantit au passage l absence de toute    porte d  rob  e     introduite sur requ  te de quelque autorit   indiscr  te       Les diff  rentes versions de la BasicCard supportent chacune tout  ou partie de ces grands classiques  potentiellement plus s  rs que  tel ou tel myst  rieux algorithme    propri  taire        45       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE OULU  PLUS LOIN AVEC LES CARTES A PUCE    Les ZC 3 3 et ZC 3 9  fournies dans les kits commercialis  s  sup   portent   en dur    le DES     56 bits  d  sormais d  pass    et le  triple DES     112 bits      Par le biais de biblioth  ques    inclure  le d  veloppeur dispose  aussi du SHA 1  Secure Hash Algorithm   de l ECC  Elliptic Curve  Cryptography    161 b
134. is voyons maintenant comment transmettre soi m  me une telle  composition musicale      Plusieurs moyens sont disponibles pour envoyer des SMS     L un des moins connus consiste    passer par un modem reli   au  r  seau t  l  phonique fixe  ou par un cordon transformant un t  l     phone portable en    modem GSM        Des logiciels sp  cialis  s  dont l excellent SMS it  http   www   mawnet com   se chargent absolument de tout  au point m  me  de provoquer une certaine frustration technique      Pour notre part  nous avons imagin   de charger de nouveau le  SMS directement dans une carte SIM valide  puis de le faire  transmettre par le t  l  phone portable  tr  s ordinaire  dont elle  provient     Cette approche se traduit par le petit programme EMSGOD BAS   d  velopp   encore et toujours en ZCBasic     Pr  vu pour   tre utilis   avec n importe quel lecteur de cartes     puce    PC SC    convenablement install    ComPort 101   il pour   rait tout aussi bien fonctionner  sans aucun driver  avec un Cyber   Mouse ou un ACR 30 s  rie  ComPort 1 ou ComPort 2  selon le  port COM utilis        Avant de retirer la carte SIM de son t  l  phone  on pensera     d  sactiver son code PIN  de fa  on    autoriser notre programme     en prendre le contr  le     Son code source    crit au plus court  devra   tre personnalis   et  compil   avant chaque transmission  mais on pourrait facilement  l enrichir de    dialogues    permettant d entrer  sans n  cessit   de  recompilation  les   l  men
135. ithium  tout en suppor   tant aussi bien les cartes    puce 5 V  classe A  que 3 V  classe B      Avec 4 Ko de ROM  ou de Flash    et 256 octets de RAM  ce genre  de processeur  compatible avec les puissants outils de d  velop   pement de la famille ST7  se pr  te    la r  alisation de lecteurs de  poche aux fonctionnalit  s assez ambitieuses     C   est ainsi que sont apparus  courant 2002  les derniers mod  les  de Xiring  commercialis  s aussi sous la marque Lexibook   les  XL 2500     Par rapport aux tr  s populaires XL 2000  d  j   capables de lire la  carte bancaire  la carte Vitale  et les t  l  cartes de 1    et 2   g  n  ra   tions  des fonctions de lecture du porte monnaie   lectronique     Mon  o    ont   t   ajout  es     De quoi commencer    mettre le syst  me    l   preuve  voir  chapitre 6   avant m  me que les cartes ne nous soient propos  es   ou impos  es     par les banques      Mais en attendant ce tr  s m  diatique    porte monnaie   lectro   nique     les premiers utilisateurs de lecteurs de poche ont   t       les collectionneurs de t  l  cartes          LEXIBOOK    Un lecteur de poche  XL 2500 pr  t    r  v  ler  ses    petits secrets        10       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    LES LECTEURS DE CARTES A PUCE    Pendant qu un peu partout dans le monde  les   tablissements  financiers distribuaient des lecteurs de PME Proton  Visacash   GeldKarte  Mondex  etc   des n  gociants en cartes de collection  lan
136. its   et de l IDEA  algorithme sym  trique     128 bits brevet   par Ascom Systec Ltd      Et la BasicCard    Professional    ZC 5 4 propose d  sormais l   AES   Advanced Encryption Standard  bas   sur le tout r  cent algorithme  belge    Rijndael         Pour notre part  nous allons montrer avec quelle simplicit   on  peut mettre en place un m  canisme    challenge response    bas    sur le SHA 1     Le r  le de n importe quel dongle est de ne permettre l ex  cution  d   un logiciel  ou encore l acc  s    des donn  es  que s il prouve au  pr  alable sa pr  sence et son authenticit       L un des moyens d   authentification les plus s  rs repose sur un  processus    question r  ponse    ou    preuve sans connaissance      comparable    celui utilis   pour s  curiser les cartes SIM des t  l     phones portables     Une m  me clef secr  te r  sidant    la fois dans le dongle et dans  le logiciel ayant besoin de l   authentifier  un moyen simple doit  permettre de proc  der    une comparaison sans transmission  effective d aucun secret     Dans la pratique  le logiciel   labore une cha  ne de caract  res plus  ou moins al  atoire  qu il soumet au dongle     Celui ci ex  cute un calcul complexe  ayant pour op  randes la  clef secr  te et la cha  ne al  atoire  puis en transmet le r  sultat   nullement secret  au logiciel     De son c  t    le logiciel ex  cute le m  me calcul avec les m  mes  op  randes  et doit donc obtenir le m  me r  sultat     Si tel est bien le cas  il peut 
137. l   une in  puisable source de d  couvertes   parfois inesp  r  es      Un simple exemple   le secret est jalousement gard    par les fabri   cants  sur le fonctionnement du m  canisme d authentification  des cartes Eurochip  les t  l  cartes europ  ennes  et notamment  allemandes      100       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES SYNCHRONES    Il est pourtant mis en   uvre dans le CyberMouse  ce qui suppose  que le fabricant de ce lecteur en ait eu connaissance  sans doute  dans le cadre d   un    engagement de confidentialit          Mais il suffit d intercaler le pr  sent   espion    entre une carte  Eurochip et un lecteur CyberMouse  pour voir clairement  comment on pr  sente le fameux    challenge     et m  me pour  localiser de subtiles inversions de bits qui pourraient bien faire  partie de la r  ponse de l algorithme cryptographique      Et n oublions pas la possibilit   d   tudier ce qui se passe quand  on ins  re une carte exigeant une    haute tension    de program   mation Vpp  par exemple une GPM 416    ST1301  dans un  lecteur qui ne la lui fournit pas  par exemple un CyberMouse      On voit tr  s bien  sur notre exemple    chouer la tentative d     cri   ture d   un bit dans le compteur de pr  sentations de codes PIN  erron  s     Il en irait tout autrement avec une carte   quip  e d   un circuit  SLE 4404  un      quivalent    s
138. la forme d   une cha  ne s  par  e      114     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES SIM    SC  contient  en format t  l  phonique international  le num  ro  du SMSC  centre de messagerie  que l   on veut charger d   ache   miner le SMS  En r  gle g  n  rale  ce sera celui de l op  rateur  ayant   mis la carte SIM  par exemple 33689004000 pour Orange   33609001390 pour SFR  33660003000 pour Bouygues     Si la formule souscrite autorise l acc  s    des SMSC   trangers   alors il n   y a plus de limites   on pourra aussi bien choisir de  transiter par la Suisse  41794999000   l Afrique du Sud   27830000410   Singapour  6596500005   etc   On trouve sur  Internet des listes enti  res de SMSC  dont certains sont    galement accessibles par modem      Le principal int  r  t de la chose est que tous les SMSC n appli   quent pas n  cessairement les m  mes r  gles de rejet des SMS    non conformistes     mais attention  Certains op  rateurs   et notamment les trois fran  ais  refusent les SMS provenant  des SMSC de certains pays  Ceci explique peut   tre cela       To  contient  toujours en format international  mais sans le  signe     le num  ro du destinataire du SMS  en g  n  ral le  num  ro d un mobile dont on est le l  gitime propri  taire  ou  avec lequel on est d  ment autoris      proc  der    de tels essais      SR  aura la valeur 11h si l on ne
139. lancer SYNC EXE  on tapera  dans une fen  tre MS DOS   la ligne de commande SET ZCPORT   101 si le lecteur    utiliser  fonctionne en mode PC SC  SET ZCPORT   2 sile lecteur    Cyber   Mouse    du kit BasicCard est branch   sur COM 2   et ainsi de  suite     Cette fa  on de proc  der permet de ne compiler qu un seul et  unique ex  cutable  quel que soit le lecteur utilis    d autant que la  commande SET ZCPORT peut fort bien   tre plac  e dans l auto   exec bat du PC     Notre seconde application  MANIP BAS  est plus ambitieuse   dans la mesure o   elle permet d op  rer n importe quelle  man  uvre sur n importe quel bit d une T2G     l exception du  tout premier  qui est n  anmoins lu  et de toute fa  on inalt  rable      C est  en fait  la version PC SC de l utilitaire    MANIPT2G   BAS    de notre livre Cartes    puce     Initiation et applications     Son ergonomie est quasiment identique  seul son fonctionnement    tant un peu plus lent puisqu une commande ISO 7816 enti  re   soit 70 bits au lieu d   un seul  doit   tre achemin  e    9 600 bps lors  de chaque lecture ou   criture d   un bit de la t  l  carte     Chaque appui sur la barre d espace du clavier fait avancer   rappelons le  la position de lecture d   un bit  la touche   permet   tant de le mettre    1 s   il   tait encore    0     La touche   pour sa part  commande une mise    1   avec  retenue     qui n aura une action sp  cifique que dans les zones  pr  vues    cet effet  mais rien n   interdit d essayer ail
140. langage     tout faire     L effort d adaptation sera ainsi nettement moindre pour les habi   tu  s de GWBasic ou de QBasic  voire de ZCBasic  nous y revien   drons     bien que de multiples instructions nouvelles fassent  leur apparition     Bon nombre d   entre elles concernent les    p  riph  riques virtuels     fournis sous la forme de biblioth  ques    inclure et initialiser si et  seulement si on en a besoin         DUNOD   La photocopie non autoris  e est un d  lit     13       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE M  PLUS LOIN AVEC LES CARTES A PUCE    e gestion d   afficheurs LCD      support du bus I2C         support d   une ligne s  rie 9 600 bauds  voire d   une carte    puce  asynchrone          e gestion d   un clavier    16 touches      conversion analogique num  rique avec le PIC 16C71     Pr  cisons enfin qu   il est possible de    m  langer    hardiment Basic  et assembleur dans le code source  ce qui d  multiplie encore les  possibilit  s offertes au programmeur ma  trisant les deux langages     C   est plus qu il n   en faut pour d  velopper un lecteur mat  rielle   ment capable de prendre connaissance du contenu de n importe  quelle carte    puce synchrone  et de l afficher s  quentiellement  sur un   cran LCD    deux lignes de 16 caract  res     Dans la version logicielle pr  sent  e ici  programme I2CPIC BAS    il est pr  vu de se limiter aux cartes    puce I2C de 2 kbits  soit  256 octets  telles que la D200
141. le ci se bornerait il donc    s  curiser seulement  l   mission et la t  l  transmission des    feuilles de soins   lectro   niques     ou bien servirait elle tout de m  me de clef d acc  s    la  partie la plus confidentielle des donn  es personnelles  pr  sentes  ou    venir      5 4 DES COPIES DE SAUVEGARDE      La BasicCard a cela d   extraordinaire  que quelques lignes de Basic  suffisent pour lui faire   muler  dans certaines limites  le jeu de  commandes de telle ou telle carte    puce existante  avec souvent  un surcro  t de souplesse     Par exemple  EMUSCOT BAS est un court programme qui  charg    dans une BasicCard    protocole    T   0     ZC 5 4 ou ZC 5 5   la  dote des commandes n  cessaires pour   tre lisible dans les m  mes  conditions qu une carte SCOT     La commande d   criture  cependant  reste volontairement tr  s  rudimentaire  et ne pourra donc gu  re servir qu    initialiser la  m  moire  par mots entiers de 32 bits     Cela     partir de donn  es recueillies  mettons  dans une carte     lecture libre  ou bien choisies en vue de provoquer  sur un lecteur   tel ou tel ph  nom  ne potentiellement int  ressant    analyser     La loi autorisant express  ment les    copies de sauvegarde    dans  une grande vari  t   de situations  il serait dommage de se priver  du petit plaisir de voir ce que cela donne avec une carte Vitale      C   est l   que la seconde partie de COPYSCOT EXE va entrer en  sc  ne   au lieu de quitter le programme apr  s avoir lu l origi
142. les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES       des logiciels bon march    qui ne pourraient s accommoder du  co  t   lev   des    dongles    conventionnels     Et ne perdons pas de vue la totale souplesse que procure le  syst  me d exploitation    ouvert    de la BasicCard   quelques lignes  de Basic suffisent  et ce n   est qu   un exemple  pour ajouter un     compteur    bloquant l   utilisation du logiciel apr  s un nombre  donn   d utilisations      Mais l actualit   est l   pour nous rappeler que seule une crypto   graphie forte peut vraiment assurer l inviolabilit   d   une applica   tion    carte          M  me si cette v  rit      d  range     il serait en effet irresponsable  de ne pas admettre que n importe qui peut aujourd hui fabriquer     sur un coin de table     des cartes    puce reproduisant assez  fid  lement certaines fonctionnalit  s de telle ou telle application  existante     C est tout simplement la ran  on du succ  s des cartes       syst  me  d exploitation ouvert    telles que JavaCard ou Multos  m  me si  le    ticket d entr  e    n   est pas pr  cis  ment    la port  e du premier  venu     Sous sa forme de kit librement accessible au grand public  la Basic   Card fait donc un peu figure de    pav   dans la mare     allant  d  lib  r  ment    contre courant de ce fragile principe de s  lection  par l argent     Le m  me raisonnement s appl
143. leur nouvelle carte     D autres  comme ACS  visent plus sagement le march   des points  de vente  souvent d  pourvus de moyens simples et rapides pour  transf  rer le contenu d   une carte SIM vers une autre  en toute  confidentialit   ou m  me en    libre service           vrai dire  il semblerait que les lecteurs de nos livres soient  souvent mieux   quip  s que les boutiques des op  rateurs  d autant  qu ils travaillent volontiers    l aide d   un lecteur connect      un PC     L    ACR SIM copier    b  n  ficie de toute l exp  rience acquise par  ACS avec son logiciel    SIMmate 2000     voir notre ouvrage T  l     phones portables et PC   dont il int  gre en quelque sorte une  version fortement all  g  e  extr  mement simple    manier        DUNOD   La photocopie non autoris  e est un d  lit     11       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       PLUS LOIN AVEC LES CARTES    PUCE    Le copieur de cartes  SIM d ACS        En fait  ce sont peut   tre les revendeurs ind  pendants des op  ra   teurs qui appr  cient le plus ce genre d innovation  Ils se trouvent   en effet  au c  ur m  me du ph  nom  ne de    churn     autrement  dit de nomadisme d un op  rateur vers un autre  qu ils sont  d   ailleurs parfois amen  s    encourager     1 5 UN LECTEUR AUTONOME    MAISON       En l absence d objectifs de miniaturisation et d   industrialisation     bas prix  il est parfaitement possible de s inspirer du concept de    lecteur de poche    a
144. leurs     juste  pour voir         D une fa  on g  n  rale  apr  s une   criture avec retenue  il vaudra  mieux quitter le programme  touche ESCape  puis le relancer  pour juger de l effet produit     Les sp  cifications techniques d   un composant tr  s proche de  celui   quipant les T2G pr  cisent  en effet  qu une lecture de bit     89       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE OUL  PLUS LOIN AVEC LES CARTES A PUCE    effectu  e juste apr  s une   criture avec retenue  ne donne pas de  r  sultat significatif  et cela semble bien se v  rifier        tous points de vue  il vaut donc mieux op  rer un reset et  reprendre la lecture au d  but     On le voit  l association de cet adaptateur et d   un lecteur PC SC  fournit  tout sp  cialement aux heureux possesseurs du kit Basic   Card  la possibilit   de d  velopper toutes sortes d applications  autour des t  l  cartes    puis  es ou non   en toute ind  pendance  vis    vis des caract  ristiques du PC utilis    ou de son syst  me  d exploitation     Bien entendu  cette d  marche est transposable    tout autre lecteur  de cartes    puce asynchrones  et    n importe quel autre environ   nement de d  veloppement  sans changer quoi que ce soit aux  parties mat  rielle ou logicielle de l adaptateur     Moyennant cette fois quelques transformations  la m  me  approche pourrait aussi convenir    d   autres familles de cartes  synchrones  dont on aurait pr  alablement   tudi   le jeu de    m
145. lissement de la facturette  le num  ro du  t  l  phone    recharger  et ce qui ressemble fort    une r  f  rence de  compte    cr  diter ou    un    certificat        Pour des raisons   videntes  quelques chiffres y ont donc   t    occult  s     Des SMS malveillants      Parmi les SMS    non sollicit  s    que l   on re  oit de plus en plus  fr  quemment  il arrive aussi de trouver ce genre de    script     en  provenance d   un num  ro parfaitement inconnu        SCKE2 BEGIN VCARD  N Adeline  TEL 0610xxyyzz  END   VCARD    Le plus curieux est qu en l occurrence  l utilisateur du mobile  dont est cens     maner ce message ne voit pas mieux que le desti   nataire de quoi il peut bien s agir   serait il donc techniquement  possible de se faire passer pour quelqu un d autre      119       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________      PLUS LOIN AVEC LES CARTES A PUCE    En fait  nous sommes en pr  sence d   une    carte de visite virtuelle     au format vCard  comme on en utilise couramment dans les e   mails     Selon la sp  cification    Smart messaging    de Nokia  l en t  te     SCKE2 indique    tout t  l  phone compatible qu il doit d  tourner  ce SMS vers son port N   E2h  justement baptis      Business card  exchange        De quoi se retrouver  sait on jamais    avec une entr  e ind  sirable  dans son annuaire personnel       Seulement  le num  ro de t  l  phone 06 10 xx yy zz   tait ici    celui  auquel le SMS es
146. lors  pourquoi pas  la carte qui pourrait g  n  rer une cha  ne  al  atoire permettant de crypter le mot de passe      Outre le code source DONGLE BAS  le c  d  rom contient deux  fichiers image obtenus par compilation avec la version 4 du kit  BasicCard        DONG33 IMG destin        tre charg   dans une ZC 33      DONG39 IMG destin        tre charg   dans une ZC 3 9     Nos lecteurs n ayant pas encore install    ou mis    jour  le kit   pourront n  anmoins programmer des cartes avec l utilitaire  BCLOAD EXE fourni    cet effet  ne pas oublier de pr  ciser  sur la  ligne de commande  les options correspondant au type de lecteur  de cartes    puce utilis    PC SC ou CyberMouse      Reste maintenant    se servir de la carte      En principe  le programme    terminal    n   est autre que le logiciel  que le dongle sert    prot  ger     49       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE OUUM  PLUS LOIN AVEC LES CARTES A PUCE    Il peut   tre d  velopp   soit en ZCBasic  soit dans un langage  Windows 32 bits permettant l usage des API BasicCard  mais  c est nettement plus compliqu            crit en ZCBasic  CHECK BAS se borne    afficher le message     DONGLE RECONNU      si le processus d   authentification r  ussit   ou bien    EXPIRATION      au bout de dix utilisations d   un dongle  dans lequel on aura activ   la fonction de limitation     On y reconna  tra la m  me directive d inclusion de la biblioth     que SHA 1 DFF  ainsi que le
147. ment facultatives  on pourrait  m  me craindre que n importe qui puisse  par exemple  inscrire  des num  ros malveillants dans les annuaires des cartes SIM  ou  exp  dier de fausses factures vers des mobiles   quip  s de fonc   tions de paiement     Cela n  cessiterait tout de m  me un peu d   astuce  car un t  l     phone portable normalement constitu   ne permet pas de com   poser autre chose que des SMS tr  s    ordinaires        Un logiciel de cr  ation de SMS    Qu    cela ne tienne  Notre programme SMS7 BAS  dossier     SMS    du c  d  rom  prouve amplement que quelques lignes de  Basic suffisent pour d  velopper un outil capable de construire de  toutes pi  ces  dans une carte SIM valide  un SMS pr  t      tre  exp  di       Toujours   crit en ZCBasic  il pourra   tre personnalis   selon les  besoins de chacun  puis compil      l   aide du kit BasicCard   version 4 32 ou sup  rieure      Pourvu que le PC soit   quip   d un lecteur de cartes    puce  PC SC  ou CyberMouse     condition de modifier la valeur de  ComPort en cons  quence   il enregistrera un SMS    sur mesures     en premi  re position dans la carte SIM que l on voudra bien  y ins  rer     Auparavant  on aura d  sactiv   le code PIN de la carte  cela se fait     partir du menu du t  l  phone   et v  rifi   que l actuel SMS N  1  peut   tre     cras      sans regrets  les SMS de rang sup  rieur ne  seront aucunement affect  s      Chaque champ potentiellement int  ressant      bricoler    se  pr  sente sous 
148. mes   selon que le param  tre    exposant    vaut 5 ou 3      148       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE          DUNOD   La photocopie non autoris  e est un d  lit     AUTOUR DES CARTES DE PAIEMENT    L op  ration laissera  sur le disque  les habituels fichiers ADL CAR  et ADT LOG  qu il n   est   videmment pas interdit d exploiter par  d   autres moyens     6 4 DES EXP  RIENCES D AUTHENTIFICATION    Appartenant  en quelque sorte     la m  me grande famille  les  cartes bancaires supportent un m  canisme d   authentification  rappelant fortement celui des cartes Vitale     Simplement  notre programme AUTHCB BAS prend en compte  le plan m  moire particulier du masque B0   et lui fait ainsi certifier  le contenu d   une adresse diff  rente  09E0h au lieu de 2130h      L exp  rience est cependant plus   difiante que dans le cas de la  carte Vitale  dans la mesure o   l explorateur avis   a g  n  ralement  pris le soin de conserver toutes ses cartes bancaires  au fil de leurs  renouvellements successifs     Bien qu il soit parfaitement impossible de lire leur    jeu secret      il est facile de d  terminer si celui ci change ou non lors de chaque  renouvellement de carte  soit  en principe  tous les deux ans     il suffit de v  rifier si notre programme donne ou non un r  sultat  diff  rent      Ft aussi    gros    que cela puisse para  tre  chacun pourra ais  ment  se convaincre que  jusqu    la r  cente augmentation de la 
149. mme    terminal     le code source   DONGLE BAS  doit aussi   tre compil   avec ZCMBASIC EXE   mais cette fois en un    fichier image    portant l extension     IMG        Sp  cifique    une version bien pr  cise de BasicCard  celui ci sera  ensuite t  l  charg   dans la carte  au moyen soit d   un lecteur  PC SC  soit d un    CyberMouse        Supposons donc que nous souhaitions produire une carte     partir de DONGLE BAS et d   une ZC 3 9  Il faudra tout d   abord  taper ZCMBasic  C3 9  OI DONGLE BAS pour compiler un fichier  DONGLE IMG     Un utilitaire sp  cifique  BCLOAD EXE  servira ensuite    pro   grammer physiquement la carte  selon le mode d emploi r  sum    suivant      BCLOAD BasicCard Loader Utility Version 4 30  c  ZeitControl 2002  Usage  BCLOAD  param  param      image file  param  param         image file  The image file to download to the BasicCard   IMG   param   D Display commands on screen   ELerror file  Error file   ERR    L log file  1 0 log file   L0G    Pcom port Use specified COM port   Sstate Set card state    Lload    Tlest   CRlun    Une ZC 3 9   tant ins  r  e dans un lecteur PC SC  on tapera  it ainsi  BCLoad  D  P101 DONGLE IMG pour op  rer le t  l  chargement   en suivant    l   cran les progr  s de l op  ration     43       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       PLUS LOIN AVEC LES CARTES A PUCE    Pr  cisons que  sauf ordre contraire  la carte restera par d  faut en  mode    TEST     et pourra donc 
150. n   tre un t  l  phone portable  qui aura souvent    norm  ment de choses    dire      qu un lecteur de cartes    puce  de poche     Dans un cas comme dans l   autre  il est toutefois courant que la  fr  quence d horloge appliqu  e    la carte soit telle que le rythme  de modulation diff  re de l   habituel 9 600 bauds     64       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES    La derni  re version de nos logiciels pour    espion    donnant la  possibilit   d appliquer un facteur de correction K  il est utile de  conna  tre la fr  quence F r  ellement utilis  e  avant de faire la     r  gle de trois     K   12 x 3 579 F      Certains lecteurs de poche  par exemple  produisent un signal  d horloge    1 ou 1 5 MHZ au lieu du classique 3 579 MHz  tout  simplement pour limiter la consommation sur les piles  on  appliquera alors  respectivement  un facteur de correction de 41  ou de 28     Un petit accessoire fort simple suffit pour brancher  en toute  s  curit    un fr  quencem  tre sur la liaison carte terminal     Grav   selon le trac   de la figure 2 12  un tout petit circuit imprim    sera   quip   d   une embase RCA droite  et de la classique barrette  s  cable faisant office d embase HE 10        On branchera celle ci sur la troisi  me fiche HE 10 du cordon  reliant une    fausse carte    au connecteur de la figure 2 4  et un  fr  quencem
151. n coffre fort  dont la porte s ouvrira d  s qu il aura le dos tourn    eh bien  autant qu il le sache      Et comme sa banque ne s en vantera   videmment pas  c est bel et  bien    lui qu il appartient de proc  der    sa propre   valuation  s  curitaire     Au passage  nous nous offrirons m  me le luxe de pr  senter des  moyens de s  curisation qui  bien qu   tant    la port  e de  l amateur  se r  v  leront parfois plus s  rs que ceux que mettent   ou non    en   uvre les    professionnels        Mais voyons un peu par quel bout prendre une carte    puce dont  on ignore    peu pr  s tout     Un analyseur de r  ponse au reset    En tout premier lieu  il est int  ressant d interpr  ter sa    r  ponse  au reset     ATR   c est    dire cette suite d   octets qu elle   met  spontan  ment d  s sa mise sous tension     Les normes ISO 7816 3 et 7816 4 d  crivant par le menu la signifi   cation de chacun de ses bits  il est possible  sinon facile    de d  ve   lopper un logiciel capable d afficher un compte rendu d  taill       Plut  t que de    r  inventer la roue     nous ne pouvons gu  re  mieux faire que de recommander chaudement ANALYSER EXE   aimablement offert par ACS  avec son code source en C  sur le  c  d  rom de cet ouvrage     Notons que cet utilitaire fonctionne sous DOS  ou dans une fen  tre  MS DOS de Windows   Exception qui confirme la r  gle  donc   il n est pas compatible PC SC  et devra par cons  quent   tre  utilis   avec un    CyberMouse    ou un ACR 20    s  rie
152. nal   on remplacera celui ci par une ZC 5 4 ou 5 5  dans laquelle on  aura pr  alablement charg   le fichier EMUSCOT IMG     l   aide de  BCLOAD EXE      La structure m  moire du   mod  le    sera scrupuleusement  respect  e  les diff  rents pointeurs demeurant inchang  s     135       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    5    EE    __    ________      PLUS LOIN AVEC LES CARTES    PUCE    Par rapport    l original  la    copie de sauvegarde    ainsi r  alis  e  perd bien s  r toutes les donn  es qui   taient   ventuellement prot     g  es en lecture  au minimum les diff  rents jeux de clefs secr  tes     De plus  aucune commande    vocation s  curitaire  et il y en a  beaucoup dans les cartes SCOT    n   est   mul  e     Pas question  par cons  quent  de faire mettre    jour une telle     photocopie    d   une carte Vitale dans une borne publique  op  ra   tion qui serait d   ailleurs assimilable    une falsification     Par contre  le fait que le premier lecteur venu arrive    lire indiff     remment l original ou la copie d  montre     l   vidence  que le  d  codage des principales donn  es personnelles ne fait appel ni  aux clefs secr  tes confi  es    la carte  ni aux algorithmes crypto   graphiques dont elle dispose  Un exemple de plus  donc  d une  application    sensible    qui ne profite que bien partiellement des  ressources s  curitaires des cartes qu   elle utilise      5 5 ET AVEC UN LECTEUR DE POCHE       Un tel constat d
153. nfiniment  plus complexe  qui   laborerait plut  t un    condens      des donn  es  entrantes     La commande    TEST     code op  ratoire 06h  utilise volontai   rement le m  me algorithme et la m  me clef  cette    faute de  s  curit        tant tout simplement commise de fa  on    faciliter les  exp  riences    venir     Dans le cadre d une v  ritable application pratique  il est bien    vident qu il faudrait imaginer une autre    formule secr  te         Cela   tant pr  cis    le but de cette commande est de d  bloquer les  droits d acc  s aux donn  es que contient la carte  si et seulement  si le bon    code confidentiel    est pr  sent   par le terminal     Ce code doit   tre recalcul      chaque fois     partir d une cha  ne  al  atoire demand  e    la carte  et de la clef secr  te qui doit natu   rellement   tre identique dans la carte et dans le programme     Terminal        La carte r  pond simplement par un compte rendu 98 04 si le code  est erron    et par 90 00 s   il est exact  auquel cas elle affecte la valeur  123    un octet interne  FLAG  dont la valeur par d  faut est 0     Une variante pr  sentant un niveau de s  curit   sup  rieur pourrait    tre imagin  e  selon laquelle il faudrait ex  cuter plusieurs fois de  suite le couple de commandes    RAND    et    TEST     chaque  succ  s incr  mentant l   octet FLAG  et chaque   chec le remettant    0     La commande    OUT     code op  ratoire 08h   enfin  transmet au  terminal un mot de sept octets  ici    Pa
154. ngtemps    la norme ISO pour le positionnement de leurs  contacts  il ne faut pas oublier que des millions de cartes  et pas  seulement de t  l  cartes  ont   t   produites avec une    puce    en  position AFNOR     Beaucoup de connecteurs de cartes    puce sont d   ailleurs  toujours   quip  s de seize balais de contact  m  me si la tendance  semble   voluer vers des mod  les    huit frotteurs  il n   y a pas de  petites   conomies         Il n   est pas inutile de se doter des moyens de traiter les cartes     puce    AFNOR     ne serait ce que pour pouvoir les essayer dans  des lecteurs n   acceptant que les puces en position ISO     C est donc dans un souci d   universalit   que nous avons dessin    le circuit imprim    simple face  de la figure 2 2     Figure 2 2   Trac   du   circuit imprim   ISO SIM  porte connecteur        C  t   composants  figure 2 3   il recevra un connecteur    ITT   CANNON    ou compatible  que l on choisira   quip   de seize  balais et d un contact    pr  sence carte    de type    N O      Norma   lement Ouvert  c est    dire ferm   lorsqu une carte est pr  sente     Les deux embases HE 10    dix contacts donnant acc  s  s  par     ment  aux contacts ISO et AFNOR  pourront   tre remplac  es par    56       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES    ISO   AFNOR       M TE    des tron  ons de barrette s  cabl
155. ni  re commande    dif   f  rents stades de l exp  rience  afin de v  rifier dans quelles cir   constances la carte accepte ou refuse de livrer les donn  es  qu elle est cens  e prot  ger  et il n   est nullement interdit de ris   quer une comparaison avec certaines applications existantes       54     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    CHAPITRE          DUNOD   La photocopie non autoris  e est un d  lit     AUTOUR DES CARTES ASYNCHRONES    2 7 DES OUTILS CONNECTIQUES    Pour exp  rimenter commod  ment autour des cartes    puce  il est  souhaitable de disposer d   un jeu d accessoires facilitant au maxi   mum les connexions que l on peut   tre amen        tablir entre les  cartes et les    terminaux    qui les accueillent     Adaptations de format et branchement en parall  le d outils  d investigation ne sont  finalement  que deux exemples des bons  et loyaux services que rendra volontiers un kit connectique  sp  cialis       Un cordon    HE 10       Chacun sait qu une carte    puce conforme    la norme ISO 7816  comporte au maximum huit contacts  dont deux ou trois restent  d   ailleurs de plus en plus souvent inemploy  s     Ajoutons    cela les deux connexions du contact de    pr  sence  carte    dont sont souvent   quip  s les connecteurs  et nous arri   vons    un    devis    de dix conducteurs pour le cordon qui servira     interconnecter les   l  ments de notre    bo  te    outils        D  s ses premiers pas dans le monde fa
156. nsi que le fabricant ACS  Advanced Card Systems  con  oit  et produit    Hong Kong ses lecteurs de poche    ABR     offrant de  larges possibilit  s de personnalisation en fonction des besoins de  chaque application     Bien que bas   sur cette m  me plate forme mat  rielle  le    Pocket  Reader    de certains kits de d  veloppement bouscule compl  te   ment cette approche  puisqu il se veut r  solument    g  n  rique      En clair  ce n   est pas le lecteur qui s adapte  industriellement      telle ou telle carte  mais la carte qui s adapte  par simple program   mation     ce lecteur       prendre ou    laisser           Vue interne  d un lecteur     porte clefs    ABR 1     8       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    LES LECTEURS DE CARTES A PUCE    Naturellement  nous n   allons pas nous priver d exploiter  au  chapitre 6   cette opportunit   dont on ne mesure pas forc  ment  tr  s bien la port  e au premier abord       Il est important de remarquer que la production de masse  et  donc    bas prix  de lecteurs de poche n   a v  ritablement pris son  essor que gr  ce    l apparition de microcontr  leurs    interface     carte    puce    incorpor  e     M  me si des concurrents arrivent maintenant sur le march    c est     STMicroelectronics  grand sp  cialiste des composants encar   tables  que l   on doit l   un des premiers    monochips    pour lecteurs  de cartes    puce   le ST 72411 R                    RE ONDINA    Oo    N   
157. nt  pour lequel il r  clame des pr  visions     Seulement  le t  l  phone affiche des lettres majuscules alors que  l on veut taper des chiffres      L explication se situe dans le contenu de la commande    Fetch     par laquelle le t  l  phone va chercher son ordre de lecture du  clavier      AO 12 00 00 27 DO 25 01 03 01 23 01 0  6E 6F 2E 20 64 05 70 74 20 20 20 20 2  02 17 03 04 50 4D    2 02 81 82 OD 11 04  0 20 20 20 11 02 02    La carte donne la valeur 01h    l   octet    qualifier    pr  cisant le  format des donn  es    recueillir  ce qui correspond    l alphabet     par d  faut     et donc alphanum  rique      Tout se passe bien avec les t  l  phones qui commencent par affi   cher un chiffre  quitte    appuyer plusieurs fois sur la m  me touche  quand on d  sire entrer une lettre     110       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES SIM    Un probl  me se pose  par contre  avec les t  l  phones qui atten   dent du texte en priorit    ce qui est leur droit le plus strict dans  cette situation     Pour   viter ce genre de malentendu  il aurait suffi que la carte  mette le    qualifier       00h  ce qui correspond    un alphabet pure   ment num  rique     Cette fois  la faute incombe clairement    la carte  mais comme  elle ne se manifeste que sur certains mod  les de t  l  phones  le  SAV de l op  rateur a tendance    incriminer le mobile lo
158. nt toutes le m  me identifiant  cartes  de lavage de voitures        8 contacts     des stations service BP   par exemple       e programmer un identifiant librement choisi dans une carte  vierge ou disposant d   une zone de m  moire encore disponible  en   criture     Dans une carte    puis  e  de 24 unit  s de lavage  par exemple  il  reste normalement 136 bits    0 qu   il est facile de mettre indivi   duellement    1  voir notre ouvrage Cartes    puce     Initiation et  applications dans cette m  me collection      Chacune de ces fa  ons de proc  der correspond    un compromis  diff  rent entre s  curit   et souplesse d utilisation  et ne doit donc  pas   tre adopt  e    la l  g  re     La voie que nous allons explorer ici consiste    personnaliser le  programme du PIC en fonction du contenu des cartes que l   on  souhaite reconna  tre     La mise en   uvre est  certes  un peu plus lourde que par    appren   tissage     mais la s  curit   d ensemble s   en trouve renforc  e  tandis  qu un PIC moins puissant suffit amplement     La simplicit   du programme n aura d     gale que celle du sch  ma  de la figure 1 9  en d  pit de la complexit    toute relative    de la  t  che    accomplir     Ne consommant du courant  et d   ailleurs fort peu  que lorsqu une  carte est pr  sente dans le connecteur  le montage peut fonctionner       DUNOD   La photocopie non autoris  e est un d  lit     23       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       
159. ntenant  consid  rer que Windows int  gre le support    natif    des cartes     puce et des lecteurs PC SC     Pour le d  veloppeur  cela se traduit  au plus bas niveau qui lui  soit rendu accessible  par la possibilit    si ce n   est l obligation     d utiliser les services d une APT baptis  e WinScard dil      32       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE    AUTOUR DES CARTES ASYNCHRONES    SCardAddReaderToGroupA  SCardAddReaderToGroupW  SCardBeginTransaction  SCardCancel  SCardConnectA  SCardConnectW  SCardControl  SCardDisconnect  SCardEndTransaction  SCardEstablishContext  SCardForgetCardTypeA  SCardForgetCardTypeW  SCardForgetReaderA  SCardForgetReaderGroupA  SCardForgetReaderGroupW  SCardForgetReaderW  SCardFreeMemory  SCardGetAttrib  SCardGetProviderIdA  SCardGetProviderIdW  SCardGetStatusChangeA  SCardGetStatusChangeW  SCardIntroduceCardTypeA  SCardIntroduceCardTypeW  SCardIntroduceReaderA  SCardIntroduceReaderGroupA  SCardIntroduceReaderGroupW  SCardIntroduceReaderW  SCardListCardsA  SCardListCardsW  SCardListInterfacesA  SCardListInterfacesW  SCardListReaderGroupsA  SCardListReaderGroupsW  SCardListReadersA  SCardListReadersW  SCardLocateCardsA  SCardLocateCardsW  SCardReconnect  SCardReleaseContext  SCardRemoveReaderFromGroupA  SCardRemoveReaderFromGroupW  SCardSetAttrib  SCardState   SCardStatusA  SCardStatusW  SCardTransmit  SCardRawPci   SCardTOPci  
160. ocopie non autoris  e est un d  lit        CHAPITRE    AUTOUR DES CARTES DE PAIEMENT    La figure 6 1 r  sume  pour sa part  les r  sultats d investigations  men  es de cette fa  on sur sept cartes   mises  en pr  s de dix ans   par deux banques diff  rentes  ainsi que les d  ductions que l   on  peut raisonnablement se risquer    en tirer     Elle met bien en   vidence la grande      lasticit      de l   organisation  de la m  moire  et la fa  on dont les   metteurs en ont tr  s largement  tir   parti   On remarquera  tout d   abord  que le masque BO se caract  risait  par une    zone d   tat    particuli  rement vaste  480 bits   car non  effa  able     Un bit y   tant irr  versiblement    grill      lors de chaque pr  senta   tion du code confidentiel    la puce  les cartes de cette   poque  rendaient souvent l   me avant la fin de leurs deux ans de validit       De m  me     raison d un enregistrement de 32 bits par op  ration   une    zone de transaction    de 768 octets ne permettait gu  re plus  de deux paiements    puce    par semaine  mais    l     poque  les  facturettes imprim  es au    fer    repasser      taient encore monnaie  courante      Ce n   est gu  re que lors du passage au masque B0  que les banques  ont  enfin  reconnu publiquement l existence de ph  nom  nes de    saturation    des puces  et par l   m  me la pr  sence d un histori   que des op  rations dans la carte     La technologie EEPROM permettant de    recycler    aussi souvent  que n  cessaire l
161. oge du PC utilis    contrairement au  cas des programmes GWBasic sur port parall  le  qui pouvaient  n  cessiter un   talonnage       tudions donc maintenant ce qui se passe lorsque le montage   pr  alablement muni d une t  l  carte  est ins  r   dans un lecteur  PC SC        D  s l introduction de la    fausse carte     le lecteur PC SC com   mande un    reset    g  n  ral  ce qui positionne la t  l  carte sur son  premier bit     Simultan  ment  le PIC   met une r  ponse au reset minimale   3F 00  qui indique au lecteur PC SC quel protocole utiliser pour  la suite des op  rations  T   0  convention inverse  9 600 bps      D  s lors  tout se passera par encha  nement de commandes  ISO 7816  et par interpr  tation des seuls comptes rendus SW1SW2  retourn  s apr  s leur ex  cution  pour gagner du temps  nous  n avons pas utilis   de champ    donn  es    dans ces commandes      La commande 22 44 00 00 00 doit retourner SW1   90h  SW2  contenant l     tat du bit lu  avant mais aussi apr  s son ex  cution     90A5 indiquerait ainsi que le bit lu avant l ex  cution de la micro   instruction UP   tait    1  et que celui lu apr  s est    0     9055 signifierait que le bit lu   tait    0 et y est rest    90AA qu il   tait     1 et y est rest    tandis que 905A rendrait compte d   un passage  de O0   1     87       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________       PLUS LOIN AVEC LES CARTES A PUCE    La commande 22 22 00 00 00  pa
162. oh  rent avec l introduction suppos  e     comp   ter de novembre 1999  d une clef RSA de 768 bits     Parall  lement  le    jeu secret    des derni  res cartes   mises semble  bien   tre pass      540 bits  tout cela ne laissant plus gu  re que  636 octets pour la zone de transaction     C   est encore tout juste suffisant pour permettre  comme promis   l affichage des 140 derni  res op  rations sur les lecteurs de poche  disponibles dans le commerce  mais il ne doit plus rester beaucoup  de marge de man  uvre d ici    l EMV     moins de cannibaliser  carr  ment cet historique       Mais la zone de lecture h  berge encore bien d   autres informations  int  ressantes  dont le d  codage n   est cependant pas facile  car  comme dans la carte Vitale  leurs bits ne sont pas jointifs     Toujours d  velopp   en ZCBasic  notre programme ADL EXE  permet    tout lecteur PC SC de cr  er un fichier ADL CAR  100    compatible avec le logiciel de d  codage DECADL publi   dans  notre ouvrage PC et cartes    puce  ou bien avec son   quivalent  compil   sous ZCBasic   ZCDECADL EXE     Dans un cas comme dans l   autre  on obtiendra un r  sultat ressem   blant    ceci      DECADL  c 1997 Patrick GUEULLE ANALYSE DU FICHIER ADL CAR    CARTE N    4 9 7 0 0 0 0 0 0 0 0 0 0 0 0 0  Code service  1 0 1   D  but validit    9 3 1 1   Code langue  2 5 0  250   fran  ais    Fin de validit    9 5 1 1   Code devise  2 50  250   francs fran  ais    Exposant  3  3   centi  mes  5   unit  s   Porteur  MR PAT
163. ompte rendu de    bonne ex  cution       51       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUM  PLUS LOIN AVEC LES CARTES A PUCE     9000h   voire de la simple absence de compte rendu d erreur   pour admettre l authenticit   d   une carte    laquelle elles viennent  de transmettre  en clair  s il vous pla  t     un code r  put      confi   dentiel         D  velopp      partir d une BasicCard    Enhanced     dot  e de 8 Ko  d EEPROM   notre    dongle    a pu mettre    contribution l un des  meilleurs algorithmes cryptographiques actuellement disponi   bles  le SHA 1     Cela n est pas possible avec la BasicCard    Compact     ZC 1 1    pourvue de seulement 1 Ko d EEPROM  et dont l algorithme     SG LFSR    est avant tout pr  vu pour crypter les   changes de  commandes entre la carte et le terminal     En revanche  la ZC 1 1 co  te tr  s sensiblement moins cher  tandis  qu il n   est pas inint  ressant de voir ce que l   on peut faire avec  cette carte    d entr  e de gamme    dont un   chantillon  si ce n   est  deux  a longtemps   t   fourni dans les kits BasicCard     Deux courts programmes ZCBasic suffisent pour se fixer rapide   ment les id  es  quitte       corser    un peu l algorithme crypto   graphique lorsque viendra le moment de monter une v  ritable  application pratique     Le programme  AP BAS  destin        tre implant   dans la Basic   Card ZC 1 1 se compose essentiellement de quatre d  finitions de  commandes  auxquell
164. one  et les suivantes aux diff  rentes  rubriques qui peuplent ce nouveau    sous menu        L exemple ci dessous provient  pour sa part  d   une carte    post   paid      mise par un op  rateur fran  ais bien connu      Services    services    106       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle          DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE    AUTOUR DES CARTES SIM    kiosque  SMS infos  agenda    On y retrouve quelques    raccourcis    vers des services offerts  par le r  seau    tant bien entendu que chaque choix peut      son tour  donner acc  s    un nouveau sous menu  que notre  programme ne va pas jusqu      d  tailler  car ce serait bien plus  compliqu        Ici  l avantage du SIM Toolkit est d   uniformiser totalement le  mode d acc  s    ces services  quel que soit le mod  le de t  l  phone  utilis    car on sait bien qu   il existe des diff  rences consid  rables  d ergonomie d une marque    l   autre      Mais le revers de la m  daille  c   est que ce surcro  t de simplicit    camoufle habilement le fait que les services en question fonction   nent souvent par envoi de SMS    videmment payants  et m  me  g  n  ralement surtax  s       C est particuli  rement flagrant dans le cas de l application    agenda     qui pourrait parfaitement   tre g  r  e localement dans  le t  l  phone ou dans la carte  puisque celle ci h  berge d  j    l annuaire personnel de l utilisateur      Eh bien non   Tout le contenu 
165. one de fabrication     qui suit imm  diatement la    zone de lecture        En pr  sence d une carte SCOT    inconnue     notre programme  INFOSCOT BAS  naturellement d  velopp   en ZCBasic    se fera  un plaisir de d  terminer automatiquement les valeurs de tous  ces pointeurs       galement fournie dans le dossier    VITALE    du c  d  rom  sa  version ex  cutable INFOSCOT EXE fonctionnera directement  sur n importe quel lecteur PC SC  ComPort 101      Elle pourrait   ventuellement   tre recompil  e pour le lecteur     CyberMouse    fourni dans les kits BasicCard  ComPort 1 s il est  branch   sur COM1   ou ComPort 2 s il est reli      COM2       Muni de tous ces pr  cieux indices  il n   est gu  re compliqu   de  proc  der    la lecture exhaustive de la carte  exception faite des  clefs secr  tes  naturellement prot  g  es en lecture   et de la    zone d acc  s     qui ne sert gu  re qu      tenir la comptabilit   des  pr  sentations  r  ussies ou non  des clefs et codes PIN      5 3 UNE N  CESSAIRE SURVEILLANCE    Notre programme COPYSCOT BAS a   t   con  u pour faciliter  diff  rentes op  rations autour des cartes SCOT en g  n  ral  et donc  pas sp  cialement des cartes Vitale     133       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    5    EE ULUM  PLUS LOIN AVEC LES CARTES A PUCE    Il n   est pas tr  s rapide  car il ne lit  volontairement  qu un seul  mot de 32 bits par commande BC B0  en l   enregistrant aussit  t  dans un fichier bap
166. onne forc  ment envie de pousser plus loin les  investigations  en   tudiant tout bonnement comment les lecteurs  de poche  librement vendus au grand public  communiquent  avec la carte Vitale     Il est d   ailleurs int  ressant de faire la distinction entre ceux ci  et  les    consulteurs    con  us pour les professionnels prodiguant  des soins    domicile     Les lecteurs les plus simples  XL 2000 de Xiring ou Lexibook  par  exemple  op  rent aussi bien sur les cartes bancaires  consultation  de l historique des transactions  ou les t  l  cartes  lecture du solde  d unit  s   que sur les cartes Vitale  num  ro d   immatriculation   centre d affiliation      Sous une apparence tr  s similaire  les    consulteurs    affichent  aussi des informations plus   indiscr  tes     telles que le d  tail  des droits attach  s    la carte     En gros  un consulteur donne acc  s aux donn  es qui   taient impri   m  es sur la carte    papier     tandis qu un lecteur affiche plut  t  l   quivalent de ce qui apparaissait sur un   extrait de carte      expurg   de toute information confidentielle     Notons pourtant que les derni  res g  n  rations de lecteurs de  poche  XL 2500  en font presque autant      D  terminer     l   aide d   un    espion de cartes asynchrones     o   le  lecteur va lire les donn  es qu il doit afficher  est l affaire d   un  instant     136       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e
167. onnement de l ensemble ne pourrait    tre plus simple  lancer AUTHEXE  l ex  cutable Windows  obtenu par compilation de AUTH BAS   sur un PC   quip   d   un  quelconque lecteur PC SC     Si tout va bien  l insertion de la carte devra entra  ner l affichage  du message    CARTE RECONNUE     puis du mot de donn  es     Patrick          ventuellement  on pourra d  tailler davantage les r  actions de la  carte en se servant d   un logiciel  tel que Scard exe  permettant de  lui envoyer directement des commandes ISO 7816 en protocole  T 1     e 50 02 00 00 04 pour lui demander quatre octets al  atoires   envoyer plusieurs fois de suite cette m  me commande  et  constater que la r  ponse est chaque fois diff  rente          50 04 00 00 04 pour r  cup  rer le r  sultat  xx xx xx xx  de  l ex  cution de l algorithme    partir de la derni  re valeur al  a   toire g  n  r  e  et de la clef secr  te      e 50 06 00 00 04 xx xx xx xx pour pr  senter le r  sultat pr  c     dent en tant que code confidentiel  Celui ci sera reconnu comme  exact si et seulement si les commandes RESP et TEST utilisent  le m  me algorithme et la m  me clef  la fameuse    faute de  s  curit      pr  c  demment   voqu  e      Bien entendu  il serait refus   si une nouvelle commande RAND    tait envoy  e entretemps  sans toutefois   tre suivie d   une nou   velle commande RESP      e 50 08 00 00 07 pour tenter de lire le mot de donn  es th  ori   quement    prot  g        On n   h  sitera pas    envoyer cette der
168. ontient son fichier    Phase     7F20 6FAE      S il est sup  rieur    02h  on pourra d  coder le contenu de sa    SIM  Service Table     7F20 6F38  pour avoir  beaucoup  plus de d  tails     Mais on peut aussi regarder comment la carte r  agit    une  commande    Terminal profile     par exemple A0 10 00 00 04 FF  FF FF FF     e si elle r  pond 6D00  INS   10h non reconnu   c   est qu elle ne  supporte pas le SIM Toolkit      e si elle r  pond 9000  cela prouve qu elle supporte le SIM Toolkit   mais qu   elle n   a pas  du moins pour le moment  d ordre     donner au t  l  phone      e si elle r  pond 91XX  elle est non seulement compatible SIM  Toolkit  mais pr  te    transmettre des ordres au t  l  phone  sous  la forme d   un bloc de donn  es long de XXh octets     Un logiciel de recherche de menus    Nous avons imagin   un petit programme ZCBasic permettant  d aller plus loin dans cette voie  en d  terminant si la carte est en  mesure d ins  rer son propre menu dans celui du t  l  phone     Le code source STKM BAS a ainsi   t   compil   en STKM EXE  une  v  ritable application    console    pour Windows 95 ou sup  rieur   capable de se servir de n importe quel lecteur PC  SC correctement  install       Voici  par exemple  le r  sultat obtenu    partir de notre BasicSIM  de    seconde g  n  ration         Proactive  Term  Profile  BasicCard   LOG On   LOG Off   Clear LOG    La premi  re ligne correspond    l entr  e ajout  e par la carte dans  le menu principal du t  l  ph
169. our  obtenir un fichier ex  cutable GETHIST EXE     La taille respectable de celui ci  252 928 octets  trahit bien le fait  qu il s agit d une application Windows au grand complet       Son but est d afficher les    caract  res historiques    de la r  ponse  au reset  ATR  de la carte pr  sente dans le lecteur PC SC     Sensiblement ce que fait PCSCatr EXE  donc  mais    partir d   un  code source de quelques lignes  et non plus de plusieurs pages      Tout ce qu il y a de compliqu   et de fastidieux dans la gestion  d   un lecteur PC SC  ou m  me de plusieurs    est en effet pris en  charge  de fa  on enti  rement    transparente     par le ZCBasic     Qu il nous soit permis d insister   C   est tout    fait exceptionnel  et  absolument remarquable en termes de simplification du d  ve   loppement d applications PC SC   quelques minutes au lieu de  plusieurs heures  quelques heures au lieu de plusieurs jours ou  semaines       Certes  cela suppose de renoncer aux possibilit  s graphiques de  Windows  mais lorsque cela posera vraiment un probl  me  on  pourra s int  resser    l API BasicCard    galement fournie sur notre  c  d  rom   qui permet de programmer en Visual Basic  en C  ou  en C   si on en a l habitude     Quelques mots seulement  car c est tr  s simple  sur l organisation  g  n  rale de cet   chantillon de code source ZCBasic      Les deux premi  res lignes provoquent l inclusion de deux biblio   th  ques fournies avec le compilateur     Indispensable  CARDUTIL DEF
170. ouvent l ex  cution des logiciels compa   tibles avec le seul mode    propri  taire           l inverse  si le lecteur n   est connect   qu apr  s le d  marrage  r  ussi de Windows  par exemple avec un commutateur R5232    alors il fonctionnera tr  s probablement dans son mode    propri     taire     et ne sera pas reconnu par les applications PC SC     Cela dit  il est fr  quemment possible de faire fonctionner simul   tan  ment un lecteur PC SC sur un port donn    et un lecteur    propri  taire    sur un autre  ou encore deux lecteurs PC SC  reli  s    des ports diff  rents     Dans ce dernier cas  le logiciel peut proposer de choisir entre les  lecteurs disponibles  ou bien s  lectionner d autorit   un lecteur     par d  faut      une in  puisable source de surprises       1 3 DES LECTEURS DE POCHE    Si les lecteurs de cartes    puce sont en passe de devenir des p  ri   ph  riques de PC aussi courants que les souris  on commence aussi     en trouver dans les poches de monsieur Tout le monde         c  t   des lecteurs d  di  s    tel ou tel porte monnaie   lectronique  ou    diverses cartes privatives  les mod  les    g  n  riques    com   patibles avec certains outils de d  veloppement ont de quoi  s  duire le d  veloppeur imaginatif     Comme bien des id  es g  niales  c   est en France qu a germ   celle  d   un lecteur de cartes    puce autonome  et au format de poche     D  velopp   par le SEPT  le regrett   d  partement R amp D commun  de La Poste et de France T  l  
171. peut   tre  pr  s de six fois plus rapide que la valeur par d  faut de 9 600 bauds    cela  toutefois  sans pouvoir augmenter la fr  quence d horloge  au del   de 5 MHZ  au lieu de 3 579      Comme le lecteur n   est pas oblig   de s accommoder de ces para   m  tres  il peut entamer une    n  gociation    avec la carte d  s que  celle ci aura fini de lui transmettre sa r  ponse au reset     Ayant  par exemple  re  u une ATR   gale    3B 3C 94 00 4B 31 25  A2 10 13 14 47 83 83 90 00  le lecteur pourra envoyer le bloc  d octets suivant    la carte  FF 10 94 7B     67    L espion de cartes     puce asynchrones        DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUM  PLUS LOIN AVEC LES CARTES A PUCE    En l occurrence  cela signifie que le lecteur accepte de travailler     F 512 et D 8  mais il pourrait fort bien    marchander    en  proposant ses propres param  tres     La carte retourne alors exactement le m  me bloc d octets  si elle  est d accord  mais elle peut aussi faire une contre proposition  ce  qui se traduit par la modification de quelques bits dans le bloc  d   octets renvoy          partir du moment o   une telle n  gociation aboutit  l   espion  n   affichera plus que des donn  es erron  es  tant qu il restera r  gl    sur le d  bit de donn  es par d  faut     68       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       CHAPITRE PAGE    AUTOUR  DES CARTES  SYNCHRONES    3 1 Des outils d exploration
172. peuvent   tre   mul  es en  c  blant des EEPROM   quivalentes  pr  sent  es en bo  tier DIP 8   sur des   fausses cartes   en circuit imprim   de 8 10 mm  d   paisseur     Moyennant la gravure d   un tel adaptateur selon le trac   de la  figure 3 1  le lecteur    CyberMouse    peut ainsi fort bien faire  office de programmateur de m  moires EEPROM s  rie  que l   on  enfichera sur un support    tulipe    c  bl   selon la figure 3 2     POSITION ISO  gt     79    Figure 3 1   Trac   de la     fausse carte    I2C     Figure 3 2   Plan de c  blage  de la    fausse carte           DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUM  PLUS LOIN AVEC LES CARTES    PUCE    Cartes    protocole I2C   tendu  code famille 07h     e 24C65  Microchip  etc      Au del   de 16 kbits  le protocole  2C classique doit c  der la place     une variante dite      tendue     parfois baptis  e    XIIC         Les cartes    puce de cette famille atteignent ainsi des capacit  s  allant jusqu    8 Ko  soit 65 536 bits  comparables    celles de  certaines cartes asynchrones     Cartes    protocole Microwire  code famille 08       93CS06  93CS46  diverses marques     Relativement peu utilis   dans les cartes    puce  le protocole    Microwire    est un concurrent de l T2C en mati  re de m  moires  EEPROM s  rie     Les mod  les support  s par le CyberMouse sont organis  s en 16  registres de 16 bits  soit un total de 256 bits     Un registre de protection permet d inter
173. plaisons    appeler ses    fioritures      le fait m  me qu il  supporte les lecteurs PC SC prouve qu il s   agit bel et bien d   un  outil de d  veloppement Windows 32 bits     Simplement  il exploite son    mode console     c est    dire un  mode   texte    plut  t rustique  dans une    fen  tre MS DOS    de  Windows 95 ou sup  rieur     35       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE OULU  PLUS LOIN AVEC LES CARTES    PUCE    Cela ressemble d   ailleurs    s y m  prendre    du MS DOS  mais  ce n en est pas   un logiciel d  velopp   en ZCBasic V 3 ou V4 ne  s ex  cutera pas sur un    vieux    PC fonctionnant sous DOS ou  sous Windows 3     Comme tout Basic compil   qui se respecte  le ZCBasic est tribu   taire d   un compilateur  ZCMBASIC EXE      C   est lui qui produira de v  ritables ex  cutables Windows 32 bits      partir du code source   crit au moyen de n importe quel   diteur  de texte     Il est m  me fourni un environnement de d  veloppement en bonne  et due forme  dot   de tout le confort de Windows  ZCPDE EXE       partir duquel il est normalement pr  vu d appeler le compila   teur  ainsi qu un excellent simulateur     Mais il est   galement possible d op  rer directement en mode     ligne de commande     selon le mode d emploi condens   suivant      1C Basic Compiler Version 4 32  c  ZeitControl 2002  Usage  ZCMBASIC  param  param      input file  param  param       input file  The ZC Basic source file   BAS     param 
174. pourrait bien     tra  ner    jusqu   en 2006  voire au del    et c est tant mieux pour  nos exp  rimentations       Fonctionnellement plus riches  plus sophistiqu  es  plus s  cu   ris  es  dit on   les nouvelles cartes sont surtout plus co  teuses   3 5    4     contre 1 50     pour les actuelles cartes B0       Elles font  soit dit en passant  l   objet d   une normalisation tr  s  ouverte  et de nature r  solument publique  ce qui est assur  ment  une bonne chose     Certains experts craignent toutefois que les mesures de s  curit     facultatives  qu   elle d  finit ne soient  pour changer    mises en    uvre que d   une fa  on maladroite  ou m  me pas du tout      Cela se traduirait  naturellement  par un r  sultat diam  tralement  oppos   au but poursuivi  le renforcement de la s  curit        Parall  lement  on commence    int  grer le porte monnaie   lectro   nique    Mon  o    dans les cartes bancaires  ce qui fait couler  beaucoup d encre      6 6 ET VOICI    MON  O         Par d  finition  un porte monnaie   lectronique  PME  est cens   se  substituer    la menue monnaie pour effectuer commod  ment   par carte  des paiements de faibles montants     En toute logique  il devrait donc   tre    sans abonnement     ano   nyme  et rechargeable aussi bien par d  bit d un autre PME   parents vers enfants  par exemple  que d   un compte bancaire     Un tel produit existe  il s appelle    Mondex      et a amplement  fait ses preuves  notamment en Grande Bretagne     Il n av
175. r  car il utilise une  fr  quence CLK r  duite    1 MHz   il peut aussi afficher    WAIT        En protocole T   1  il est courant qu   une m  me commande soit     la fois    entrante    et    sortante     ce qui est un peu d  routant  lorsque l on n   a jamais op  r   qu en T   0  cartes bancaires  cartes  SIM  carte Vitale  etc       Cela n est pourtant pas tr  s compliqu    et finalement plut  t  commode   l   octet Lc indique la longueur du bloc de donn  es   DATA  que le lecteur transmet    la carte  tandis que Le indique    153       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUM  PLUS LOIN AVEC LES CARTES A PUCE    le nombre d   octets que le lecteur demande    la carte de lui retour   ner  rien n   interdisant bien s  r    Le d     tre   gal    Lc  qui vaudra  ici 10h  soit 16 en d  cimal      Les donn  es que le lecteur envoie ainsi spontan  ment    la carte  d  crivent tout simplement ce qu il est capable de faire     Comme il n existe pour l instant qu un seul mod  le  on peut carr     ment les ignorer     l exception du tout premier octet  qui pr  cise  combien d op  rations d affichage ont   t   effectu  es depuis que  la carte est pr  sente dans le lecteur     Pour faire s afficher une ligne de caract  res  la carte doit simple   ment renvoyer le bloc d   octets    DATA    qu elle a re  u  en y  apportant les modifications suivantes        1  octet   doit   tre r  p  t      l identique     e 2   octet   format des donn  es
176. r contre  doit toujours renvoyer  SW1SW2   9022  que l op  ration d   criture ait r  ussi ou non  la  v  rification se fera g  n  ralement    l   occasion de la prochaine  commande 22 44 00 00 00      Une micro instruction PGM isol  e ne peut  en effet  que mettre     1 un bit qui   tait    0  et jamais le contraire     Tel qu il est propos    ce montage ne permet d   ailleurs l   criture  que dans les T2G  pour la bonne et simple raison que les lecteurs  PC SC ne fournissent pas le Vpp de 21 V n  cessaire    l   criture  dans les T1G  pour ce genre de besogne  un lecteur    maison     ferait beaucoup mieux l affaire        De toute fa  on  l op  ration est bien plus int  ressante sur les T2G   en raison de cette fameuse variante dite    avec retenue        Ne faisant pas l   objet d   une commande sp  cifique  cette micro   instruction est r  alis  e en encha  nant deux commandes    PGM     sur un m  me bit     Ex  cut  e dans certaines zones du    plan m  moire    de la T2G   cette op  ration permet d effacer  remettre    0  huit bits d   un  coup  au prix de la mise    1 d   un seul bit dans l octet de poids  sup  rieur     C est ce m  canisme qui sert    faire tourner le compteur de type    boulier     capable de comptabiliser plus de trente mille unit  s  avec seulement 40 bits     Naturellement  le maximum semble avoir   t   fait pour interdire  tout ce qui pourrait s apparenter  de pr  s ou de loin     un    rechar   gement            partir du moment o   une t  l  car
177. re que  d   autres fabricants de lecteurs offrent des logiciels comparables   tel Towitoko  http   www towitoko de  avec son    Smart Card  Editor     destin      ses lecteurs    ChipDrive        Sa principale particularit   est de tenter de deviner  avec des  fortunes diverses  le type de carte que contient le lecteur     3 2 UN ADAPTATEUR PC SC POUR CARTES  SYNCHRONES    Si le CyberMouse reconna  t une grande vari  t   de cartes syn   chrones  bien d   autres lecteurs PC SC supportent seulement les  cartes asynchrones  I2C  et    protocole 2 3 fils     81       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    ___   PLUS LOIN AVEC LES CARTES A PUCE    Avec leur protocole franco fran  ais  les t  l  cartes T1G ou m  me  T2G demeurent ainsi compl  tement    l   cart du    ph  nom  ne  PC SC     mais c est peut   tre voulu       La vocation du pr  sent adaptateur est donc de    d  guiser    une  t  l  carte T1G ou T2G en carte asynchrone  assurant indirectement  sa compatibilit   avec les lecteurs PC SC des micro ordinateurs  fonctionnant sous Windows     Et pour ce faire  nous allons de nouveau utiliser un microcontr     leur  mais programm   cette fois ci en assembleur      Chacun sait  en effet  que le PIC 16F84 se pr  te admirablement     la r  alisation de cartes    puce asynchrones  souvent d  sign  es  sous le nom de    wafer cards        Quelques applications    succ  s dans des domaines aussi vari  s  que la t  l  vision    p  age  l
178. rictions frappent cependant les cartes n  cessitant une  tension de programmation Vpp  sup  rieure    5 V      commencer  par les GPM 416  que l   on pourra tout de m  me lire   et les t  l     cartes    T1G     pas directement accept  es par le CyberMouse   mais nous avons bien   videmment imagin   une solution    ce  probl  me          ces exceptions pr  s  chacun pourra librement op  rer sur les  familles de cartes suivantes  identifi  es par un code tenant sur un  octet      Cartes    protocole    Eurochip     code famille 01h         SLE4406  SLE443x  SLE553x  Siemens Infineon   e AT88SC06  Atmel   e ST1304  ST1305  ST1335  ST1336  ST1355  STMicroelectronics     71       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE MM  PLUS LOIN AVEC LES CARTES    PUCE    e PCF2006  PCF203x  PCF223x  Philips   e SCS152  Microchip   e GPM103  GAM226  GAM326  Gemplus     Depuis la toute premi  re    Telefonkarte    allemande jusqu aux     Eurochip    de seconde g  n  ration  toutes les cartes de cette  famille    protocole   5 contacts     dont la capacit   va de 104      271 bits  ont en commun un syst  me de comptage d unit  s de    E HET ES     x   View Help    Memory Card   ACOS1   Commands   About      Chip ID Area a  Card ID Area  Counter 4096  Counter 512  Counter 64  Counter 8  Counter 1   Control Area  Aux  Data Area  Authentication   Hex    annii  Stan 50       15 44 EF            H  C Ascii         Special functions  xi  Authentication       
179. rsqu il  proc  de  en toute bonne foi     ses in  narrables    essais crois  s        Proactive SIM et envoi de SMS    Admettons maintenant que l application    m  t  o    soit enfin  op  rationnelle  et que l   on ait r  ussi    entrer le num  ro de d  par   tement 76     Le v  ritable programme qui s ex  cute dans la carte demande alors  au t  l  phone d envoyer un SMS    un service sp  cialis       Pour ce faire  la carte va  par exemple  r  pondre 9135 au lieu de  9000 d  s qu elle en aura l occasion     Le t  l  phone r  pliquera       vos ordres    en   mettant une com   mande    FETCH    r  clamant tout juste 35h octets de donn  es    AO 12 00 00 35     En l occurrence  ces 53 octets seront      DO 33 01 03 01 13 00 02 02 81 83 05 0C 6D 05 74 05 6F 20  20 20 20 20 20 20 06 07 91 33 86 09 40 00 FO OB 11 01 00  05 81 02 22 F0 00 F6 07 6D 05 74 05 6F 37 36    Sans proc  der    une analyse par trop approfondie de ce bloc de  donn  es  on notera que l octet 13  en sixi  me position  identifie  un ordre    SEND SMS        Plus loin  un   l  ment TLV avec un tag 05h  nature      alpha ID      tout comme 85h   et une longueur de OCh octets  contient le texte  destin      s afficher sur l   cran du t  l  phone      m  t  o     suivi de  sept espaces  20h   soit un total de douze octets  0Ch      La suite du bloc de donn  es contient le corps du SMS    envoyer   et en particulier      e le num  ro du centre de messagerie charg   de l   acheminer    33689004000       e le num  ro
180. rt cards     d  riv   de Visual Basic      la seule  carte    puce programmable en Basic        Il s   agit  en fait  d une grande famille de cartes      syst  me  d exploitation ouvert     c est    dire l   quivalent  pour les cartes     puce  de ce que fut le Basic Stamp pour les microcontr  leurs    une r  volution      En clair  chacun peut acheter  au d  tail et    des prix abordables   des cartes    blanches    pour y embarquer librement ses propres  applications     Cela rappelle furieusement les    Wafer cards    et leurs innom   brables cousines  mais la similitude s arr  te l     m  me si la Basic   Card est accessible au grand public  ce qui ne fait pas que des  heureux      c est un produit r  solument professionnel  largement  conforme aux normes en vigueur     Mais la grande originalit   du syst  me BasicCard  c est qu un  m  me langage de programmation tr  s simple  oui  le Basic       34     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES    peut servir    programmer aussi bien des cartes  que des applica   tions pour leur    terminal     entendons par l   un PC   quip   d un  lecteur appropri        Le kit logiciel   tant enti  rement gratuit  offert dans le dossier     BASICCARD    du c  d  rom de cet ouvrage  et t  l  chargeable  sur http   www basiccard com   rien n emp  che de s en servir  pour d  velopper  en quelques lign
181. rtes  de    terminaux    en lieu et place de    vraies    cartes    puce     58       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES ASYNCHRONES    Dot  es d une embase HE 10 au brochage conforme    la figure 2 1   celles ci se pr  tent    toutes sortes d utilisations bien plus avoua   bles que ce que pourrait laisser penser leur appellation     Relier une    fausse carte    au connecteur que nous venons de  d  crire permet  par exemple  de faire accepter une carte AFNOR  ou SIM Micro par un lecteur uniquement destin   aux cartes    plein  format     avec puce en position ISO  CyberMouse  notamment      Tel est aussi le cas de certains lecteurs de poche  capables d   affi   cher le solde d unit  s d   une t  l  carte  mais seulement si sa puce  est en position ISO     Signalons enfin certains automates de lavage de voitures  qui  refusent d  sormais les cartes pr  pay  es avec puce en position  AFNOR  dont la validit     tait pourtant illimit  e      Il a   t   longtemps d usage de donner aux    fausses cartes    les  dimensions exactes des vraies  ce qui ne posait aucun probl  me  lorsque la moiti      peine de la carte   tait introduite dans le lecteur     On rencontre toutefois de plus en plus de    terminaux     dans  lesquels la carte p  n  tre en entier  sans pour autant   tre    aval  e     par un syst  me motoris       Cette   volution nous am  ne
182. s    cartes lavage     BP  de 12 ou 24 unit  s     8 contacts   et  cela qu elles soient neuves    puis  es  ou en cours d utilisation     Le programme se contente en effet de v  rifier deux octets cons     cutifs  117d et 130d   qui se trouvent   tre communs aux iden   tifiants des deux types de cartes  cela apr  s avoir   saut      les  pr  c  dents sans m  me en prendre connaissance  sous programme    jump         Bien entendu  cela ne se fait qu apr  s un    reset    en bonne et due  forme de la carte  autrement dit apr  s application d une s  quence  bien pr  cise et relativement complexe d   impulsions  garantissant  que la lecture commencera juste au premier bit de l espace  m  moire        DUNOD   La photocopie non autoris  e est un d  lit     27       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE    __    ________      PLUS LOIN AVEC LES CARTES    PUCE    Nos lecteurs familiers du langage machine des PIC remarqueront  que la quatri  me ligne est   crite en assembleur et non en BASIC   C est une possibilit   remarquable du compilateur LET Basic que  de permettre de    m  langer    ainsi les deux langages sans pr  cau   tion particuli  re       En l esp  ce  cela permet de modifier le contenu d   un registre  sp  cifique du PIC  OPTION   dont la valeur par d  faut ne nous  convenait pas     La compilation de ce code source produit un listing assembleur   TEST508 ASM   que son assemblage avec MPASM transforme  en code machine  TEST508
183. s    drivers    sp  cifiques d un ou plusieurs lecteurs  r  put  s compatibles PC SC     La sp  cification PC SC pr  voit en effet un m  canisme cens    permettre la coexistence paisible de plusieurs lecteurs et de  plusieurs applications faisant appel  ensemble ou s  par  ment      une ou plusieurs cartes    puce  asynchrones  I2C  ou    protocole  2 3 fils         ANINDOWS 32 bis        Figure 1 1   Le principe de la  compatibilit   PC SC         Logiciels PC SC Logiciels   Windows 32 bits   propri  taires    DOS ou Windows 16 32 bits        DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    PLUS LOIN AVEC LES CARTES    PUCE    En pratique  l exp  rience montre que dans l   tat actuel des choses   il est prudent d   viter d associer des lecteurs PC SC de diff     rentes marques  car la bonne entente entre drivers concurrents  est encore loin d     tre g  n  rale      Une liste    jour des lecteurs certifi  s PC SC est disponible sur le  site http   www pcscworkgroup com     On y trouvera des mod  les populaires de chez Gemplus  aux  c  t  s de produits pas toujours tr  s connus en France     Deux exemples assez repr  sentatifs sont l   ACR 30 de chez ACS   disponible au d  tail aupr  s de Selectronic  et 1 ACR 20    Cyber   Mouse     http   www hitechtools com         CyberMouse     est un excellent  lecteur PC SC            signaler   galement le ChipDrive Micro de chez Towitoko   http   www towitoko de ou http   www scmmicro com   dis   ponible
184. s   que l   on montera sur un circuit imprim   grav   selon la figure 1 7        DUNOD   La photocopie non autoris  e est un d  lit     19       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle         PLUS LOIN AVEC LES CARTES A PUCE      L   9U  S  Id    ON        e        O                  ddA   ON   aN9        C    ZOSI     o  n489   US     OSI                9 OSI    OSI S OSI  52t ani ce0      C  5J 6E       essyu  dde  T  pus   Jae L o SSA  vJ 9S    ragu say    t8 991 Old          a8essquardde g smmxros    O9   Naa   z OSI   OSI 8OSI ET 2p PWYS   e  9 T amas  ji  O N      gH  La            9qau  cat             es   UORESIIAN    T             14e  AGE    d  ASIe6    87LbNL  T  O         LOOPNE    20       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    LES LECTEURS DE CARTES A PUCE    DEVICE 16C84   INCLUDE EEPROM   INIT EEPROM   DIM B0 B1 B2 B3 B4 S H   DEFINE PortB  00011001   OUTB 2    HIGH B 7   HIGH B 6   LOW B 6  LOW B 7   HIGH B 6   LOW B 6   HIGH B 5  H 0   IF INPORTB  amp  1   0 THEN H 32   IF INPORTB  amp  8   0 then GOTO learn   IF INPORTB  amp  8   8 then GOTO check  learn  FOR B0 0 TO 31    B2 0   FOR B1 0 TO 7   B2 B2 2   S INPORTB  amp  16   S S 16   B2 B2 S   HIGH B 6   LOW B 6  NEXT B1   STORE BO H B2   NEXT BO    OUTB 0    B4 50   GOTO Led  check  FOR B0 0 TO 31    B2 0   FOR B1 0 TO 7   B2 B2 2   S INPORTB  amp  16   S S 16   B2 B2 S   HIGH B 6   LOW B 6  NEXT B1   B3 EEDATA BO H    IF B2  lt
185. s cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     ADI    ADS    AD2    ADM    ADC      CHAPITRE       AUTOUR DES CARTES    SANT         En creusant un peu les choses  il appara  t que la similitude est  encore bien plus marqu  e avec la famille    SCOT     une gamme  de cartes BULL CP8 destin  e aux applications les plus vari  es   voir notre ouvrage PC et cartes    puce      Sa technologie correspond ainsi    peu pr  s    ce qui   tait    l     tat  de l Art    en 1991     Conform  ment    la bonne vieille strat  gie du    rideau de fum  e      l   metteur ne divulgue aucune information technique  en dehors  de partenariats avec des industriels   tri  s sur le volet     par  exemple  les constructeurs des bornes de consultation  des termi   naux de professionnels de sant    ou des lecteurs de poche    grand  public         Qu    cela ne tienne   La lecture du manuel  nullement confi   dentiel  des kits de d  veloppement SCOT est fort riche d ensei   gnements       Il n   en faut pas davantage pour partir    l aventure  dans le but  avou    car parfaitement avouable   d   valuer le degr   de  confiance que l on peut accorder    une carte qui   ne contient  aucune donn  e confidentielle     c est ce que l   on dit aux titulaires    mais dont    les informations administratives qu   elle contient sont  cod  es  par respect de la vie priv  e     c est ce que l on affirme aux  professionnels qui affichent quelques   tats d 
186. s de fid  lit   sont bas  es sur la version    non crypto      ST1331 ou GPM271   moins co  teuse et plus simple    mettre en    uvre     E HEC ES  elx  View Help    Memory Card   40051   Commands   About                    ST1333 z  fs  Circuit ID Arez MRG  x   Card ID Area  Memory area to be updated  7  Counter 4096 z  Courier 512 Start   oo 09 Length   oi Read Again          Counter 64 80  Counter 8  Counter 1  En    Certificat   7  di Write options       Authenticatior o    Normal      nit teatinn fla    il il E BRIE  C Erase the selected contect with FF    APE                 gt  80   lt  00 01 00 OA 00 01          lt  00 01 00 09 00 01   gt  9000  SW1 SWZ     gt  80    lt  00 01 00 09 00 01   gt  3000  SW1 SW2Z     gt  80                                       D  marrer  f CardE asy EA Paint Shop Pro   BITES 11 38          Cartes compatibles GPMA416  lecture seulement    GPM896  code  famille 03h       e SLE4404  Siemens Infineon    e AT88SC101  AT88SC102  AT88SC1601  AT885C1604  Atmel    e ST1301  STMIcroelectronics      PCF7940  Philips    e GPM416  GPM896  Gemplus      quip  e d   un composant ST1301  la GPM416 de Gemplus a  marqu   la transition technologique de l EPROM    l EEPROM     Cette carte de    seconde g  n  ration    n  cessitait toutefois encore  une tension de programmation Vpp de 21 V  que le CyberMouse  n est pas en mesure de fournir  car il ne contient pas de conver   tisseur   l  vateur de tension      Munie de zones prot  g  es par des codes confiden
187. s en t  moignerons  tr  s largement au fil des chapitres qui suivent     2 4 DES LOGICIELS D INVESTIGATION    En pr  sence d   une carte    puce dont on ignore les    petits  secrets     le premier r  flexe est en g  n  ral de tenter de lui   tirer  les vers du nez        Par simple curiosit    tout d   abord  mais peut   tre aussi pour se  faire une id  e personnelle du degr   de confiance que l   on peut lui  accorder  pour peu qu elle soit cens  e s  curiser une application  un tant soit peu    sensible        Que l   on ne nous fasse cependant pas dire ce que nous n avons  pas   crit   la technologie des cartes    puce est aujourd   hui adulte   et on sait parfaitement produire des cartes   intrins  quement  s  res     qui ne r  v  leront jamais les donn  es confidentielles  qu elles contiennent  pas m  me sous la torture     Par contre  tous les  vrais  experts s accordent pour d  plorer la  n  gligence chronique de certains   metteurs de cartes  ou d  ve   loppeurs d applications  qui ne se servent pas  ou pas bien  des  m  canismes s  curitaires mis    leur disposition     Cela pour gagner du temps au nom du sacro saint   time to  market     ou pour faire des   conomies qu ils risquent pourtant  de payer un jour au prix fort     38       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE    AUTOUR DES CARTES ASYNCHRONES    Si l   on propose ainsi au consommateur de louer u
188. s loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE                E  PLUS LOIN AVEC LES CARTES    PUCE    Tableau 5 2   Le codage    BCD     des chiffres     0000  0001  0010  0011  0100  0101  0110  0111  1000  1001    o OO 1 OO 01  amp        Oh             La seule v  ritable complication  c est que chaque mot de 32 bits  commence par 2 bits    0  ce qui d  cale tout    chaque fois        ce stade  on pourra   tre tent   de pousser plus loin la plaisan   terie   modifier le contenu de la carte  et examiner l effet produit  sur ce qu affiche le lecteur de poche     Cela uniquement dans la copie  bien s  r  car l   criture dans une     vraie    carte est heureusement subordonn  e    la pr  sentation  de la clef ad hoc     Supposons que le contenu du mot d adresse 0318h soit 01 A4  92 35  et que le pr  nom du porteur de la carte soit    PATRICK        Rempla  ons l octet A4h  10100100  par 9Ch  10011100   ce qui se  fait tr  s simplement en envoyant une commande BC DO 03 18  04 01 9C 92 35  notre carte attendant  rappelons le  des mots  entiers de 4 octets     des adresses finissant par 0 ou 8      Ins  rons par exemple la carte dans un lecteur de poche XL 2500   et il s affichera maintenant    PASRICK         Rien de plus normal  quand on sait que le T est cod   10100  et le  S 10011     Mais cette exp  rience a au moins le m  rite de montrer que le  lecteur n   y voit que du feu   n   y aurait il donc aucune    clef de  contr  le       ce niveau  ou bien le l
189. s loin avec les cartes    puce    CD Rom    Patrick Gueulle    LES LECTEURS DE CARTES A PUCE    DEVICE 12C508   DIM B1 B2 B3 S   DEFINE PortB 200101000   MOVLW O   OPTION   OUTB 0    HIGH B O   HIGH B 1   LOW B 1  LOW B O   HIGH B 1   LOW B 1   HIGH B 2  B3 136   GOSUB check   B3 128   GOSUB check   B3 32   GOSUB check   B3 2   GOSUB check   B3 60   GOSUB check   B3 117   GOSUB check   B3 130   GOSUB check   B3 36   GOSUB check   B3 161   GOSUB check   OUTB 16    STOP   check    B2 0   FOR B1 0 TO 7   B2 B2 2   S INPORTB  amp  32   S S 32  B2 B2 S  HIGH B 1   LOW B 1    I       NEXT B1   IF B2  lt  gt  B3 THEN GOTO False   RETURN   False  OUTB 16    DELAYMS 255    OUTB 0   END    Cela permet de ne reconna  tre que les seules    cartes lavage    de  24 unit  s     8 contacts   qui sont toutes exactement identiques  entre elles     Appliqu      une t  l  carte  ce principe ne permettrait de reconna     tre qu une et une seule carte  sauf modification  tr  s simple     destin  e    accepter  mettons  toutes les cartes de 120 unit  s en  rejetant celles de 50     Certains de nos lecteurs  vieux routiers du langage BASIC   s   tonneront peut   tre de diverses maladresses ou lourdeurs  apparentes de programmation     En fait  celles ci sont d  lib  r  es  et servent    contourner certains  d  fauts de ce qui ne fut qu une version provisoire du compi   lateur     Les versions limit  es post  rieures    la 7 00 ne supportant plus  que le PIC 16F84  il n     tait en effet pas possible
190. s seize   tapes de l affichage  adresses 00h    FOh   un  message invitant    retirer la carte s affichera jusqu      son extraction  effective     Bien entendu  la carte doit contenir des donn  es pour que quelque  chose de vraisemblable s affiche      En tant que cartes    lecture et   criture libres  les cartes I2C se  pr  tent id  alement au transport de petits volumes de donn  es en  tous genres  et nous verrons au chapitre 3 comment les remplir  depuis un PC     Bien entendu  le compilateur LET Basic peut aussi servir    d  ve   lopper des programmes g  rant l   criture dans ces cartes   c est  quasiment aussi simple que pour la lecture      1 6 DES SERRURES    CARTES    PUCE    L id  e d utiliser des t  l  cartes usag  es comme clefs   lectroniques  n est pas neuve  mais peut se d  cliner de multiples fa  ons     Dans notre ouvrage Basic pour microcontr  leurs et PC  nous  montrions ainsi comment un m  me d  veloppement en PBasic  pouvait indiff  remment   tre mis en   uvre sur un Basic Stamp  ou sur un PIC 16C84     Il nous para  t int  ressant de montrer ici comment programmer  exactement les m  mes fonctions    l   aide du compilateur LET Basic     Ceux de nos lecteurs qui ne poss  deraient pas l ouvrage en ques   tion pourront se r  f  rer    la figure 1 6 pour suivre notre propos     Le code source ci apr  s  SMARTLET BAS   compil   en SMART   LETHEX  sera charg   une bonne fois pour toutes dans un PIC  16F84  aux fusibles de configuration correctement positionn  
191. scinant des cartes    puce   l   auteur de ces lignes a fait le choix d   un c  ble m  plat  muni de  deux fiches HE 10    dix contacts  serties de fa  on    se trouver  branch  es en parall  le  fil    fil     Ult  rieurement  il est apparu n  cessaire d ajouter une troisi  me  fiche du m  me mod  le  vers le milieu du cordon  afin de pouvoir  intercaler diff  rents montages    espions    entre une carte et son  lecteur     Cela   tant  la longueur id  ale peut   tre fix  e    20 cm   plus court  ne serait gu  re pratique  tandis que plus long ferait courir des  risques de d  gradation de la qualit   des signaux     5 6 7 8    Figure 2 1   Le brochage du    1 2 3 4     connecteur HE 10     La figure 2 1 d  finit la correspondance des num  ros ISO des  contacts de la puce  avec les broches de l   embase HE 10 vue de  face  c  t   insertion de la fiche   une encoche de d  trompage    liminant toute ambigu  t      Il est amusant de constater comment cette affectation  inspir  e     l origine du brochage d   un connecteur pour    clef    puce    avec  lequel nous souhaitions assurer la compatibilit    a   t   syst  mati     55       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE M  PLUS LOIN AVEC LES CARTES    PUCE    quement adopt  e par nos confr  res ayant rejoint  des ann  es  plus tard  le    club    des adeptes de la carte    puce       Un connecteur multiformat    M  me si toutes les cartes    puce    plein format    adh  rent depuis  lo
192. sicCard  ou disponible s  pa   r  ment  http   www hitechtools com      R  pertoire Espasync   Ce dossier rassemble les plus r  centes versions du logiciel de  l espion de cartes asynchrones du chapitre 2  aussi bien sous la  forme de code source Basic  fichiers bas  que d   ex  cutables  MS DOS  fichiers  EXE      Quatre variantes sont fournies  destin  es respectivement aux  ports s  rie COM1  ou COM2  du PC  et aux cartes    convention  directe ou inverse    R  pertoire PCB    Les trac  s de tous les circuits imprim  s des montages propos  s  sont fournis dans le format     PCB    propre au logiciel BOARD   MAKER ayant servi    les dessiner     160       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       LE C  D  ROM DU LIVRE    Le sous r  pertoire    BMAKERI    contient une version limit  e de  cette application MS DOS  permettant de visualiser et imprimer   avec ou sans modifications  tout ou partie de ces fichiers     R  pertoire PCSC    Ce dossier r  unit diff  rentes applications compatibles avec  n importe quel lecteur de cartes    puce certifi   PC SC  Cyber   Mouse  ACR 20 ou 30  etc       SCard exe  en particulier  permet de dialoguer par commandes  ISO 7816 avec n importe quelle carte asynchrone     protocole  T 0 ou T   1  quelle que soit la marque du lecteur     Dans le sous r  pertoire    Delphi     on trouvera le code source de  l application    PCSCatr exe   
193. sp  ciaux     y compris des m  lodies de sonnerie     qui pourront    161       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUM  PLUS LOIN AVEC LES CARTES    PUCE      tre envoy  s au moyen d   un simple t  l  phone portable compa   tible     Le sous r  pertoire    Godsave    contient quelques exemples  d une m  lodie bien connue  traduite en diff  rents formats par  un syst  me automatis   qui   tait encore en d  veloppement lors  de la r  daction de ce livre   on lui pardonnera donc d   ventuelles     fausses notes         Dans le sous dossier    MQP     on trouvera le contenu de la  disquette de d  monstration d   un programmateur d EPROM du  commerce  dont l installation met    notre disposition un excellent    diteur hexad  cimal  PDED EXE         condition de respecter les conditions d utilisation de ce share   ware  dont on prendra connaissance dans le fichier READ ME    on tient l   un outil tr  s puissant pour op  rer  notamment  sur le  contenu des SMS que l   on peut   tre amen      aller lire dans telle  ou telle carte SIM  voir notre ouvrage T  l  phones portables et PC   dans cette m  me collection      R  pertoire SyncPCSC    Ce dossier rassemble tous les   l  ments logiciels du projet d   adap   tateur PC SC pour cartes synchrones du chapitre 3     R  pertoire Termin    Dans ce dossier se trouvent tous les logiciels des lecteurs de cartes     puce autonomes ou    serrures   lectroniques    dont le chapitre 1  d  crit la r
194. t   du montage   tant prise en charge par sa partie  logicielle  la r  alisation pratique se limite    l   interconnexion de  fort peu de composants  sur un circuit imprim   grav   d   apr  s la  figure 1 4     Le plan de c  blage de la figure 1 5 est pr  vu pour un afficheur  r  tro   clair    ce qui suppose l emploi d un r  gulateur 7805 pour  subvenir    sa consommation non n  gligeable  au moins 100 mA  sous 5 V      En pr  sence d un mod  le uniquement r  flexif  un 78L05 suffirait   tandis que l   afficheur ne serait muni que de 14 connexions au lieu  de 16     On notera que celui ci fonctionne en mode    hexa     c est    dire  sur des blocs de donn  es de seulement quatre bits  Cela minimise    Liste des composants   PIC 16F84    programmer   I2CPIC HEX    R  gulateur 7805   Quartz 4 MHz  environ   Afficheur LCD    2 x 16 caract  res   2x3 9kQ   2x39nF   2x22 pF   Connecteur de carte    puce   CCM01 2NO 3 ITT CANNON   Bornier 2 circuits 5 08 mm    Le lecteur autonome  de cartes I2C        16       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    1    CHAPITRE    LES LECTEURS DE CARTES A PUCE               a8erquo    p UEId  GT amy    wudu  PMI   np JIL  YI mH    SEIPBIEO 94 x Z a97       ONS LOW99          Hj9P un 359   SL uou ardosojoud VF   GONNA       17       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    PLUS LOIN AVEC LES CARTES    PUCE    Le lecteur autonome  de cartes I2C  suite         le nombre de
195. t iMelody   imy     BEGIN IMELODY   VERSION 1 0  FORMAT   CLASS1 0  NAME   Gamme   COMPOSER  Unknown   BEAT 160   STYLE S1   VOLUME   V7   MELODY  c4d4e4f4g4a4b4 5c4  END   IMELODY    Format RTTTL    Gamme d 4 0 5 b 160 c d e f g a b c  6    Format Nokia Composer    c d e f g a b c6    Format Nokia    texte binaire      noktxt     024A3A551D85B5B5940400232086D7411413415416418414A41C41140000000    Format Ericsson EMelody   emy     cdefgab c    Format    touches clavier    Motorola V60    11222030330333040202201112220    Format    touches clavier    Samsung    881882883884885886887881    126       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit     CHAPITRE       AUTOUR DES CARTES SIM    4 4 DES EXP  RIENCES D AUTHENTIFICATION    A  41  45    On sait bien que toute carte SIM est capable de s   authentifier  aupr  s de l op  rateur qui l   a   mise  et cela au travers de son propre  r  seau ou de ceux de ses partenaires   trangers     Il nous a cependant paru utile de doter le c  d  rom de ce livre  d   un petit programme ZCBasic  AUTHSIM EXE  capable de faire  jouer ce m  canisme    partir d un simple lecteur PC SC   on le  trouvera dans le r  pertoire    AUTH    du dossier    SIM        Il est int  ressant de le mettre en   uvre sur notre BasicSIM  dans  la mesure o   le r  sultat obtenu devrait rassurer tous ceux qui  craignent  et on se demande bien pourquoi    que celle ci ne  puisse servir
196. t parvenu      Fausse man  uvre involontaire  ou acte de malveillance   Toujours  est il que  re  u fort    propos par un t  l  phone non compatible  ce  message s est trouv   enregistr   dans la carte SIM comme un SMS    ordinaire     pr  t    subir une analyse approfondie       T  l  charger des sonneries    Le t  l  chargement de m  lodies de sonnerie sur les t  l  phones  portables est une v  ritable    poule aux oeufs d   or     pourtant  bas  e sur un mode de transmission fort peu co  teux  encore et  toujours les SMS        Moyennant un peu d imagination  il suffit d un mobile GSM et  d un PC muni d   un lecteur de cartes    puce  pour se lancer      petite   chelle    dans cette activit   tr  s    la mode     C est    Nokia que l   on doit le    Smart messaging     un proc  d    permettant d encapsuler toutes sortes de contenus   volu  s  dans des mini messages astucieusement structur  s  voir http      Www forum nokia com      Depuis  les organismes de normalisation  http   www 3gpp org   ont imagin   une alternative publique    ce syst  me    propri     taire     l EMS  Enhanced Message Service      Adopt   par des marques concurrentes telles que Alcatel  Ericsson   Siemens  ou Motorola  il pr  sente certains avantages  mais aussi  quelques inconv  nients  par rapport    son a  n   enti  rement  incompatible     Chacun comprendra donc pourquoi  avant de se faire envoyer      prix d   or    une sonnerie ou un logo  il faut indiquer d   une fa  on  ou d   une autre la
197. taille de  la clef  les banques ne semblent pas avoir d  ploy   beaucoup de  z  le en la mati  re       Curieusement  cette paresse procure une belle occasion au    bricoleur    qui envisagerait de r  aliser son propre syst  me  d   authentification     partir de   vieilles    cartes bancaires    Point n   est besoin de d  ployer de bien gros moyens pour ce  faire  comme en t  moigne la simplicit   du code source ZCBasic  CB1 BAS     Compil   en CBI EXE  ce tr  s court programme commence par  demander    son utilisateur de taper un texte quelconque  maxi   mum 256 caract  res      Dans celui ci  le programme va pr  lever des cha  nes r  put  es    al  atoires    de 6 octets  qu il soumettra    l algorithme crypto   graphique de la carte  ex  cut   sur l adresse 09E0h  mais chacun  est libre de changer cette valeur    par d  faut         Apr  s chaque ex  cution  le programme enregistre cet    al  a    et  la r  ponse correspondante  8 octets  soit 64 bits   dans un fichier  baptis      KEY KEY        149       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUM  PLUS LOIN AVEC LES CARTES A PUCE    Par la suite  on pourra authentifier la m  me carte  ou bien  et  c est tout l int  r  t de la    n  gligence     une carte distincte munie  du m  me jeu secret   en lui soumettant un al  a extrait du fichier  KEYKEY  et en v  rifiant que le r  sultat obtenu co  ncide avec  celui qui lui est attach   dans ce m  me fichier     C est tr  s exactement
198. te introduite dans cet adap   tateur est vue comme une carte asynchrone  sa compatibilit   se  trouve assur  e avec le kit de d  veloppement logiciel de la Basic   Card  voir chapitre 2      C est donc en ZCBasic que nous avons   crit les deux logiciels  applicatifs de ce projet     SYNC BAS se borne    lire 512 bits cons  cutifs dans toute t  l     carte  c est    dire la totalit   de l   espace adressable d   une T2G     Dans le cas d   une T1G  on lirait par contre deux fois de suite les  256 bits qu   elle contient     En plus d     tre affich      l   cran  le r  sultat de la lecture s enregis   tre dans un fichier CARTE CAR  enti  rement compatible avec les  programmes de nos ouvrages Cartes    puce     Initiation et applica   tions et PC et cartes    puce     88       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       DUNOD   La photocopie non autoris  e est un d  lit        CHAPITRE    AUTOUR DES CARTES SYNCHRONES    Ceux ci permettraient donc  le cas   ch  ant  de    d  crypter    les  donn  es lues dans une T1G  une T2G  voire une t  l  carte   trang  re  de type    Eurochip     par exemple pour d  terminer s il y reste ou  non quelque cr  dit d unit  s     Bien que ce logiciel soit destin      fonctionner  en priorit    sur  un lecteur PC SC  nous n avons pas pr  vu l habituelle ligne     ComPort 101        Cela nous procure l   occasion de d  voiler une autre fa  on de  d  clarer le lecteur de cartes    puce    utiliser     Avant de 
199. te que la conversion de 8 bits en 7 bits a bien   t   effec   tu  e  mais que l indicateur de protocole est rest      3Fh  il aurait  tout aussi bien pu   tre remis    00h par le SMSC      Mais certains t  l  phones se permettent de    rafra  chir    le message  dans la carte SIM avant de l envoyer  redemandant m  me parfois     cette occasion un num  ro de destinataire pourtant d  j   pr  sent     Il n est alors pas rare que PID  et DCS  soient r  tablis tous deux     leur valeur par d  faut de 00h     En pareil cas  le SMSC n effectue   videmment pas de conversion   d o   soit un affichage inintelligible  soit un avertissement du  genre    Format de message incompatible    ou    Donn  es 8 bits        L   encore  ce sont les mod  les r  cents qui paraissent les plus  enclins    ce genre de    censure        Il est int  ressant de proc  der    des essais       blanc     sans trans   mission effective  et donc gratuitement   en utilisant une    Basic   SIM        Donnant acc  s    toutes les fonctions du t  l  phone dans lequel on  l ins  re  mais ne s inscrivant sur aucun r  seau  celle ci permet de  simuler la transmission d un SMS  puis de relire celui ci    l   aide  de tout bon   diteur de carte SIM  C est    ce moment que l   on se  rendra compte de ce que le t  l  phone s   est permis ou non de  modifier subrepticement     Pour aller  beaucoup  plus loin dans cette passionnante explora   tion  on ne saurait trop conseiller la lecture attentive des sp  cifi   cations GS
200. tiels  cette carte  d une capacit   de 416 bits doit d  sormais   tre consid  r  e comme  obsol  te     75       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE   E  PLUS LOIN AVEC LES CARTES    PUCE    IE CardEasy  lexi  View Help    Memory Card   ACOS1   Commands   About           GPM896 2 I E6 06 89 08 3C A2 FF 88  Manufacturer A       Issuer Area OS  Card Secret Co  Error Counter    Protected Area  Key name   Application   re Secret Code  2 bytes   Erase Code 1    _ Value    Erase Code 1  6 bytes   e Erase Code 2  4 byt  Application   re  Erase Code 2 lo                         Frase Fo rail  New value i   S Fi E Srey JE Chenge to the new value           Wade loo oc       lt  00 03 01 00 00 00   gt  9000  SW1 SW2Z     lt  00 01 00 00 00 02   gt  9000  SW1 SW2     gt  4C FF    lt  00 03 01 00 00 00   gt  9000  SWL SW2     lt  00 01 00 02 00 08   gt  9000  SW1 SW2     gt  E6 06 89 08 3C AZ FF 88             y  AD  marer   f CardEasy R Paint Shop Pro   BALE 1 33          Elle a cependant brillamment contribu   au d  veloppement  d applications relativement ambitieuses  pour lesquelles des  cartes asynchrones auraient   t   trop co  teuses     La rel  ve est heureusement assur  e par la GPM896  carte de    troisi  me g  n  ration    d une capacit   accrue  896 bits   et  int  gralement compatible avec le CyberMouse  puisqu elle se  contente d   une tension unique de 5 V     Notons d   ailleurs que le SLE4404  le composant concurrent du  ST130
201. tique tr  s classique  d  crite au chapitre 2     Celle ci se compose d   un connecteur de cartes    puce  desservant  imp  rativement l int  gralit   des 8 contacts du micromodule   dont on v  rifiera la compatibilit   du positionnement ISO ou  AFNOR   d une    fausse carte    en circuit imprim   de 8 10  et  d   un c  ble plat muni de trois fiches HE10    dix contacts  toutes  serties dans le m  me sens et donc interconnect  es    fil    fil        Naturellement  chacun pourra   tre amen      fabriquer sa propre  variante de    fausse carte     selon les exigences dimensionnelles  des lecteurs dans lesquels il sera pr  vu de l introduire     La figure 3 12 sugg  re ainsi un trac   allong    pouvant   tre intro   duit dans les lecteurs qui    avalent    la totalit   de la carte  et    95    Figure 3 10   Trac   du  circuit imprim       Figure 3 11   Plan de c  blage     Liste des composants  1 x MK48708  ou   quivalent   Radiospares    1 x 4040   1 x 4011  4x1 5kQ   2 x 6 8 kQ   1x27 kQ   2x15 kQ  sur la     fausse carte       1 x 0 33 pF  2x1 5nF   1 x 470 pF  1x2 2nF  support    tulipe     28 broches  barrette s  cable      doubles picots  carr  s coud  s    ou 2 embases HE10     10 contacts   sans verrous        DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE M  PLUS LOIN AVEC LES CARTES    PUCE       Figure 3 12   Trac   de la     fausse carte           Le c  t   cuivre e  de la    fausse carte        comporte m  me une zone pouvant   tr
202. tis   CLOVIS LOG        ce stade de notre exp  rimentation  on quittera le programme   en pressant ESCape  lorsque la lecture sera termin  e  et on  mettra   ventuellement    en lieu s  r    une copie de CLOVIS LOG     Un autre programme  CHKSCOT BAS  pourra  en effet  servir  ult  rieurement    mettre en   vidence d   ventuelles modifications  du contenu de la carte   cela  apr  s une    mise    jour    dans une  borne    ce destin  e  par exemple  car dans l     tat actuel des choses   il ne semble pas qu   un terminal de professionnel de sant   soit  habilit      modifier quoi que ce soit  mais cela pourrait venir      La carte   tant de nouveau ins  r  e dans le lecteur PC SC  il suffit  de lancer CHKSCOT EXE  en pr  sence de CLOVIS LOG  pour  assister    une comparaison mot    mot entre la carte et le fichier     En cas de discordance  le programme s arr  tera pour laisser le  temps de la noter  mais il reprendra son cours normal d  s que  l on pressera la touche de retour    la ligne      2C940585 2C9A0585  265985A0 265985A0  04007FFF 04007FFF  37FFFFFF 37FFFFFF  00000000 00000000  010212FF 01021200    Comme l affichage se fait en hexad  cimal  et    un rythme pas trop  rapide  il y a l   une bonne occasion de se faire une id  e de ce que  contient vraiment la carte Vitale     Il sautera imm  diatement aux yeux que seule une toute petite  partie de la m  moire disponible est r  ellement utilis  e      Cela confirme bien que  dans l     tat actuel des choses  la carte ne
203. tres techniques     commencer par des    poin   teurs    d  finissant les adresses de d  but de toutes les autres  partitions     6 2 PAR O   COMMENCER L EXPLORATION      N importe quel lecteur de cartes    puce supportant le protocole  asynchrone    T   0    permet de prendre connaissance du contenu  de la zone de fabrication  au moyen de simples commandes  ISO 7816     On fera ainsi BC BO 09 CO 04 pour lire le premier mot de 32 bits   soit 4 octets  de cette zone  BC BO 09 C8 04 pour lire le suivant   ou BC BO 09 F8 04 pour lire le dernier     Mais on pourrait tout aussi bien faire BC BO 09 CO 20 pour lire  d   un seul coup les 32 octets de la zone     Les heureux possesseurs d un lecteur PC SC  convenablement  install   sur un syst  me Windows 95 ou sup  rieur  pourront se  servir pour cela de SCARD EXE  ou mieux de notre programme  ZF EXE  capable de d  coder  en langage clair  l essentiel de ce que  contient la zone de fabrication  voir dossier    CB    du c  d  rom  accompagnant cet ouvrage      D  velopp   en ZCBasic version 4  son code source ZE BAS est  compatible avec le kit logiciel de la BasicCard    galement offert  sur notre c  d  rom     Soumise    ce logiciel  une carte bancaire r  cente    mise en  juin 2002  donnera par exemple les r  sultats suivants      Code Application   3FE5  ZF  Zone de fabrication    gco  ADL  Zone de lecture    7F0  ADT  Zone de transaction    2F8  ADM  Zone d   tat    2D8  143       DUNOD 2004   Plus loin avec les cartes    puce    
204. trick     si et seulement si  la carte a accept   le code pr  alablement pr  sent    sinon  elle  renvoie juste un compte rendu 98 08      Bien entendu  ce simple exemple pourrait   tre   toff    car il reste  un peu plus de 300 octets d EEPROM pour h  berger d   autres  donn  es prot  g  es  tandis que rien n interdit de passer    une  ZC 3 3 ou ZC 3 9     La d  monstration des possibilit  s de la carte ainsi    personna   lis  e   peut se faire    l   aide d un tr  s simple programme   AUTH BAS  compil   pour le   terminal     en g  n  ral le PC    quip   du lecteur de cartes    puce    CyberMouse    ou PC SC  ayant servi    programmer la carte      On y retrouve naturellement les d  clarations des quatre com   mandes d  finies dans le programme    carte     mais aussi le m  me  algorithme et la m  me clef     53       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUM  PLUS LOIN AVEC LES CARTES A PUCE    On pourra v  rifier que la moindre modification effectu  e d   un  c  t    mais pas de l   autre  fait   chouer toute tentative d   authenti   fication  et par cons  quent d acc  s aux donn  es prot  g  es     Il est par contre possible  et m  me vivement conseill    que chacun  apporte des modifications  voire des am  liorations    de son cru     l algorithme et    la clef  puis s assure que tout fonctionne bien  si celles ci sont exactement identiques dans les programmes     carte    et    terminal        La v  rification du bon foncti
205. ts variables que sont  comme nous  l avons d  j   vu        SC    le num  ro du serveur charg   d acheminer le SMS      123       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       PLUS LOIN AVEC LES CARTES    PUCE    e To    le num  ro du destinataire    e la m  lodie  c est    dire le texte qui suit le mot clef MELODY        Le programme s   tant ex  cut   avec succ  s  on doit retrouver le  SMS    transmettre en position N   1 de la carte SIM  avec en guise  de texte un seul et unique caract  re             La dur  e de validit   du message est arbitrairement fix  e     24 heures  A7h   mais pourrait   ventuellement   tre allong  e   ABh   5 jours  par exemple      Notons bien que l   on peut rencontrer des t  l  phones qui modifient  abusivement les SMS qu ils n   ont pas compos  s eux m  mes    Mais comme la plupart des GSM de cette marque  l   Alcatel One  Touch Club qui a servi    nos essais ne se permet pas ce genre de  fantaisie     Les choses sont fort diff  rentes en ce qui concerne les t  l  phones  de marque Nokia     En    Smart messaging     on fait appel    un codage plus compliqu     mais aussi plus compact  car d  fini bit par bit et non plus octet  par octet     Ainsi  trois octets 26h 82h A8h repr  senteraient deux notes  R    et Mi   assorties chacune de leur dur  e  avec modificateur      En iMelody V 1 0  il faudrait entre quatre et huit octets pour  coder les m  mes informations     Cette opportunit   de transmettre des m
206. u de s  curit    mais    enfreindrait gravement la     loi du moindre effort         Bien entendu  chacun pourra faire varier    sa guise le mot al  a   toire et l adresse carte  afin de v  rifier le caract  re th  oriquement  impr  visible du r  sultat obtenu     On pourra aussi s assurer  m  me si c est absolument   vident     qu une carte copi  e comme nous l avons vu est parfaitement  incapable de simuler ce processus     Rien    voir  donc  avec un    clone    potentiellement ill  gal   tout  au plus l   quivalent de la simple photocopie d une carte     papier     sur laquelle on peut crayonner    loisir     Vraiment pas de quoi fouetter un chat  en somme      139       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    5       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle       CHAPITRE PAGE    AUTOUR  DES CARTES  DE PAIEMENT    6 1 L   volution des cartes  bancaires 142    6 2 Par o   commencer  l exploration   143    6 3 L historique des transactions 147  6 4 Des exp  riences    d   authentification 149   6 5 Vers les cartes    EMV    150   6 6 Et voici    Mon  o      151   7 Le c  d  rom du livre 159       141     DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    EE ULUM  PLUS LOIN AVEC LES CARTES A PUCE    La    mon  tique    a toujours   t   l   une des applications de pr  di   lection des cartes    puce  et ce n   est certes pas fini      Parall  lement aux cartes bancaires  il 
207. ueur totale est 07h octets     Mais en pratique  c est surtout le dernier de ceux ci qui nous  int  resse      Une fois s  lectionn  e l   une des applications accessibles depuis le  menu principal  SMS infos  par exemple   c est par un processus  diff  rent  ordre    SELECT ITEM     que la carte pr  sentera  s il y  a lieu  les rubriques du sous menu correspondant  se divertir   m  t  o  bourse  etc       Cette fois  c est par une commande    Terminal response    que le  t  l  phone indiquera    la carte  le moment venu  la sous rubrique  choisie par l utilisateur        ce stade  l application   SIM Toolkit   s  lectionn  e se met  imm  diatement au travail  et risque d   avoir besoin d   un peu de  temps avant de pouvoir retourner le compte rendu SW1SW2   tr  s probablement de la forme 91XX      La carte pr  vient alors le t  l  phone par   mission d   un ou  plusieurs octets 60h     More time         Cela peut vite devenir exasp  rant avec certaines cartes bas  es  sur la technologie    Java     pas particuli  rement rapide       Expertise de quelques anomalies    On aura compris que le langage STK     la fois riche et compact   est passablement compliqu    au point m  me d     tre assez m  dio   crement ma  tris   par certains d  veloppeurs d applications travail   lant pour les op  rateurs ou les fabricants de t  l  phones portables     Nous avons ainsi   expertis      deux dysfonctionnements dont  les   services clients    des op  rateurs renvoient volontiers la    109
208. utonome  tout en mettant en   uvre des  composants    usage g  n  ral     C   est ainsi que le pr  sent projet fait appel    un tr  s classique PIC  16F84  programm   en Basic     Nous avions d  j   amplement vant    dans notre ouvrage Basic  pour microcontr  leurs et PC  les m  rites de cette approche haute   ment simplificatrice     Depuis  des compilateurs encore plus performants ont   t   mis  sur le march    accompagn  s de puissantes biblioth  ques de     p  riph  riques virtuels    tels qu un afficheur LCD     C   est ainsi que m  me la version de d  monstration  s  v  rement  limit  e en longueur du code source  du compilateur LET Basic   distribu   en France par Selectronic  suffira pour doter notre  maquette de possibilit  s d  j   significatives     Bien entendu  chacun pourra ensuite   toffer cet exemple en se  servant de la version compl  te  afin de le doter de telle ou telle  fonctionnalit   particuli  re   la voie sera toute trac  e      12       DUNOD 2004   Plus loin avec les cartes    puce    CD Rom    Patrick Gueulle    LES LECTEURS DE CARTES A PUCE    Attardons nous donc tout d   abord un peu sur les possibilit  s de  ce compilateur  qui offre m  me la possibilit   rare de produire   enti  rement sous environnement Windows  du code pour les  tr  s populaires PIC 12C508 et PIC 12C509     noyau 12 bits   rappelons le      Fonctionnant en tandem avec l   assembleur    officiel    MPASM  de Microchip  il permet d examiner le code assembleur interm     diaire 
    
Download Pdf Manuals
 
 
    
Related Search
    
Related Contents
Un grand oui pour le Landy  組立説明書を確認する  Avaya Mobile Communication Client 3100 for Nokia User's Manual  デジマチックキャリパゲージ 外側測定用 CGDO    Catalogue Printemps 2014 .xlsx  TYPE 6000 DESCRIPTION  Portuguese 5730-58pg Josh  KOHLER K-702202-G54-MX Installation Guide  中性-User Manual V_2 修改 - Lightcast Public Safety    Copyright © All rights reserved. 
   Failed to retrieve file