Sélections des données de carte

Pour lire le cryptogramme et les informations de texte en clair de Postcard, un lecteur de cartes à puces ainsi qu'un logiciel correspondant qui est livré généralement avec le lecteur sont nécessaires. Ce logiciel permis la communication entre ordinateur et la carte à puce selon la norme ISO 7816-4.

Pour lire des cartes, le commandement suivant est communiqué à la carte:

BC:B0:08:E0:70

Celui-ci répond avec le code d’état 9000 (OK) et retourne les données demandées:

2E 03 30 33 30 00 0E C6 3D A0 D2 47 3A 69 CD 09
33 B6 D8 52 31 18 CA 43 34 6B 44 EE 3E CE 4A 33
39 4F 87 2C 31 35 6A 80 37 0B FE BB 35 46 69 F3
37 5A 63 F2 2E 02 38 F1 30 05 01 62 33 00 00 02
33 42 08 15 37 70 01 03 32 80 05 03 37 56 35 01
34 45 54 34 3B 20 44 4F 34 E4 14 C4 34 20 20 20
32 02 02 02 30 20 20 20 32 02 02 02 30 20 F6 23

Au passage: Si on fabrique soi-même des Postcards, les données des valeurs souhaitées respectives le numéro de la carte, période de validité, nom de propriétaire de carte, etc. doivent être fournies soi-même. En plus la clé secrète des PostFinance est nécessaire, quelle est déterminée par cette description.

Analyse du contenu de données

L'analyse du contenu de données est réalisée comme elle est décrite pour la carte bancaire française. La procédure peut être transférée sans autre adaptation sur les Postcard suisses.

Cryptogramme et bloc de données

Les données reçues sont organisées comme suivant: Le bloc de données commence avec des quatre octets d’entête: 2E 03 30 33; le type des données suivantes est désigne par 03 (« cryptogramme ») et la longueur correspondante par 30 (48 octets).

2E 03 30 33
30 00 0E C6 3D A0 D2 47
3A 69 CD 09 33 B6 D8 52
31 18 CA 43 34 6B 44 EE
3E CE 4A 33 39 4F 87 2C
31 35 6A 80 37 0B FE BB
35 46 69 F3 37 5A 63 F2

Les 48 octets des données sont codés, auquel à chaque fois sept octets d'origine ont été transférés dans huit octets de représentation; c.-à-d. la longueur de données effective ne s'élève à uniquement 42 octets. Le décodage exige que chacun 8ème demi-octet - commençant avec le premier demi-octet des données reçues - soient supprimées; le demi-octet à supprimer à toujours la valeur 3.

Alors on reçoit comme cryptogramme des données suivant:

c = 0000EC6DA0D247A69CD093B6D852118CA4346B44EEECE4A3394F872C1356A8070BFEBB54669F375A63F2

Bloc de données de carte

Le deuxième bloc de données commence avec l'entête 2E 02 38 F1; le type des données suivantes est désigne par 02 (« données de carte ») et la longueur correspondante par 38 (56 octets).

2E 02 38 F1
30 05 01 62 33 00 00 02
33 42 08 15 37 70 01 03
32 80 05 03 37 56 35 01
34 45 54 34 3B 20 44 4F
34 E4 14 C4 34 20 20 20
32 02 02 02 30 20 20 20
32 02 02 02 30 20 F6 23

Ces données sont également selon la procédure décrite en haut codé, c.-à-d. chaque 8ème demi-octet (en gras) doivent être supprimés dans le décodage. Ensuite on reçoit 49 octets des données d'utilisation avec les informations de la carte. Ceux-ci sont formatés comme sur la carte bancaire française et il s’en suit la structure de données suivante:

00501623000002342081577 0 0103 280 0503 756 3501 4455434B20444F4E414C44202020202020202020202020202020 F623
-----------(1)--------- - (2)- (3) (4)- (5) (6)- ----------------(7)---------------------------------
  1. 1. Identification de carte étendue (23 demi-octet) (description)
  2. Date d’émission (mars 2001)
  3. Code national (ISO 3166 numériquement, l'Allemagne !?)
  4. Date d'expiration (mars 2005)
  5. Code monétaire (ISO 4217 numériquement, CHF)
  6. Représentation monétaire
  7. Propriétaire de la carte (DUCK DONALD)

Définir les données de texte en clair pour la signature

Les données de texte en clair k sont destiné comme suit au codage des données de carte:

k' = Préfix || (1) || (2) || (4)
k = k' || k'

Le préfix est un 36-bit-bloc de données. Sa valeur dépend de la durée de validité/date de l’émission de la carte (voir le tableau). Le préfix avec l’identification de carte (92-Bit) ainsi que la date de l’émission et d'expiration (chaque fois 16 bits) s’ajoutent, pour recevoir le texte partiel en clair k' de 160 bits. Le texte final en clair k apparaisse, en joignant des deux k'.

Durée de validité (mois)An de l'émissionPréfix
472000,2001000040000
482003,2004000044000
200700004A000
492005000048000

Comme texte en clair pour la signature de la carte nous recevons dans notre exemple:

k = 00004400000501623000002342081577010305030000440000050162300000234208157701030503

Dans le prochain chapitre, nous verrons, comme on peut calculer à partir de ces données la clé secrète du bureau d'émission …