PN532-RFID-NFC-Carte-et-tag-MiFare

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Cartes & tags MiFare

MiFare est l'un des 4 "protocoles" des cartes 13.56MHz (FeliCa en est un autre bien connu). Toutes les cartes et tags vendu sur le wheshop de MCHobby utilise le populaire et économique chipset MiFare Classic.

Cartes MiFare Classic

Les cartes MIFARE Classic sont disponibles sous les formats 1K et 4K. Bien qu'il existe une variété plus importante de puce MiFare, ce tutoriel va se pencher sur deux chipsets principaux disposant de documents publiquement accessibles:

Les cartes Mifare Classic ont typiquement 4-octets NUID qui identifie de manière unique chaque carte (dans la limites des valeurs numériques codables sur 4 octets). Il est également possible d'avoir des modèles avec une identification sur 7 octets mais les modèles 4 octets sont, de loin, les carte Mifare Classic les plus répandues.

Mémoire EEPROM

Les cartes MiFare classic dispose d'une mémoire de type EEPROM de soit 1K, soit 4K. Chaque bloc mémoire peut être configuré avec des conditions d'accès différentes (des autres blocs) avec deux deux clés d’authentification distincte présent sur chaque bloc.

Les cartes Mifare Classic sont divisée en section appelées "Secteurs" (sectors en anglais) et "Blocs" (blocks en anglais). Chaque "secteur" dispose de droits d'accès individuels, et contient un nombre fixe de "blocs" qui sont contrôlés par ces droits.

Chaque bloc contient 16 octets (bytes en anglais), et chaque "secteur" contient 4 blocs (cartes 1K/4K) pour un total de 64 octets par secteur, ET 16 blocs (cartes 4K uniquement) par "secteur" pour un total de 256 octets par secteur. Les types de cartes sont organisés comme suit:

  • cartes de 1K - 16 secteurs de 4 blocs chacun (secteurs 0..15)
  • Cartes de 4K - 32 secteurs de 4 blocs chacun (secteurs 0..31) et 8 secteurs de 16 blocs chacun (secteurs 32..39)

Secteurs de 4 blocs

Les cartes 1K et 4K utilisent toutes les deux 16 secteurs ayant chacun 4 blocs, avec le premier 1K de mémoire organisé à l'identique pour pour les deux modèles de carte (1K et 4K) pour des raisons de compatibilité.

Ces secteurs de 4 blocs individuels (contenant 64 octets par secteur) dispose de fonctionnalités sécuritaires de base. Ces fonctionnalités sont:

  • Configuration de droit d'accès lecture/ecriture (read/write en anglais) configurable pour chaque secteur.
  • Deux clés d'authentification différentes pour chaque secteur (6 octets par clé, ces clés peuvent être différentes pour chaque secteur).

