Brevet FR2751104A1 — publié le 19980116

1. PROCEDE DE CONTROLE DE TRANSACTIONS SECURISEES INDEPENDANTES UTILISANT UN DISPOSITIF PHYSIQUE UNIQUE DESCRIPTION Domaine technique La présente invention concerne un procédé de contrôle de transactions sécurisées indépendantes utilisant un dispositif physique unique. Etat de la technique antérieure Dans les systèmes de l'art antérieur utilisant des transactions sécurisées (métro, banques, informatique, téléphone, mais aussi garages, parcmètres, cantines,...), on utilise divers dispositifs (cartes, jetons, code secret) afin de reconnaître les utilisateurs avant de leur fournir des services facturés. Généralement chaque type de système utilise son propre dispositif, qui peut être passif (par exemple carte à trous, carte orange) ou actif (par exemple carte à microprocesseur, calculette). Ainsi, les cartes multidomaines du type carte MCOS de Gemplus ou TB100 de Bull sont des cartes à microprocesseur comprenant plusieurs registres indépendants, chacun de ces registres se comportant comme une carte. On peut alors utiliser plusieurs applications indépendantes sur une même carte, l'étanchéité entre ces applications étant garantie. Divers systèmes ont tenté de créer des supports multiprestataires, un dispositif physique étant associé à plusieurs services (par exemple une carte multiprestataires permettant dans un réseau câblé l'accès à plusieurs chaînes concurrentes), ou SP 12017.C/DB 2. d'utiliser le support d'un autre prestataire (par exemple carte bancaire dans les Publiphones). Les fabricants de carte ont défini des cartes multidomaines pouvant être gérées de façon étanche par plusieurs prestataires. Néanmoins, pour des raisons de politique de propriété du support, ces tentatives ont peu vu le jour (exigences de modifier le matériel des Publiphones par les banquiers), ou ont été vouées à l'échec; aussi chacun dispose-t-il toujours actuellement d'une carte bancaire, d'une carte France Telecom, d'un badge d'entreprise, d'une carte de parking,.... Ainsi, le dispositif illustré à la figure 1 qui comporte une branche principale 10 et plusieurs applications A1, A2,... An, par exemple France Telecom, Carte bleue, Santé,... n'a jamais vu le jour car il est impossible d'obtenir un consensus pour le choix d'un coordonnateur qui gère la carte au niveau le plus élevé. Sur cette figure, chaque application aurait son propre fichier de clés FC qui permet une gestion en local, indépendamment des autres. Par ailleurs, la nécessité de rentrer une application dans une carte à microprocesseur supposant une phase de personnalisation de la carte, qui est généralement une opération physique, un utilisateur peut ne pas être très confiant pour confier sa carte bancaire, par exemple, à un prestataire pour une opération de ce type. La présente invention a pour objet un procédé permettant d'offrir un dispositif d'authentification unique à tous les prestataires. SP 12017.C/DB Exposé de l'invention La présente invention propose un procédé de contrôle de transactions sécurisées indépendantes utilisant un dispositif physique unique qui est la propriété d'un utilisateur, caractérisé en ce que: - cet utilisateur se procure ledit dispositif physique indépendamment de tout prestataire, - sur présentation par l'utilisateur de ce dispositif à un prestataire, celui-ci lui délivre un ensemble de données caractérisant l'utilisateur associé à ce dispositif, pour un accès à un service déterminé, - l'ensemble dispositif physique associé à ces données permet de réaliser une transaction sûre avec le service. Avantageusement, le procédé de l'invention comprend les étapes suivantes: - cet utilisateur se procure ledit dispositif physique, - sur présentation par cet utilisateur de ce dispositif à un prestataire, celui-ci lui délivre un fichier de droits qui contient le profil de cet utilisateur, son identité et sa clé publique, - le profil de l'utilisateur pour un service donné est certifié par le prestataire, - lors d'une demande d'accès à un service, l'utilisateur envoie son profil certifié au prestataire, - le prestataire vérifie alors le certificat à l'aide de sa clé publique et retrouve la clé publique de l'utilisateur, - le prestataire vérifie que l'utilisateur dispose bien du dispositif. SP 12017.C/DB 4. Avantageusement, le prestataire vérifie que l'utilisateur dispose bien du dispositif physique en lui demandant de signer un aléa avec sa clé secrète contenue dans le dispositif. Dans un premier exemple de réalisation, le procédé de l'invention comporte les étapes suivantes: - l'utilisateur se procure une carte à mémoire à clé publique. Cette carte contient un algorithme de signature à clé publique et un couple (clé secrète Kus, clé publique Kup); - l'utilisateur entre en contact avec un prestataire fournissant un service auquel il désire souscrire. Il indique son identité, ou celle-ci peut également être déterminée par le prestataire lui-même. Il fournit la clé publique Kup et son dispositif, le tout par un moyen permettant au prestataire de bien l'identifier; - le prestataire remet au client un fichier informatique contenant son profil et la signature de ce profil (Kp (droit, identité, Kup)) établie avec la clé secrète Kps du prestataire, cette signature étant appelée certificat; - l'utilisateur demande l'accès au service. Il envoie son profil avec le certificat; - le prestataire vérifie le certificat avec sa clé publique Kpp et dispose donc de la clé publique de l'utilisateur Kup. Il met en route une phase d'authentification active: * Le prestataire envoie au client un nombre non reproductible R, * Le client signe R et envoie Kus (R), * Le prestataire utilise la clé publique de l'utilisateur Kup qui lui a été fournie dans le SP 12017.C/DB , profil pour vérifier que la valeur Kus(R) est exacte, et donc que l'utilisateur dispose bien de Kus. - si toutes les vérifications sont correctes, le prestataire accorde le service considéré à l'utilisateur. Dans un deuxième exemple de réalisation, le procédé de l'invention s'applique à la protection d'un logiciel sous licence, le dispositif étant relié physiquement à la machine, dans laquelle est mis en oeuvre le logiciel. Ce logiciel contient une phase d'initialisation obligatoire qui exige de l'utilisateur potentiel la fourniture de son profil. Le fournisseur de logiciel, sur présentation du dispositif, remet à l'utilisateur un fichier profil qui contient ses droits au niveau du logiciel ainsi que des paramètres de type date, le tout certifié et une version du logiciel exécutable. Lorsque l'utilisateur désire utiliser le logiciel, il effectue une requête et le logiciel lui demande son profil, ensuite le logiciel vérifie les droits de l'utilisateur et la date de péremption, lui fait faire une authentification active et s'exécute alors selon le mode prévu. Contrairement aux systèmes de l'art antérieur, dans le procédé de l'invention le dispositif physique reste non modifié. Pour accéder à n services, l'utilisateur dispose d'un seul dispositif physique et de n supports dématérialisés (type fichier informatique ou numéro papier). L'utilisateur n'a plus besoin de détenir et d'acheter un grand nombre de dispositifs. Par ailleurs, le dispositif unique peut être choisi parmi ceux SP 12017.C/DB 6; offrant une authentification forte, donc permettant une bonne sécurité vis-à-vis des services. Brève description des dessins - la figure 1 illustre un système de l'art connu, - la figure 2 illustre un système permettant de mettre en oeuvre le procédé de l'invention, - la figure 3 illustre le fonctionnement du procédé de l'invention. Exposé détaillé de modes de réalisation La présente invention concerne un procédé de contrôle de transactions sécurisées indépendantes utilisant un dispositif physique unique. Ce dispositif physique peut être, par exemple, une carte à microprocesseur à clé publique, une calculette, un micro-ordinateur. Il peut être commercialisé de façon indépendante par un vendeur quelconque. Ce dispositif est un dispositif à clé publique, renfermant par exemple l'algorithme RSA (voir référence [1] donnée en fin de description). Il contient une clé secrète unique Kus et la clé publique associée Kup qui vont devenir la paire des clés de l'utilisateur. Le fichier de droits, qui contient le profil de l'utilisateur, c'est-à-dire la description de ses droits (qui jusqu'alors étaient renfermés dans le dispositif), son identité id et sa clé publique Kup, lui est décerné par un prestataire de service sur présentation de son dispositif. Seul ce fichier fait le lien entre le dispositif physique et l'identité de l'utilisateur se SP 12017.C/DB rapportant à un service donné. Celle-ci peut donc différer d'un service à l'autre et être choisie par le prestataire, car l'identité peut être un numéro par exemple de carte France Telecom, de compte bancaire, ou de téléphone. Le profil de l'utilisateur pour un service donné, donc pour un prestataire donné, est certifié (signé avec la clé secrète) par le prestataire qui dispose d'un couple propre (clé secrète, clé publique). Lors d'une demande d'accès au service considéré, l'utilisateur envoie son profil certifié au prestataire. Celui-ci vérifie le certificat, à l'aide de sa clé publique et retrouve la clé publique de l'utilisateur. Il vérifie ensuite que l'utilisateur dispose bien du dispositif en lui demandant par exemple de signer un aléa avec sa clé secrète contenue dans le dispositif. Un système permettant de mettre en oeuvre le procédé de l'invention, illustré sur la figure 2, comprend un dispositif physique indépendant 11 propriété de l'utilisateur qui peut recevoir des données de différents prestataires extérieurs P1, P2, P3, Pi...par exemple bancaire, France Telecom, Santé,... L'ensemble dispositif physique+Données permet de réaliser une transaction sûre avec le serveur correspondant aux données: Sl, S2, S3 ou Si.... Dans le procédé de communication, l'utilisateur demande un accès à un service donné après envoi de données (certificat non confidentiel). Le prestataire répond alors en utilisant des données qui lui sont propres. Comme illustré sur la figure 3, lors d'une demande d'accès à un service: SP 12017.C/DB 8, - l'utilisateur envoie son profil certifié au prestataire, avec * des données D: id: identité de l'utilisateur, s Kup: clé publique Profil * et un certificat s tel que s=F(Kp,D) donné par le prestataire à l'utilisateur lors de l'inscription de celui-ci; Kp étant secret et à la disposition du prestataire. - le prestataire vérifie alors le certificat s: s=F(Kp, D). Il déduit la clé d'authentification en utilisant des données qui lui sont propres, - le prestataire envoie une demande d'authentification, - l'utilisateur utilise le dispositif physique pour répondre, - le prestataire vérifie cette réponse pour accorder ou non le service demandé. Sur la figure 3 cette authentification est réalisée en utilisant l'algorithme RSA. - Le prestataire envoie un nombre A, - Le dispositif physique calcule r=RSA(Kus,A), Kus étant une clé secrète contenue dans ledit dispositif. - Le prestataire calcule RSA(Kup,R) qui doit être égal à A. - Il vérifie alors l'égalité pour accepter ou refuser d'accorder le service concerné à l'utilisateur. Contrairement aux systèmes de l'art antérieur, dans lesquels lorsqu'un utilisateur souscrit à un service utilisant un procédé d'authentification active, le prestataire fournit un dispositif physique (carte France Telecom, SIM pour le GSM, carte orange SP 12017.C/DB 9; personnalisée,...) renfermant les droits, l'invention permet de dissocier physiquement les droits du dispositif d'authentification et de les placer dans un support banal (fichier informatique, numéro,...). Dans un premier exemple de réalisation, le procédé de l'invention comporte les étapes suivantes: Achat d'un support L'utilisateur se procure une carte à mémoire à clé publique, par exemple achète celle-ci chez un revendeur de son choix. Cette carte contient un algorithme de signature à clé publique et un couple (clé secrète Kus, clé publique Kup). La clé publique Kup est accessible à l'extérieur, soit dans un champ en lecture libre, soit inscrite physiquement sur la carte. Souscription à un service L'utilisateur entre en contact avec un prestataire fournissant un service auquel il désire souscrire. Il indique son identité, qui peut également être déterminée par le prestataire lui-même, et fournit la clé publique Kup de son dispositif, le tout par un moyen permettant au prestataire de bien l'identifier. Le prestataire remet au client un fichier informatique contenant son profil et la signature de ce profil (Ks (droit, identité, Kup)) établie avec la clé secrète Ks du prestataire; cette signature étant appelée certificat. Accès au service L'utilisateur demande l'accès au service. Il envoie son profil avec le certificat. Le prestataire vérifie le certificat avec sa clé publique Kp et SP 12017.C/DB ', dispose donc de la clé publique de l'utilisateur Kup. Il met en route une phase d'authentification active: * Le prestataire envoie au client un nombre non reproductible R; * Le client signe R et envoie Kus(R); * Le prestataire utilise la clé publique de l'utilisateur Kup qui lui a été fournie dans le profii pour vérifier Kus(R), et donc que l'utilisateur dispose bien de Kus. Si toutes les vérifications sont correctes, le prestataire accorde le service considéré à l'utilisateur. Dans un second exemple de réalisation, le procédé de l'invention s'applique à la protection d'un logiciel sous licence (il est alors nécessaire que le dispositif soit relié physiquement à la machine de type dongle, ou carte dans un lecteur) et que le logiciel puisse vérifier sa présence). Dans cette utilisation, un verndieur cherche à vendre une licence d'un logiciel lui appartenant. Ce logiciel contient une phase d'initialisation obligatoire qui exige de l'utilisateur potentiel la fourniture de ce profil. Comme dans la première application, l'utilisateur dispose d'un dispositif physique unique. Le vendeur de logiciel, sur présentation du dispositif, lui remet un fichier profil qui contient ses droits au niveau du logiciel ainsi que des paramètres de type date, le tout étant certifié et une version du logiciel exécutable. Lorsque l'utilisateur désire utiliser le logiciel, il effectue une requête et le logiciel lui SP 12017.C/DB demande son profil. Ensuite le logiciel vérifie les droits de l'utilisateur et la date de péremption, lui fait faire une authentification active et s'exécute selon le mode prévu. s En cas de recopie frauduleuse du logiciel, le tricheur peut également recopier le fichier profil, mais il lui est nécessaire de détenir le dispositif physique d'authentification pour passer la phase d'authentification active qui est différente à chaque étape. Le logiciel ne peut donc s' exécuter que dans un seul endroit à la fois. SP 12017.C/DB 12. REFERENCE [1] "Applied Cryptography" de Bruce Schneier (John Wiley et Sons, seconde édition, chapitre 19). SP 12017.C/DB REVENDICATIONS 1. Procédé de contrôle de transactions sécurisées indépendantes utilisant un dispositif physique unique (11) qui est la propriété d'un utilisateur, caractérisé en ce que: - cet utilisateur se procure ledit dispositif physique indépendamment de tout prestataire, - sur présentation par l'utilisateur de ce dispositif (11) à un prestataire (P1, P2, P3), celui-ci lui délivre un ensemble de données caractérisant l'utilisateur associé à ce dispositif, pour un accès à un service déterminé (S1, S2, S3), - l'ensemble dispositif physique associé à ces données permet de réaliser une transaction sûre avec ce service. 2. Procédé selon la revendication 1, caractérisé en ce qu'il comprend les étapes suivantes: - cet utilisateur se procure ledit dispositif physique, - sur présentation par cet utilisateur de ce dispositif à un prestataire, celui-ci lui délivre un fichier de droits qui contient le profil de cet utilisateur, son identité et sa clé publique; - le profil de l'utilisateur pour un service donné est certifié par le prestataire, - lors d'une demande d'accès à un service, l'utilisateur envoie son profil certifié au prestataire, - le prestataire vérifie alors le certificat à l'aide de sa clé publique et retrouve la clé publique de l'utilisateur, - le prestataire vérifie que l'utilisateur dispose bien du dispositif. SP 12017.C/DB 3. Procédé selon la revendication 2, caractérisé en ce que le prestataire vérifie que l'utilisateur dispose bien du dispositif physique en lui demandant de signer un aléa avec sa clé secrète contenue dans le dispositif. 4. Procédé selon la revendication 1, caractérisé en ce qu'il comporte les étapes suivantes: - l'utilisateur se procure une carte à mémoire à clé publique, qui contient un algorithme de signature à clé publique et un couple (clé secrète Kus, clé publique Kup); - l'utilisateur entre en contact avec un prestataire fournissant un service auquel il désire souscrire; il fournit la clé publique Kup et son dispositif; - le prestataire remet au client un fichier informatique contenant son profil et la signature de ce profil (Ks (droit, identité, Kup)) établie avec la clé secrète Ks du prestataire, cette signature étant appelée certificat; l'utilisateur demande l'accès au service; il envoie son profil avec le certificat; - le prestataire vérifie le certificat avec sa clé publique Kp et dispose donc de la clé publique de l'utilisateur Kup; il met en route une phase d'authentification active: * Le prestataire envoie au client un nombre non reproductible R, * Le client signe R et envoie Kus (R), * Le prestataire utilise la clé publique de l'utilisateur Kup qui lui a été fournie dans le profil pour vérifier que la valeur Kus(R) est exacte, et donc que l'utilisateur dispose bien de Kus. SP 12017.C/DB - Si toutes les vérifications sont correctes, le prestataire accorde le service considéré à l'utilisateur. 5. Procédé selon la revendication 1, caractérisé en ce qu'il s'applique à la protection d'un logiciel sous licence, en ce que le dispositif est relié physiquement à la machine dans laquelle est mis en oeuvre le logiciel, en ce que le logiciel contient une phase d'initialisation obligatoire qui exige de l'utilisateur potentiel la fourniture de son profil, en ce que le fournisseur de logiciel, sur présentation du dispositif, remet à l'utilisateur un fichier profil qui contient ses droits au niveau du logiciel ainsi que des paramètres de type date, le tout étant certifié et une version du logiciel exécutable, en ce que lorsque l'utilisateur désire utiliser le logiciel, il effectue une requête, en ce que le logiciel lui demande alors son profil, et vérifie ses droits et la date de péremption, et s'exécute alors selon le mode prévu. SP 12017.C/DB