FR2988250A1 - Method for validating transaction between server and personal computer of user, involves transmitting digital code from server to personal computer and mobile phone, and validating transaction if there is match between returned information - Google Patents
Method for validating transaction between server and personal computer of user, involves transmitting digital code from server to personal computer and mobile phone, and validating transaction if there is match between returned information Download PDFInfo
- Publication number
- FR2988250A1 FR2988250A1 FR1252413A FR1252413A FR2988250A1 FR 2988250 A1 FR2988250 A1 FR 2988250A1 FR 1252413 A FR1252413 A FR 1252413A FR 1252413 A FR1252413 A FR 1252413A FR 2988250 A1 FR2988250 A1 FR 2988250A1
- Authority
- FR
- France
- Prior art keywords
- information
- bits
- transaction
- code
- validating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 13
- 230000009466 transformation Effects 0.000 claims abstract description 11
- 230000005540 biological transmission Effects 0.000 claims abstract description 6
- 238000004590 computer program Methods 0.000 claims abstract description 3
- 238000010200 validation analysis Methods 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 19
- 101100462378 Danio rerio otpb gene Proteins 0.000 claims description 6
- 230000001131 transforming effect Effects 0.000 claims description 4
- 101150013335 img1 gene Proteins 0.000 claims 2
- 101150071665 img2 gene Proteins 0.000 claims 2
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 101100004933 Arabidopsis thaliana CYP79F1 gene Proteins 0.000 description 1
- 101100262440 Arabidopsis thaliana ECR1 gene Proteins 0.000 description 1
- 102100032919 Chromobox protein homolog 1 Human genes 0.000 description 1
- 101000797584 Homo sapiens Chromobox protein homolog 1 Proteins 0.000 description 1
- 101000746134 Homo sapiens DNA endonuclease RBBP8 Proteins 0.000 description 1
- 101000969031 Homo sapiens Nuclear protein 1 Proteins 0.000 description 1
- 101000854862 Homo sapiens Vacuolar protein sorting-associated protein 35 Proteins 0.000 description 1
- 102100021133 Nuclear protein 1 Human genes 0.000 description 1
- 101100194363 Schizosaccharomyces pombe (strain 972 / ATCC 24843) res2 gene Proteins 0.000 description 1
- 102100020822 Vacuolar protein sorting-associated protein 35 Human genes 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3215—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a plurality of channels
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
Procédé de validation d'une transaction. Domaine technique L'invention se rapporte à un procédé de validation d'une transaction qui a pour objet par exemple la délivrance d'un service depuis un premier dispositif, dans lequel est hébergé un fournisseur de service, vers un deuxième dispositif, via un réseau de communication. Le procédé est apte à garantir que l'utilisateur du deuxième dispositif a qui sera délivré le service est bien l'utilisateur légitime. Le premier dispositif est typiquement un serveur apte à rendre un service logiciel et le deuxième dispositif un ordinateur. Les dispositifs impliqués dans l'invention sont d'une manière générale équipés de ressources physiques et logicielles incluant un processeur. Le réseau de communication en question est quelconque, par exemple le réseau Internet.Process for validating a transaction TECHNICAL FIELD The invention relates to a method of validating a transaction whose object is for example the delivery of a service from a first device, in which a service provider is hosted, to a second device, via a network Communication. The method is able to guarantee that the user of the second device who will be delivered the service is the legitimate user. The first device is typically a server capable of rendering a software service and the second device a computer. The devices involved in the invention are generally equipped with physical and software resources including a processor. The communication network in question is any, for example the Internet network.
Etat de la technique De plus en plus de services sont maintenant accessibles via un ordinateur et Internet. Ces services nécessitent le plus souvent de connaître (et de vérifier) l'identité de l'utilisateur. Ainsi, il est possible de se connecter à sa banque via Internet, de faire des achats en ligne, de réserver des voyages ou encore de se connecter au réseau de son entreprise pour travailler à distance. L'authentification de l'utilisateur est donc primordiale. Dans beaucoup de cas, cette authentification se fait par un couple d'informations identifiant et mot de passe. Cependant, cette authentification simple a montré ses limites : - Mot de passe trivial choisi par les utilisateurs - Mot de passe recopié sur un papier à côté de l'ordinateur ; - Toujours le même mot de passe choisi pour tous les services ; - Dans certains cas, les mots de passe sont transmis en clair ; - Etc.State of the art More and more services are now accessible via a computer and the Internet. These services most often need to know (and check) the identity of the user. Thus, it is possible to connect to his bank via the Internet, to shop online, book trips or connect to the network of his company to work remotely. The authentication of the user is therefore essential. In many cases, this authentication is done by a couple of information identifying and password. However, this simple authentication has shown its limits: - Trivial password chosen by users - Password copied to a paper next to the computer; - Always the same password chosen for all services; - In some cases, passwords are transmitted in clear; - Etc.
Un tiers peut donc espérer récupérer un mot de passe et l'utiliser à des fins malveillantes. Toutes ces limites rendent donc les moyens d'authentification actuels insuffisants. L'invention offre une solution ne présentant pas les inconvénients de l'état de la technique.A third party can hope to recover a password and use it for malicious purposes. All these limits therefore make the current authentication means insufficient. The invention offers a solution that does not have the drawbacks of the state of the art.
L'invention A cet effet, selon un aspect fonctionnel, l'invention a pour objet un procédé de validation d'une transaction entre un premier dispositif et un deuxième dispositif d'un utilisateur, l'utilisateur possédant en outre un dispositif, dit troisième dispositif, apte à communiquer avec le premier dispositif, caractérisé en ce qu'il comprend les étapes suivantes : - Une étape transmission d'une information depuis le premier dispositif à destination à la fois du deuxième dispositif et du troisième dispositif, - Une étape de restitution de l'information sur les dispositifs, - Une étape de validation de la transaction s'il y a correspondance entre les informations restituées. Une validation d'une transaction est donc précédée d'une validation de l'existence d'une correspondance entre deux informations restituées sur des dispositifs d'un même utilisateur ou groupe d'utilisateurs. L'existence d'une correspondance assure à l'utilisateur qu'il ne valide pas une action frauduleuse sur le deuxième dispositif. Le procédé de l'invention assure que l'utilisateur qui réalise une transaction au moyen du deuxième dispositif est un utilisateur légitime à savoir le porteur du troisième dispositif, de préférence préalablement authentifié. Selon un mode de mise en oeuvre particulier de l'invention, l'information est un code numérique et l'étape de transmission est précédée d'une étape de transformation du code en contenu multimédia. Ce mode facilite l'étape au cours de laquelle est vérifié si les deux codes restitués correspondent entre eux. En effet, si le code est un code binaire, la vérification consisterait à comparer chaque bit les uns après les autres.The invention For this purpose, according to a functional aspect, the subject of the invention is a method of validating a transaction between a first device and a second device of a user, the user having in addition a device, said third device, able to communicate with the first device, characterized in that it comprises the following steps: - a step of transmitting information from the first device to both the second device and the third device, - a step of restitution of the information on the devices, - a step of validation of the transaction if there is correspondence between the information returned. A validation of a transaction is therefore preceded by a validation of the existence of a correspondence between two information retrieved on devices of the same user or group of users. The existence of a correspondence ensures the user that he does not validate a fraudulent action on the second device. The method of the invention ensures that the user who performs a transaction using the second device is a legitimate user namely the carrier of the third device, preferably previously authenticated. According to a particular embodiment of the invention, the information is a digital code and the transmission step is preceded by a step of transforming the code into multimedia content. This mode facilitates the step during which is checked whether the two rendered codes correspond to each other. Indeed, if the code is a binary code, the verification would consist of comparing each bit one after the other.
Selon une première variante de ce mode, la transformation est basée sur un algorithme de chiffrement. Ainsi, si deux informations incluent des bits, et si les deux informations ne diffèrent que d'un nombre limité de bits, le code résultant du chiffrement fera apparaître une multitude de bits différents. La différence est donc plus visible.According to a first variant of this mode, the transformation is based on an encryption algorithm. Thus, if two pieces of information include bits, and if the two pieces of information differ only in a limited number of bits, the code resulting from the encryption will reveal a multitude of different bits. The difference is therefore more visible.
Selon cette variante, si le code comprend une suite de bits, le résultat du chiffrement de ladite suite de bits comprend une série de bits chiffrée, et en ce que la transformation se base sur une partie de la série de bits chiffrée. Le nombre de bits utilisés étant réduit, on réduit d'autant la consommation de ressources dans le premier dispositif lors de la transformation.According to this variant, if the code comprises a series of bits, the result of the encryption of said sequence of bits comprises a series of encrypted bits, and in that the transformation is based on a part of the series of encrypted bits. Since the number of bits used is reduced, the consumption of resources in the first device during the transformation is reduced accordingly.
Selon cette même variante, si l'algorithme de chiffrement de type CBC chiffre en série les bits par blocs, chaque chiffrement incluant le bloc courant à chiffrer et tout ou partie des blocs précédemment chiffrées, la partie de la série de bits chiffrés fait partie des derniers bits de ladite série de bits chiffrés. En effet, l'utilisation des derniers bits de la série résultant du chiffrement garantit une visibilité immédiate d'une éventuelle modification du code. Selon cette même variante, l'ordre des bits de la partie de bits chiffrés est inversé. Comme le mode utilisé est de type CBC, comme on l'a vu précédemment, si deux informations diffèrent, les derniers bits chiffrés ont plus de chance de faire apparaître la modification que les premiers, en conséquence une inversion de l'ordre des bits sélectionnés offre une garantie plus importante encore. Selon une deuxième variante, qui pourra être mis en oeuvre alternativement ou cumulativement avec la première variante, l'information incluant une série de bits, chiffrée ou non, la transformation inclut une étape d'exécution d'au moins un module ayant comme paramètre au moins un bit de la série, l'exécution d'un module entraînant la restitution d'un contenu multimédia. La restitution sur les écrans peut être réalisée de différentes manières dont les suivantes.According to this same variant, if the CBC encryption algorithm sequentially encrypts the bits in blocks, each encryption including the current block to be encrypted and all or part of the previously encrypted blocks, the part of the series of encrypted bits is part of last bits of said series of encrypted bits. Indeed, the use of the last bits of the series resulting from the encryption guarantees an immediate visibility of a possible modification of the code. According to this same variant, the order of the bits of the portion of encrypted bits is reversed. As the mode used is of type CBC, as we saw previously, if two information differs, the last ciphered bits have more chance to make appear the modification than the first ones, consequently a reversal of the order of the selected bits offers an even bigger guarantee. According to a second variant, which may be implemented alternately or cumulatively with the first variant, the information including a series of bits, encrypted or not, the transformation includes a step of executing at least one module having as a parameter least one bit of the series, the execution of a module resulting in the return of a multimedia content. The rendering on the screens can be achieved in different ways, including the following.
Selon une première manière, l'étape de validation de la transaction est précédée d'une étape de validation de la correspondance sur le troisième dispositif et d'une étape de transmission, depuis le troisième dispositif, de la validation au premier dispositif. Cette première manière garantit que l'utilisateur qui valide est bien l'utilisateur légitime.In a first way, the step of validating the transaction is preceded by a step of validating the correspondence on the third device and a step of transmitting, from the third device, the validation to the first device. This first way ensures that the valid user is the legitimate user.
Selon une deuxième manière qui pourra être mis en oeuvre alternativement ou cumulativement avec la première manière, l'information, dite première information, est restituée sur le deuxième dispositif, la restitution incluant en outre au moins une seconde information ; ensuite, l'étape de validation inclut en outre une étape de sélection de la première information sur le deuxième dispositif ; cette étape de validation est suivie d'une étape de transmission, depuis le deuxième dispositif, de la validation au premier dispositif. Cette deuxième manière garantit que l'utilisateur qui valide se situe bien à proximité du deuxième dispositif. Selon un aspect matériel, l'invention a trait à un système informatique comprenant un premier dispositif apte à communiquer via un réseau de communication avec au moins deux dispositifs, dit deuxième et troisième dispositif, le deuxième dispositif étant apte à réaliser une transaction avec le premier dispositif, caractérisé en ce que - le deuxième dispositif et le troisième comprennent des moyens de restitution respectifs aptes à restituer une information issue du premier dispositif, - et en ce que le troisième dispositif comprend des moyens de validation de la correspondance entre les informations restituées et des moyens de transmission aptes à transmettre la validation de la correspondance au premier dispositif. Dans ce système, conformément au procédé décrit ci-dessus, l'information restituée est un contenu multimédia.In a second way that can be implemented alternately or cumulatively with the first way, the information, said first information, is restored to the second device, the restitution further including at least a second information; then, the validation step further includes a step of selecting the first information on the second device; this validation step is followed by a step of transmitting, from the second device, the validation to the first device. This second way ensures that the valid user is in close proximity to the second device. According to a material aspect, the invention relates to a computer system comprising a first device able to communicate via a communication network with at least two devices, said second and third device, the second device being able to perform a transaction with the first device. device, characterized in that - the second device and the third comprise respective restitution means able to restore information from the first device, - and in that the third device comprises means for validating the correspondence between the information returned and transmission means capable of transmitting the validation of the correspondence to the first device. In this system, according to the method described above, the information retrieved is a multimedia content.
L'invention a trait aussi à un dispositif, dit premier dispositif, comprenant des moyens de communication pour communiquer via un réseau de communication avec au moins deux dispositifs, dit deuxième et troisième dispositif, le deuxième dispositif étant apte à réaliser une transaction avec le premier dispositif, caractérisé en ce qu'il comprend les moyens suivants : - Des moyens de transmission d'une information à destination à la fois du deuxième dispositif et du troisième dispositif, - Des moyens de validation de la transaction s'il y a correspondance entre les informations restituées. Selon une variante, l'information est un code numérique ; Le premier dispositif comprend à cet effet des moyens de transformation du code en contenu multimédia. Enfin, l'invention a trait à un programme d'ordinateur apte à être mis en oeuvre sur le premier dispositif tel que défini ci-dessus, le programme comprenant des instructions de code qui, lorsqu'il est exécuté par un processeur réalise les étapes suivantes du procédé de l'invention défini ci-dessus - Une étape transmission d'une information depuis le premier dispositif à destination à la fois du deuxième dispositif et du troisième dispositif, - Une étape de validation de la transaction s'il y a correspondance entre les informations restituées, L'invention sera mieux comprise à la lecture de la description qui suit, donnée à titre d'exemple et faite en référence aux dessins annexés.The invention also relates to a device, said first device, comprising communication means for communicating via a communication network with at least two devices, said second and third device, the second device being able to perform a transaction with the first device. device, characterized in that it comprises the following means: - means for transmitting information to the destination of both the second device and the third device, - means for validating the transaction if there is correspondence between the information returned. According to one variant, the information is a numerical code; The first device comprises for this purpose means for transforming the code into multimedia content. Finally, the invention relates to a computer program adapted to be implemented on the first device as defined above, the program comprising code instructions which, when executed by a processor performs the steps following of the method of the invention defined above - A step of transmitting information from the first device to both the second device and the third device, - a step of validating the transaction if there is a match The invention will be better understood on reading the description which follows, given by way of example and with reference to the appended drawings.
Les figures: La figure 1 représente un système informatique sur lequel est illustré un exemple de réalisation. Les figures 2 à 4 représentent les circuits des dispositifs impliqués dans le procédé de l'invention.The figures: FIG. 1 represents a computer system on which an exemplary embodiment is illustrated. Figures 2 to 4 show the circuits of the devices involved in the method of the invention.
La figure 5 est un organigramme illustrant les différentes étapes de l'exemple de réalisation. La figure 6 est une vue d'écrans illustrant une variante de l'exemple de réalisation. Les figures 7a et 7b sont deux images respectives illustrant un résultat de l'étape de transformation décrite ci-dessus. Description détaillée d'un exemple de réalisation illustrant l'invention La figure 1 représente un système SYS comprenant un premier dispositif apte à communiquer avec un deuxième dispositif et un troisième dispositif. Ce premier dispositif est illustré au moyen d'un serveur SRV. Ce serveur héberge un service apte à être utilisé par le deuxième dispositif PC. Ce service est quelconque ; celui-ci peut être par exemple un service de fourniture d'un bulletin météo, ou d'informations. Le deuxième dispositif PC est illustré au moyen d'un ordinateur personnel apte à communiquer avec l'extérieur via un premier réseau de communication RES par exemple un réseau Internet.Figure 5 is a flowchart illustrating the various steps of the exemplary embodiment. Figure 6 is a screen view illustrating a variant of the exemplary embodiment. Figures 7a and 7b are two respective images illustrating a result of the transformation step described above. DETAILED DESCRIPTION OF AN EMBODIMENT EXPRESSING THE INVENTION FIG. 1 represents a SYS system comprising a first device able to communicate with a second device and a third device. This first device is illustrated by means of an SRV server. This server hosts a service that can be used by the second PC device. This service is any kind; this can be for example a service providing a weather report, or information. The second PC device is illustrated by means of a personal computer able to communicate with the outside via a first communication network RES for example an Internet network.
Le système comprend aussi un troisième dispositif illustré au moyen d'un téléphone de radiocommunication MOB apte à communiquer via un deuxième réseau de communication par exemple un réseau dit de troisième génération 3G.The system also comprises a third device illustrated by means of a MOB radio communication telephone capable of communicating via a second communication network, for example a so-called third generation 3G network.
Dans notre exemple, les premier et deuxième dispositifs appartiennent à un même utilisateur UT, voire à un même groupe d'utilisateurs. L'ensemble des dispositifs décrits ci-dessus sont équipés de ressources physiques et logicielles. En l'espèce, en référence aux figures 2 à 4, le serveur comprend - un processeur CPU1, dit premier processeur, - des moyens de stockage MEM1, dit premiers moyens de stockage, - des moyens de communication COM1, dit premiers moyens de communication, pour communiquer avec l'extérieur via un réseau de communication L'ordinateur PC comprend - un processeur CPU2, dit deuxième processeur, - des moyens de stockage MEM2, dit deuxièmes moyens de stockage, - des moyens de restitution illustrés par un écran ECR2, dit deuxième écran, - des deuxièmes moyens de communication COM2 pour communiquer avec l'extérieur via le premier réseau de communication RES2 Le téléphone MOB comprend - un processeur CPU3, dit troisième processeur, - des moyens de stockage MEM3, dit troisièmes moyens de stockage, - des moyens de restitution illustrés par un écran ECR3, dit troisième écran, - des moyens de communication COM3, dits troisièmes moyens de communication, pour communiquer avec l'extérieur via un réseau de communication Dans chaque dispositif, les moyens sont reliés au processeur par l'intermédiaire d'un premier bus BUS1, d'un deuxième bus BUS2, et d'un troisième bus BUS3. Rappelons qu'un bus a pour fonction d'assurer le transfert de données numériques entre les différents circuits d'un terminal. Dans notre exemple, le bus en question inclut un bus de données et un bus de contrôle. A noter aussi que, dans notre exemple, les moyens de stockage décrits ci-dessus sont des mémoires permanentes, par exemple de type ROM (acronyme anglo-saxon de Read) et que les dispositifs incluent également une mémoire vive respective (non représentée) servant à stocker de manière non durable des données de calcul utilisées notamment lors de la mise en oeuvre du procédé. Un mode de réalisation est décrit en référence à la figure 5 sur laquelle est représentée un algorithme comprend les étapes d'un mode de réalisation du procédé de l'invention. On considère, dans notre exemple, qu'initialement l'utilisateur UT est déjà authentifié par exemple auprès d'un opérateur de télécommunication. On considère aussi que le fournisseur de services hébergé dans le serveur a connaissance de l'authentification réussie du deuxième terminal auprès de son opérateur, et qu'il entretien avec cet opérateur une relation de confiance Lors d'une première étape, l'utilisateur souhaite utiliser le service. Une requête (REQ->SRV) d'accès au service est transmise au serveur SRV.In our example, the first and second devices belong to the same user UT, or even the same group of users. All the devices described above are equipped with physical and software resources. In the present case, with reference to FIGS. 2 to 4, the server comprises - a processor CPU1, said first processor, - storage means MEM1, said first storage means, - communication means COM1, said first means of communication to communicate with the outside via a communication network The computer PC comprises - a processor CPU2, said second processor, - storage means MEM2, said second storage means, - rendering means illustrated by an ECR2 screen, said second screen, - second communication means COM2 for communicating with the outside via the first communication network RES2 The MOB telephone comprises - a processor CPU3, said third processor, - storage means MEM3, said third storage means, - Restitution means illustrated by a screen ECR3, said third screen, - COM3 communication means, said third communication means, for communicating with the external In each device, the means are connected to the processor via a first bus BUS1, a second bus BUS2, and a third bus BUS3. Recall that a bus has the function of ensuring the transfer of digital data between the different circuits of a terminal. In our example, the bus in question includes a data bus and a control bus. It should also be noted that, in our example, the storage means described above are permanent memories, for example of ROM type (Read's acronym) and that the devices also include a respective RAM (not shown) serving unsustainably storing calculation data used in particular during the implementation of the method. One embodiment is described with reference to FIG. 5, in which an algorithm is represented which comprises the steps of an embodiment of the method of the invention. In our example, it is considered that initially the user UT is already authenticated for example with a telecommunication operator. It is also considered that the service provider hosted in the server is aware of the successful authentication of the second terminal with its operator, and that it maintains a trust relationship with this operator. In a first step, the user wishes to use the service. A request (REQ-> SRV) for access to the service is transmitted to the server SRV.
Lors d'une deuxième étape, dans notre exemple, une authentification forte est réalisée. Lors de cette deuxième étape, l'utilisateur fourni des paramètres permettant de l'authentifier par exemple - un couple (ID/PW) comprenant un identifiant, un mot de passe ; - et un identifiant du téléphone par exemple le numéro de téléphone MSISDN. Une authentification forte n'est qu'un exemple de réalisation. Cette deuxième étape aurait pu consister simplement en la fourniture de l'identifiant du téléphone MSISDN uniquement.In a second step, in our example, strong authentication is performed. During this second step, the user provides parameters for authenticating for example - a pair (ID / PW) comprising an identifier, a password; - and a phone identifier for example the MSISDN phone number. A strong authentication is only an example of realization. This second step could have consisted simply in providing the identifier of the MSISDN phone only.
Lors d'une troisième étape, une fois l'utilisateur authentifié, l'utilisateur accède au service par le biais de l'ordinateur PC, et réalise par exemple un achat (ACHT) d'un bien en ligne. Lors d'une quatrième étape, dans notre exemple, le serveur SRV génère un code numérique (OTP), de préférence à usage unique, et le transmet à la fois à l'ordinateur et au téléphone MOB déclaré lors de la deuxième étape. Rappelons que le terme anglo-saxon couramment utilisé par l'homme du mériter pour « code à usage unique » est «one time password ». Lors d'une cinquième étape, après réception, l'ordinateur et le téléphone restitue (RST-OTP->ECR1, RST-OTP->ECR2) sur l'écran les codes en 20 question. Lors d'une sixième étape, l'utilisateur compare les codes. S'ils sont identiques, l'utilisateur valide (VAL1) sur son téléphone le fait que les codes sont identiques, garantissant au fournisseur de service que l'utilisateur qui vient de valider est bien l'utilisateur légitime à savoir celui qui réalise la transaction par le 25 biais de l'ordinateur. A cet effet, en référence à la figure 4, le téléphone inclut des premiers moyens de validation MVAL1. Lors d'une septième étape, le serveur SRV reçoit la validation issue du téléphone et valide (SRV->VAL) l'achat du bien.In a third step, once the authenticated user, the user accesses the service through the PC, and for example makes a purchase (ACHT) of a good online. In a fourth step, in our example, the SRV server generates a digital code (OTP), preferably single-use, and transmits it to both the computer and the MOB phone declared in the second step. Recall that the Anglo-Saxon term commonly used by the man to deserve for "single-use code" is "one time password". In a fifth step, after reception, the computer and the phone restores (RST-OTP-> ECR1, RST-OTP-> ECR2) on the screen the codes in question. In a sixth step, the user compares the codes. If they are identical, the user validates (VAL1) on his phone the fact that the codes are identical, guaranteeing the service provider that the user who has just validated is the legitimate user to know the one who carries out the transaction through the computer. For this purpose, with reference to FIG. 4, the telephone includes first MVAL1 validation means. In a seventh step, the SRV server receives the validation from the phone and validates (SRV-> VAL) the purchase of the good.
A noter que le code généré peut être un code numérique incluant tout caractère restituable, notamment sur un écran lorsque le code est un code visuel. A noter aussi que dans la présente description, il faut distinguer une validation de code faite au niveau du téléphone MOB, et éventuellement de l'ordinateur PC, d'une validation de transaction faite au niveau du serveur SRV. Le mode de réalisation décrit ci-dessus peut faire l'objet de variantes dont les suivantes. Le code numérique restitué peut être long ; l'étape de comparaison est donc difficile voir source d'erreur car nécessite de comparer chaque élément du code (bit par bit ou caractère par caractère). A cet effet, selon une variante du procédé, après la quatrième étape, après génération du code, ce dernier est transformé en image. De cette façon, lors de la cinquième étape, les images sont restituées en lieu et place du code. La sixième étape est donc simplifiée car elle se réduit à comparer deux images en lieu et place de codes incluant plusieurs bits ou caractères. La transformation décrite ci-dessus est avantageusement basée sur un algorithme de chiffrement connu de l'homme du métier. Dans notre exemple, l'algorithme de chiffrement est l'algorithme AES (sigle anglosaxon de « Advanced Encryption Standard ») de préférence avec un mode CBC (sigle anglosaxon de « Cipher Block Chaining ») connu de l'homme du métier. Selon le mode CBC, lors du chiffrement d'une information comportant plusieurs blocs de bits, un chiffrement d'un bloc se base sur le bloc courant à chiffrer et sur les blocs précédemment chiffrés. Ainsi, la moindre modification d'un bit d'un bloc a pour conséquence de faire apparaître cette modification à l'issu du chiffrement de ce bloc modifié, mais également des blocs suivants. Une image créée à la base du résultat du chiffrement de la façon décrite ci-après ferait donc apparaître clairement cette modification. Nous verrons dans la suite de la description comment les blocs de données issues du chiffrement sont transformés en image au moyen de modules logiciels MOD1-MODn (n est un nombre entier). L'algorithme AES-256 - chiffre des blocs de données multiples de 128 bits - avec une clé de 256 bits. En conséquence, si le code généré par le serveur n'est pas un multiple de 128 bits, des bits sont supprimés ou ajoutés au code généré afin de constituer un code multiple de 128 bits. Le plus souvent l'ajout est préféré dans les standards actuels.Note that the generated code can be a numeric code including any releasable character, especially on a screen when the code is a visual code. Note also that in the present description, it is necessary to distinguish a validation code made at the MOB phone, and possibly the PC, a transaction validation made at the SRV server. The embodiment described above may be subject to variants, including the following. The rendered numeric code can be long; the comparison step is therefore difficult to see error source because requires to compare each element of the code (bit by bit or character by character). For this purpose, according to a variant of the method, after the fourth step, after generation of the code, the latter is transformed into an image. In this way, in the fifth step, the images are rendered instead of the code. The sixth step is simplified because it is reduced to comparing two images instead of codes including several bits or characters. The transformation described above is advantageously based on an encryption algorithm known to those skilled in the art. In our example, the encryption algorithm is the AES algorithm (abbreviation of "Advanced Encryption Standard") preferably with a CBC (Cipher Block Chaining) known to those skilled in the art. According to the CBC mode, when encrypting information comprising several blocks of bits, an encryption of a block is based on the current block to be encrypted and on previously encrypted blocks. Thus, the least modification of a bit of a block has the consequence of making this modification appear at the end of the encryption of this modified block, but also of the following blocks. An image created based on the result of encryption as described below would therefore clearly show this change. We will see in the following description how the data blocks from the encryption are transformed into an image by means of MOD1-MODn software modules (n is an integer). The AES-256 algorithm - encrypts 128-bit multiple data blocks - with a 256-bit key. Accordingly, if the server-generated code is not a 128-bit multiple, bits are deleted or added to the generated code to form a 128-bit multiple code. Most often the addition is preferred in the current standards.
Dans notre exemple, le code a un nombre de bits inférieurs. Le module de transformation ajoute donc un nombre de bits suffisant pour arriver à un multiple de 128 bits. Considérons que le code généré inclus K blocs de 128 bits. Le résultat du chiffrement au moyen de l'algorithme AES-256-CBC comporte également K blocs de 128 bits. Le procédé comprend une étape de création d'une image à partir des blocs résultants de l'étape de chiffrement. Le serveur SRV stocke en mémoire une pluralité de modules logiciels MOD 1-MODn qui transforme le code chiffré en figure géométrique à restituer sur les écrans. Le code chiffré est généralement très long. Si le nombre de bloc du code généré est K (K est un nombre entier), la longueur du code résultant du chiffrement est K*128bits. L'algorithme utilisé et le mode opératoire utilisé par le CBC sont tels que les derniers bits des derniers blocs suffisent pour être sûrs que le code généré initial a été modifié ou pas. Considérons que les derniers bits correspondant au résultat du chiffrement soit les suivants : B1024B1023....B4B3B2B1 = 00100101 Les derniers bits du code chiffré étant les plus probables d'apporter une indication sur une éventuelle modification faite par un tiers malveillant, une étape optionnelle consiste à inverser les derniers bits et obtenir l'ordre suivant : B1B2B3B4B5...B1024 = 10100100 Considérons les trois (n=3) modules logiciels ainsi que les paramètres respectifs suivants : - MOD1(B2, B3, B4), - MOD2(B6, B7), - MOD3(B9,B10) Afin de réduire le nombre d'exécution de module, un module s'exécute si le premier paramètre est précédé d'un bit égal à « 1 ». Ainsi, pour le premier module modulel, le premier bit B1 vaut 1 ; le modulel est donc exécuté. Les paramètres du modulel sont B2=0, B3=1, c=0.In our example, the code has a lower number of bits. The transformation module therefore adds a sufficient number of bits to arrive at a multiple of 128 bits. Consider that the generated code included K 128-bit blocks. The result of the encryption using the AES-256-CBC algorithm also includes K blocks of 128 bits. The method includes a step of creating an image from the resulting blocks of the encryption step. The server SRV stores in memory a plurality of MOD 1-MODn software modules that transforms the encrypted code into a geometrical figure to be rendered on the screens. The encrypted code is usually very long. If the block number of the generated code is K (K is an integer), the code length resulting from the encryption is K * 128bits. The algorithm used and the procedure used by the CBC are such that the last bits of the last blocks are enough to be sure that the initial generated code has been modified or not. Consider that the last bits corresponding to the result of the encryption are as follows: B1024B1023 .... B4B3B2B1 = 00100101 The last bits of the encrypted code being the most likely to provide an indication of a possible modification made by a malicious third party, an optional step consists in inverting the last bits and obtain the following order: B1B2B3B4B5 ... B1024 = 10100100 Consider the three (n = 3) software modules and the following respective parameters: - MOD1 (B2, B3, B4), - MOD2 ( B6, B7), - MOD3 (B9, B10) In order to reduce the number of module executions, a module executes if the first parameter is preceded by a bit equal to "1". Thus, for the first modulel module, the first bit B1 is 1; the modulel is thus executed. The modulel parameters are B2 = 0, B3 = 1, c = 0.
A ce stade, il reste les bits suivants à traiter : 0100 Le chiffre suivant est un 0, donc le modulel ne sera pas exécuté. A ce stade, il reste les bits suivants à traiter : 100 Le chiffre suivant est un 1, le module3 est donc exécuté. Les paramètres du module3 sont B9=0 et B10=0.At this point, there are the following bits to process: 0100 The next digit is a 0, so the modulel will not be executed. At this point, there are the following bits to process: 100 The next digit is a 1, so module3 is executed. The parameters of module3 are B9 = 0 and B10 = 0.
Les modules peuvent être variés. La liste suivante donnée à titre d'exemple n'est pas exhaustive. Un module fournit par exemple : - un type de trait et épaisseur du cadre de l'image à restituer - une trame de fond de l'image à restituer et sa couleur - un type de trait et une épaisseur du trait d'une figure (rond, etc.) à restituer dans le cadre - une valeur, une couleur, une taille, un style et une position d'un caractère alpha numérique à restituer dans le cadre - une forme, une couleur, une amplitude et une fréquence d'une fonction mathématique à restituer dans le cadre. Les figures 7a et 7b illustrent deux images qui pourraient être créées grâce aux modules décrits ci-dessus. Selon une autre variante, le code généré est transformé en image sans 10 algorithme de chiffrement en utilisant uniquement les modules décrits précédemment. L'exemple de réalisation précédent est basé sur l'affichage de deux images, ci-après désignées par l'expression « premier code OTP1 » sur deux écrans, l'un sur le téléphone, l'autre sur l'ordinateur, et d'une validation effectuée 15 sur le téléphone. Selon une variante du mode de réalisation décrit ci-dessus, le serveur génère plusieurs codes OTP1 et OTP2, deux dans notre exemple. Dans cette configuration, les codes sont transmis à l'ordinateur à savoir sous la forme suivante 20 o un premier ensemble de codes, représenté par exemple sous forme de mosaïque ou de matrice, incluant le premier code OTP1 et d'autres codes illustrés par des lettres A à K sur la figure 7b et représenté dans notre exemple sous forme de matrice (ou mosaïque), et 25 o un deuxième code OTP2 Les codes sont également transmis vers le téléphone, à savoir : o le premier code OTP1, o le deuxième code OTP2. Dans cette configuration, en référence au mode de réalisation décrit ci-dessus, l'utilisateur valide le deuxième code OTP2 depuis son le téléphone si ce code est le même sur le téléphone et sur l'ordinateur ; De plus, l'utilisateur sélectionne sur l'écran de l'ordinateur le code OTP1 qu'il visualise sur son téléphone dans la matrice et valide sa sélection sur l'ordinateur grâce aux moyens de sélection MSEL3. L'ordinateur est équipé de deuxièmes moyens de validation MVAL2 pour valider la correspondance entre codes. La sélection s'effectue grâce à des moyens de sélection MSEL2 et MSEL3 présents sur le l'ordinateur PC et le téléphone, respectivement, par exemple une souris informatique dont le pointeur est représenté par une flèche sur la figure 6. Les moyens de sélection pourraient aussi être un écran tactile. A noter que l'ordre de validation par le biais des moyens de sélection est indifférent ; en effet, le deuxième code peut être validé avant le premier code ou inversement. Le serveur reçoit ainsi deux validations dont une émanant du téléphone et l'autre de l'ordinateur. Cette double action est une garantie supplémentaire prouvant que l'utilisateur est un utilisateur légitime et non un tiers malveillant.20The modules can be varied. The following list given as an example is not exhaustive. For example, a module provides: - a type of line and thickness of the frame of the image to be rendered - a background of the image to be rendered and its color - a type of line and a thickness of the line of a figure ( round, etc.) to render in the frame - a value, a color, a size, a style and a position of an alpha-numeric character to be rendered in the frame - a shape, a color, an amplitude and a frequency of a mathematical function to render in the frame. Figures 7a and 7b illustrate two images that could be created by the modules described above. According to another variant, the generated code is transformed into an image without an encryption algorithm using only the modules described above. The previous embodiment is based on the display of two images, hereinafter referred to as "first OTP code1" on two screens, one on the phone, the other on the computer, and a validation performed on the phone. According to a variant of the embodiment described above, the server generates several OTP1 and OTP2 codes, two in our example. In this configuration, the codes are transmitted to the computer, namely in the following form: o a first set of codes, represented for example in the form of a mosaic or matrix, including the first OTP code and other codes illustrated by letters A to K in FIG. 7b and represented in our example in the form of a matrix (or mosaic), and o a second OTP2 code. The codes are also transmitted to the telephone, namely: o the first OTP code1, o the second OTP2 code. In this configuration, with reference to the embodiment described above, the user validates the second code OTP2 from his phone if this code is the same on the phone and on the computer; In addition, the user selects the OTP1 code on the computer screen which he displays on his phone in the matrix and validates his selection on the computer by means of selection MSEL3. The computer is equipped with second MVAL2 validation means to validate the correspondence between codes. The selection is made by selection means MSEL2 and MSEL3 present on the PC and the phone, respectively, for example a computer mouse whose pointer is represented by an arrow in Figure 6. The selection means could also be a touch screen. Note that the validation order through the selection means is indifferent; indeed, the second code can be validated before the first code or vice versa. The server receives two validations, one from the phone and the other from the computer. This double action is an additional guarantee proving that the user is a legitimate user and not a malicious third party.20
Claims (14)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1252413A FR2988250A1 (en) | 2012-03-16 | 2012-03-16 | Method for validating transaction between server and personal computer of user, involves transmitting digital code from server to personal computer and mobile phone, and validating transaction if there is match between returned information |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1252413A FR2988250A1 (en) | 2012-03-16 | 2012-03-16 | Method for validating transaction between server and personal computer of user, involves transmitting digital code from server to personal computer and mobile phone, and validating transaction if there is match between returned information |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| FR2988250A1 true FR2988250A1 (en) | 2013-09-20 |
Family
ID=46197479
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| FR1252413A Withdrawn FR2988250A1 (en) | 2012-03-16 | 2012-03-16 | Method for validating transaction between server and personal computer of user, involves transmitting digital code from server to personal computer and mobile phone, and validating transaction if there is match between returned information |
Country Status (1)
| Country | Link |
|---|---|
| FR (1) | FR2988250A1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080086764A1 (en) * | 2006-10-06 | 2008-04-10 | Rajandra Luxman Kulkarni | Single-Party, Secured Multi-Channel Authentication |
| WO2011075825A1 (en) * | 2009-12-21 | 2011-06-30 | Kik Interactive, Inc. | Systems and methods for accessing and controlling media stored remotely |
-
2012
- 2012-03-16 FR FR1252413A patent/FR2988250A1/en not_active Withdrawn
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080086764A1 (en) * | 2006-10-06 | 2008-04-10 | Rajandra Luxman Kulkarni | Single-Party, Secured Multi-Channel Authentication |
| WO2011075825A1 (en) * | 2009-12-21 | 2011-06-30 | Kik Interactive, Inc. | Systems and methods for accessing and controlling media stored remotely |
Non-Patent Citations (1)
| Title |
|---|
| CYNTHIA KUO ET AL: "Low-cost Manufacturing, Usability, and Security: An Analysis of Bluetooth Simple Pairing and Wi-Fi Protected Setup", 1 January 2007 (2007-01-01), XP055025816, Retrieved from the Internet <URL:http://usablesecurity.org/papers/kuo.pdf> [retrieved on 20120426] * |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8225387B2 (en) | Method and system for access authentication | |
| EP2619941B1 (en) | Method, server and system for authentication of a person | |
| EP0810506B1 (en) | Method and system for secure identification between two terminals | |
| EP2567502A2 (en) | Method for authenticating a user requesting a transaction with a service provider | |
| WO2009019298A1 (en) | Information system and method of identifying a user by an application server | |
| WO2019233951A1 (en) | A software application and a computer server for authenticating the identity of a digital content creator and the integrity of the creator's published content | |
| CA3128869A1 (en) | Cryptographic data verification method | |
| FR2964812A1 (en) | AUTHENTICATION METHOD FOR ACCESSING A WEB SITE | |
| EP2568406A1 (en) | Implementation method, from a terminal, of cryptographic data for a user stored in a database | |
| WO2016207715A1 (en) | Secure management of electronic tokens in a cell phone | |
| FR2988250A1 (en) | Method for validating transaction between server and personal computer of user, involves transmitting digital code from server to personal computer and mobile phone, and validating transaction if there is match between returned information | |
| EP2795947B1 (en) | Method for pairing electronic equipments | |
| EP1406425B1 (en) | Method for producing a multimedia isolating identifier by an access provider | |
| WO2021116627A1 (en) | Transaction authentication method, server and system using two communication channels | |
| CN113961909A (en) | A user-free login method and system for a client | |
| EP2254275A1 (en) | Method of encryption of particular parts of a document for privileged users access | |
| WO2023274979A1 (en) | Transaction authentication method using two communication channels | |
| FR3141538A1 (en) | METHOD AND DEVICE FOR DISTRIBUTED ONLINE STORAGE OF FILES IN A ZERO TRUST CONTEXT | |
| FR3017730A1 (en) | SECURE SESSION OPENING METHOD | |
| FR2888437A1 (en) | Service e.g. marine meteorological consultation service, access controlling method for e.g. mobile telephone, involves downloading marked validation tokens in multimedia terminal before user chooses service to be utilized | |
| EP3394780A1 (en) | Method and device for connecting to a remote server | |
| FR2898448A1 (en) | AUTHENTICATION OF A COMPUTER DEVICE AT THE USER LEVEL | |
| FR3026875A1 (en) | METHODS FOR CONFIGURING A TERMINAL DEVICE CONNECTED TO A NETWORK TO ENABLE STRONG AUTHENTICATION OF A USER | |
| WO2013045793A1 (en) | Method of distributing contents, device for obtaining and computer program corresponding thereto |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| ST | Notification of lapse |
Effective date: 20131129 |