Brevet FR2819130A1 — publié le 20020705

L'objet de l'invention concerne le domaine des moyens techniques adaptés pour restreindre l'accès à des ressources appartenant à des services interactifs faisant partie d'au moins un bouquet de services. L'objet de l'invention trouve une application particulièrement avantageuse dans le domaine de l'accès restreint à des ressources appartenant à des services interactifs. A titre d'exemple non limitatif, il peut être envisagé des services interactifs comme la consultation de comptes bancaires, la consultation d'informations juridiques et/ou commerciales sur les sociétés, la consultation d'horoscopes, les jeux interactifs en ligne, etc. Ces services interactifs comprennent des ressources à accès restreint. Par exemple, pour un service relatif à la consultation de comptes bancaires, une ressource à accès restreint est l'affichage d'un compte bancaire qui est accessible uniquement au titulaire du compte. Pour illustrer l'objet de l'invention, la fig. 1 montre un exemple d'une installation 1 permettant à des utilisateurs d'accéder à des services interactifs faisant partie d'au moins un groupe ou bouquet. L'installation 1 comporte pour chaque utilisateur, une machine cliente 2 permettant d'exécuter un programme client adapté pour échanger, à partir d'un réseau de transmission 3, des données avec un programme serveur associé à chaque service interactif De manière simplifiée, chaque programme serveur d'un service interactif est exécuté par une machine serveur reliée au réseau de transmission 3. A titre d'exemple non limitatif, chaque machine cliente 2 peut être un ordinateur personnel, le programme client peut être un logiciel du type navigateur Internet, le réseau de transmission 3 peut être l'Internet ou un Intranet, le programme serveur peut être un serveur web, et la machine serveur peut être un serveur de type informatique. Dans la suite de la description, les services interactifs seront désignés par des identifiants de services Si, (avec i variant de 1 à I), les bouquets seront désignés par des identifiants de bouquets Bj, (avec j variant de 1 à J), et les machines serveurs seront désignées par des identifiants de machines Mk, (avec k variant de 1 à K). Dans l'exemple illustré, des services interactifs ayant comme identifiants de services Si, See S3 et S4, sont accessibles respectivement à partir des machines serveurs ayant comme identifiants de machines Ml, M2, M3 et M3. De plus, le service interactif ayant comme identifiant de service Si fait partie du bouquet ayant comme identifiant de bouquet Bt, le service interactif ayant comme identifiant de service S2 fait partie du bouquet ayant comme identifiant de bouquet B2, le service interactif ayant comme identifiant de service 83 fait partie du bouquet ayant comme identifiant de bouquet Bi et le service interactif ayant comme identifiant de service 84 fait partie des deux bouquets ayant comme identifiants de bouquets Bi et B2. En d'autres termes, chaque utilisateur désirant accéder à l'un des services interactifs ayant comme identifiants de services Si, 82, 83 ou 84 appartenant respectivement au (x) bouquet (s) ayant comme identifiants de bouquets Bi, B2, Bl, BI et B2, doit adresser une requête respectivement à la machine serveur ayant comme identifiant de machine Mi, M2, M3 ouM3. Pour certaines applications, il apparaît le besoin de restreindre au profit d'utilisateurs autorisés, l'accès à des services interactifs ou au moins à certaines des ressources de ces services. Ainsi, un fournisseur d'un service interactif peut rendre accessible au moins certaines ressources de son service interactif au profit d'utilisateurs ayant reçu une autorisation ou un droit d'accès. Une telle autorisation peut être attribuée à un utilisateur en contrepartie, par exemple, d'un abonnement au service, gratuit ou onéreux. Pour satisfaire le besoin exprimé ci-dessus, il apparaît nécessaire d'authentifier de manière sûre, un utilisateur ayant envoyé une requête d'accès à une ressource à accès restreint d'un service et d'autoriser l'accès à cette ressource uniquement si l'utilisateur possède une autorisation. L'objet de l'invention vise donc à satisfaire ce besoin d'authentification en proposant un procédé pour permettre l'accès à des ressources à accès restreint de services interactifs appartenant à au moins un bouquet, uniquement au profit d'utilisateurs autorisés. Pour atteindre cet objectif, l'objet de l'invention concerne un procédé pour restreindre, au profit d'utilisateurs autorisés, l'accès à au moins une ressource appartenant à au moins un service interactif d'au moins un bouquet de services. chaque utilisateur disposant d'une machine cliente apte à exécuter un programme client adapté pour échanger à partir d'un réseau de transmission, des données avec un programme serveur associé à chaque service interactif possédant un identifiant de service, l'accès à une ressource étant assuré par une requête émise par le programme client vers le programme serveur qui traite cette requête et renvoie au programme client la réponse à la requête. Le procédé selon l'invention comporte les étapes suivantes : z pour chaque bouquet, à mettre à la disposition de chaque utilisateur, une unité de traitement et de mémorisation destinée à être reliée à la machine cliente de l'utilisateur lorsque ce dernier souhaite accéder à au moins une ressource à accès restreint, l'unité de traitement et de mémorisation comportant : - un identifiant de bouquet permettant de déterminer le bouquet auquel appartient l'unité de traitement et de mémorisation, - un identifiant d'unité de traitement et de mémorisation permettant de caractériser l'unité de traitement et de mémorisation mis à la disposition de l'utilisateur, - et une clé de décryptage permettant le décryptage d'informations en provenance d'un service du bouquet, à permettre à chaque programme client, de lire dans l'unité de traitement et de mémorisation qui lui est reliée : e l'identifiant de bouquet, e et l'identifiant d'unité de traitement et de mémorisation, à envoyer par chaque programme serveur pour un service, au moins une fois à tout programme client qui lui a adressé une requête pour ce service, une liste d'identifiants de bouquets permettant de déterminer à quel (s) bouquet (s) appartient le service auquel la requête a été adressée, à mémoriser par chaque programme client qui reçoit une liste d'identifiants de bouquets en réponse à une requête pour un service possédant un identifiant de service, une relation entre chaque identifiant de bouquet et l'identifiant du service concerné, à déterminer, lors de l'émission d'une requête vers un service possédant un identifiant de service, si le programme client a mémorisé au moins une relation entre un identifiant de bouquet et l'identifiant du service concerné, et dans le cas où : - un identifiant de bouquet est trouvé, à comparer cet identifiant de bouquet avec l'identifiant de bouquet venant de l'unité de traitement et de mémorisation et s'il y a égalité, à rajouter à la requête émise par le programme client, l'identifiant de l'unité de traitement et de mémorisation, lorsqu'un programme serveur reçoit une requête pour un service contenant un identifiant d'unité de traitement et de mémorisation et qui demande d'accéder à une ressource à accès restreint, à déterminer en utilisant au moins l'identifiant du service concerné et l'identifiant d'unité de traitement et de mémorisation, si l'utilisateur possédant l'unité de traitement et de mémorisation est habilité à accéder à ladite ressource, et si l'utilisateur : - n'est pas habilité à accéder à la ressource, à renvoyer au programme client par le programme serveur, une réponse correspondant à un accès refusé, - est habilité à accéder à la ressource : 'à déterminer en se servant au moins de l'identifiant d'unité de traitement et de mémorisation, la clé d'encryptage correspondant à la clé de décryptage contenue dans l'unité de traitement et de mémorisation reliée à la machine cliente de l'utilisateur ayant envoyé la requête, 'à encrypter par le programme serveur, au moins en partie, la réponse à la requête d'accès à la ressource à accès restreint en utilisant la clé d'encryptage, de manière à obtenir une réponse cryptée, er à renvoyer au programme client par le programme serveur. cette réponse cryptée, et lorsqu'un programme client reçoit une réponse cryptée : - à décrypter la réponse cryptée reçue par le programme client en utilisant la clé de décryptage contenue dans l'unité de traitement et de mémorisation qui lui est reliée, - et à présenter à l'utilisateur la réponse à sa requête, comme si celle- ci lui était arrivée non cryptée. Un autre objet de l'invention vise à satisfaire ce besoin d'authentification en proposant un procédé permettant l'accès à des ressources à accès restreint faisant partie de services interactifs appartenant à au moins deux bouquets. Pour atteindre un tel objectif, le procédé selon l'invention consiste - à déterminer, lors de l'émission d'une requête vers un service, si le programme client a mémorisé au moins une relation entre un identifiant de bouquet et l'identifiant du service concerné, et dans le cas où : - plusieurs identifiants de bouquets sont trouvés, à comparer ces identifiants de bouquets avec l'identifiant de bouquet venant de l'unité de traitement et de mémorisation et si une égalité est trouvée, à rajouter l'identifiant de bouquet à la requête émise par le programme client et contenant déjà l'identifiant de l'unité de traitement et de mémorisation, lorsqu'un programme serveur reçoit une requête pour un service contenant un identifiant d'unité de traitement et de mémorisation et un identifiant de bouquet et qui demande d'accéder à une ressource à accès restreint, à déterminer en utilisant au moins l'identifiant de bouquet, l'identifiant du service concerné et l'identifiant de l'unité de traitement et de mémorisation si l'utilisateur possédant l'unité de traitement et de mémorisation est habilité à accéder à ladite ressource, et si l'utilisateur : - n'est pas habilité à accéder à la ressource, à renvoyer au programme client par le programme serveur, une réponse correspondant à un accès refusé, - est habilité à accéder à la ressource : à déterminer en se servant au moins de l'identifiant de bouquet et de l'identifiant d'unité de traitement et de mémorisation, la clé d'encryptage correspondant à la clé de décryptage contenue dans l'unité de traitement et de mémorisation reliée à la machine cliente de l'utilisateur ayant envoyé la requête, . à encrypter par le programme serveur, au moins en partie, la réponse à la requête d'accès à la ressource à accès restreint en utilisant la clé d'encryptage, de manière à obtenir une réponse cryptée, e et à renvoyer au programme client par le programme serveur, cette réponse cryptée. Un autre objet de l'invention vise à proposer une unité de traitement et de mémorisation comportant au moins : - un identifiant de bouquet permettant de déterminer le bouquet auquel appartient l'unité de traitement et de mémorisation, - un identifiant d'unité de traitement et de mémorisation permettant de caractériser l'unité de traitement et de mémorisation mis à la disposition de l'utilisateur, - et une clé de décryptage permettant le décryptage d'informations en provenance d'un service du bouquet. Un autre objet de l'invention vise à proposer une machine cliente de type ordinateur comportant des moyens pour l'exécution d'un programme client mettant en oeuvre les étapes de procédé conforme à l'invention. Un autre objet de l'invention vise à proposer une machine serveur de type informatique comportant des moyens pour l'exécution d'un programme serveur mettant en oeuvre les étapes de procédé conforme à l'invention. Un autre objet de l'invention vise à proposer un programme client d'accès à au moins une ressource à accès restreint appartenant à au moins un service interactif, comprenant des moyens de code de programme pour effectuer les étapes du procédé conforme à l'invention, lorsque ledit programme client est exécuté sur une machine cliente. Un autre objet de l'invention vise à proposer un programme serveur pour service interactif comprenant des moyens de code de programme pour effectuer les étapes du procédé conforme à l'invention, lorsque ledit programme serveur est exécuté sur une machine serveur. Diverses autres caractéristiques ressortent de la description faite ci-dessous en référence aux dessins annexés qui montrent, à titre d'exemples non limitatifs, des formes de réalisation et de mise en oeuvre de l'objet de l'invention. La fig. 2 montre une machine cliente permettant de mettre en oeuvre le procédé selon l'invention. La fig. 3 montre la séquence d'échange de données entre le programme client de l'utilisateur et le programme serveur du service dans le cas où le procédé selon l'invention permet l'accès à un service appartenant à un bouquet. La fig. 4 montre la séquence d'échange de données entre le programme client de l'utilisateur et le programme serveur du service dans le cas où le procédé selon l'invention permet l'accès à un service appartenant simultanément à plusieurs bouquets de services. L'objet de l'invention concerne un procédé permettant à des utilisateurs autorisés, d'accéder à au moins une ressource à accès restreint appartenant à au moins un service interactif. Pour la mise en oeuvre du procédé selon l'invention, chaque utilisateur dispose, tel qu'illustré à la fig. 2, d'une machine cliente 20 permettant d'exécuter un programme client d'accès à des services interactifs comme expliqué à la fig. 1. Conformément à l'invention, ce programme client doit comporter des fonctionnalités supplémentaires par rapport à un classique programme client d'accès. Comme fonctionnalité supplémentaire, le programme client doit posséder la possibilité d'échanger des données avec une unité de traitement et de mémorisation 30. L'unité de traitement et de mémorisation 30 comporte des moyens de transfert et des moyens de traitement et de mémorisation. Il doit être considéré que les moyens de transfert sont de nature logicielle et/ou matérielle et sont aptes à assurer et à optimiser la communication de données entre la machine cliente 20 et l'unité de traitement et de mémorisation 30. Cette unité de traitement et de mémorisation 30 est capable : - à l'aide des moyens de transfert : * d'accepter des données fournies par la machine cliente 20, 'et de restituer des données à la machine cliente 20, - à l'aide des moyens de traitement et de mémorisation : * de stocker des données éventuellement de manière secrète et de conserver au moins une partie de celles-ci même lorsque l'unité de traitement et de mémorisation 30 est hors tension, 'et d'effectuer du traitement algorithmique sur des données, une partie ou la totalité de ce traitement pouvant être secret. A titre d'exemple non limitatif, cette unité de traitement et de mémorisation 30 peut être constituée par une clé matérielle sur le bus USB de la machine cliente 20 ou, de préférence, par une carte à puce 31 et son interface 32 communément appelé lecteur de carte relié à la machine cliente 20. Dans le cas où l'unité de traitement et de mémorisation 30 est constituée par une carte à puce 31 et son interface 32, les moyens de transfert sont décomposés en deux parties dont l'une se trouve sur l'interface 32 et dont l'autre se trouve sur la carte à puce 31. Dans cet exemple de réalisation, l'absence de la carte à puce 31 est considérée comme équivalente à l'absence de l'unité de traitement et de mémorisation 30, dans la mesure où les moyens de traitement et de mémorisation contenus dans la carte à puce 31 sont absents. Le procédé selon l'invention consiste à mettre à la disposition de chaque utilisateur, pour chaque bouquet ayant comme identifiant de bouquet Bj, une unité de traitement et de mémorisation 30 permettant d'accéder aux ressources à accès restreint du ou des services interactifs ayant comme identifiant de service Si faisant partie du bouquet Dans le cas où un utilisateur souhaite accéder à deux bouquets de services, comme illustré à la fig. 1, cet utilisateur doit disposer d'une première unité de traitement et de mémorisation pour l'accès aux services interactifs du bouquet ayant comme identifiant de bouquet Bi et d'une deuxième unité de traitement et de mémorisation pour l'accès aux services interactifs du bouquet ayant comme identifiant de bouquet B2. Chaque unité de traitement et de mémorisation 30 comporte : - un identifiant de bouquet BU permettant de déterminer le bouquet auquel appartient l'unité de traitement et de mémorisation 30 ; - un identifiant d'unité de traitement et de mémorisation UTM permettant de caractériser l'unité de traitement et de mémorisation 30 mise à la disposition de l'utilisateur. De façon classique, cet identifiant d'unité de traitement et de mémorisation UTM correspond, par exemple à un numéro d'identification de l'unité de traitement et de mémorisation 30 ; - et une clé de décryptage KD permettant le décryptage d'informations en provenance d'un service interactif du bouquet. Comme fonctionnalité supplémentaire, le programme client doit posséder la possibilité d'échanger des données d'identification supplémentaires avec des machines serveurs. Comme fonctionnalité supplémentaire, le programme client qui reçoit une liste d'identifiants de bouquet dans la réponse à une de ses requêtes, doit posséder la possibilité de mémoriser des relations entre l'identifiant du service auquel la requête était adressée et chacun des identifiants de bouquet de la liste. Comme fonctionnalité supplémentaire, le programme client doit posséder la possibilité de décrypter avec l'aide de l'unité de traitement et de mémorisation 30, des informations cryptées en provenance des machines serveurs. Pour la mise en oeuvre du procédé selon l'invention, chaque programme serveur d'un service interactif exécuté par une machine serveur comporte des fonctionnalités supplémentaires par rapport à un programme serveur classique ne mettant pas en oeuvre le procédé selon l'invention. Comme fonctionnalité supplémentaire, chaque programme serveur pour un service dispose d'une liste d'identifiants de bouquets BSj permettant de déterminer à quel (s) bouquet (s) appartient le service interactif. Lorsqu'une requête est adressée au service, le programme serveur pour ce service envoie dans la réponse, cette liste d'identifiants de bouquets. Dans le cas de la fig. 1, par exemple le service interactif ayant comme identifiant Si renvoie la liste Bi et le service interactif ayant comme identifiant S4 renvoie la liste Bi, Bzw Comme fonctionnalité supplémentaire, chaque programme serveur d'un service interactif exécuté sur une machine serveur détermine si un utilisateur possédant une unité de traitement et de mémorisation ayant comme identifiant d'unité de traitement et de mémorisation UTM, est habilité à accéder à une ressource à accès restreint. Ainsi, le programme serveur autorise ou refuse l'accès à cette ressource à accès restreint et si l'accès est autorisé, encrypte au moins en partie la réponse à la requête. La description qui suit en relation de la fig. 3 permet d'expliciter le procédé selon l'invention permettant à un utilisateur l'accès à un service interactif appartenant à un seul bouquet à la fois. Dans l'exemple illustré, il est considéré que l'utilisateur souhaite accéder au service interactif ayant comme identifiant de service Si appartenant au bouquet ayant comme identifiant de bouquet Bi. Un utilisateur souhaitant accéder à une ressource appartenant au service interactif ayant comme identifiant de service Si, doit disposer d'une unité de traitement et de mémorisation 30 correspondant à l'accès à ce service, c'est-à-dire d'une unité de traitement et de mémorisation associée au bouquet ayant comme identifiant de bouquet Bi Lorsque l'unité de traitement et de mémorisation 30 est reliée à la machine cliente 20, le programme client correspondant lit dans l'unité de traitement et de mémorisation qui lui est relié : - l'identifiant de bouquet BU. Dans l'exemple considéré, BU est égal à Bi. - et l'identifiant de l'unité de traitement et de mémorisation UTM. Dans l'exemple considéré, UTM est égal à 123. Le programme client adresse au programme serveur pour le service ayant comme identifiant de service Si, une première requête RQ,. Dans la mesure où le programme client ne sait pas encore si le programme serveur appartient à un bouquet de service, la requête envoyée est une requête standard identique à celle qu'envoie un programme client standard. Le programme serveur pour le service ayant reçu la requête d'accès RQ, envoie au moins une fois dans la réponse RPI, au programme client qui lui a adressé la requête RQ,, la liste d'identifiants de bouquets BSj. Dans l'exemple considéré, la liste est constituée par un seul élément et se trouve donc représentée par Bl. Le programme client qui reçoit la réponse RP, contenant au moins une liste d'identifiants de bouquets BSj, mémorise une relation entre l'identifiant du service Si correspondant au service auquel la requête RQ, a été adressée et chaque identifiant de bouquet BSj. Dans l'exemple illustré, la liste compte un seul élément et le programme client mémorise une relation entre l'identifiant de service Si et l'identifiant de bouquet Bi. Lorsque l'utilisateur souhaite accéder de nouveau au service interactif ayant comme identifiant de service Si, le programme client prépare une deuxième requête d'accès RQ2. Lors de l'établissement de cette deuxième requête d'accès RQ2, le programme client détermine s'il a mémorisé au moins une relation entre l'identifiant du service concerné Si et un identifiant de bouquet BSj. Dans le cas où aucune relation n'est trouvée, le programme client émet une requête similaire à la requête RQI. Dans le cas où un identifiant de bouquet BSj est trouvé, le programme client compare cet identifiant de bouquet BSj avec l'identifiant de bouquet BU venant de l'unité de traitement et de mémorisation. S'il n'y a pas égalité entre l'identifiant de bouquet BSj et l'identifiant de bouquet BU, le programme client émet une requête similaire à la requête RQI. S'il y a égalité entre l'identifiant de bouquet BSj et l'identifiant de bouquet BU, le programme client rajoute à sa requête RQ2, l'identifiant de l'unité de traitement et de mémorisation UTM. Dans l'exemple illustré, lors de l'émission de la requête RQ2 vers le service interactif ayant comme identifiant de service St, le programme client détecte qu'il a mémorisé une relation entre Si et Bi, de sorte qu'il compare Bi avec l'identifiant de bouquet BU venant de son unité de traitement et de mémorisation. Comme l'unité de traitement et de mémorisation contient aussi l'identifiant de bouquet Bl, le programme client rajoute à sa requête RQ2, l'identifiant de l'unité de traitement et de mémorisation UTM qui, dans l'exemple, est égal à 123. Lorsque le programme serveur reçoit une requête RQ2 contenant un identifiant d'unité de traitement et de mémorisation UTM et correspondant à une demande d'accès à une ressource à accès restreint, le programme serveur détermine si l'utilisateur possédant l'unité de traitement et de mémorisation est habilité ou non à accéder à la ressource à accès restreint. Le programme serveur détermine cette autorisation en utilisant au moins l'identifiant de service Si correspondant au service demandé et l'identifiant de l'unité de traitement et de mémorisation UTM. Pour ce faire, le programme serveur consulte, par exemple, une base de données comportant pour le service considéré la liste des identifiants d'unité de traitement et de mémorisation UTM autorisés pour l'accès à la ressource à accès restreint demandée. Dans le cas où le programme serveur conclut que l'utilisateur n'est pas habilité à accéder à la ressource à accès restreint, le programme serveur envoie au programme client une réponse RP2 correspondant à un accès refusé. Dans le cas où le programme serveur conclut que l'utilisateur est habilité à accéder à la ressource à accès restreint, il est procédé à la détermination d'une clé d'encryptage KE correspondant à la clé de décryptage KD contenue dans l'unité de traitement et de mémorisation ayant comme identifiant d'unité de traitement et de mémorisation UTM. Cette clé d'encryptage KE est déterminée en se servant au moins de l'identifiant de l'unité de traitement et de mémorisation UTM. Le programme serveur encrypte ensuite au moins en partie, la réponse à la requête d'accès à la ressource à accès restreint en utilisant la clé d'encryptage KE. de manière à obtenir une réponse cryptée bp2. Le programme serveur renvoie ensuite au programme client, cette réponse cryptée RP : H doit être compris que lorsque le programme serveur encrypte au moins en partie une réponse, ce programme serveur encrypte généralement de manière préférentielle, au moins en partie le contenu de cette réponse. Dans l'exemple illustré, le programme serveur détecte dans la requête RQ2, la présence d'un identifiant d'unité de traitement et de mémorisation à savoir UTM = 123. Comme il se trouve que la requête RQ2 correspond à une demande d'accès à une ressource à accès restreint, le programme serveur détermine grâce au moins à l'identifiant de service SI et à l'identifiant d'unité de traitement et de mémorisation 123, que l'accès est autorisé. Le programme serveur détermine alors la clé d'encryptage KE en se servant au moins de l'identifiant d'unité de traitement et de mémorisation 123. Par exemple, la clé d'encryptage KE est égale à 45678. Le programme serveur encrypte grâce à cette clé KE, au moins en partie la réponse à la requête d'accès RQ2. Lorsque le programme client reçoit la réponse cryptée RP2, le programme client décrypte cette réponse cryptée avec l'aide de la clé de décryptage KD contenue dans l'unité de traitement et de mémorisation qui lui est reliée. Le programme client présente alors à l'utilisateur, la réponse à sa requête comme si elle lui était arrivée non cryptée. Dans l'exemple décrit à la fig. 3, le procédé selon l'invention permet à un utilisateur l'accès à un service interactif appartenant à un seul bouquet à la fois. La fig. 4 permet d'expliciter le procédé selon l'invention permettant à un utilisateur l'accès à un service interactif appartenant simultanément à plusieurs bouquets de services. Dans l'exemple illustré, il est considéré que l'utilisateur souhaite accéder au service interactif ayant comme identifiant de service S4, faisant partie des deux bouquets ayant comme identifiants de bouquets BI et B2. Un utilisateur souhaitant accéder à une ressource appartenant au service interactif ayant comme identifiant de service S4, doit disposer pour au moins un des bouquets Bi ou B2, d'une unité de traitement et de mémorisation 30 permettant l'accès à ce bouquet. Dans l'exemple de la fig. 4, il est supposé que l'utilisateur dispose au moins d'une unité de traitement et de mémorisation associée au bouquet ayant comme identifiant de bouquet B2. (La description serait similaire si l'utilisateur disposait d'une unité de traitement et de mémorisation associée au bouquet ayant comme identifiant de bouquet Bi.) Lorsque l'unité de traitement et de mémorisation 30 est reliée à la machine cliente 20, le programme client correspondant lit dans l'unité de traitement et de mémorisation qui lui est relié : - l'identifiant de bouquet BU. Dans l'exemple considéré, BU est égal à B2 ; - et l'identifiant de l'unité de traitement et de mémorisation UTM. Dans l'exemple considéré, UTM est égal à 234. Après l'envoi par le programme client, d'une première requête RQ, pour le service interactif ayant comme identifiant de service S4 au programme serveur pour ce service, ledit programme serveur pour le service ayant reçu la requête d'accès RQI, envoie au moins une fois dans la réponse RPI, au programme client qui lui a adressé la requête RQI, la liste d'identifiants de bouquets BSj. Dans l'exemple considéré, la liste est constituée par deux éléments et se trouve donc représentée par i Bt, B2 r. Le programme client qui reçoit la réponse RPI contenant au moins une liste d'identifiants de bouquets BSj, mémorise une relation entre l'identifiant du service Si correspondant au service auquel la requête RQ, a été adressée et chaque identifiant de bouquet BSj. Dans l'exemple considéré, la liste compte deux éléments et le programme client mémorise, d'une part, une relation entre l'identifiant de service S4 et l'identifiant de bouquet Bi et, d'autre part, une relation entre l'identifiant de service S4 et l'identifiant de bouquet B2. Lorsque l'utilisateur souhaite accéder de nouveau au service interactif ayant comme identifiant de service Si, le programme client prépare une deuxième requête d'accès RQ2. Lors de l'établissement de cette deuxième requête d'accès RQ2, le programme client détermine s'il a mémorisé au moins une relation entre l'identifiant du service concerné Si et un identifiant de bouquet BSj. Dans le cas où aucune relation n'est trouvée, le programme client émet une requête similaire à la requête RQI. Dans le cas où plusieurs identifiants de bouquets BSj sont trouvés, le programme client compare ces identifiants de bouquets BSj avec l'identifiant de bouquet BU venant de l'unité de traitement et de mémorisation. S'il n'y a pas d'égalité entre les identifiants de bouquet BSj et l'identifiant de bouquet BU, le programme client émet une requête similaire à la requête RQ,. Si au moins une égalité est trouvée entre un identifiant de bouquet BSj et l'identifiant de bouquet BU, le programme client rajoute à sa requête RQ2, l'identifiant de l'unité de traitement et de mémorisation UTM et l'identifiant de bouquet BU. Dans l'exemple illustré, lors de l'émission de la requête RQ2 vers le service interactif ayant comme identifiant de service S4, le programme client détecte qu'il a mémorisé une relation entre S4 et Bi et une relation entre S4 et B2. Le programme client compare alors l'identifiant de bouquet BU venant de son unité de traitement et de mémorisation, avec respectivement les identifiants de bouquet BI et B2. Comme l'unité de traitement et de mémorisation reliée à la machine client contient l'identifiant de bouquet B2, le programme client rajoute à sa requête RQ2 l'identifiant de l'unité de traitement et de mémorisation UTM et l'identifiant de bouquet BU, qui dans l'exemple sont respectivement égaux à 234 et B2. Lorsque le programme serveur reçoit une requête RQ2 contenant un identifiant d'unité de traitement et de mémorisation UTM et un identifiant de bouquet BU, et correspondant à une demande d'accès à une ressource à accès restreint, le programme serveur détermine si l'utilisateur possédant l'unité de traitement et de mémorisation est habilité ou non à accéder à la ressource à accès restreint. Le programme serveur détermine cette autorisation en utilisant au moins l'identifiant de bouquet BU, l'identifiant de service Si correspondant au service demandé et l'identifiant de l'unité de traitement et de mémorisation UTM Dans le cas où le programme serveur conclut que l'utilisateur n'est pas habilité à accéder à la ressource à accès restreint, le programme serveur envoie au programme client une réponse RP2 correspondant à l'accès refusé. Dans le cas où le programme serveur conclut que l'utilisateur est habilité à accéder à la ressource à accès restreint, il est procédé à la détermination d'une clé d'encryptage KE correspondant à la clé de décryptage KD contenue dans l'unité de traitement et de mémorisation ayant comme identifiant d'unité de traitement et de mémorisation UTM et comme identifiant de bouquet BU. Cette clé d'encryptage KE est déterminée en se servant au moins de l'identifiant de bouquet BU et de l'identifiant d'unité de traitement et de mémorisation UTM. Le programme serveur encrypte ensuite, au moins en partie, la réponse à la requête d'accès à la ressource à accès restreint en utilisant la clé d'encryptage KE, de manière à obtenir une réponse cryptée RP2. Le programme serveur renvoie ensuite au programme client cette réponse cryptée RP2. Dans l'exemple illustré, le programme serveur détecte dans la requête RQ2, d'une part, la présence d'un identifiant d'unité de traitement et de mémorisation UTM, à savoir UTM = 234 et, d'autre part, un identifiant de bouquet BU, à savoir B2. Comme il se trouve que la requête RQ2 correspond à une demande d'accès à une ressource à accès restreint, le programme serveur détermine que l'accès est autorisé grâce au moins à l'identifiant de service S4, à l'identifiant de bouquet B2 et à l'identifiant d'unité de traitement et de mémorisation 234. Le programme serveur détermine alors la clé d'encryptage KE en se servant au moins de l'identifiant de bouquet B2 et de l'identifiant d'unité de traitement et de mémorisation 234. Par exemple, la clé d'encryptage KE est égale à 56789. Le programme serveur encrypte grâce à cette clé KE, au moins en partie la réponse à la requête d'accès RQ2. Comme expliqué en relation de la fig. 3, lorsque le programme client reçoit la réponse cryptée RP2, le programme client décrypte cette réponse cryptée à l'aide de la clé de décryptage KD contenue dans l'unité de traitement et de mémorisation qui lui est reliée. Le programme client présente alors à l'utilisateur, la réponse à sa requête comme si elle lui était arrivée non cryptée. Tel que cela ressort de la description qui précède, le procédé selon l'invention permet d'authentifier de manière simple et sûre, grâce à la mise en oeuvre d'unités de traitement et de mémorisation, un utilisateur souhaitant accéder à des ressources à accès restreint de services interactifs appartenant à un ou plusieurs bouquets de services. Selon une caractéristique de mise en oeuvre de l'invention, le procédé peut permettre de relier simultanément plusieurs unités de traitement et de mémorisation 301, avec 1 variant de 1 à L, à la machine cliente 20 d'un utilisateur. Selon cette variante de réalisation, le procédé selon l'invention est modifié de la manière suivante. Le programme client est adapté pour lire, dans chacune des unités de traitement et de mémorisation qui lui sont reliées : - l'identifiant de bouquet Btu,, - et l'identifiant d'unité de traitement et de mémorisation UTM. Lorsque le programme client émet une requête vers un service ayant comme identifiant de service Si, le programme client détermine s'il a mémorisé au moins une relation entre l'identifiant du service concerné Si et un identifiant de bouquet BSj. Dans le cas où un identifiant de bouquet BSj est trouvé, le programme client compare cet identifiant de bouquet BSj avec les identifiants de bouquets BU, venant des unités de traitement et de mémorisation. Si une égalité est trouvée, le programme client rajoute à la requête émise, l'identifiant de l'unité de traitement et de mémorisation UTM. ayant vérifié l'égalité. Lorsque le programme client émet une requête vers un service ayant un identifiant de service Si et pour lequel il a mémorisé au moins deux identifiants de bouquets BSj, le programme client compare les identifiants de bouquets BSj avec les identifiants de bouquets venant des unités de traitement et de mémorisation BUj. S'il y a au moins une égalité, le programme client : - choisit l'une des unités de traitement et de mémorisation ayant vérifié une égalité, - et rajoute à la requête émise par le programme client, l'identifiant de l'unité de traitement et de mémorisation choisi UTM, et l'identifiant de bouquet BU, correspondant. Lorsque le programme client reçoit une réponse cryptée, le programme client doit retrouver quelle est l'unité de traitement et de mémorisation dont l'identifiant UTM, a été transmis lors de la requête correspondante à cette réponse. Les trois implémentations préférées suivantes sont possibles : - le programme client mémorise l'identifiant de l'unité de traitement et de mémorisation qui est transmis lors d'une requête et est capable de retrouver cet identifiant lors de la réponse. - le programme serveur renvoie au programme client dans la réponse, l'identifiant de l'unité de traitement et de mémorisation UTM, reçu dans la requête, permettant ainsi au programme client de retrouver cet identifiant. - le programme client questionne chacune des unités de traitement et de mémorisation, afin de retrouver l'unité de traitement et de mémorisation à utiliser. Lorsque l'unité de traitement et de mémorisation est retrouvée, le programme client décrypte la réponse cryptée avec l'aide de la clé de décryptage KD. contenue dans l'unité de traitement et de mémorisation ainsi retrouvée. Dans la description qui précède, le procédé vise à déterminer si l'utilisateur est habilité à accéder à une ressource à accès restreint. Il doit être considéré que cette détermination peut être réalisée : - soit uniquement par l'intermédiaire du programme serveur, - soit par l'intermédiaire du programme serveur aidé d'un programme auxiliaire délocalisé. Ce programme auxiliaire délocalisé peut se trouver sur une machine distincte de la machine serveur pour un service. Selon une réalisation préférée, il peut être prévu de rassembler les programmes auxiliaires délocalisés de tous les services d'un bouquet sur une même machine, afin de centraliser la gestion des habilitations d'accès. Dans la description qui précède, le procédé consiste à déterminer la clé d'encryptage KE. Il est à noter que la détermination de cette clé d'encryptage KE peut être effectuée : - soit uniquement par l'intermédiaire du programme serveur, - soit par l'intermédiaire d'un programme serveur aidé d'un programme auxiliaire délocalisé. Selon une variante de réalisation de l'invention, la clé d'encryptage KE peut être déterminée : - soit par l'intermédiaire du programme serveur associé à une unité de traitement et de mémorisation, - soit par l'intermédiaire du programme serveur se servant d'un programme auxiliaire délocalisé et d'une unité de traitement et de mémorisation. Selon une autre variante de réalisation de l'invention, il peut être prévu d'associer pour chaque unité de traitement et de mémorisation : - au moins un compteur permettant de comptabiliser les accès à des ressources à accès restreint, effectués par l'utilisateur possédant une unité de traitement et de mémorisation, - et un seuil pour ce compteur. Chaque programme serveur pour un service qui reçoit une requête pour une ressource à accès restreint, consulte la valeur du compteur et du seuil associé à l'unité de traitement et de mémorisation ayant servi à envoyer la requête, de manière à déterminer si cette requête doit être servie ou non. Si la requête est servie, le programme serveur met éventuellement à jour la valeur du compteur. Selon une variante préférée de réalisation de l'invention, le compteur est situé dans une machine qui centralise la gestion du comptage des accès aux ressources à accès restreint. Selon une autre variante de réalisation de l'invention, chaque unité de traitement et de mémorisation intègre ou comporte : - un compteur permettant de comptabiliser l'usage de la clé de décryptage KD, - et un seuil pour ce compteur. Un tel compteur est mis à jour à chaque usage de la clé de décryptage KD et le décryptage des réponses cryptées reçues par le programme client est interdit lorsque le compteur atteint ou dépasse le seuil. REVENDICATIONS 1-Procédé pour restreindre, au profit d'utilisateurs autorisés, l'accès à au moins une ressource appartenant à au moins un service interactif d'au moins un bouquet de services, chaque utilisateur disposant d'une machine cliente (20) apte à exécuter un programme client adapté pour échanger à partir d'un réseau de transmission (3), des données avec un programme serveur associé à chaque service interactif possédant un identifiant de service (Si) (avec i variant de 1 à 1), l'accès à une ressource étant assuré par une requête émise par le programme client vers le programme serveur qui traite cette requête et renvoie au programme client la réponse à la requête, caractérisé en ce qu'il comporte les étapes suivantes : pour chaque bouquet, à mettre à la disposition de chaque utilisateur, une unité de traitement et de mémorisation (30) destinée à être reliée à la machine cliente (20) de l'utilisateur lorsque ce dernier souhaite accéder à au moins une ressource à accès restreint, l'unité de traitement et de mémorisation comportant : - un identifiant de bouquet (BU) permettant de déterminer le bouquet auquel appartient l'unité de traitement et de mémorisation, - un identifiant d'unité de traitement et de mémorisation (UTM) permettant de caractériser l'unité de traitement et de mémorisation mis à la disposition de l'utilisateur, - et une clé de décryptage (KD) permettant le décryptage d'informations en provenance d'un service du bouquet, à permettre à chaque programme client, de lire dans l'unité de traitement et de mémorisation (30) qui lui est reliée : e l'identifiant de bouquet (BU), e et l'identifiant d'unité de traitement et de mémorisation (UTM), à envoyer par chaque programme serveur pour un service, au moins une fois à tout programme client qui lui a adressé une requête pour ce service, une liste d'identifiants de bouquets (BSj), G variant de 1 à J) permettant de déterminer à quel (s) bouquet (s) appartient le service auquel la requête a été adressée, à mémoriser par chaque programme client qui reçoit une liste d'identifiants de bouquets (BSj) en réponse à une requête pour un service ayant comme identifiant de service (Si), une relation entre chaque identifiant de bouquet (BSj) et l'identifiant du service concerné (Si), à déterminer, lors de l'émission d'une requête vers un service possédant un identifiant de service (Si), si le programme client a mémorisé au moins une relation entre un identifiant de bouquet (BSj) et l'identifiant du service concerné (Si), et dans le cas où : - un identifiant de bouquet (BSj) est trouvé, à comparer cet identifiant de bouquet (BSj) avec l'identifiant de bouquet venant de l'unité de traitement et de mémorisation (BU) et s'il y a égalité, à rajouter à la requête émise par le programme client, l'identifiant de l'unité de traitement et de mémorisation (UTM), lorsqu'un programme serveur reçoit une requête pour un service contenant un identifiant d'unité de traitement et de mémorisation (UTM) et qui demande d'accéder à une ressource à accès restreint, à déterminer en utilisant au moins l'identifiant du service concerné (Si) et l'identifiant d'unité de traitement et de mémorisation (UTM), si l'utilisateur possédant l'unité de traitement et de mémorisation est habilité à accéder à ladite ressource, et si l'utilisateur : - n'est pas habilité à accéder à la ressource, à renvoyer au programme client par le programme serveur, une réponse correspondant à un accès refusé, - est habilité à accéder à la ressource : . à déterminer en se servant au moins de l'identifiant d'unité de traitement et de mémorisation (UTM), la clé d'encryptage (KE) correspondant à la clé de décryptage (KD) contenue dans l'unité de traitement et de mémorisation reliée à la machine cliente de l'utilisateur ayant envoyé la requête, 'à encrypter par le programme serveur, au moins en partie, la réponse à la requête d'accès à la ressource à accès restreint en utilisant la clé d'encryptage (KE), de manière à obtenir une réponse cryptée, . et à renvoyer au programme client par le programme serveur, cette réponse cryptée, et lorsqu'un programme client reçoit une réponse cryptée : - à décrypter la réponse cryptée reçue par le programme client en utilisant la clé de décryptage (KD) contenue dans l'unité de traitement et de mémorisation qui lui est reliée, - et à présenter à l'utilisateur la réponse à sa requête, comme si celle- ci lui était arrivée non cryptée. 2-Procédé selon la revendication 1, caractérisé en ce qu'il consiste : - à déterminer, lors de l'émission d'une requête vers un service, si le programme client a mémorisé au moins une relation entre un identifiant de bouquet (BSj) et l'identifiant du service concerné (Si), et dans le cas où : - plusieurs identifiants de bouquets (BSj) sont trouvés, à comparer ces identifiants de bouquets (BSj) avec l'identifiant de bouquet venant de l'unité de traitement et de mémorisation (BU) et si une égalité est trouvée, à rajouter l'identifiant de bouquet (BU) à la requête émise par le programme client et contenant déjà l'identifiant de l'unité de traitement et de mémorisation (UTM), lorsqu'un programme serveur reçoit une requête pour un service contenant un identifiant d'unité de traitement et de mémorisation (UTM) et un identifiant de bouquet (BU) et qui demande d'accéder à une ressource à accès restreint, à déterminer en utilisant au moins l'identifiant de bouquet (BU), l'identifiant du service concerné (Si) et l'identifiant de l'unité de traitement et de mémorisation (UTM) si l'utilisateur possédant l'unité de traitement et de mémorisation est habilité à accéder à ladite ressource, et si l'utilisateur : - n'est pas habilité à accéder à la ressource, à renvoyer au programme client par le programme serveur, une réponse correspondant à un accès refusé, - est habilité à accéder à la ressource : à déterminer en se servant au moins de l'identifiant de bouquet (BU) et de l'identifiant d'unité de traitement et de mémorisation (UTM), la clé d'encryptage (KE) correspondant à la clé de décryptage (KD) contenue dans l'unité de traitement et de mémorisation reliée à la machine cliente de l'utilisateur ayant envoyé la requête, à encrypter par le programme serveur, au moins en partie, la réponse à la requête d'accès à la ressource à accès restreint en utilisant la clé d'encryptage (KE), de manière à obtenir une réponse cryptée, et à renvoyer au programme client par le programme serveur, cette réponse cryptée. 3-Procédé selon les revendications 1 ou 2, caractérisé en ce qu'il consiste : oà permettre de relier simultanément plusieurs unités de traitement et de mémorisation (301) (avec 1 variant de 1 à L) à la machine cliente d'au moins un utilisateur, à permettre à chaque programme client de lire dans chacune des unités de traitement et de mémorisation qui lui sont reliées : - l'identifiant de bouquet (btu), - l'identifiant d'unité de traitement et de mémorisation (UTM1), à déterminer lors de l'émission d'une requête vers un service possédant un identifiant de service (Si), si le programme client a mémorisé au moins une relation entre un identifiant de bouquet (BSj) et l'identifiant du service concerné (Si), et dans le cas où : - un identifiant de bouquet (BSj) est trouvé, à comparer cet identifiant de bouquet (BSj) avec les identifiants de bouquets venant des unités de traitement et de mémorisation (BU,) et s'il y a une égalité, à rajouter à la requête émise par le programme client, l'identifiant de l'unité de traitement et de mémorisation (UTM.) ayant vérifié cette égalité, - plusieurs identifiants de bouquet (BSj) sont trouvés, à comparer ces identifiants de bouquet (BSj) avec les identifiants de bouquets venant des unités de traitement et de mémorisation (BU,) et s'il y a au moins une égalité : + à choisir l'une des unités de traitement et de mémorisation ayant vérifié une égalité, + et à rajouter à la requête émise par le programme client, l'identifiant de l'unité de traitement et de mémorisation choisie (UTM,) et l'identifiant de bouquet (btu) correspondant, lorsqu'un programme client reçoit une réponse cryptée : -à retrouver quelle est l'unité de traitement et de mémorisation dont l'identifiant (UTM) a été transmis lors de la requête correspondante à cette réponse, -à décrypter la réponse cryptée reçue par le programme client en utilisant la clé de décryptage (KDI) contenue dans l'unité de traitement et de mémorisation ainsi retrouvée. 4-Procédé selon la revendication 1 ou 2, caractérisé en ce qu'il consiste à déterminer si l'utilisateur est habilité à accéder à une ressource à accès restreint : - soit uniquement par l'intermédiaire du programme serveur, - soit par l'intermédiaire du programme serveur se servant d'un programme auxiliaire délocalisé. 5-Procédé selon la revendication 1 ou 2, caractérisé en ce qu'il consiste à déterminer la clé d'encryptage (KE) : - soit uniquement par l'intermédiaire du programme serveur, - soit par l'intermédiaire du programme serveur se servant d'un programme auxiliaire délocalisé. 6-Procédé selon la revendication 5, caractérisé en ce qu'il consiste à déterminer la clé d'encryptage (KE) : - soit par l'intermédiaire du programme serveur et d'une unité de traitement et de mémorisation, - soit par l'intermédiaire du programme serveur se servant d'un programme auxiliaire délocalisé et d'une unité de traitement et de mémorisation. 7-Procédé selon l'une des revendications 1 à 6, caractérisé en ce qu'il consiste : à associer pour chaque unité de traitement et de mémorisation : - au moins un compteur permettant de comptabiliser les accès à des ressources à accès restreint effectué par l'utilisateur possédant cette unité de traitement et de mémorisation, - un seuil pour ce compteur, à permettre à chaque programme serveur pour un service, qui reçoit une requête pour une ressource à accès restreint : - de consulter la valeur du compteur et du seuil associé à l'unité de traitement et de mémorisation ayant servi à envoyer la requête, de manière à déterminer si cette requête doit être servie ou non, - et si la requête est servie, à éventuellement mettre à jour la valeur du compteur. 8-Procédé selon l'une des revendications 1 à 6, caractérisé en ce qu'il consiste : - à intégrer dans chaque unité de traitement et de mémorisation : * un compteur permettant de comptabiliser l'usage de la clé de décryptage (KD), . un seuil pour ce compteur, - à mettre à jour le compteur à chaque usage de la clé de décryptage (KD), - et à interdire le décryptage des réponses cryptées reçues par le programme client en utilisant la clé de décryptage (KD), lorsque le compteur atteint le seuil. 9-Unité de traitement et de mémorisation pour la mise en oeuvre du procédé selon l'une des revendications 1 à 8, caractérisée en ce qu'elle comporte au moins : - un identifiant de bouquet (BU) permettant de déterminer le bouquet auquel appartient l'unité de traitement et de mémorisation, - un identifiant d'unité de traitement et de mémorisation (UTM) permettant de caractériser l'unité de traitement et de mémorisation mis à la disposition de l'utilisateur, - et une clé de décryptage (KD) permettant le décryptage d'informations en provenance d'un service du bouquet. 10-Unité de traitement et de mémorisation selon la revendication 9, caractérisée en ce qu'elle comporte : - un compteur permettant de comptabiliser l'usage de la clé de décryptage (KD), - un seuil pour ce compteur. 11-Machine cliente de type ordinateur, caractérisée en ce qu'elle comporte des moyens pour l'exécution d'un programme client mettant en oeuvre les étapes du procédé conforme à l'une des revendications 1 à 8. 12-Machine serveur de type informatique, caractérisée en ce qu'elle comporte des moyens pour l'exécution d'un programme serveur mettant en oeuvre les étapes du procédé conforme à l'une des revendications 1 à 8. 13-Programme client d'accès à au moins une ressource à accès restreint appartenant à au moins un service interactif, comprenant des moyens de code de programme pour effectuer les étapes du procédé conforme à l'une des revendications 1 à 8, lorsque ledit programme client est exécuté sur une machine cliente (20). 14-Programme serveur pour service interactif comprenant des moyens de code de programme pour effectuer les étapes du procédé conforme à l'une des revendications 1 à 8, lorsque ledit programme serveur est exécuté sur une machine serveur (30).