PROCEDE DE DISTRIBUTION COMMERCIALE EN LIGNE DE BIENS NUMERIQUES PAR L'INTERMEDIAIRE D'UN RESEAU DE COMMUNICATION ET DISPOSITIF ELECTRONIQUE D'ACHAT DE BIENS NUMERIQUES DISTRIBUES PAR CE PROCEDE
La présente invention concerne un procédé de distribution commerciale de biens numériques par T intermédiaire d'un réseau de communication; ainsi qu'un dispositif électronique pour acheter des biens numériques par l'intermédiaire d'un réseau de communication et un système d'achat en ligne prêt à installer. Plus précisément, les biens numériques concernés par l'invention sont des ensembles de données numériques exécutable(s) destinés à être utilisé et devant être fournis sous une forme utilisable selon des modalités prédéfinies d'utilisation.
Les réseaux ouverts de communication ou de transport de données, comme l'Internet, présentent de très grandes potentialités pour le commerce. Le commerce électronique, terme qui désigne les transactions commerciales en ligne par l'intermédiaire de l'Internet, est appelé à une très forte croissance à cause de la croissance du nombre d'utilisateurs de l'Internet, et des nombreux avantages qu'il présente : possibilité d'acheter et de vendre en tout point du globe, rapidité qui favorise la réduction des stocks. Particulièrement, le commerce électronique apparaît très avantageux pour le commerce de biens transportables sous forme numérisée, enregistrement audio et/ ou vidéo, disques films, logiciels, textes, images, etc. puisqu'il réduit considérablement les frais de distribution par rapport aux circuits classiques. Cependant, la sécurité des échanges sur un tel réseau ouvert, c'est-à-dire sur lequel les échanges entre deux interlocuteurs peuvent être lus par un tiers, est plus complexe à assurer.
Actuellement, la méthode d'authentification et de paiement la plus répandue pour sécuriser les transactions en ligne sur l'Internet repose sur protocole SSL (en anglais, Secure Socket Layer.) SSL est un protocole de communication d'informations qui permet d'assurer l'authentification des interlocuteurs, la confidentialité des communications, et l'intégrité des données échangées sur l'Internet. Ce protocole utilise un moyen de cryptographie reconnu : l'algorithme à clé publique RSA. Une clé RSA est un couple formé d'une
clé publique et d'une clé privée, qui est le résultat d'opération entre nombres premiers. Tout message encodé avec la clé publique d'un couple ne peut être lu qu'avec la clé privée dudit couple.
En référence à la figure 1, le passage d'une commande d'achat à l'aide du protocole SSL par un client C, ayant un terminal T apte à communiquer avec un serveur S d'un fournisseur F par l'intermédiaire d'un réseau ouvert R, va maintenant être décrit. Avant que les informations sensibles ne soient échangées, le protocole SSL effectue la gestion des clés RSA et l'authentification du serveur. Pour authentifier le serveur S d'un site de commerce électronique sur la Toile (le web), le logiciel d'achat L, exécuté sur le terminal informatique T par le client C, demande au serveur S de lui fournir sa clé publique 30. Le terminal T reçoit la clé publique 30 du serveur S, puis encode la clé publique 31 générée par le logiciel L avec la clé publique 30 du serveur S, et retourne au serveur S le produit de cette opération, la clé encodée 131. Seul le serveur S possède la clé privée 32 correspondant à la clé publique 30. Ainsi, le serveur S décode la clé 131 pour obtenir la clé publique 31 du logiciel L. Le serveur S encode ses messages pour le logiciel d'achat L avec la clé publique 31, de sorte que seul le logiciel L peut décoder ces messages, à l'aide la clé privée 33 correspondant à la clé publique 31. Un tiers ayant observé l'échange ne peut pas décoder la clé 131, et ne peut donc pas se faire passer pour le serveur S auprès du logiciel L. En répétant cette procédure, en commençant cette fois par le serveur S, le serveur S peut authentifier le logiciel L du client C. Ainsi, les deux interlocuteurs peuvent communiquer de manière confidentielle.
Lorsque le client C veut passer une commande d'achat d'un bien B, le logiciel L l'invite à saisir des paramètres de paiement 34 sur un clavier 35. Les paramètres de paiement comportent généralement le nom, l'adresse du client C, le numéro d'une carte de paiement, son type (par exemple, VISA®, American Express®) et sa date d'expiration. Le logiciel L chiffre ces données et transmet les paramètres de paiement chiffrés 134 au serveur S. Le fournisseur F procède alors à la vérification des paramètres de paiement 34 et confirme la commande par un message au client C, ledit message
pouvant comporter une facture. Le bien B peut alors être livré par colis postal par exemple.
Une autre méthode d'authentification des personnes impliquées lors d'un achat en ligne est le protocole SET (en anglais, Secure Electronic Transaction®.) Ce système utilise des protocoles de cryptographie et délivre des certificats d'authenticité des transactions électroniques.
L'une comme l'autre des méthodes SSL et SET comporte des inconvénients, dont leur lourdeur et leur rigidité. Dans le protocole SSL, les paramètres de paiement doivent être saisis à chaque transaction, avec les risques que suppose une telle saisie, si elle est effectuée dans un lieu public. La solution SET est lourde à mettre en œuvre à cause des certificats d'authenticité qui doivent être échangés à chaque transaction. Le document EP 917 119 A2 expose un système réticulaire distribué de portefeuille électronique comportant une banque d'information dans laquelle un utilisateur stocke différents types d'informations personnelles et une carte à puce contenant des connecteurs secrets pour autoriser un accès nomade ubiquiste de l'utilisateur à ces informations tout en garantissant leur confidentialité. Dans ce système, des données de crédit de l'utilisateur sont stockées de manière permanente dans la banque d'information pour permettre une facturation interne à la banque d'information. Ainsi, l'utilisateur peut effectuer des achats sur des sites marchands de l'Internet par l'intermédiaire de la banque d'information sans faire passer d'informations telles qu'un numéro de carte bancaire par l'Internet. Ce système prévoit aussi de stocker sur la carte à puce un ticket d'accès, par exemple une entrée à l'opéra. Cependant, ce système comporte des inconvénients en ce qu'il rend l'utilisateur entièrement dépendant de la banque d'information, qui centralise toutes ses données personnelles et sert toujours d'intermédiaire pour les transactions effectuées par l'utilisateur avec des tiers. Ainsi, ce système prive l'utilisateur d'un contrôle souhaitable sur ses propres affaires. En outre, la centralisation des données personnelles est un facteur de risque pour l'utilisateur. Enfin, la banque d'information doit être rémunérée pour ses services d'intermédiaire.
La distribution commerciale en ligne de biens numériques par l'intermédiaire d'un réseau de communication est une forme particulière de transaction commerciale en ligne. L'achat des biens numériques en ligne par l'intermédiaire d'un réseau de communication est une forme particulière de commande commerciales en ligne. Le document WO 99/49615 Al expose un procédé de distribution commerciale en ligne de biens numériques par l'intermédiaire d'un réseau de communication, ledit procédé comprenant les étapes consistant à : (a) mettre en communication de manière amovible avec un premier terminal informatique, dit terminal d'achat, un moyen électronique de paiement destiné à être porté par un client, des données de crédit identifiant un crédit dudit client étant mémorisées dans une mémoire dudit moyen électronique de paiement, (b) à la suite d'un ordre de commande donné par ledit client au terminal d'achat pour commander un bien numérique de son choix, envoyer lesdites données de crédit depuis le terminal d'achat à destination d'un second terminal informatique, dit serveur, d'un fournisseur, lesdites données de crédit étant chiffrées, ledit serveur et ledit terminal d'achat étant aptes à communiquer par l'intermédiaire dudit réseau de communication,
(c) vérifier la validité desdites données de crédit et, lorsque lesdites données de crédit sont valides,
(d) envoyer, depuis le serveur à destination du terminal d'achat, ledit bien numérique comprenant au moins un fichier de données numériques exécutable(s) ou non.
Selon ce procédé connu, le fichier de données, par exemple un document numérisé est mémorisé de manière chiffrée sur une cartouche de stockage pour laquelle, d'une part, le terminal d'achat, d'autre part, l'ordinateur personnel du client," doivent être munis d'un lecteur spécifique. A des fins de protection contre le piratage, un seul lecteur ou un ensemble restreints de lecteurs, dont les numéros de série ont été entrés dans la cartouche, permet l'utilisation du bien numérique mémorisé dedans. Le moyen de paiement est une carte bancaire classique, à piste magnétique ou autre, et le client doit posséder en outre une carte d'identification personnelle séparé de la
carte bancaire pour pouvoir utiliser le terminal d'achat. Ce procédé et ce système présentent donc une certaine lourdeur d'utilisation. La nécessité de posséder à la fois une carte de paiement, une carte d'identification et une cartouche de stockage pour réaliser un achat rend ce dernier fastidieux et accroît les risques qu'un achat souhaité ne puisse être réalisé à cause de l'oubli de l'un de ces trois éléments. De plus, le bien acheté est dépourvu de flexibilité d'utilisation car l'utilisation ne s'effectue pas depuis le terminal d'achat et le lecteur adapté à la cartouche doit être apporté avec la cartouche sur tout lieu d'utilisation.
La présente invention a pour but de proposer un procédé de distribution commerciale de biens numériques par un réseau en résolvant au moins certains des inconvénients précités. Le procédé selon l'invention apporte cinq avantages majeurs aux clients : l'automatisation et la sécurisation du processus de paiement par l'utilisation d'une carte à puce et d'un lecteur approprié ; l'ouverture à toute carte de paiement valide ; la personnalisation de la gamme de produits commercialisés en ligne et la personnalisation des messages publicitaires grâce à une gestion dynamique des préférences du client mémorisées dans la carte à puce ; l'acheminement direct des biens numériques tels que les logiciels, enregistrements audio et/ou vidéo achetés, par téléchargement, sur le terminal du client, de fichiers électroniques chiffrés ou non contenant ces produits sous une forme utilisable uniquement par l'intermédiaire de la carte à puce. Pour cela, l'invention fournit un procédé du type ci- dessus, caractérisé par le fait que ledit bien numérique comprend un fichier séparé de données de droits d'utilisation définissant des modalités d'utilisation du bien numérique choisies par le client et un ou plusieurs autre(s) fichier(s) de données , lesdites données de droits d'utilisation étant envoyées chiffrées selon un code de chiffrement pour lequel une clé de déchiffrement secrète est mémorisée dans la mémoire dudit moyen électronique de paiement, ledit procédé comportant les étapes consistant à :
(e) mémoriser ledit ou lesdits autre(s) fichier(s) de données sur le terminal d'achat,
(f) mémoriser dans ladite mémoire du moyen électronique de paiement
lesdites données de droits d'utilisation en les déchiffrant à l'aide de ladite clé de déchiffrement, lesdites données de droits d'utilisation étant indispensables à l'utilisation dudit bien numérique.
Par exemple, le moyen électronique de paiement est une carte à puce apte à exécuter des algorithmes cryptographiques et le terminal d'achat est un micro-ordinateur équipé d'un lecteur de carte à puce. Une telle carte à puce est munie d'une mémoire, par exemple d'une capacité de 32 Kilo-octets ou plus. Le serveur est par exemple le serveur d'un site ou d'un portail de commerce électronique sur la Toile.
Ce procédé permet ainsi de réaliser des achats directement auprès de fournisseurs sans passer par une quelconque institution intermédiaire. Il offre une sécurité contre le piratage dans le mesure où le moyen de paiement ayant servi à réaliser l'achat doit être relié à l'interface pour permettre l'utilisation du bien acquis. Mais il offre aussi une flexibilité d'utilisation puisque le ou les autre(s) fichier(s) peut/peuvent être transféré(s) ou copié(s), par exemple via le réseau de communication, sur un autre terminal muni d'une interface adaptée au moyen de paiement. Il ne nécessite pas de précautions particulières contre le piratage lors d'un tel transfert puisque seul le moyen de paiement connecté à une interface permet d'utiliser le bien depuis un terminal. Il est à noter qu'un terminal informatique muni d'un lecteur de carte à puce est un objet relativement courant.
Avantageusement, ledit ordre de commande produit l'envoi par le terminal d'achat, à destination du serveur, de données de commandes désignant ledit bien numérique choisi par le client et les modalités d'utilisation choisies par le client, selon lesquelles ledit bien numérique est destiné à être utilisé, les données de droits d'utilisation étant destinées à autoriser une utilisation dudit bien numérique selon lesdites modalités d'utilisation choisies.
Dans un mode de réalisation préféré, le ou les autre(s) fichier(s)comprend/comρrennent un programme d'ordinateur exécutable, ladite utilisation comportant une exécution dudit programme d'ordinateur, ledit programme d'ordinateur étant conçu de manière que son exécution comporte des opérations non soumises à autorisation consistant à lire les données de droits d'utilisation dans
ledit moyen électronique de paiement et à autoriser ou non, en fonction desdites données de droits d'utilisation, l'exécution d'au moins une opération suivante soumise à autorisation.
Dans un autre mode de réalisation préféré, le ou les autre(s) fichier (s) comprend/comprennent au moins un fichier de document non exécutable, ladite utilisation comportant des opérations non soumises à autorisation consistant à lire les données de droits d'utilisation dans ledit moyen électronique de paiement et à autoriser ou non, en fonction desdites données de droits d'utilisation, l'exécution d'au moins une opération de traitement dudit ou desdits fichier (s) de document par un moyen de traitement correspondant.
Dans une combinaison de ces mode de réalisation préférés, ledit programme d'ordinateur exécutable par ledit terminal d'achat constitue ledit moyen de traitement, ladite ou lesdites opération(s) suivante(s) comportant ladite ou lesdites opération(s) de traitement dudit ou desdits fichier (s) de document.
De préférence, le procédé selon l'invention comporte une étape consistant à : (g) chiffrer au moins partiellement ledit ou lesdits autre(s) fichier(s) de données selon ledit code de chiffrement avant de le(s) mémoriser sur le terminal d'achat, ledit procédé comportant une étape de déchiffrement de la partie chiffrée dudit ou desdits autre(s) fichier(s) de données par ledit moyen électronique de paiement lorsqu'une utilisation du bien numérique est ordonnée. La partie chiffrée peut aussi être vide. Le stockage d'au moins une partie du bien numérique sous une forme chiffrée sur le terminal d'achat et de la clé de déchiffrement correspondante sur un moyen de paiement amovible offre une garantie supplémentaire contre le piratage du bien numérique.
Avantageusement, le procédé selon l'invention comporte, avant l'étape (a), une étape consistant à fournir au client le moyen électronique de paiement avec des clés de chiffrement et de déchiffrement incluses et pour lesquelles clés le fournisseur possède des clés de déchiffrement et de chiffrement respectives correspondantes . Avantageusement, le procédé selon l'invention comprend aussi une étape d'authentification mutuelle qui comporte, d'une part,
l'envoi par ledit moyen électronique de paiement, à destination dudit second terminal informatique, par l'intermédiaire dudit premier terminal informatique et dudit réseau de communication, d'un nombre aléatoire, d'autre part, le renvoi par ledit second terminal informatique, à destination dudit moyen électronique de paiement, par l'intermédiaire dudit réseau de communication et dudit premier terminal informatique, dudit nombre aléatoire reçu, après chiffrement à l'aide d'une clé d'authentification dudit second terminal informatique, une condition nécessaire à la reconnaissance d'authenticité dudit second terminal informatique par ledit moyen électronique de paiement étant la réception dudit nombre aléatoire chiffré par ledit moyen électronique de paiement et la concordance entre ledit nombre aléatoire envoyé et ledit nombre aléatoire chiffré, après déchiffrement de ce dernier par ledit moyen électronique de paiement. De préférence, les modalités d'utilisation définies par lesdites données de droits d'utilisation comportent des modalités chronologiques comme une durée maximale d'utilisation ou une date limite d'utilisation, et/ou des modalités quantitatives comme un nombre maximal d'utilisations, et/ou des modalités qualitatives comme une restriction de l'utilisation à un sous-ensemble dudit bien numérique.
L'invention fournit également un dispositif électronique pour acheter des biens numériques en ligne par l'intermédiaire d'un réseau de communication, ledit dispositif comprenant :
- un moyen électronique de paiement destiné à être porté par un client et muni d'une mémoire, des données de crédit identifiant un crédit dudit client étant mémorisées dans ladite mémoire,
- un terminal informatique d'achat relié à un serveur informatique dudit fournisseur par ledit réseau de communication, et muni d'une interface de commande pour recevoir un ordre de commande donné par le client pour commander un bien numérique de son choix ,
- une interface électronique reliée audit terminal d'achat, ladite interface électronique étant apte à recevoir de manière amovible ledit moyen électronique de paiement pour permettre un échange de données entre ledit terminal d'achat et ledit moyen électronique de paiement, - des moyens logiciels de pilotage pour piloter les opérations consistant
(a) envoyer lesdites données de crédit depuis ledit moyen électronique de paiement à destination dudit serveur, lesdites données de crédit étant chiffrées,
(b) lorsque lesdites données de crédit ont été validées, recevoir depuis le serveur ledit bien numérique comprenant au moins un fichier de données exécutable ou non, caractérisé par le fait que ledit bien numérique comporte un fichier séparé de données de droits d'utilisation définissant des modalités d'utilisation du bien numérique choisies par le client et un ou plusieurs autre(s) fichier (s) de données, lesdites données de droits d'utilisation étant reçues chiffrées, lesdits moyens logiciels de pilotage étant aptes à piloter les opérations consistant à :
(c) mémoriser ledit ou lesdits autre(s) fichier(s) de données sur le terminal d'achat, (d) mémoriser lesdites données de droits d'utilisation dans ladite mémoire du moyen électronique de paiement en les faisant déchiffrer par le moyen électronique de paiement à l'aide d'une clé de déchiffrement secrète mémorisée dans sa mémoire, lesdites données de droits d'utilisation étant indispensables à l'utilisation dudit bien numérique.
Par exemple, le moyen électronique de paiement est une carte à puce apte à exécuter des algorithmes cryptographiques et l'interface électronique de paiement est un lecteur de carte à puce dans lequel ladite carte à puce peut être insérée. De préférence, ladite interface de commande permet au client d'ordonner une utilisation dudit bien numérique.
De préférence, ledit ou lesdits autre(s) fichier (s) de données est/sont reçu(s) au moins partiellement chiffré(s) selon ledit code de chiffrement, lesdits moyens logiciels de pilotage étant aptes à piloter une opération consistant à faire déchiffrer la partie chiffrée dudit ou desdits autre(s) fichier(s) de données par le moyen électronique de paiement à l'aide de ladite clé de déchiffrement secrète lorsque ladite utilisation est ordonnée.
L'invention fournit également un système d'achat en ligne prêt à installer comportant ledit moyen électronique de paiement, ladite interface électronique et lesdits moyens logiciels de pilotage du
dispositif électronique susmentionné, ledit moyen électronique de paiement étant ou non relié à ladite interface électronique, ladite interface électronique étant ou non reliée audit terminal d'achat et lesdits moyens logiciels étant fixés sur un support de données. L'invention sera mieux comprise, et d'autres buts, détails, caractéristiques et avantages de celle-ci apparaîtront plus clairement au cours de la description suivante de plusieurs modes de réalisation particuliers de l'invention, donnés uniquement à titre illustratif et non limitatif, en référence au dessin annexé. Sur ce dessin : - la figure 1 est une représentation schématique d'une procédure pour effectuer un achat par l'intermédiaire d'un réseau de communication selon un art antérieur ;
-la figure 2 est une représentation schématique d'une étape d'initialisation d'une carte à puce faisant partie d'un procédé selon l'invention ;
- la figure 3 est une représentation schématique d'une première étape d'achat du procédé de la figure 2 ;
- la figure 4 est une représentation schématique d'une seconde étape d'achat du procédé de la figure 2 ; -la figure 5 est un diagramme représentant le déroulement d'une utilisation du bien numérique acquis par le procédé des figures 2 à 4 dans un premier mode de réalisation ;
-la figure 6 est un diagramme représentant le déroulement d'une utilisation du bien numérique dans un second mode de réalisation.
Un dispositif électronique selon un mode de réalisation de l'invention va maintenant être décrit en référence à la figure 2. Le dispositif électronique dans ce mode de réalisation de l'invention comprend une carte à puce P, qui comporte par exemple une armature de plastique rigide (non représentée) dans laquelle est monté un circuit intégré avec une unité de mémoire 1, un microprocesseur 2, et des contacts électriques (non représentés) apte à entrer en contact avec un lecteur de carte à puce pour permettre l'échange de données entre la carte à puce P et ledit lecteur. Le dispositif selon l'invention comprend aussi un lecteur de carte à puce 3, relié à un terminal informatique T pour échanger des données avec celui-ci. Comme représenté à la figure
2, le lecteur de carte à puce 3 peut être intégré au terminal T. En variante, le lecteur de carte à puce 3 peut être un périphérique externe au terminal T. Le dispositif selon l'invention comprend également des moyens logiciels 4, qui comportent des codes d'instructions aptes à être exécutés par le terminal T et/ou le lecteur de carte à puce 3 pour piloter le déroulement d'un procédé d'achat. Les moyens logiciels 4 sont installés sur le terminal T et/ou le lecteur de carte à puce 3 par tout moyen approprié, soit par l'intermédiaire d'un support physique de données de type cédérom (non représenté), soit par téléchargement. La carte à puce P, le lecteur 3 et les moyens logiciels 4 peuvent être fournis sous forme d'un système prêt à installer sur un ordinateur personnel classique, tel qu'un micro-ordinateur de type compatible PC. Les moyens logiciels 4 sont alors fournis fixés sur un support physique de données. Le lecteur 3 est fourni avec un cordon pour le relier audit ordinateur personnel. Le procédé piloté par les moyens logiciels de pilotage 4 va maintenant être décrit.
Dans une première étape du procédé, un client C initialise sa carte à puce P pour la rendre utilisable afin d'effectuer des transactions en ligne. Pour cela, la carte à puce P est insérée dans le lecteur de carte à puce 3. Une application d'initialisation, fournie dans les moyens logiciels 4, est exécutée. Le client C est alors invité à saisir différentes informations le concernant par l'intermédiaire d'une interface de commande 5, par exemple un clavier alphanumérique et/ou une souris, du terminal T. Ces différentes informations comportent par exemple : des données personnelles 6 identifiant le client C (par exemple, son nom, son adresse, sa date de naissance), des données bancaires ou autres 7 identifiant un crédit du client C (par exemple, un numéro de carte bancaire du client C, le type de ladite carte bancaire et sa date d'expiration), des données de préférences personnelles 8, caractéristiques des préférences de consommation du client C (adresse d'un site de commerce électronique préféré, nom de marques commerciales et/ou de distributeurs préférés, etc.) A la fin de la saisie de ces informations, le client C est invité à fournir un code d'identification personnel 9 ; puis le lecteur 3 transmet les données personnelles 6, les données bancaires 7, les données de préférences personnelles 8 et le code d'identification personnel 9 à la carte à puce
P, pour que ces informations soient mémorisées dans l'unité de mémoire 1. L'étape d'initialisation est alors terminée.
De préférence, le client C doit garder secret son code d'identification personnel 9, pour se réserver l'accès aux informations mémorisées sur sa carte à puce. Le code d'identification personnel 9 est nécessaire pour visualiser et/ou modifier lesdites informations mémorisées à l'aide de l'application d'initialisation. Le code d'identification personnel 9 est bien entendu complètement indépendant d'autres codes personnels appartenant au client C, comme par exemple le code confidentiel associé à sa carte bancaire.
Pendant l'étape d'initialisation, qui doit être effectuée au moins avant le tout premier achat à l'aide de la carte à puce P, il n'est pas nécessaire que le terminal T soit connecté à un quelconque réseau. De plus, la saisie des données sensibles, comme les données bancaires 7, peut être effectuée dans un lieu approprié, et non sur le lieu où est réalisé l'achat, qui peut être dans un lieu public, comme un cybercafé par exemple.
Après cette étape d'initialisation, le dispositif électronique permet au client C d'effectuer des achats en ligne auprès d'un fournisseur F par l'intermédiaire d'un réseau de communication R, comme représenté aux figures 3 et 4. Pour cela, le terminal T doit être relié au réseau R afin de communiquer avec un serveur informatique S du fournisseur F, également relié au réseau R. Le serveur S est, par exemple, le serveur d'un site de commerce électronique sur la Toile. Dans la suite, les communications entre le serveur S et le terminal T passent toujours par le réseau R. Le réseau R est un réseau ouvert du type de l'Internet, c'est-à-dire qu'un tiers pourrait intercepter les données échangées entre le serveur S et le terminal T.
Pour effectuer un achat, le client C insère sa carte à puce P dans le lecteur 3. Le terminal T est alors apte à entrer automatiquement en communication avec le serveur S du site de commerce électronique dont l'adresse figure dans les données de préférences 8 mémorisées dans la carte à puce P. En variante, le client C peut choisir un serveur S différent en saisissant son adresse par l'interface de commande 5.
Lorsque le terminal T est entré en communication avec le serveur S, les deux interlocuteurs informatiques S et T s'identifient mutuellement lors d'une étape d'authentification, effectuée selon une procédure d'authentification standard mise en place pour les cartes à puce cryptographiques, transparente pour le client C, comme par exemple l'algorithme à clé publique RSA susmentionné.
Pour la procédure d'authentification (non représentée), le serveur S possède une paire de clés d'authentification, l'une publique 36, l'autre privée 37. Le serveur S révèle sa clé d'authentification publique 36 au terminal T sans passer par le réseau R. Le terminal T génère un nombre aléatoire 38 et l'envoie au serveur S par l'intermédiaire du réseau R. Le serveur S chiffre ce nombre aléatoire 38 reçu à l'aide de sa clé d'authentification privée 37, et retourne le résultat 39 de cette opération de chiffrement au terminal T. Le terminal T utilise la clé d'authentification publique 36 révélée précédemment pour déchiffrer le résultat 39 reçu et compare ledit résultat déchiffré 40 au nombre aléatoire 38 envoyé. S'ils correspondent, le terminal T est assuré de correspondre avec le serveur S. Un imposteur n'aurait pu connaître la clé d'authentification privée 37 du serveur S et serait incapable de chiffrer correctement le nombre aléatoire 38.
A l'issue de l'étape d'authentification, le terminal T est apte à envoyer au serveur S des données chiffrées selon un premier code de chiffrement, que seul le serveur S est apte à déchiffrer, à l'exclusion de tout tiers qui observerait les échanges sur le réseau R entre le terminal T et le serveur S ; et le serveur S est apte à envoyer au terminal T des données chiffrées selon un second code de chiffrement que seul le terminal T muni de la carte à puce P est apte à déchiffrer, à l'exclusion de tout tiers. Aux figures 3 et 4, les données chiffrées selon le premier code de chiffrement ont un chiffre augmenté de 100 et les données chiffrées selon le second code de chiffrement ont un chiffre de référence augmenté de 200.
La carte à puce P comporte dans l'unité de mémoire 1 une dite seconde clé de déchiffrement 12 nécessaire au déchiffrement dudit second code de chiffrement, ainsi qu'une première clé de chiffrement 19 nécessaire au chiffrement selon le premier code de chiffrement. Ainsi, le terminal T ne peut, ni déchiffrer ledit second code de
chiffrement, ni chiffrer des données selon ledit premier code de chiffrement, lorsque la carte à puce P est retirée du lecteur 3. Les opérations de chiffrement selon le premier code des données envoyées par le terminal T au serveur S et de déchiffrement des données envoyées au terminal T par le serveur S chiffrées selon le second code de chiffrement sont effectuées par un module cryptographique 13 dans la carte à puce P. Le serveur S comporte un second module cryptographique 24 pour chiffrer selon le second code à l'aide d'une seconde clé de chiffrement 23, et pour déchiffrer le premier code à l'aide d'une première clé de déchiffrement 22, lesdites seconde clé de chiffrement 23 et première clé de déchiffrement 22 étant mémorisées dans une mémoire 21 du serveur S.
La clé de chiffrement 19 correspondant au premier code et la clé de déchiffrement 12 correspondant au second code sont fixées dans la carte à puce P sans passer par le réseau R. Par exemple, le fournisseur F est lui-même l'émetteur de la carte à puce de sorte qu'il la fournit au client C avec les clés 19 et 12 intégrées. Par exemple, dans le cas où l'algorithme à clé publique RSA est utilisé pour l'authentification mutuelle des interlocuteurs, la seconde clé de chiffrement 23 est une clé publique générée par la carte à puce P et la seconde clé de déchiffrement 12 est la clé privée qui lui est associée ; tandis que la première clé de chiffrement 19 est une clé publique générée par le serveur S et la première clé de déchiffrement 22 est la clé privée qui lui est associée. Après l'étape d'authentification, le terminal T envoie au serveur S les données de préférences 8 chiffrées selon le premier code de chiffrement. Après réception des données de préférences chiffrées 108, le serveur S envoie au terminal T des données de réponse 10, chiffrées ou non, destinées à informer et/ou influencer le client C. Les données de réponse 10 comportent par exemple des informations sur des produits conformes aux données de préférences 8, des annonces publicitaires et/ou des offres commerciales personnalisées selon les données de préférences 8.
Le fournisseur F peut aussi organiser une loterie à laquelle participent ses clients qui utilisent le procédé selon l'invention pour faire des transactions avec lui. Par exemple, le serveur S est apte à
tirer aléatoirement le nom d'un gagnant parmi les clients connectés au serveur S à une heure donnée et à adresser au client gagnant une offre de cadeau.
De préférence, le serveur S est apte à mémoriser l'historique des transactions effectuées par un client donné à l'aide du procédé selon l'invention, par exemple le montant et la nature des transactions passées, et d'adapter les offres contenues dans les données de réponse 10 en fonction de la fidélité dudit client. Dans une variante de l'invention, les données de préférence 8 mémorisées dans la carte à puce P sont actualisées automatiquement en fonction des transactions effectuées par le client C à l'aide de ladite carte à puce P. L'historique des transactions passées du client C peut être mémorisé dans ladite unité de mémoire 1 et être inclus dans les données de préférence 8 communiquées au serveur S. L'étape suivante du procédé est une étape de commande.
Lorsque le client C a fait le choix d'un bien à commander au fournisseur F, il envoie au terminal T un ordre de commande li a l'aide de l'interface de commande 5. Par exemple, l'ordre de commande 11 est envoyé par simple actionnement d'un bouton de souris. Le terminal T demande alors la saisie du code d'identification personnel 9, pour vérifier que l'utilisateur de la carte à puce P est légitime. Lorsque le code saisi sur l'interface de commande 5 est conforme au code d'identification personnel 9 mémorisé dans l'unité de mémoire 1, le terminal T envoie automatiquement au serveur S des données de commande 146 et des données de paiement 120 chiffrées selon le premier code de chiffrement, les données de paiement 120 comportant toutes ou une partie des données personnelles 6 et des données bancaires 7, pour effectuer le paiement du bien.
Les données de commande 146 désignent un bien numérique 26 à fournir par le fournisseur F et disponible par l'intermédiaire du serveur S, c'est-à-dire, dans le mode de réalisation représenté, mémorisé sur le serveur S. Le bien numérique 26 est constitué d'un ensemble de données numériques utilisables, exécutables ou non. Avec le bien numérique 26, le client C choisit des modalités d'utilisation selon lesquelles il pourra utiliser le bien commandé. Par exemple, le prix du bien numérique commandé dépend des modalités
d'utilisation commandées avec celui-ci. Les données de commande 146 désignent donc également les modalités d'utilisation selon lesquelles ledit bien numérique est destiné à être utilisé.
A la réception des données de commande 146 et des données de paiement chiffrées 120, le serveur S procède à leur déchiffrement à l'aide de la première clé de déchiffrement 22. De préférence, le serveur S est apte à communiquer automatiquement avec un serveur informatique de vérification V, par exemple un serveur informatique d'un organisme bancaire, pour vérifier la validité des données bancaires 7 et/ou la solvabilité du client C. En réponse à la demande de vérification 15 envoyée par le serveur S, le serveur de vérification V envoie une confirmation de validité 16, positive ou négative selon que les données bancaires 7 sont jugées valides ou non. Lorsque la confirmation de validité 16 reçue est négative, le serveur S envoie au terminal T une commande d'annulation 17 pour annuler la transaction en cours. Dans des conditions particulières, pour prévenir une tentative d'achat illégitime, dans le cas, par exemple, où il n'existe pas de crédit identifié par les données bancaires 7, le serveur S envoie également une commande de blocage 18 pour bloquer la carte à puce P. Lorsque la confirmation de validité 16 reçue est positive, la commande est acceptée par le serveur S. Un compte de crédit du client est débité dans ce cas.
La fin de l'étape de commande va maintenant être décrite en référence à la figure 4. Le serveur S envoie au terminal T des données d'identification du bien commandé, chiffrées selon le second code de chiffrement. Sous la commande des moyens logiciels de pilotage 4, le terminal T redirige les données d'identification chiffrées vers la carte à puce P. Les données d'identification sont déchiffrées par le module de déchiffrement 13 de la carte à puce P et mémorisées dans l'unité de mémoire 1. Les données d'identification identifient de manière unique le bien commandé et payé par le client C, de manière à valoir pour preuves de la commande effectuée. Des modalités d'utilisation du bien, comme par exemple une durée maximale d'utilisation ou un nombre maximal d'utilisations sont comprises dans les données d'identification. Au sens de l'invention, les modalités d'utilisation incluent des données de droits d'utilisation 25.
Les données de droits d'utilisation 25 sont destinées à être lues dans le moyen électronique de paiement pour coopérer avec le bien numérique lorsqu'une utilisation du bien est ordonnée. Elles sont destinées à coopérer avec le bien numérique 26 pour autoriser son utilisation uniquement selon les modalités d'utilisation commandées par le client C, et en fonction desquelles le bien numérique est facturé.
Le bien numérique 26 comporte les données de droits d'utilisation 25, sous la forme d'un fichier de données séparé, et au moins un autre fichier informatique. Le bien numérique 26 peut être un programme d'ordinateur exécutable comme un logiciel de jeux vidéo, un logiciel éducatif ou une autre application commerciale. Un tel programme comporte par exemple un fichier exécutable permettant le démarrage du logiciel et des bibliothèques de fonctions, statiques ou dynamiques, qui sont appelées ou non par le fichier exécutable du logiciel en fonction des fonctionnalités utilisées par l'utilisateur. Ce programme d'ordinateur est conçu de manière que son exécution est impossible en l'absence des données de droits d'utilisation 25.
Les modalités d'utilisation commandées par le client C avec le programme d'ordinateur peuvent être des modalités chronologiques, comme une date limite d'exécution ou une durée totale d'exécution, limitée ou non ; des modalités quantitatives, comme un nombre total d'exécutions, limité ou non ; ou des modalités qualitatives comme un ensemble de fonctionnalités accessibles et utilisables, restreint ou non par rapport aux fonctionnalités complètes du programme d'ordinateur. Par exemple, dans un logiciel de jeux vidéo ou un logiciel éducatif comportant plusieurs niveaux successifs, le client C peut commander l'utilisation de certains niveaux seulement. Dans ce cas, les bibliothèques de fonctions correspondant aux niveaux dont l'utilisation n'a pas été commandée et payée sont fournies par le serveur S sous une forme verrouillée ou ne sont pas fournies.
Le bien numérique 26 peut aussi comporter un fichier de document non exécutable et utilisable par traitement au moyen d'un moyen de traitement approprié 29. Par exemple, il s'agit d'un fichier de document sonore, comme un disque numérisé au format MP3, d'un fichier de document audiovisuel, comme un film numérisé au format MPEG4, AVI, WAV ou MOV, d'un fichier de document graphique
comme une image au format JPG, GIF, ou d'un autre fichier de document comportant un contenu dans un format lisible par un logiciel de lecture approprié. Ce fichier de document est conçu de manière que son traitement est impossible en l'absence des données de droits d'utilisation 25.
Les modalités d'utilisation commandées par le client C avec le fichier de document peuvent être des modalités chronologiques, comme une date limite de lecture ou une durée totale de lecture, limitée ou non ; des modalités quantitatives, comme un nombre total de lectures, limité ou non ; ou des modalités qualitatives comme une restriction de lecture à une sous partie du fichier de document complet.
Comme identification du bien numérique 26, les données
25 comprennent par exemple le nom et le numéro de série du logiciel ou du document, sa date de création et la liste des fichiers qui en font partie.
Dans tous les cas, le serveur S envoie également au terminal T chaque fichier du bien numérique 26. Le bien numérique 26 est envoyé sous la forme des données de droits d'utilisation chiffrées 225, et du ou des autre(s) fichier(s) informatique(s) composé(s) d'une partie 226b chiffrée selon le second code de chiffrement et d'une partie non chiffrée 26a. La partie non chiffrée 26a ou la partie chiffrée 226b peut être vide. De préférence, la partie chiffrée 226b du ou des fichier (s) est aussi indispensable à l'utilisation du bien numérique 26. Par exemple, dans le cas où le bien est un programme d'ordinateur, une partie du code exécutable ou une des bibliothèques principales est contenue dans la partie 226b. Par exemple, dans le cas où le bien est un fichier de document audiovisuel, une tranche d'une demie seconde du document toutes les secondes est contenue dans la partie 226b.
A leur réception par le terminal T, la partie chiffrée 226b et la partie non chiffrée 26a du ou des autre(s) fichier(s) informatique(s) sont mémorisées dans une mémoire 27 du terminal T. Pour que le bien puisse être utilisé depuis le terminal T après téléchargement, par exemple pour écouter le disque acheté ou exécuter ledit logiciel acheté, la partie chiffrée 226b des fichiers doit être déchiffrée par le module cryptographique 13, puis retransmise au terminal T par la carte à puce P, comme représenté par la double
flèche 28 à la figure 4. Comme il va être maintenant expliqué en référence aux figures 5 et 6, les données de droits d'utilisation 25 (ou d'identification) sont destinées à être lues dans la carte à puce P lors de chaque utilisation du bien numérique 26 téléchargé. Ainsi, pour que le(s) fichier(s) du bien 26 puisse(nt) être utilisé(s), la carte à puce P qui a servi à passer la commande doit être connectée au lecteur 3.
On décrit maintenant, en référence à la figure 5, le déroulement d'une utilisation du bien numérique 26 téléchargé dans le cas où il s'agit d'un logiciel à plusieurs niveaux. A l'étape 30, un utilisateur donne, à travers l'interface de commande 5, un ordre d'exécution du logiciel. L'exécution du logiciel commence par l'étape 31, non soumise à autorisation, dans laquelle les données de droits d'utilisation 25 sont lues dans la mémoire 1, comme indiqué par la flèche 25 à la figure 4. Si la carte à puce P n'est pas connectée au lecteur 3, l'étape 31 n'est pas effectuée mais un message est adressé à l'utilisateur, par exemple : « veuillez introduire la carte dans le lecteur. »
A l'étape 32, le logiciel effectue une vérification des droits d'utilisation pour établir si l'exécution du logiciel est autorisée. Par exemple, la date limite d'exécution est comparée à la date actuelle donnée par l'horloge interne du terminal T ou la valeur d'un compteur d'exécutions est comparée à la valeur du nombre maximal d'exécutions autorisées contenu dans les droits d'utilisation 25. S'il est établi que l'utilisation n'est pas autorisée, par exemple la date limite d'exécution étant dépassée ou le nombre maximal d'exécutions ayant été atteint lors de l'exécution précédente, l'exécution est interrompue à l'étape 33.
Si l'exécution est autorisée, elle se poursuit à l'étape 34. La partie 226b du logiciel est alors complètement déchiffrée par le module 13 puis mémorisée déchiffrée dans la mémoire 27, de manière à pouvoir être exécutée ou appelée. Au cours de l'exécution du logiciel, l'utilisateur atteint la fin d'un niveau et demande l'accès au niveau supérieur à l'étape 35. Alors, à l'étape 36, les données de droits d'utilisation 25 sont au nouveau lues dans la mémoire 1 , pour établir, à l'étape 37, si l'accès au niveau supérieur est autorisé, par exemple en comparant le numéro dudit niveau supérieur à une liste des niveaux accessibles contenue dans les données 25. S'il est établi que l'accès au
niveau supérieur n'est pas autorisée, l'exécution de ce niveau est refusée à l'étape 38 et un message « niveau non accessible » est affiché à l'écran. Si l'accès est autorisé, le niveau supérieur est exécuté à l'étape 39. En variante, la partie chiffrée 226b n'est que partiellement déchiffrée à l'étape 34, des fonctions non nécessaires à l'exécution du niveau courant restant chiffrée pour être déchiffrée ultérieurement, lorsqu'elle seront nécessaires à la poursuite de l'exécution. Par exemple, les fonctions nécessaires à l'exécution du niveau supérieur sont déchiffrées lors du passage au niveau supérieur lorsque ce passage est autorisé.
On décrit maintenant, en référence à la figure 6, le déroulement d'une utilisation du bien numérique 26 téléchargé dans le cas où il s'agit d'un fichier de document, par exemple d'une séquence musicale numérisée. A l'étape 40, un utilisateur donne, à travers l'interface de commande 5, un ordre de lecture de la séquence musicale, par exemple en cliquant sur une icône correspondante. A l'étape 41 est lancée la mise en œuvre d'un moyen de traitement 29, visible à la figure 4, à savoir, dans le présent exemple, l'exécution d'un logiciel de lecture 29 apte à lire le format de numérisation employé dans le bien numérique 26. L'exécution du logiciel de lecture commence par l'étape 42, non soumise à autorisation, dans laquelle les données de droits d'utilisation 25 sont lues dans la mémoire 1, comme indiqué par la flèche 25 à la figure 4. Si la carte à puce P n'est pas connectée au lecteur 3, l'étape 31 n'est pas effectuée mais un message est adressé à l'utilisateur, par exemple : « veuillez introduire la carte dans le lecteur. »
A l'étape 43, le logiciel effectue une vérification des droits d'utilisation pour établir si la lecture du fichier de document est autorisée. Par exemple, la date limite de lecture est comparée à la date actuelle donnée par l'horloge interne du terminal T ou la valeur d'un compteur de lectures est comparée à la valeur du nombre maximal de lectures autorisées contenu dans les droits d'utilisation 25. S'il est établi que la lecture n'est pas autorisée, l'exécution du logiciel de lecture est interrompue à l'étape 44.
Si la lecture est autorisée, elle se produit à l'étape 45. La partie 226b du fichier de document est alors déchiffrée par le module
13, soit entièrement avant le démarrage de la lecture proprement dite, soit en temps réel à mesure que les parties chiffrées sont atteintes au cours de la lecture du document.
Le traitement par le moyen de traitement 29 du fichier de document produit les effets attendus par l'utilisateur, à savoir, dans le présent exemple, l'émission de la séquence musicale par un équipement de reproduction sonore, non représenté, relié au terminal T. Le moyen de traitement 29 peut être installé sur le terminal T avant l'acquisition du bien numérique 26. En variante, lorsqu'il s'agit d'un logiciel exécutable, le moyen de traitement 29 peut être fourni depuis le serveur S dans le conditions précitées. Par exemple, le bien numérique 26 comprend un fichier de document et un logiciel de lecture correspondant, chacun ou l'un d'eux ayant ses modalités d'utilisation prédéfinies par les données 25.
Lorsqu'un utilisateur souhaite élargir ou renouveler ses droits d'utilisation d'un bien numérique acquis précédemment, par exemple pour accéder à un niveau du logiciel auquel il n'avait pas acquis l'accès, ou pour acquérir le droits à des lectures supplémentaire s du fichier de document après épuisement du nombre maximal de lectures autorisées qu'il avait acquis initialement, il peut commander à l'aide du dispositif selon l'invention des droits d'utilisation seuls, de manière à renouveler les données de droits d'utilisation 25 mémorisées sur sa carte à puce. Il n'a pas besoin de télécharger à nouveau les autres fichiers informatiques déjà mémorisés sur le terminal d'achat pour les utiliser à nouveau .
Bien que l'invention ait été décrite en liaison avec plusieurs variantes de réalisation particulières, il est bien évident qu'elle n'y est nullement limitée et qu'elle comprend tous les équivalents techniques des moyens décrits ainsi que leurs combinaisons, si celles-ci entrent dans le cadre de l'invention.