A cause de ces fonctionnalités de sécurisation (qui sont stocké sur le dernier bloc, ainsi appelé "fin de secteur" (Sector Trailer en anglais, ce terme est important), seuls les 3 blocs du bas de chaque secteur sont disponibles pour le stockage des données. Cela signifie que vous disposez uniquement de 48 octets pour votre propre usage par secteur de 64 octets.

Chaque bloc est organisé comme suit, avec 4 lignes de 16 octets chacune pour un total de 64 octets par secteur. Les deux premiers secteurs de chaque carte sont présentés ci-dessous:

    Secteur Bloc    Octets                                                          Description
    ------  ------  ------                                                          -----------
                      0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15
      1       3       [-------CLE A-------]   [Bits d'accès]  [-------CLE B-------]   Fin de secteur (''Sector Trailer'')
              2       [                            Données                        ]   Données
              1       [                            Données                        ]   Données
              0       [                            Données                        ]   Données
      0       3       [-------CLE A-------]   [Bits d'accès]  [-------CLE B-------]   Fin de secteur (''Sector Trailer'')
              2       [                            Données                        ]   Données
              1       [                            Données                        ]   Données
              0       [                     Données Fabricant                     ]   Bloc Fabricant (''Manufacturer block'')


Fin de secteur (bloc 3, Sector Trailer)

Le bloc de "Fin de secteur" est appelé "sector trailer" en anglais. Ce secteur contient deux clés secrètes Clé A et Clé B (Key A et Key B en anglais), ainsi que les conditions d'accès pour les 4 blocs (appelés "Access Bits" en anglais).

Ce secteur à la structure suivante:

          Les octets de la fin de secteur
          --------------------------------------------------------------
          0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15
          [       Clé A       ]   [Bits d'accès]  [       Clé B        ]

Pour plus d'information concernant l'usage des clés et l'accès au contenu du bloc, référez-vous à la section "accéder à la mémoire de l'EEPROM" de ce même document.

Blocs de données (Blocs 0..2)

Les blocs de données ont une capacité de 16 octets et, en fonction des permissions assignées sur les bits d'accès, peuvent être lu ou y écrire des données. Vous êtes libre d'utiliser ces 16 octets comme vous le voulez. Vous pouvez facilement y stocker des entrée texte, des valeurs entière stockées sur 32 bits (soit 4 octets), un URI en 16 caractères/positions, etc.

Blocs de données comme "bloc valeurs"

Une alternative au stockage de données aléatoire dans les blocs de 16 octets est de configurer ces derniers en tant que "bloc valeur" ("Value Blocks" en anglais). Les "blocs valeur"/Value blocks permet de réaliser des fonctions de porte-monnaie électronique. Les commandes valides sont: read (lecture), write (écriture), increment (incrémenter), decrement (décrémenter), restore (restaurer), transfer (transférer).

Chaque "bloc valeur" contient une seule valeur 32 bits signée (+/-). Cette valeur est stockée 3 fois dans le bloc pour des raisons d'intégrité et de sécurité.

La valeur est stockée deux fois en valeur vraie (non inversée) et une fois en valeur inversée. Les 4 derniers octets sont utilisés pour stocké 1 octet d'adresse (adresse stockée 4 fois, deux fois en valeur vraie et deux fois en valeur inversée).

Les blocs de données configurés en "bloc valeur" ont la structure suivante:

          Octets d'un bloc valeur
          --------------------------------------------------------------
          0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15
          [   Valeur  ]   [   ~Valeur ]   [   Valeur  ]   [A  ~A  A   ~A]

Bloc Fabricant (Secteur 0, Bloc 0)

Le secteur 0 est spécial étant donné qu'il contient les données du bloc Fabricant ("Manufacturer Block" en anglais). Les données qu'il contient sont propre au fabricant et ce bloc est en lecture seule (Read Only).

Vous devriez éviter de l'utiliser à moins d'exactement savoir ce que vous faites.

Secteurs de 16 blocs

Les secteurs de 16 blocs sont identiques aux secteurs de 4 blocs, mais avec plus de blocs de données. La structure décrite dans les secteurs à 4 blocs s'applique également ici.

      Secteur Bloc    Octetct                                                         Description
      ------- -----   ----                                                            ----------
                      0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15
      32      15      [-------CLE A-------]   [Bits d'accès]  [-------CLE B-------]   Fin de secteur 32 (''Sector Trailer'')
              14      [                            Données                        ]   Données
              13      [                            Données                        ]   Données
              ...
              2       [                            Données                        ]   Données
              1       [                            Données                        ]   Données
              0       [                            Données                        ]   Données

Accéder à la mémoire de l'EEPROM

Vous devez effectuer les opérations suivantes pour accéder à l'EEPROM de la carte:

  1. Vous devez retrouver les 4-octetse NUID de la carte (ce NUID peut également avoir 7-octets de long, cela reste cependant rare pour une carte Mifare Classic). Cette opération est nécessaire pour le processus d'accès qui va suivre.
  2. Vous devez vous authentifier sur le secteur auquel vous voulez accéder en accord avec les règles d'accès (définis sur le bloc de fin de secteur/Trailer Bloc), en fournissant la clé d'authentification appropriée (clé de 6 octets) qui est à 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF pour une nouvelle carte.
  3. Une fois l'authentification réussie, et en fonction des persmissions sur le secteur, vous pouvez lire/écrire/incrémenter/décrémenter le contenu d'un bloc spécifique.
    Notez que vous devez vous authentifier sur chaque secteur auquel vous voulez avoir accès étant donné que chaque secteur dispose ses propres droits et ses propres clés d'accès!

Note sur l'Authentification

Avant d'avoir accès à la mémoire d'un secteur, vous devez d'abord vous "authentifier" conformément aux règles de sécurités stockées dans le bloc de fin de secteur/Trailer bloc.

Par défaut, les nouvelles cartes sont configurées pour avec un accès total sur tous les blocs du secteur en utilisant la CLE A et la valeur 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF.

Il existe d'autres clés (assez courantes) que vous pouvez essayer si la valeur 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF ne fonctionne pas.

              0XFF 0XFF 0XFF 0XFF 0XFF 0XFF
              0XD3 0XF7 0XD3 0XF7 0XD3 0XF7
              0XA0 0XA1 0XA2 0XA3 0XA4 0XA5
              0XB0 0XB1 0XB2 0XB3 0XB4 0XB5
              0X4D 0X3A 0X99 0XC3 0X51 0XDD
              0X1A 0X98 0X2C 0X7E 0X45 0X9A
              0XAA 0XBB 0XCC 0XDD 0XEE 0XFF
              0X00 0X00 0X00 0X00 0X00 0X00
              0XAB 0XCD 0XEF 0X12 0X34 0X56

Carte MiFare Classic 1K - Exemple

Voici un exemple avec un carte MiFare Classic toute neuve.

Le dump de la mémoire illustre la structure d'une carte MiFace Classic de 1K où vous pouvez clairement voir les données et secteurs de fin (trailer):

    [--------------------------Début du dump mémoire-------------------------]
    -----------------------Secteur 0-------------------------
    Bloc 0 : 8E 02 6F 66 85 08 04 00 62 63 64 65 66 67 68 69  ?.of?...bcdefghi
    Bloc 1 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 2 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 3 : 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 1-------------------------
    Bloc 4 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 5 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 6 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 7 : 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 2-------------------------
    Bloc 8 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 9 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 11: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 3-------------------------
    Bloc 12: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 13: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 14: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 15: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 4-------------------------
    Bloc 16: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 17: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 18: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 19: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 5-------------------------
    Bloc 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 21: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 22: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 23: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 6-------------------------
    Bloc 24: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 25: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 26: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 27: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 7-------------------------
    Bloc 28: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 29: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 31: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 8-------------------------
    Bloc 32: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 33: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 34: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 35: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 9-------------------------
    Bloc 36: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 37: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 38: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 39: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 10-------------------------
    Bloc 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 41: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 42: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 43: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 11-------------------------
    Bloc 44: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 45: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 46: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 47: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 12-------------------------
    Bloc 48: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 49: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 51: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 13-------------------------
    Bloc 52: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 53: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 54: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 55: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 14-------------------------
    Bloc 56: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 57: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 58: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 59: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    -----------------------Secteur 15-------------------------
    Bloc 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 61: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 62: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    Bloc 63: 00 00 00 00 00 00 FF 07 80 69 FF FF FF FF FF FF  ......ÿ.?iÿÿÿÿÿÿ
    [---------------------------Fin du dump mémoire--------------------------]

Cartes MiFare Ultralight

Les cartes MiFare Ultralight contiennent 512 bits (64 octets) de mémoire, incluant 4 octets (32-bits) de mémoire OTP (One Time Programmable) où chaque bit peut être écrit individuellement mais pas effacé.

Les cartes MiFare Ultralight dispose d'une identification unique de la carte codé sur 7-octets (UID).

Mémoire EEPROM

Les cartes MiFare Ultralight contiennent 512 bits (64 octets) de mémoire EEPROM, incluant 4 octets (32 bits) de mémoire OTP. A l'opposé des cartes Mifare Classic, celle-cis n'ont pas d'authentification au "niveau du bloc", un bloc peut néanmoins est placé en "lecture seule" (read-only) en utilisant les octets de blocages/Lock Bytes décris ci-dessous.

La mémoire EEPROM est organisée en 16 pages ayant chacune 4 octets. Ces pages sont organisés dans l'ordre suivant:

      Page   Description
      ----   ------------
      0      Numéro de série (4 bytes/octets)
      1      Numéro de série (4 bytes/octets)
      2      Octet 0:    Numéro de série
             Octet 1:    Mémoire Interne
             Octet 2..3: Octets de blocage/lock bytes
      3      Mémoire programmable un seule fois/OTP memory (4 octets/bytes)
      4..15  Mémoire utilisateur (4 octets/bytes)

Voici les pages et les blocs arrangés sous forme de table (chaque bloc fait 1 octets):

      Page   Bloc 0     Bloc 1     Bloc 2    Bloc 3 
      -----  ---------------------------------------
      0      [          Numéro de Série            ]
      1      [          Numéro de Série            ]
      2      [Serial] - [Intern] - [   Lock Bytes  ]   # N° de série - mémoire interne - octets de blocage
      3      [ Mémoire programmable une seule fois ]   # dite 'Mémoire OTP'
      4      [          Donnée utilisateur         ]   # dite 'User Data'
      5      [          Donnée utilisateur         ]
      6      [          Donnée utilisateur         ]
      7      [          Donnée utilisateur         ]
      8      [          Donnée utilisateur         ]
      9      [          Donnée utilisateur         ]
      10     [          Donnée utilisateur         ]
      11     [          Donnée utilisateur         ]
      12     [          Donnée utilisateur         ]
      13     [          Donnée utilisateur         ]
      14     [          Donnée utilisateur         ]
      15     [          Donnée utilisateur         ]

Lock Bytes (page 2)

Lock Bytes sont les octets de blocage/verrouillage. Pour rappel, un Byte (anglais) est un octet (Français) et contient 8 bits.

Les octest 2 et 3 de la page 2 sont mentionnés comme "Lock Bytes". Chaque page à partir de 0x03 (et plus) peut être verrouillée individuellement en plaçant son bit de verrouillage correspondant (dit lock bit en anglais) à "1". Ce verrouillage empêche les accès en écriture, ce qui transforme la mémoire en mémoire "lecture seule" (dite Read only memory).

Pour plus d'information sur les mécanismes de "lock byte", référez vous à la section 8.5.2 de la fiche technique (reprise ci-dessus).

OTP Bytes (Page 3)

OTP Bytes signifie "One Time Programming Bytes" et représente des octets qui ne peuvent être écrit qu'une seule fois.

La page 3 est une mémoire OTP et, par défaut, tous les bits de cette page sont à 0. Ces bits peuvent être modifiés bit à bit en utilisant la commande WRITE de MiFare. Vous pouvez donc placer individuellement ces bit à 1 mais il ne sera plus possible de les remettre à 0.

Pages de données (Page 4-15)

Les pages 4 à 15 peuvent être librement lue et écrite pour autant que l'opération ne soit pas en confit avec les "lock bytes" décrit plus haut dans ce document.

Après fabrication de la carte, les octets ont les valeurs suivantes:

      Page    Valeur des Bytes/Octets
      ----    ----------------------
              0     1     2     3
      4       0xFF  0xFF  0xFF  0xFF
      5..15   0x00  0x00  0x00  0x00

Accès aux blocs de données

Pour pouvoir accéder à la carte, vous devez suivre deux étapes:

  1. Vous 'Connecter' sur la carte Mifare Ultralight et retrouver les 7 octets UID (d'identification) de la carte.
  2. La mémoire peut être directement lue et écrite après avoir réaliser la connexion en mode passif. Aucune authentification n'est requise sur les cartes Mifare Ultralight.

Longueur Lecture/Ecriture

Pour des raisons de compatibilité, les requêtes de lecture (read) sur une carte Mifare Ultralight peut atteindre 16 octets (4 pages) en une fois (ce qui correspond à la taille de bloc d'une carte MiFare classique.

Par exemple, si vous demandez la lecture de la page 3, dans les fait, les pages pages 3, 4, 5 et 6 seront lues et retournées ET vous pouvez simplement ignirer les 12 derniers octets si vous n'en avez pas besoin. Si vous sélectionnez une page supérieure, les 16 octets seront alors lu en boucle en poursuivant la lecture à partir de la page 0. Par exemple, lire la page 14 retournera les pages 14, 15, 0 et 1.

Les opérations d'écriture (Write) en page (4 octets), il n'y a donc pas de risque d'écrasement de donnée sur les pages suivantes.


Source: PN532 RFID/NFC Breakout and Shield créé par LadyAda pour AdaFruit Industries. Crédit [www.adafruit.com AdaFruit Industries]

Traduit par Meurisse D. pour MCHobby.be

Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.