Brevet FR2745136A1 — publié le 19970822

PROCEDE ET DISPOSITIF D'IDENTIFICATION SéCURISES ENTRE DEUX TERMINAUX L'invention concerne un procédé d'identification sécurisée pour la communication entre au moins deux terminaux, ainsi qu'un dispositif pour la mise en oeuvre de ce procédé. L'invention s'applique notamment à la sécurisation de communication sur réseau distant tel que par exemple le réseau Internet, notamment pour la validation des règlements bancaires d'achat-vente ou tout autre type de transaction nécessitant une fiabilité et une sécurité maximale. Elle peut s'appliquer également à l'accès à des serveurs d'entreprise dans le cadre de l'"Intranet", à des serveurs confidentiels, à des serveurs payants ou analogue. On connaît des procédés d'identification sécurisée pour la transmission de données entre un poste utilisateur et un poste serveur par l'intermédiaire d'un réseau de communication dans lesquels, lors de son accès au serveur, l'utilisateur saisit son identifiant qui est généralement un code chiffres-lettres, afin de faire connaître et reconnaître son identité. Cette identification est une identification logique sécurisée par la saisie d'un mot de passe. Ces deux informations (identifiant et mot de passe) transitent du poste utilisateur vers le poste serveur par l'intermédiaire du réseau de communication, elles peuvent donc être piratées. L'inconvénient majeur de ce type de procédé réside dans le fait qu'une autre personne peut se connecter en lieu et place de l'utilisateur et valider l'opération si elle a eu connaissance de son identifiant et de son mot de passe. Pour éviter au maximum le piratage, on utilise parfois un procédé de cryptage permettant de transmettre ces informations de manière codée, afin qu'elles ne puissent pas être lisibles et compréhensibles. Cependant, ce cryptage sera commun à toutes les transactions, ce qui est dangereux si son algorithme est "cassé". Une autre réponse à ce problème est de doubler l'identification logique d'une identification physique. On obtient par exemple une identification physique par l'utilisation d'une carte à puce et son lecteur spécifique. Cependant, aujourd'hui, pour rendre ce procédé opérationnel dans le cadre de la communication par réseau, il faudrait équiper l'ensemble des micro-ordinateurs personnels ou des terminaux susceptibles de se connecter aux réseaux distants, d'un lecteur de carte à puce ; ce qui implique un coût important. L'identification physique passe donc par l'imposition pour chaque utilisateur d'un support d'identification personnalisé. En outre, pour avoir un support d'identification certain, il est nécessaire que chaque support personnalisé ait un contenu différent et ne puisse pas être piraté. En effet, soit le support personnalisé possède un code secret de validation des transactions, ce code sera alors présent quelque part sur le support même s'il est caché ou crypté et pourra un jour être découvert par piratage, soit ce code secret va transiter du poste utilisateur au poste serveur par l'intermédiaire du réseau et pourra ainsi être piraté, puisqu'une fois trouvé, il peut être réutilisé. Bien sûr, ce code peut être crypté lors de son transfert, cependant, ce cryptage sera, comme dans le cas précédent, commun à toutes les transactions, ce qui peut être extrêmement dangereux si son algorithme est "cassé". L'invention vise donc à pallier les inconvénients précédemment cités, et à résoudre le problème de la sécurisation d'identification d'un utilisateur dans le cadre d'une communication, et notamment une transaction entre un utilisateur et un serveur, par l'intermédiaire d'un réseau de communication. A cet effet, l'invention a pour objet un procédé d'identification sécurisé assurant une authenticité absolue de la communication, c'est-à-dire l'identité de l'utilisateur sur le réseau, ainsi qu'une inviolabilité du code de validation dans ces communications. Elle a en outre pour objet un procédé d'identification sécurisée qui ne nécessite pas de modifier la structure déjà existante des micro-ordinateurs personnels utilisés pour la mise en oeuvre du procédé et qui utilise un support d'identification connu, donc facile à utiliser, adapté aux utilisateurs et de faible prix. A cet effet, l'invention propose un procédé d'identification sécurisée pour la communication entre au moins deux terminaux de type micro-ordinateur personnel, station de travail ou serveur, à savoir un poste dit utilisateur" et un poste dit "serveur", par l'intermédiaire d'un réseau de communication, le poste utilisateur étant notamment destiné à lire le contenu d'un support d'identification en fonction d'informations provenant du poste serveur, procédé dans lequel - on établit une liaison entre le poste utilisateur et le poste serveur - on choisit au niveau du poste serveur de manière aléatoire un code serveur et/ou des données représentatives de ce code serveur, la relation entre le code serveur et les données représentatives étant une fonction aléatoire - on transmet dans un premier sens serveurutilisateur les données représentatives du code serveur - on reconnaît, à l'aide desdites données, dans le contenu du support d'identification, un code utilisateur correspondant - on transmet dans un second sens utilisateurserveur le code utilisateur reconnu - on compare le code utilisateur au code serveur, et - on valide l'identification de l'utilisateur si le code utilisateur est identique au code serveur. Ainsi, le support d'identification étant adapté à être lu par le poste utilisateur, aucun matériel additionnel spécifique n'est utile, à savoir, ni lecteur de carte à puce, ni décodeur analogique ou numérique. Pour améliorer encore la sécurité, on effectue le choix aléatoire d'un code serveur et/ou de données représentatives du code serveur à chaque fois que l'on établit une liaison entre le poste utilisateur et le poste serveur. Ainsi, même si l'information qui passe par le réseau de communication est lue en clair par un "pirate", elle reste difficile à analyser. En effet, à chaque établissement de liaison, il y a passage d'une information d'un premier type dans un sens et passage d'une information d'un second type dans l'autre sens, ces informations n'étant pas réutilisées pour une liaison suivante. En outre, la relation entre l'information de premier type et celle de second type est quasiment impossible à déterminer puisqu'elle correspond à une fonction aléatoire. Suivant un mode de réalisation de l'invention - on crée, dans le poste serveur et de manière aléatoire, une matrice de données propre à chaque utilisateur dite "matrice-serveur", définie par n lignes et m colonnes et contenant un caractère spécifique pour chaque coordonnée ligne-colonne - on mémorise cette matrice-serveur dans le support d'identification, appelée alors "matriceutilisateur", les données représentatives du code serveur et transmises dans le premier sens étant des coordonnées ligne-colonne de la matrice-serveur choisies de manière aléatoire, le code serveur étant les caractères spécifiques correspondant à cesdites coordonnées lignecolonne, et le code utilisateur transmis dans le second sens étant les caractères contenus dans la matrice-utilisateur et correspondant auxdites coordonnées ligne-colonne. Bien entendu, chaque caractère spécifique de la matrice peut être généré de manière aléatoire. Pour accroître la sécurité en cas de vol non constaté du support d'identification - on crée dans le serveur, une matrice décalée obtenue en appliquant un décalage sur la matrice-serveur, - on mémorise, dans le support d'identification, la matrice décalée, le code de décalage associé au support d'identification correspondant audit décalage appliqué, et - lorsque la liaison est établie entre le poste utilisateur et le poste serveur, on applique le code de décalage aux données représentatives transmises dans le premier sens. Ainsi, il n'est pas nécessaire de rétablir dans le poste utilisateur la matrice décalée en matrice utilisateur. Notamment, le décalage ligne-colonne est obtenu en ajoutant un premier nombre aléatoire aux coordonnées ligne de la matrice et/ou un second nombre aléatoire aux coordonnées colonne de la matrice, le décalage étant effectué en boucle. En particulier, le premier nombre aléatoire est compris entre 0 et n-1 et le second nombre aléatoire est compris entre 0 et m-l. L'invention concerne en outre un dispositif d'identification sécurisée pour la communication entre au moins deux terminaux, à savoir un poste dit "utilisateur" et un poste dit "serveur", par l'intermédiaire d'un réseau de communication, caractérisé en ce qu'il comporte - un support d'identification dont le contenu est destiné à être lu par le poste utilisateur en fonction d'informations provenant du poste serveur, - des moyens de sélection situés dans le poste serveur et destinés à choisir de manière aléatoire un code serveur et/ou des données représentatives de ce code serveur - des premiers moyens d'émission-réception situés dans le poste serveur et destinés transmettre au poste utilisateur les données représentatives du code serveur - des moyens de reconnaissance destinés à reconnaître dans le contenu du support d'identification, à l'aide desdites données, un code utilisateur correspondant - des seconds moyens d'émission-réception situés dans le poste utilisateur et destinés à transmettre au poste serveur le code utilisateur reconnu - des moyens de comparaison aptes à comparer le code utilisateur et le code serveur, et - des moyens de validation destinés à valider l'identification de l'utilisateur si le code utilisateur est identique au code serveur. De préférence, le support d'identification ne pressente donc pas do s i qne extérieur distinct, n'est identifiable que par l'utilisateur et est distinct du poste utilisateur. Suivant un mode de réalisation, le support d'identification est un support magnétique réinscriptible, tel qu'une disquette par exemple, ou optique, tel qu'un CD-ROM (disque laser) ou un CD-R (disque laser reinscriptible) ou un D.V.D. (Disque Video Numérique). Suivant un autre mode de réalisation, le dispositif comporte, en outre - des moyens de formation de matrice situes dans le poste serveur et destinés à former une matrice de données propre à l'utilisateur dite "matrice-serveur" définie par n lignes et m colonnes et contenant un caractère spécifique par chaque coordonnées ligne-colonne, - des moyens de mémorisation de cette matriceserveur dans le support d'identification, appelée alors matrice-utilisateur les données représentatives du code serveur et transmises au poste utilisateur étant des coordonnées ligne-colonne de la matrice-serveur choisies de manière aléatoire, le code serveur étant les caractères spécifiques correspondant à cesdites coordonnées liynecolonne, et le code utilisateur transmis au poste serveur étant les caractères contenus dans la matrice-utilisateur et correspondant auxdites coordonnées ligne-colonne. Enfin, le dispositif peut comporter en outre - des moyens de décalage destinés à créer une matrice décalée obtenue en appliquant un décalage sur la matrice-serveur, le code de décalage associé au support d'identification correspondant audit décalage appliqué, la matrice décalée étant mémorisée dans les moyens de mémorisation, et - des moyens d'application du code de décalage aux données représentatives transmises dans le premier sens. Ainsi, on rétablit le code utilisateur adéquat malgré le décalage. L'invention est explicitée de manière non limitative dans la description qui va suivre en référence au dessin annexé dans lequel - les figures la à îd représentent des diagrammes comportant les différentes phases opératoires du procédé selon l'invention suivant quatre modes de réalisation différents. Dans la description de l'exemple de réalisation, on se place dans une des applications possibles du procédé selon l'invention, qui est la sécurisation des règlements bancaires d'achats-ventes pour un réseau tel que Internet, par la validation de l'identité du client. On peut bien entendu appliquer le procédé selon l'invention à tout autre type de communication d'informations dès lors qu'elle nécessite d'avoir la garantie de s'adresser au bon utilisateur. Le dispositif d'identification sécurisé comporte un poste utilisateur qui est généralement le microordinateur du client, et un poste serveur qui est en fait l'ordinateur du serveur proprement dit. Dans un premier temps, on peut prévoir une identification logique sécurisée par la saisie d'un mot de passe. Dans ce cas, lors de son accès au serveur, le client saisit d'une part son identifiant, qui est en général sous forme d'un code chiffres-lettres, afin de faire connaître et reconnaître son identité, et d'autre part, un mot de passe. En fait, lorsque l'utilisateur ou le client est accrédité pour la connexion à un serveur, l'autorité donne un identifiant à l'utilisateur qui choisit son mot de passe. Ces deux éléments permettent d'initier une transaction. Le procédé selon l'invention joue en fait le rôle de valider définitivement cette transaction. A cet effet, on double l'identification logique d'une identification physique. A cet effet, lorsque la liaison entre le client et le serveur est établie par le biais de l'identification logique, on va procéder à une seconde identification, les informations issues de cette seconde identification étant conçu de manière à empêcher un "piratage". A cet effet, l'utilisateur possède en outre un support d'identification qui est par exemple une disquette informatique classique de format 3 pouces 1/2 qui équipe la quasi totalité des micro-ordinateurs existant sur le marché. La seconde identification ou identification physique s'effectue de la manière suivante Une fois que la liaison est établie, on choisit par exemple des données représentatives d'un code serveur de manière aléatoire au niveau du poste serveur. A ces données représentatives est associé un code serveur, mais dont la correspondance ne peut être connue de l'extérieur et correspond à une fonction aléatoire. On transmet tout d'abord ces données représentatives dans un premier sens, à savoir du poste serveur vers le poste utilisateur. Ces données une fois transmises permettent de reconnaître, dans le contenu du support d'identification, un code utilisateur correspondant. Ce code utilisateur correspondant est alors transmis dans un second sens, à savoir du poste utilisateur vers le poste serveur, et l'identification de l'utilisateur est validée si, après avoir effectué une comparaison entre le code serveur et le code utilisateur, ces deux derniers sont identiques. On comprend bien dans ce cas que les informations transmises dans le premier sens serveur-utilisateur sont de nature différente des informations transmises dans le second sens utilisateur-serveur, ce qui empêche une tierce personne d'établir une corrélation entre ces deux types d'information. Suivant un mode de réalisation de l'invention, les données représentatives du code serveur sont en fait des coordonnées ligne-colonne d'une matrice, choisies de manière aléatoire. On peut bien entendu choisir des coordonnées d'une matrice à N dimensions, où N est supérieur à 2. On génère à cet effet, dans le poste serveur, une matrice-serveur qui est à deux dimensions et comporte n lignes et m colonnes. Cette matrice-serveur comporte pour chaque coordonnée ligne-colonne un caractère spécifique qui peut être choisi de manière aléatoire. Le code serveur correspond en fait aux caractères spécifiques correspondant aux coordonnées ligne-colonne choisies, qui, elles, sont les données représentatives du code serveur. Ainsi, on prend une matrice-serveur comportant par exemple 90 lignes numérotées de 10 à 99 et 900 colonnes numérotées de 100 à 999, soit un tableau ligne-colonne de 90 X 900, constitué donc de 81.000 cases. Si l'on prend les 10 chiffres (0...9) et les 26 lettres de l'alphabet comme caractères spécifiques, le contenu de chacune de ces cases correspond à un caractère généré par un choix aléatoire parmi 36 possibilités. I1 est bien entendu que ces 36 possibilités pourraient être étendues par exemple par des codes ASCII supplémentaires. Une fois cette matrice-serveur créée, on la mémorise dans le support d'identification, on l'appelle alors la matrice-utilisateur, et on envoie le support à l'utilisateur. Le code utilisateur correspond alors aux caractères contenus dans la matrice-utilisateur et correspondant aux coordonnées ligne-colonne représentatives du code serveur. Ainsi, pour valider une transaction initiée par l'utilisateur, ce dernier introduit sa disquette d'identification dans le lecteur de disquette de son micro-ordinateur. A chaque transaction, le serveur génère de façon aléatoire une série de r nombres, correspondant à des coordonnées ligne-colonne de la matrice-serveur. Cette série peut se décomposer par exemple en 5 fois [2 X 3 chiffres], qui correspondent à des coordonnées lignecolonne de 5 cases de la matrice-serveur. Les données représentatives du code serveur comportent alors 30 chiffres. Dans cet exemple choisi, les blocs 1, 3, 5, 6 et 9 de trois chiffres sont composés d'un chiffre aléatoire de 0 à 9 accolé à un nombre aléatoire compris entre 10 et 99. Les chiffres positionnés en première, septième, treizième, dix-neuvième et vingt-cinquième position sont neutres et ne seront pas utilisés. Les deux derniers chiffres de chaque bloc représentent les coordonnées des lignes. Les blocs 2, 4, 6, 8 et 10 de trois chiffres sont des nombres aléatoires compris entre 100 et 999. Ce sont les coordonnées des colonnes. Appliqués à la matrice-serveur, ces r nombres (30 chiffres) correctement décomposés donnent un résultat de 1 caractères, dans l'exemple choisi, 5 caractères, qui constituent le code serveur. Ces r nombres (30 chiffres) anonymes sont ensuite envoyés au poste utilisateur par l'intermédiaire du réseau. Ils sont ensuite décomposés et appliqués à la matrice utilisateur mémorisée dans le support d'identification. Si la matrice utilisateur est identique à la matrice-serveur, le code utilisateur obtenu, lorsque l'on applique ces coordonnées sur la matrice-utilisateur, doit être identique au code serveur. Afin de s'en assurer, le code utilisateur est renvoyé sans contrôle préalable du poste utilisateur vers le poste serveur par l'intermédiaire du réseau. Lorsqu'il est réceptionné, on compare ce code utilisateur avec le code serveur déjà obtenu sur la matrice-serveur. S'il est strictement identique, l'opération est validée. A chaque nouvelle transaction, r nouveaux nombres sont générés aléatoirement et le code serveur induit sera différent. Dans l'exemple choisi, un code serveur ordonné de 5 caractères, chaque caractère étant choisi parmi 36, présente 1/365 possibilités, soit un peu plus de 60 millions de combinaisons. C'est comme si l'utilisateur et le contrôleur de la transaction possédaient le même trousseau de 60 millions de clés et convenaient secrètement à chaque opération d'en utiliser une seule à leur convenance. Ainsi, même si l'information qui transite par l'intermédiaire du réseau est lue en clair par un "pirate", elle est difficile à utiliser. En effet, à chaque transaction il y a un passage des r nombres toujours différents dans le premier sens, et un passage d'un code utilisateur toujours différent dans l'autre sens. Ces codes sont en pratique inutilisables pour la transaction Suivante. On peut également prévoir de renforcer la sécurité du système par un contrôle de tentatives d'accès au serveur. Lors de chaque transaction, si l'opération est invalidée, un compteur du nombre de tentatives invalidées s'incrémente de 1, ce compteur étant situé dans le serveur. Lorsque ce compteur atteint un seuil fixé à l'avance, par exemple 5, la matrice-serveur est automatiquement supprimée par sécurité. Toute transaction sur cet utilisateur devient donc impossible. Une nouvelle matrice-serveur est alors générée, et le support d'identification correspondant contenant la matrice-utilisateur correspondante est envoyée à nouveau à l'utilisateur. En cas de vol, ou de perte constaté de son support d'identification, l'utilisateur prévient l'autorité et la matrice-serveur correspondante est immédiatement supprimée. Pour accroître la sécurité en cas de vol non constaté du support d'identification, le procédé selon l'invention associe également un code "inviolable" au support d'identification. Ce code est également appelé "code de décalage". Après la création de la matrice-serveur dans le serveur, cette dernière n'est en fait pas mémorisée à l'identique sur le support d'identification. La matrice-utilisateur mémorisée est en fait décalée par rapport à la matrice-serveur. Le décalage appliqué à la matrice-serveur s'opère par exemple par l'ajout d'un premier nombre aléatoire aux coordonnées lignes de la matrice-serveur et d'un second nombre aléatoire aux coordonnées colonnes de la matriceserveur. Ce décalage s'opère en boucle, c'est-à-dire que pour un décalage de par exemple 2 lignes et par exemple 5 colonnes, le contenu de la case ligne 1-colonne 1 se retrouve en ligne 3-colonne 6, et celui de la case ligne 98-colonne 995 en ligne 1-colonne 1. Ce décalage qui, dans l'exemple choisi, est de 5 chiffres1 à savoir le premier nombre aléatoire (02) et le second nombre aléatoire (005) collés, constitue le code de décalage (02005) associé au support d'identification. Dans l'exemple choisi, on aura 81.000 combinaisons possibles de code de décalage, puisque le décalage ligne est compris entre 00 et 89, et le décalage colonne est compris entre 000 et 899. Ce code de décalage peut être envoyé par exemple par courrier séparé à l'utilisateur. Lors de la transaction, les r nombres (30 chiffres) aléatoires habituels sont envoyés par le serveur au poste utilisateur. A réception, un programme de lecture de la matrice-utilisateur présent sur le support d'identification demande à l'utilisateur de saisir le code de décalage de son support d'identification. Une fois le code de décalage saisi, il est correctement décomposé en un premier nombre par exemple de deux chiffres et en un second nombre par exemple de trois chiffres, le programme de lecture rajoute simplement ces deux valeurs aux coordonnées ligne-colonne extraites des r nombres (30 chiffres) reçus. Si le code de décalage saisi par l'utilisateur correspond bien au décalage effectué sur la matriceserveur pour obtenir la matrice décalée, le code utilisateur émis par le poste utilisateur sera identique au code serveur. Si le code de décalage saisi ne correspond pas au décalage appliqué à la matrice-serveur, l'erreur de décalage provoquera à coup sûr l'émission d'un code utilisateur différent du code serveur, et invalidera l'opération. En outre, on peut prévoir que quel que soit le code de décalage saisi par l'utilisateur sur le support d'identification, ce code est accepté par le programme de lecture. Il n'y a donc pas de bon ou de mauvais code de décalage qu'un "pirate" pourrait essayer de casser. Bien entendu, ce code de décalage n'est pas présent sur le support d'identification sous quelque forme que ce soit et ne transite jamais sur le réseau de communication. Il est donc inviolable. En outre, il n'est pas nécessaire de garder dans le poste serveur la matrice décalée et/ou le code de décalage. On peut également prévoir ce principe de décalage au niveau du poste serveur de manière à renforcer encore la sécurité du serveur. A cet effet, certains groupes de matrices-serveur présents sur le poste serveur peuvent être décalés périodiquement et deviennent donc dépendants avant leur lecture de la saisie d'un code journalier effectué par un responsable du centre serveur. Cette précaution rend encore plus aléatoire l'analyse extérieure des chiffres et des codes transitant par les réseaux de communication. REVENDICATIONS 1. Procédé d'identification sécurisée pour la communication entre au moins deux terminaux, à savoir un poste dit "utilisateur" et un poste dit "serveur", par l'intermédiaire d'un réseau de communication, le poste utilisateur étant notamment destiné à lire le contenu d'un support d'identification en fonction d'informations provenant du poste serveur, procédé dans lequel - on établit une liaison entre le poste utilisateur et le poste serveur - on choisit au niveau du poste serveur et de manière aléatoire un code serveur et/ou des données représentatives de ce code serveur, la relation entre le code serveur et les données représentatives étant une fonction aléatoire - on transmet dans un premier sens serveurutilisateur les données représentatives du code serveur - on reconnaît, à l'aide desdites données, dans le contenu du support d'identification, un code utilisateur correspondant - on transmet dans un second sens utilisateurserveur le code utilisateur reconnu - on compare le code utilisateur au code serveur, et - on valide l'identification de l'utilisateur si le code utilisateur est identique au code serveur. 2. Procédé selon la revendication 1, caractérisé en ce que l'on effectue le choix aléatoire d'un code serveur et/ou de données représentatives du code serveur à chaque fois que l'on établit une liaison entre le poste utilisateur et le poste serveur. 3. Procédé selon la revendication 1 ou 2, caractérisé en ce que - on crée, dans le poste serveur et de manière aléatoire, une matrice de données propre à chaque utilisateur dite "matrice-serveur9W, définie par n lignes et m colonnes et contenant un caractère spécifique pour chaque coordonnée ligne-colonne - on mémorise cette matrice-serveur dans le support d'identification, appelée alors "matriceutilisateur, les données représentatives du code serveur et transmises dans le premier sens étant des coordonnées ligne-colonne de la matrice-serveur choisies de manière aléatoire, le code serveur étant les caractères spécifiques correspondant à cesdites coordonnées lignecolonne, et le code utilisateur transmis dans le second sens étant les caractères contenus dans la matrice-utilisateur et correspondant auxdites coordonnées ligne-colonne. 4. Procédé selon l'une quelconque des revendications 2 à 3, un code de décalage étant associé au support d'identification, caractérisé en ce que - on crée dans le serveur, une matrice décalée obtenue en appliquant un décalage sur la matrice-serveur, - on mémorise, dans le support d'identification, la matrice décalée, le code de décalage associé au support d'identification correspondant audit décalage appliqué, et - lorsque la liaison est établie entre le poste utilisateur et le poste serveur, on applique le code de décalage aux données représentatives transmises dans le premier sens. 5. Procédé selon la revendication 4, caractérisé en ce que le décalage ligne-colonne est obtenu en ajoutant un premier nombre aléatoire aux coordonnées ligne de la matrice et/ou un second nombre aléatoire aux coordonnées colonne de la matrice, le décalage étant effectué en boucle. 6. Procédé selon la revendication 5, caractérisé en ce que le premier nombre aléatoire est compris entre 0 et n-l et le second nombre aléatoire est compris entre 0 et m-l. 7. Procédé selon l'une quelconque des revendications 3 à 6, caractérisé en ce que chaque caractère spécifique est généré de manière aléatoire. 8. Dispositif d'identification sécurisée pour la communication entre au moins deux terminaux, à savoir un poste dit "utilisateur" et un poste dit "serveur", par l'intermédiaire d'un réseau de communication, caractérisé en ce qu'il comporte - un support d'identification dont le contenu est destiné à être lu par le poste utilisateur en fonction d'informations provenant du poste serveur, - des moyens de sélection situés dans le poste serveur et destinés à choisir de manière aléatoire un code serveur et/ou des données représentatives du code serveur - des premiers moyens d'émission-réception situés dans le poste serveur et destinés transmettre au poste utilisateur les données représentatives du code serveur - des moyens de reconnaissance destinés à reconnaître dans le contenu du support d'identification, à l'aide desdites données, un code utilisateur correspondant - des seconds moyens d'émission-réception situés dans le poste utilisateur et destinés à transmettre au poste serveur le code utilisateur reconnu - des moyens de comparaison aptes à comparer le code utilisateur et le code serveur, et - des moyens de validation destinés à valider l'identification de l'utilisateur si le code utilisateur est identique au code serveur. 9. Dispositif selon la revendication 8, caractérisé en ce que le support d'identification ne présente pas de signe extérieur distinctif et est distinct du poste utilisateur. 10. Dispositif selon la revendication 8 ou 9, caractérisé en ce que le support d'identification est un support magnétique réinscriptible, tel qu'une disquette par exemple, ou optique, tel qu'un CD-ROM (disque laser), ou un disque laser réinscriptible (CD-R) ou un disque vidéo numérique (D.V.D). 11. Dispositif selon l'une quelconques des revendications 8 à 10, caractérisé en ce qu'il comporte, en outre - des moyens de formation de matrice situés dans le poste serveur et destinés à former une matrice de données propre à l'utilisateur dite "matrice-serveur" définie par n lignes et m colonnes et contenant un caractère spécifique par chaque coordonnées ligne-colonne, - des moyens de mémorisation de cette matriceserveur dans le support d'identification, appelée alors matrice-utilisateur, les données représentatives du code serveur et transmises au poste utilisateur étant des coordonnées ligne-colonne de la matrice-serveur choisies de manière aléatoire, le code serveur étant les caractères spécifiques correspondant à cesdites coordonnées lignecolonne, et le code utilisateur transmis au poste serveur étant les caractères contenus dans la matrice-utilisateur et correspondant auxdites coordonnées ligne-colonne. 12. Dispositif selon l'une quelconque des revendications 8 à 11, un code de décalage étant associé au support d'identification, caractérisé en ce qu'il comporte, en outre - des moyens de décalage destinés à créer une matrice décalée obtenue en appliquant un décalage sur la matrice-serveur, le code de décalage associé au support d'identification correspondant audit décalage appliqué, la matrice décalée étant mémorisée dans les moyens de mémorisation, et - des moyens d'application du code de décalage aux données représentatives, de manière à rétablir le code utilisateur adéquat malgré le décalage.