Les lecteurs attentifs pourraient avoir remarqué, que dès là, nos n’avions pas utilisé le code PIN pour nos études, même pour lire les données de la Postcard; pas de nécessité d'entrée le code PIN.
Le code PIN n’est pas nécessaire pour la carte comme véritable authentification, mais pour reconnaître le propriétaire de carte comme autorisé durant le processus de transaction. Cela se déroule par des procédures propres à la Postcard:
Outre des données déjà mentionnées pour l’authentification de la carte (protégés contre l'écriture), il existe une autre trame d’information, dans lesquelles les transactions qui ont été effectué avec la Postcard peuvent être enregistrées.
Ce secteur est toutefois protége par code PIN. Un terminal TPE/PDV authentifie le propriétaire de la carte de façon suivante: il essaye de recevoir accès à cette zone de mémoire par moyen du code PIN, suggérées par le client. Si cet accès n'est pas possible après une entrée de code PIN, le terminal « sache » que le code PIN suggéré était faux et informe l'utilisateur - « fausses code PIN ».
Il est important que le terminal puisse aussi faire cette vérification off-line. Ce n'est donc pas nécessaire d’avoir une connexion en ligne avec PostFinance, ni l’enregistrement du code PIN codé sur la carte elle-même (ce dernier est jusqu'à aujourd'hui processus d'authentification habituel pour des cartes bancaires à bande magnétique).
Comme nous le savons déjà, se trouve sur les Postcards la mémoire de transaction à partir de l'adresse 0x02F8. Pour accéder à cette mémoire, nous devons d'abord envoyer le commande pour la vérification de code PIN à la carte. Celui-ci a la forme suivante:
BC 20 00 00 04 XX XX XX XX
|
Les quatre derniers octets de la commande sont dériver du code PIN à quatre chiffres. Cela déroule selon la procédure suivante:
Le code PIN - nous choisissons par exemple « 2137 » - est notée en premier en codage BCD:
00 00 21 37
|
Ce nombre est poussé maintenant à gauche de 14 places de bit, dont « une 1 logique » suive de droite. Dans notre exemple, nous recevons:
08 4D FF FF
|
Cela sont ces quatre octets que nous devons insérer à la fin de commande du code PIN. Si nous envoyons cette commande (le code PIN correct) et la commande de vérification à la Postcard, nous pouvons ensuite accéder à la mémoire de transaction.
Si on suggère un faux code PIN au terminal, l'ATR de la carte change. Cela signale au terminal à la prochaine initialisation qu'il y a eu des tentatives fausses. Le dernier octet de l'ATR décrit le nombre des tentatives erronées:
Valeur | Signification |
0x00 | pas de tentative erronée enregistrée |
0x10 | une tentative erronée enregistrée |
0x20 | de deux tentatives erronées enregistrées |
0x40 | de trois tentatives erronées enregistrées, carte bloquée |
Si on entre le code PIN correct quand la carte pas encore bloquée, le compteur de tentative est remit à zéro.