[go: up one dir, main page]

FR2808948A1 - SYSTEM AND METHOD FOR UNIQUE AUTHENTICATION OF EACH REPRODUCTION OF A GROUP OF ELECTRONIC DOCUMENTS - Google Patents

SYSTEM AND METHOD FOR UNIQUE AUTHENTICATION OF EACH REPRODUCTION OF A GROUP OF ELECTRONIC DOCUMENTS Download PDF

Info

Publication number
FR2808948A1
FR2808948A1 FR0104303A FR0104303A FR2808948A1 FR 2808948 A1 FR2808948 A1 FR 2808948A1 FR 0104303 A FR0104303 A FR 0104303A FR 0104303 A FR0104303 A FR 0104303A FR 2808948 A1 FR2808948 A1 FR 2808948A1
Authority
FR
France
Prior art keywords
authentication code
random number
method described
group
previous
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.)
Granted
Application number
FR0104303A
Other languages
French (fr)
Other versions
FR2808948B1 (en
Inventor
Carro Fernando Incertis
Stephen Matyas
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of FR2808948A1 publication Critical patent/FR2808948A1/en
Application granted granted Critical
Publication of FR2808948B1 publication Critical patent/FR2808948B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/163Handling of whitespace
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3226Cryptographic 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 predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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 cryptographic hash functions
    • H04L9/3242Cryptographic 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 cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • H04N1/32219Spatial or amplitude domain methods involving changing the position of selected pixels, e.g. word shifting, or involving modulating the size of image components, e.g. of characters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/30Compression, e.g. Merkle-Damgard construction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/103Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for protecting copyright
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3225Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
    • H04N2201/3233Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document of authentication information, e.g. digital signature, watermark
    • H04N2201/3236Details of authentication information generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3269Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of machine readable codes or marks, e.g. bar codes or glyphs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Power Engineering (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Bioethics (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)

Abstract

La présente invention permet d'authentifier de manière unique chaque reproduction d'une pluralité de documents électroniques formant un groupe. Un document électronique, faisant partie du groupe, devient le porteur d'un code d'authentification destiné à protéger le groupe. Ce code d'authentification est calculé à partir de la concaténation de l'ensemble de documents électroniques et d'une clé. Un nombre aléatoire est également généré pour chaque reproduction du groupe de fichiers. Il est combiné avec le code d'authentification pour marquer le document électronique qui a été sélectionné comme porteur. Ainsi, la présente invention introduit une randomisation dans l'insertion du code d'authentification, de sorte qu'à chaque reproduction d'un groupe identique de fichiers de données, des données d'authentification uniques peuvent être associées, fusionnées et dissimulées dans les informations transmises.The present invention uniquely authenticates each reproduction of a plurality of electronic documents forming a group. An electronic document, part of the group, becomes the bearer of an authentication code intended to protect the group. This authentication code is calculated from the concatenation of the set of electronic documents and a key. A random number is also generated for each reproduction of the file group. It is combined with the authentication code to mark the electronic document that has been selected as the bearer. Thus, the present invention introduces randomization into the insertion of the authentication code, so that with each reproduction of an identical group of data files, unique authentication data can be associated, merged and hidden in the information transmitted.

Description

DOMAINE TECHNIQUE DE L'INVENTIONTECHNICAL FIELD OF THE INVENTION

La présente invention concerne le domaine de l'authentification de documents, et s'applique plus particulièrement à un système et une méthode dans lesquels un document électronique faisant partie d'un groupe de documents associés fait office de porteur des informations d'intégrité destinées à authentifier de manière unique  The present invention relates to the field of document authentication, and applies more particularly to a system and method in which an electronic document belonging to a group of associated documents acts as the bearer of integrity information intended for uniquely authenticate

chaque reproduction du groupe.each reproduction of the group.

ÉTAT DE LA TECHNIQUESTATE OF THE ART

L'environnement actuel des réseaux informatiques se caractérise par une croissance exponentielle de la circulation de documents électroniques. Il s'agit de documents de textes simples ou de fichiers de type texte, codés p. ex. en ASCII (American Standard Code for Information Interchange), et plus généralement de fichiers de données tels que ceux correspondant p. ex. au codage des images selon l'algorithme de compression standard JPEG (Joint Picture Expert Group). Cependant, ces documents circulant sur des supports non sécurisé, et notamment  The current environment of computer networks is characterized by an exponential growth in the circulation of electronic documents. These are simple text documents or text files, coded on p. ex. in ASCII (American Standard Code for Information Interchange), and more generally of data files such as those corresponding p. ex. coding of images according to the standard compression algorithm JPEG (Joint Picture Expert Group). However, these documents circulating on non-secure media, and in particular

l'Internet, leur authentification est un sérieux problème.  the Internet, their authentication is a serious problem.

Il devrait être possible pour le destinataire d'un document de s'assurer de son origine afin d'empêcher quiconque de se faire passer pour quelqu'un d'autre. De même, il devrait être possible de vérifier qu'un document n'a pas été modifié, accidentellement ou par malveillance, en cours de route. Pour cela, la solution standard - qui convient à toutes les formes de documents électroniques puisque, quelle que soit la méthode utilisée pour coder les informations, le résultat final est un fichier de données binaire - consiste à concaténer un code d'authentification de message ou MAC avec les fichiers des documents électroniques. Un MAC est un code calculé avec une fonction de calcul réductrice unidirectionnelle à partir d'un fichier binaire codé et qui dépend aussi d'une clé, p. ex. une clé secrète connue seulement de l'expéditeur et du destinataire de manière à ce  It should be possible for the recipient of a document to ascertain its origin in order to prevent anyone from impersonating someone else. Likewise, it should be possible to verify that a document has not been altered, accidentally or maliciously, along the way. For this, the standard solution - which is suitable for all forms of electronic documents since, whatever the method used to encode the information, the end result is a binary data file - consists in concatenating a message authentication code or MAC with electronic document files. A MAC is a code calculated with a unidirectional reducing calculation function from a coded binary file and which also depends on a key, p. ex. a secret key known only to the sender and the recipient so that

FR920000021FR920000021

-2 - que ce dernier puisse ensuite vérifier, premièrement que ce qu'il reçoit a bien été envoyé par la personne avec qui il partage la clé secrète et, deuxièmement, que le document n'a pas été altéré. Par exemple, le Secure Hash Algorithm ou SHA spécifié par le National Institute of Standards and Technologies, NIST, FIPS PUB 180-1, "Secure Hash Standard", US Dpt of Commerce, mai 93, génère un code de 160 bits. Il peut être combiné avec une clé, p. ex. au moyen d'un mécanisme appelé HMAC (KeyedHashing for Message Authentication) soumis à la RFC (Request For Comment) de l'IETF (Internet Engineering Task Force) sous le numéro 2104. Le HMAC est conçu de telle manière qu'il peut être utilisé avec n'importe quelle fonction de calcul cryptographique itérative, dont SHA. Par conséquent un MAC peut être annexé à un fichier de document de telle sorte que le tout puisse être contrôlé par le destinataire. Ainsi, cette méthode suppose l'addition des informations de contrôle à un fichier existant après que les informations à transmettre aient été codées. Cette méthode a l'inconvénient de séparer clairement le contenu informationnel du fichier de son mécanisme de contrôle. Par conséquent, ce dernier peut être facilement isolé et éliminé volontairement dans une intention frauduleuse, ou accidentellement parce que les équipements intermédiaires chargés de transmettre les documents électroniques ne sont pas conçus pour manipuler  -2 - that the latter can then verify, firstly that what he receives has been sent by the person with whom he shares the secret key and, secondly, that the document has not been altered. For example, the Secure Hash Algorithm or SHA specified by the National Institute of Standards and Technologies, NIST, FIPS PUB 180-1, "Secure Hash Standard", US Dpt of Commerce, May 93, generates a 160-bit code. It can be combined with a key, p. ex. using a mechanism called HMAC (KeyedHashing for Message Authentication) submitted to the RFC (Request For Comment) of the IETF (Internet Engineering Task Force) under number 2104. The HMAC is designed in such a way that it can be used with any iterative cryptographic calculation function, including SHA. Therefore a MAC can be appended to a document file so that everything can be checked by the recipient. Thus, this method supposes the addition of the control information to an existing file after the information to be transmitted has been coded. This method has the disadvantage of clearly separating the informational content of the file from its control mechanism. Consequently, the latter can be easily isolated and eliminated voluntarily with fraudulent intent, or accidentally because the intermediate equipment responsible for transmitting electronic documents is not designed to handle

cet élément d'information supplémentaire.  this additional piece of information.

Un autre point critique des réseaux de communication publics tels que l'Internet est la discrétion et la confidentialité. Toutes les informations circulant entre des utilisateurs finaux, qu'il s'agisse de textes, d'images ou de combinaisons des deux, ne sont pas destinés à être publics. La réponse standard à ce problème est basée sur la cryptographie. Autrement dit, les fichiers d'informations qui doivent être tenus secrets sont cryptés avant d'être transmis. Le DES (Data Encryption Standard) est l'algorithme de cryptage standard qui est utilisé depuis deux décennies pour crypter et décrypter les fichiers de données. Il fonctionne sur des blocs de données de 64 bits, avec une clé  Another critical point of public communication networks such as the Internet is discretion and confidentiality. All information circulating between end users, whether text, images or combinations of the two, is not intended to be public. The standard answer to this problem is based on cryptography. In other words, the information files which must be kept secret are encrypted before being transmitted. The DES (Data Encryption Standard) is the standard encryption algorithm that has been used for two decades to encrypt and decrypt data files. It works on 64-bit data blocks, with a key

FR920000021FR920000021

-3 -- secrète symétrique partagée entre les utilisateurs concernés. L'algorithme DES est identique à l'algorithme standard ANSI Data Encryption Algorithm (DEA) défini dans  -3 - symmetric secret shared between the users concerned. The DES algorithm is identical to the standard ANSI Data Encryption Algorithm (DEA) defined in

ANSI X3.92-1981.ANSI X3.92-1981.

L'authentification des fichiers cryptés se fait exactement comme pour les fichiers non cryptés; autrement dit, un MAC est calculé et concaténé avec ce qui reste intrinsèquement un fichier de données binaire. Par conséquent, un autre inconvénient de calculer des informations d'intégrité à partir des données est le fait que ces informations d'intégrité révèlent elles-mêmes des informations sur les données à partir desquelles elles sont calculées. Tant que la clé n'est pas changée, les informations d'intégrité calculées à partir des données restent les mêmes. Par conséquent, si une personne indiscrète remarque que le MAC transmis est le même, elle peut être certaine que le message crypté transmis est lui aussi le même. Dans des applications o des fichiers pré- formatés sont transmis de manière répétée (p. ex., les mêmes images ou les mêmes séquences musicales codées), une simple analyse de fréquence appliquée aux valeurs MAC interceptées peut révéler une structure dans les messages transmis. De même, un ou plusieurs fichiers cryptés envoyés une seule fois mais vers plusieurs destinations permet de savoir quel groupe a reçu les mêmes informations. C'est pourquoi il serait intéressant, premièrement, d'introduire une certaine randomisation dans le processus de manière à ce que les valeurs MAC varient constamment et, deuxièmement, de permettre de dissimuler les MAC dans les informations transmises afin d'empêcher totalement un adversaire de tirer des informations de l'observation des données transmises. Si ce résultat pouvait être obtenu partiellement (la randomisation pourrait être obtenue de cette manière) en changeant les codes, et plus particulièrement la clé de calcul du MAC, laquelle devrait être différente pour chaque copie transmise d'un ou plusieurs fichiers de données identiques et/ou pour chaque destination, cela pénaliserait gravement le système de gestion de clés, car il faudrait que  Authentication of encrypted files is done exactly as for unencrypted files; in other words, a MAC is calculated and concatenated with what remains intrinsically a binary data file. Therefore, another disadvantage of calculating integrity information from the data is that this integrity information itself reveals information about the data from which it is calculated. Until the key is changed, the integrity information calculated from the data remains the same. Therefore, if an intrusive person notices that the MAC transmitted is the same, he can be certain that the encrypted message transmitted is also the same. In applications where pre-formatted files are repeatedly transmitted (eg, the same images or the same encoded music sequences), a simple frequency analysis applied to the intercepted MAC values can reveal a structure in the messages transmitted. Likewise, one or more encrypted files sent only once but to several destinations makes it possible to know which group has received the same information. This is why it would be interesting, firstly, to introduce a certain randomization in the process so that the MAC values vary constantly and, secondly, to make it possible to hide the MACs in the information transmitted in order to completely prevent an adversary to obtain information from the observation of the data transmitted. If this result could be obtained partially (randomization could be obtained in this way) by changing the codes, and more particularly the calculation key of the MAC, which should be different for each transmitted copy of one or more identical data files and / or for each destination, this would seriously penalize the key management system, since it would be necessary that

FR920000021FR920000021

-4 - les clés secrètes soient d'abord transmises par un canal  -4 - the secret keys are first transmitted by a channel

séparé, ce qui constitue une tâche pénible.  separate, which is a tedious task.

OBJET DE L'INVENTIONOBJECT OF THE INVENTION

C'est pourquoi la présente invention a pour objet général de remédier aux défauts décrits plus haut des  This is why the present invention has the general object of remedying the defects described above of

systèmes existants.existing systems.

L'invention a aussi pour objet de proposer une méthode et un système introduisant une certaine randomisation dans l'insertion d'un MAC de manière à ce qu'à chaque reproduction d'un même groupe de fichiers de données puissent être associées des données d'authentification uniques. L'invention a également pour objet de permettre de fusionner et de dissimuler les données d'authentification  The invention also aims to propose a method and a system introducing a certain randomization in the insertion of a MAC so that with each reproduction of the same group of data files can be associated data of unique authentication. The object of the invention is also to make it possible to merge and conceal the authentication data.

dans les informations transmises.in the information transmitted.

Enfin, l'invention a aussi pour objet de pouvoir être mise en oeuvre de manière transparente, notamment sans qu'il soit nécessaire de transmettre davantage de clés secrètes qu'il n'est généralement nécessaire pour le cryptage et  Finally, the object of the invention is also to be able to be implemented in a transparent manner, in particular without it being necessary to transmit more secret keys than is generally necessary for encryption and

l'authentification.authentication.

Les autres objets, caractéristiques et avantages de la présente invention apparaîtront aux spécialistes à l'examen  The other objects, characteristics and advantages of the present invention will appear to specialists on examination

de la description suivante et des dessins d'accompagnement.  the following description and accompanying drawings.

Il est entendu que d'autres avantages peuvent être  It is understood that other advantages may be

incorporés.incorporated.

FR920000021FR920000021

-5 ---5 -

RÉSUMÉ DE L'INVENTIONSUMMARY OF THE INVENTION

Une méthode et un système, pour authentifier de manière unique chaque reproduction d'une pluralité de documents électroniques formant un groupe, sont proposés. La méthode sélectionne d'abord un document électronique dans le groupe, lequel deviendra le porteur d'un code d'authentification destiné à protéger le groupe. Les documents électroniques sont concaténés en utilisant cependant une forme canonique du document électronique sélectionné, de manière à pouvoir effectuer ultérieurement un contrôle. Ensuite, le code d'authentification est calculé à partir de la concaténation du groupe de documents électroniques et d'une clé. Un nombre aléatoire est également généré pour chaque reproduction du groupe de fichiers. Il est combiné avec le code d'authentification pour marquer le document électronique sélectionné qui fait office de porteur. Une méthode pour  A method and a system for uniquely authenticating each reproduction of a plurality of electronic documents forming a group are provided. The method first selects an electronic document from the group, which will become the bearer of an authentication code intended to protect the group. The electronic documents are concatenated, however using a canonical form of the selected electronic document, so that they can be checked later. Then, the authentication code is calculated from the concatenation of the group of electronic documents and a key. A random number is also generated for each reproduction of the file group. It is combined with the authentication code to mark the selected electronic document which acts as the bearer. A method for

contrôler le code d'authentification est également proposée.  checking the authentication code is also proposed.

Ainsi, l'invention introduit une certaine randomisation dans l'insertion d'un code d'authentification, de sorte qu'à chaque reproduction d'un groupe identique de fichiers de données peuvent être associées des données d'authentification uniques. L'invention permet aussi de les fusionner et de les dissimuler dans les informations transmises.  Thus, the invention introduces a certain randomization in the insertion of an authentication code, so that each reproduction of an identical group of data files can be associated with unique authentication data. The invention also makes it possible to merge them and conceal them in the information transmitted.

FR920000021FR920000021

-6 --6 -

BREVE DESCRIPTION DES FIGURESBRIEF DESCRIPTION OF THE FIGURES

La présente invention est intégralement décrite dans la  The present invention is fully described in the

description détaillée ci-après accompagnée des figures  detailed description below with figures

suivantes: La figure 1 est un exemple simple de la manière dont  following: Figure 1 is a simple example of how

l'invention peut être mise en oeuvre.  the invention can be implemented.

La figure 2 montre que davantage de fichiers peuvent  Figure 2 shows that more files can

être associés dans un groupe.be associated in a group.

La figure 3 décrit le cas général o un ensemble de  Figure 3 describes the general case where a set of

fichiers, dont le porteur, sont associés.  files, including the bearer, are associated.

La figure 4 est une description détaillée de la manière  Figure 4 is a detailed description of how

dont l'invention est mise en oeuvre lorsque le porteur est un  the invention of which is implemented when the carrier is a

fichier de texte simple.simple text file.

La figure 5 montre les étapes de la méthode de contrôle  Figure 5 shows the steps of the control method

selon l'invention.according to the invention.

La figure 6 montre une exemple de méthode améliorée pour obtenir un code d'authentification conformément à l'invention.  FIG. 6 shows an example of an improved method for obtaining an authentication code according to the invention.

DESCRIPTION DÉTAILLÉE DE L'INVENTION  DETAILED DESCRIPTION OF THE INVENTION

La figure 1 montre comment l'invention peut être mise en ouvre de manière optimale à l'aide d'un exemple d'application. Un premier document, en l'occurrence une image d'empreinte digitale [100], est codé sous forme d'un fichier de données formaté, p. ex., selon l'algorithme standard de compression d'images JPEG (Joint Photographic Experts Group), donnant un fichier de données [110] dont le nom sera, par exemple, fingerprint.jpg. A cette image est associé un second document, par exemple un texte [120] donnant des explications sur les empreintes digitales. Le document de texte est également codé sous forme de fichier,  Figure 1 shows how the invention can be optimally implemented using an example application. A first document, in this case a fingerprint image [100], is coded in the form of a formatted data file, p. eg, according to the standard image compression algorithm JPEG (Joint Photographic Experts Group), giving a data file [110] whose name will be, for example, fingerprint.jpg. A second document is associated with this image, for example a text [120] giving explanations on fingerprints. The text document is also encoded as a file,

p. ex. un simple fichier ASCII "fingerprint.txt" [130].  p. ex. a simple ASCII file "fingerprint.txt" [130].

Ensuite, le premier document, l'image de l'empreinte digitale [100], peut être protégé en calculant [140] un MAC (Message Authentication Code) utilisant le message du fichier [110] et une clé [115] comme entrées, avec n'importe  Then, the first document, the image of the fingerprint [100], can be protected by calculating [140] a MAC (Message Authentication Code) using the message of the file [110] and a key [115] as inputs, with any

FR920000021FR920000021

-.7- quelle méthode connue dans l'état actuel de la technique, pour obtenir un code unique ou MAC [145], c'est à dire un vecteur binaire fait de 1 et de 0. Ensuite, le MAC, au lieu d'être annexé au fichier de l'empreinte digitale, est utilisé, avec un nombre aléatoire [160], pour marquer [170] de manière transparente et unique le fichier de texte [130] qui accompagne l'image, comme il est expliqué dans les figures suivantes, afin de remplir les objectifs de l'invention qui sont de randomiser et de dissimuler les données d'authentification. Par conséquent, le second document fait office de porteur [150] pour les données d'authentification. La figure 2 illustre précisément le fait que plus de deux documents peuvent être impliqués. Par exemple, une photo de la personne [205] dont l'empreinte digitale est montrée [200] peut aussi être associé, de sorte qu'un MAC est calculé [240] à partir des fichiers graphiques concaténés [210 et 211] puis fusionné dans le fichier de texte [230] afin que les deux puissent être authentifiés ensemble par le décodage du texte d'accompagnement marqué [250], à la réception des trois fichiers associés [210, 211  -.7- which method known in the current state of the art, to obtain a unique code or MAC [145], ie a binary vector made of 1 and 0. Then, the MAC, instead of d be attached to the fingerprint file, is used, with a random number [160], to mark [170] transparently and uniquely the text file [130] that accompanies the image, as explained in the following figures, in order to fulfill the objectives of the invention which are to randomize and conceal the authentication data. Consequently, the second document acts as a carrier [150] for the authentication data. Figure 2 specifically illustrates that more than two documents may be involved. For example, a photo of the person [205] whose fingerprint is shown [200] can also be associated, so that a MAC is calculated [240] from the concatenated graphic files [210 and 211] and then merged in the text file [230] so that the two can be authenticated together by decoding the marked accompanying text [250], upon receipt of the three associated files [210, 211

et 250].and 250].

La figure 3 illustre un autre cas général d'utilisation de l'invention dans lequel le MAC [345] n'est pas calculé seulement à partir de plusieurs fichiers, p. ex. les fichiers [310 et 311] des deux images [300, 305], mais comprend aussi le fichier du document texte lui-même [320] qui est finalement utilisé pour transporter [350] les données d'authentification, de sorte que les trois éléments forment un groupe [313] qui peut être authentifié comme un ensemble. Etant donné que, dans ce cas, le porteur des données d'authentification est concaténé [314] afin de participer au calcul [340] du MAC, on suppose implicitement qu'il peut exister quelque chose de tel qu'une forme canonique du fichier de texte qui fait office de porteur [330] à partir de laquelle un fichier identique [312] (canonical.txt) peut être généré afin que les calculs effectués lors de la génération et du contrôle puissent  FIG. 3 illustrates another general use case of the invention in which the MAC [345] is not calculated only from several files, p. ex. the files [310 and 311] of the two images [300, 305], but also includes the text document file itself [320] which is ultimately used to transport [350] the authentication data, so that the three elements form a group [313] which can be authenticated as a whole. Since, in this case, the bearer of the authentication data is concatenated [314] in order to participate in the calculation [340] of the MAC, it is implicitly assumed that there may exist something such as a canonical form of the file of text that acts as a carrier [330] from which an identical file [312] (canonical.txt) can be generated so that the calculations performed during generation and control can

FR920000021FR920000021

-8 - effectivement coïncider. Dans cet exemple particulier, le porteur étant le fichier de texte [330], les modifications susmentionnées qui peuvent être apportées de manière transparente au document de texte doivent consister à changer, d'une manière quelconque, le nombre de blancs entre les mots (comme, p. ex., [331]) du texte. Toutefois, cela ne doit pas affecter la lisibilité. Ensuite, la forme canonique du texte sur laquelle toutes les parties impliquées doivent convenir et à partir de laquelle le calcul du MAC doit commencer, peut consister à supprimer tous les blancs entre les mots ou à laisser un nombre fixe prédéfini de ces blancs, par exemple un blanc entre chaque mot comme il est d'usage dans un document de texte. Ainsi, la forme canonique est, dans ce cas particulier, une forme de texte qui peut être obtenue de manière identique par l'expéditeur et par le destinataire, sans tenir compte du fait que le texte ait été marqué (par l'insertion de blancs supplémentaires), afin de  -8 - actually coincide. In this particular example, the carrier being the text file [330], the aforementioned modifications that can be made transparently to the text document must consist of changing, in some way, the number of blanks between the words (like , eg, [331]) of the text. However, this should not affect readability. Then, the canonical form of the text on which all the parties involved must agree and from which the calculation of the MAC must begin, can consist in removing all the blanks between the words or in leaving a predefined fixed number of these blanks, for example a blank space between each word as is customary in a text document. Thus, the canonical form is, in this particular case, a form of text which can be obtained identically by the sender and by the recipient, without taking into account that the text has been marked (by the insertion of blanks additional), in order to

permettre l'authentification du groupe de fichiers transmis.  allow authentication of the group of files transmitted.

Enfin, comme dans les exemples des figures 1 et 2, le MAC est utilisé, avec un nombre aléatoire [360], pour marquer de manière transparente [370] le fichier de texte [130] qui fait office de porteur [350] pour les données d'authentification. La figure 4 décrit la méthode de l'invention pour permettre l'intégration dans le fichier porteur des données d'authentification de manière à ce que les informations soient randomisées et dissimulées. Bien que, dans cet exemple, cette version préférentielle de l'invention utilise un fichier de texte en guise de porteur pour les données d'authentification, il doit être évident pour les spécialistes que, sans trahir l'esprit de l'invention, elle pourrait être appliquée de différentes manières impliquant ou non un fichier de texte. La mise en oeuvre de l'invention suppose qu'il existe une sorte d'élément neutre dans le fichier porteur qui n'altère pas sa signification ou son fonctionnement même s'il est isolé ou reproduit davantage qu'il n'est strictement nécessaire. Conformément à cette définition, le blanc (x'40' pour un fichier ASCII, affiché  Finally, as in the examples of FIGS. 1 and 2, the MAC is used, with a random number [360], to mark in a transparent manner [370] the text file [130] which acts as a carrier [350] for the authentication data. FIG. 4 describes the method of the invention to allow the integration into the carrier file of the authentication data so that the information is randomized and concealed. Although, in this example, this preferred version of the invention uses a text file as the carrier for the authentication data, it should be obvious to specialists that, without betraying the spirit of the invention, it could be applied in different ways whether or not involving a text file. The implementation of the invention supposes that there is a kind of neutral element in the carrier file which does not alter its meaning or its functioning even if it is isolated or reproduced more than is strictly necessary . According to this definition, white (x'40 'for an ASCII file, displayed

FR920000021FR920000021

-9 - ici sous forme de signe d'insertion ^ [480]) est l'élément neutre pour un document de texte puisque l'insertion de plus de blancs qu'il n'est nécessaire, c'est à dire que plus d'un blanc, n'altère pas la lisibilité. De même, étant donné qu'il y a au moins un blanc entre chaque mot, il y a de nombreuses opportunités de fusionner, sous la forme de blancs supplémentaires entre les mots, les données d'authentification, à condition que le texte comprenne  -9 - here in the form of an insertion sign ^ [480]) is the neutral element for a text document since the insertion of more blanks than is necessary, ie more 'white, does not affect readability. Likewise, since there is at least one blank space between each word, there are many opportunities to merge, in the form of additional blank spaces between words, the authentication data, provided that the text understands

suffisamment de mots.enough words.

Ensuite, l'invention suppose que le MAC [400] (calculé selon n'importe quelle méthode standard ou personnalisée connue dans l'état actuel de la technique) est utilisé ici pour diviser le texte en deux ensembles de mots. Pour cela, il suffit de créer un premier ensemble [410] avec les mots dont la position correspond aux 1 [412] du vecteur binaire MAC. Le second ensemble [420], complémentaire, correspond  Next, the invention supposes that the MAC [400] (calculated according to any standard or personalized method known in the current state of the art) is used here to divide the text into two sets of words. For that, it is enough to create a first set [410] with the words whose position corresponds to 1 [412] of the binary vector MAC. The second, complementary set [420] corresponds

aux 0 [422]. Dans la description de la figure 4, on admet,  to 0 [422]. In the description of FIG. 4, we admit,

par souci de simplicité, que la longueur du vecteur binaire MAC correspond au nombre de mots du texte [430] bien que ce soit rarement le cas. Toutefois, si le texte comprend davantage de mots, ce qui est généralement le cas, toutes les parties concernées doivent convenir de la partie à sélectionner afin que le codage et le contrôle se fassent de la même manière. La méthode la plus simple consiste à sélectionner un nombre suffisant de mots du texte, en commençant par le début, correspondant à la longueur du vecteur binaire MAC, mais il existe de nombreuses autres possibilités, telles que de sélectionner les mots en partant de la fin, ce qui évite de choisir d'autres méthodes plus sophistiquées telles que de sélectionner des sous-groupes de mots sur lesquels il faut s'entendre a priori. On suppose aussi que le nombre de mots du texte porteur le plus court est suffisant pour correspondre à la longueur du vecteur binaire résultant de la fonction MAC choisie. En d'autres termes, selon le niveau de protection que l'on désire obtenir dans une application donnée de l'invention, le vecteur binaire MAC aura différentes longueurs (p. ex., un code de calcul de 160 bits est produit avec SHA). Ainsi, le  for the sake of simplicity, that the length of the binary vector MAC corresponds to the number of words in the text [430] although this is rarely the case. However, if the text includes more words, which is generally the case, all parties involved must agree on the party to be selected so that coding and control are done in the same way. The simplest method is to select a sufficient number of words in the text, starting at the beginning, corresponding to the length of the MAC binary vector, but there are many other possibilities, such as selecting the words from the end. , which avoids choosing other more sophisticated methods such as selecting subgroups of words on which we must agree a priori. It is also assumed that the number of words in the shortest carrier text is sufficient to correspond to the length of the binary vector resulting from the selected MAC function. In other words, depending on the level of protection that it is desired to obtain in a given application of the invention, the binary vector MAC will have different lengths (eg, a 160-bit computer code is produced with SHA ). So the

FR920000021FR920000021

- 10 -- 10 -

texte porteur doit avoir au moins le nombre correspondant de mots (plus exactement, il doit y avoir un nombre suffisant d'intervalles entre les mots, le dernier mot du texte étant généralement exclu [431]) pour permettre l'utilisation du vecteur binaire MAC complet. Sinon, si le MAC ne peut pas être entièrement utilisé parce que le texte porteur est trop  carrier text must have at least the corresponding number of words (more exactly, there must be a sufficient number of intervals between words, the last word of the text being generally excluded [431]) to allow the use of the binary vector MAC full. Otherwise, if the MAC cannot be fully used because the carrier text is too

court, le niveau de protection est réduit d'autant.  short, the level of protection is reduced accordingly.

Ensuite, le premier ensemble de mots [410], avec les blancs qui les suivent, est marqué par l'insertion d'un nombre aléatoire (RN) de blancs supplémentaires. La méthode exacte pour réaliser ceci sort de l'objet de la présente invention. Par souci de clarté, on suppose dans cette illustration de l'invention qu'une méthode simple est appliquée. En l'occurrence, RN est généré par un générateur de nombres aléatoires [445] approprié quelconque, connu ou adapté à partir de l'état actuel de la technique, sous la forme d'un premier vecteur binaire Pi [440], pouvant entrer  Then, the first set of words [410], with the blanks following them, is marked by the insertion of a random number (RN) of additional blanks. The exact method for achieving this is beyond the scope of the present invention. For the sake of clarity, it is assumed in this illustration of the invention that a simple method is applied. In this case, RN is generated by any suitable random number generator [445], known or adapted from the current state of the art, in the form of a first binary vector Pi [440], which can enter

p. ex. dans le plus petit des deux ensembles de mots.  p. ex. in the smaller of the two sets of words.

Ensuite, un blanc supplémentaire est inséré pour chaque intervalle correspondant, p. ex., à un 1 dans Pi [442]. On peut envisager des méthodes plus sophistiquées et de nombreuses variantes pour obtenir et insérer une combinaison aléatoire de blancs supplémentaires, mais cela ne changerait pas l'objet de l'invention, laquelle, plutôt que d'insérer directement le MAC dans le texte porteur, l'utilise pour le diviser et insérer un nombre aléatoire de blancs supplémentaires.  Then an additional blank is inserted for each corresponding interval, p. eg, to a 1 in Pi [442]. We can envisage more sophisticated methods and numerous variants to obtain and insert a random combination of additional blanks, but that would not change the object of the invention, which, rather than inserting the MAC directly into the carrier text, use it to divide it and insert a random number of extra blanks.

Enfin, le second ensemble de mots est également marque.  Finally, the second set of words is also marked.

A partir de Pi [440], une fonction de transformation T [450] est appliquée pour obtenir une seconde combinaison P2 = T(P1) [460] qui doit pouvoir entrer dans le second ensemble de mots. Comme Pi, P2 sert à insérer des blancs supplémentaires dans le second ensemble, p. ex. [462]. Encore une fois, le type de fonction de transformation T à utiliser pour obtenir P2 à partir P1 sort de l'objet de l'invention. De nombreuses méthodes équivalentes sont possibles. La plus simple consiste à simplement réutiliser Pi tel quel pour l'insérer dans le second ensemble. Une méthode de transformation plus  From Pi [440], a transformation function T [450] is applied to obtain a second combination P2 = T (P1) [460] which must be able to enter the second set of words. Like Pi, P2 is used to insert additional blanks in the second set, p. ex. [462]. Again, the type of transformation function T to be used to obtain P2 from P1 is beyond the scope of the invention. Many equivalent methods are possible. The simplest is to simply reuse Pi as is to insert it into the second set. A more transformation method

FR920000021FR920000021

- il -- he -

élaborée consiste à calculer RN de telle sorte que P2 = H(P1).  elaborate consists in calculating RN so that P2 = H (P1).

H peut être une fonction de calcul appropriée quelconque. En l'occurrence, P2 [460] est juste le complément bit à bit de Pi. La dernière opération consiste à rassembler [470] le deux ensembles issus de la combinaison de 1 et de 0 du MAC  H can be any suitable calculation function. In this case, P2 [460] is just the bit-to-bit complement of Pi. The last operation consists in gathering [470] the two sets resulting from the combination of 1 and 0 of the MAC

[400] pour obtenir le porteur [475].  [400] to obtain the carrier [475].

La figure 5 décrit un exemple de la méthode de décodage selon l'invention, le porteur étant un document de texte simple dans lequel des blancs supplémentaires ont été  FIG. 5 describes an example of the decoding method according to the invention, the carrier being a simple text document in which additional blanks have been

insérés. La description commence lorsqu'un MAC est recalculé  inserted. Description begins when MAC is recalculated

[500] comme indiqué sur les figures 1, 2 et 3. Les opérations représentées sur cette figure sont effectuées d'une manière similaire à ce qui était montré sur la figure 4. Ensuite, avec le vecteur binaire MAC, le texte est divisé en un premier et un second ensembles de mots. Une combinaison de blancs supplémentaires est extraite [520 et 530] de chacun des deux ensembles. Sur la combinaison extraite du premier ensemble est appliquée [540] la même fonction de transformation que celle utilisée pour le codage. Enfin, si la combinaison de blancs supplémentaires du second ensemble correspond [551] à la combinaison transformée du premier ensemble lorsqu'elles sont comparées [550], les fichiers sont reconnus comme authentiques. Si la comparaison échoue [552], il faut admettre qu'un ou  [500] as shown in Figures 1, 2 and 3. The operations shown in this figure are performed in a similar manner to what was shown in Figure 4. Next, with the binary vector MAC, the text is divided into first and second sets of words. A combination of additional blanks is extracted [520 and 530] from each of the two sets. On the combination extracted from the first set is applied [540] the same transformation function as that used for coding. Finally, if the combination of additional blanks in the second set matches [551] to the transformed combination in the first set when compared [550], the files are recognized as authentic. If the comparison fails [552], it must be admitted that one or more

plusieurs fichiers du groupe de fichiers ont été manipulés.  several files in the file group have been used.

La figure 6 donne plus de détails sur ce que devrait être la combinaison du MAC pour une mise en oeuvre optimale de l'invention. Bien que l'invention ne nécessite aucun postulat quant à la manière de calculer le MAC, il faut néanmoins mentionner les restrictions suivantes. Quelle que soit la méthode effectivement retenue pour le calculer, il faut tenir compte du cas o le MAC aurait très peu de bits à 1 ou très peu de bits à 0, bien que la probabilité d'obtenir un tel rapport entre les 0 et les 1 soit faible, voire très faible. Ainsi, supposons un instant, p. ex., qu'un MAC de  FIG. 6 gives more details on what the combination of the MAC should be for an optimal implementation of the invention. Although the invention does not require any assumption as to how to calculate the MAC, the following restrictions should nevertheless be mentioned. Whichever method is actually used to calculate it, account must be taken of the case where the MAC would have very few bits at 1 or very few bits at 0, although the probability of obtaining such a ratio between the 0 and the 1 is weak, even very weak. So suppose for a moment, p. e.g. a MAC of

128 bits comprend 127 bits à 1 et seulement un bit à 0.  128 bits includes 127 bits at 1 and only one bit at 0.

Concrètement, il en résulterait 127 bits de données aléatoires qui pourraient être codées dans le premier  Concretely, this would result in 127 bits of random data which could be coded in the first

FR920000021FR920000021

- 12 -- 12 -

ensemble de mots (tel que [410] sur la figure 4) du texte divisé, et seulement 1 bit de données aléatoires transformées qui pourraient être codées dans le second ensemble (tel que [420]), lequel comprendrait donc un seul mot dans cet exemple extrême. Dans ce cas, un adversaire voulant substituer un autre texte au texte réel aurait une probabilité de 1/2 de passer avec succès par hasard le contrôle de vérification. De même, avec un partage de 126 et 2, on aurait une probabilité de 1/4 de passer avec succès par hasard le contrôle de vérification, etc. Par conséquent, la situation optimale est celle o le MAC a le même nombre de 1 et de 0, à savoir 64 uns et 64 zéros dans cet exemple o le MAC possède 128 bits. Cela donne une probabilité minimum de 1/(2**64). Par conséquent, on peut éventuellement désirer favoriser une méthode de génération de MAC qui  set of words (such as [410] in Figure 4) of the split text, and only 1 bit of transformed random data that could be encoded in the second set (such as [420]), which would therefore include a single word in this extreme example. In this case, an opponent wishing to substitute another text for the actual text would have a probability of 1/2 of successfully passing the verification check. Similarly, with a split of 126 and 2, we would have a probability of 1/4 of successfully passing the verification check, etc. Consequently, the optimal situation is that where the MAC has the same number of 1 and 0, namely 64 ones and 64 zeros in this example o the MAC has 128 bits. This gives a minimum probability of 1 / (2 ** 64). Therefore, one may possibly wish to favor a method of MAC generation which

garantisse un nombre prescrit de bits à 0 et de bits à 1.  guarantees a prescribed number of bits at 0 and bits at 1.

Parmi les nombreuses possibilités, une méthode triviale est d'avoir une procédure récursive o le MAC est calculé au moyen des données d'entrée [600], d'une clé [610] et d'un compteur [620]. Le MAC généré [630] est testé [640] pour voir si le nombre de bits à 0 et de bits à 1 satisfait la condition imposée, et, si c'est le cas, le MAC est accepté et utilisé [650]. Sinon, la valeur du compteur [620] est augmentée [660] et un nouveau MAC est calculé, cette procédure continuant jusqu'à ce qu'un MAC acceptable soit trouvé. L'expéditeur et le destinataire utilisant la même procédure pour générer des MAC et le premier MAC acceptable  Among the many possibilities, a trivial method is to have a recursive procedure where the MAC is calculated using the input data [600], a key [610] and a counter [620]. The generated MAC [630] is tested [640] to see if the number of bits at 0 and bits at 1 satisfies the imposed condition, and, if this is the case, the MAC is accepted and used [650]. Otherwise, the value of counter [620] is increased [660] and a new MAC is calculated, this procedure continuing until an acceptable MAC is found. The sender and the recipient using the same procedure to generate MACs and the first acceptable MAC

étant pris, ils sont assurés d'utiliser la même valeur MAC.  being taken, they are guaranteed to use the same MAC value.

FR920000021FR920000021

- 13 -- 13 -

Claims (11)

REVENDICATIONS 1) Une méthode pour authentifier de manière unique chaque reproduction d'un pluralité de documents électroniques [310, 311 et 330], ladite pluralité de documents électroniques formant un groupe [313], la dite méthode comprenant les étapes suivantes: sélection d'un document électronique [330] dans ledit groupe [313], lequel deviendra le porteur [350] d'un code d'authentification [345] destiné à protéger ledit groupe, concaténation [314] de ladite pluralité de documents électroniques, ladite étape de concaténation comprenant l'étape suivante: utilisation d'une forme canonique [312] dudit document électronique sélectionné [330], calcul [340] dudit code d'authentification [345] à partir dudit ensemble concaténé de documents électroniques [314] et d'une clé [315], génération d'un nombre aléatoire [360], et combinaison dudit nombre aléatoire et dudit code d'authentification pour marquer [370] ledit document électronique sélectionné [330], afin d'obtenir ledit  1) A method for uniquely authenticating each reproduction of a plurality of electronic documents [310, 311 and 330], said plurality of electronic documents forming a group [313], said method comprising the following steps: selection of a electronic document [330] in said group [313], which will become the bearer [350] of an authentication code [345] intended to protect said group, concatenation [314] of said plurality of electronic documents, said concatenation step comprising the following step: use of a canonical form [312] of said selected electronic document [330], calculation [340] of said authentication code [345] from said concatenated set of electronic documents [314] and a key [315], generation of a random number [360], and combination of said random number and said authentication code to mark [370] said selected electronic document [330], in order to obtain ledi t porteur [350].carrier [350]. 2) La méthode décrite dans la revendication 1, ladite étape de concaténation excluant ledit document électronique  2) The method described in claim 1, said concatenation step excluding said electronic document sélectionné [230].selected [230]. 3) La méthode décrite selon l'une quelconque des  3) The method described according to any one of revendications précédentes, ladite étape de concaténation  previous claims, said concatenation step étant remplacée par l'étape de prise en charge d'un seul  being replaced by the step of taking charge of only one document électronique [110].electronic document [110]. FR920000021FR920000021 - 14 -- 14 - 4) La méthode décrite dans l'une quelconque des  4) The method described in any one of revendications précédentes, l'étape de combinaison  previous claims the combining step comprenant les étapes suivantes: division dudit document électronique sélectionné [430] en un premier ensemble [410] et un second ensemble [420] sur la base dudit code d'authentification [400], utilisation dudit nombre aléatoire [440] pour marquer [442] ledit premier ensemble, transformation [450] dudit nombre aléatoire, utilisation dudit nombre aléatoire transformé [460] pour marquer ledit second ensemble, et rassemblement [470] dudit premier ensemble [410] et dudit second ensemble [420] sur la base dudit code d'authentification [400], afin d'obtenir ledit porteur  comprising the following steps: dividing said selected electronic document [430] into a first set [410] and a second set [420] based on said authentication code [400], using said random number [440] to mark [442 ] said first set, transforming [450] of said random number, using said transformed random number [460] to mark said second set, and gathering [470] of said first set [410] and said second set [420] based on said code authentication [400], in order to obtain said carrier [475].[475]. ) La méthode décrite dans l'une quelconque des  ) The method described in any of revendications précédentes, ledit document électronique  previous claims, said electronic document sélectionné étant un document de texte simple [430] et ledit premier ensemble [410] et ledit second ensemble [420] étant  selected being a simple text document [430] and said first set [410] and said second set [420] being des ensembles de mots dudit document de texte simple.  sets of words from said simple text document. 6) La méthode décrite dans l'une quelconque des  6) The method described in any of revendications précédentes, ledit document de texte simple  previous claims said simple text document [430] étant marqué par l'insertion de blancs supplémentaires  [430] being marked by the insertion of additional blanks [442] et [462].[442] and [462]. 7) La méthode décrite dans l'une quelconque des  7) The method described in any one of revendications précédentes, l'étape d'utilisation de ladite  previous claims, the step of using said forme canonique dudit document de texte simple comprenant l'étape suivante: extraction de tous les blancs d'entre les mots, à l'exception d'un seul, dudit document de texte simple,  canonical form of said simple text document comprising the following step: extraction of all the blanks of the words, except for one, from said simple text document, afin d'obtenir ladite forme canonique.  in order to obtain said canonical form. FR920000021FR920000021 - 15 -- 15 - 8) La méthode décrite dans l'une quelconque des  8) The method described in any of revendications précédentes, ledit code d'authentification  previous claims, said authentication code [400], ledit nombre aléatoire [440] et ledit nombre aléatoire transformé [460] étant des vecteurs binaires pouvant d'une taille pouvant convenir audit document électronique sélectionné [430], audit premier ensemble [410]  [400], said random number [440] and said transformed random number [460] being binary vectors which can be of a size suitable for said selected electronic document [430], said first set [410] et audit second ensemble [420].and said second set [420]. 9. La méthode décrite dans l'une quelconque des  9. The method described in any of revendications précédentes, ladite étape de division  previous claims, said dividing step comprenant les étapes suivantes: formation dudit premier ensemble avec les mots dudit document électronique sélectionné correspondant aux uns dudit code d'authentification [412], et formation dudit second ensemble avec les mots dudit document électronique sélectionné correspondant aux zéros  comprising the following steps: forming said first set with the words of said selected electronic document corresponding to the ones of said authentication code [412], and forming said second set with the words of said selected electronic document corresponding to zeros dudit code d'authentification [422].  said authentication code [422]. ) La méthode décrite dans l'une quelconque des  ) The method described in any of revendications précédentes, ladite étape de calcul étant  previous claims, said calculation step being remplacée par les étapes suivantes: calcul [605] dudit code d'authentification [630] à partir dudit groupe concaténé de documents électroniques [600], de ladite clé [610] et d'un compteur [620], et test [640] de la densité de uns dudit code d'authentification; si le test échoue: incrémentation [660] dudit compteur, et reprise de l'étape de calcul; si le test réussit: validation [650] dudit code d'authentification, et  replaced by the following steps: calculation [605] of said authentication code [630] from said concatenated group of electronic documents [600], said key [610] and a counter [620], and test [640] the density of some of said authentication code; if the test fails: incrementation [660] of said counter, and resumption of the calculation step; if the test succeeds: validation [650] of said authentication code, and sortie de ladite étape de calcul.exit from said calculation step. FR920000021FR920000021 - 16 -- 16 - 11) La méthode décrite dans l'une quelconque des  11) The method described in any of revendications précédentes, ladite étape de transformation  previous claims, said transformation step comprenant l'une ou plusieurs des étapes suivantes: re-calcul à partir dudit nombre aléatoire, réutilisation dudit nombre aléatoire,  comprising one or more of the following steps: re-calculation from said random number, re-use of said random number, inversion dudit nombre aléatoire.inverting said random number. 12) Une méthode pour contrôler ledit code d'authentification comprenant les étapes suivantes: obtention [500] dudit code d'authentification, division [510] dudit porteur en un dit premier ensemble et un dit second ensemble, extraction [520] d'une première combinaison dudit premier ensemble, transformation [540] de ladite première combinaison, extraction [530] d'une seconde combinaison dudit second ensemble, et comparaison [550] de ladite première combinaison transformée et de ladite seconde combinaison; si elles correspondent [551]: validation du contrôle, si elles ne correspondent pas [552]:  12) A method for controlling said authentication code comprising the following steps: obtaining [500] of said authentication code, dividing [510] of said carrier into a said first set and a said second set, extraction [520] from a first combination of said first set, transforming [540] of said first combination, extracting [530] a second combination from said second set, and comparing [550] of said first transformed combination and said second combination; if they match [551]: validation of the check, if they do not match [552]: invalidation du contrôle.invalidation of the control. 13) Un système, et notamment un système pour authentifier de manière unique chaque reproduction d'un groupe de documents électroniques, comprenant des moyens adaptés pour mettre en oeuvre la méthode décrite dans l'une  13) A system, and in particular a system for uniquely authenticating each reproduction of a group of electronic documents, comprising means suitable for implementing the method described in one quelconque des revendications précédentes.  any of the preceding claims. 14) Un support lisible par ordinateur comprenant les instructions d'un programme exécutable par le dit ordinateur, le dit programme mettant en oeuvre la méthode  14) A computer-readable medium comprising the instructions of a program executable by said computer, said program implementing the method selon l'une quelconque des revendications 1 à 12.  according to any one of claims 1 to 12. FR920000021FR920000021
FR0104303A 2000-05-12 2001-03-30 SYSTEM AND METHOD FOR SINGLE AUTHENTICATION EACH REPRODUCTION OF A GROUP OF ELECTRONIC DOCUMENTS Expired - Fee Related FR2808948B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP00480041 2000-05-12

Publications (2)

Publication Number Publication Date
FR2808948A1 true FR2808948A1 (en) 2001-11-16
FR2808948B1 FR2808948B1 (en) 2006-03-03

Family

ID=8174233

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0104303A Expired - Fee Related FR2808948B1 (en) 2000-05-12 2001-03-30 SYSTEM AND METHOD FOR SINGLE AUTHENTICATION EACH REPRODUCTION OF A GROUP OF ELECTRONIC DOCUMENTS

Country Status (2)

Country Link
US (1) US6941461B2 (en)
FR (1) FR2808948B1 (en)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6941481B2 (en) * 1990-03-23 2005-09-06 Matsushita Electric Industrial Co., Ltd. Data processing apparatus
US7032182B2 (en) * 2000-12-20 2006-04-18 Eastman Kodak Company Graphical user interface adapted to allow scene content annotation of groups of pictures in a picture database to promote efficient database browsing
JP2003169333A (en) * 2001-09-21 2003-06-13 Ricoh Co Ltd Code string creation device, image decompression system, image decompression device, image providing system, code string creation method, program, and recording medium
JP4887592B2 (en) * 2001-09-28 2012-02-29 ソニー株式会社 Data recording and / or reproducing method
WO2003043000A1 (en) * 2001-10-10 2003-05-22 Jacques Rivaillier Method of marking, identifying and securing computer files, documents, sounds and chemical compounds
US7693797B2 (en) * 2004-06-21 2010-04-06 Nokia Corporation Transaction and payment system security remote authentication/validation of transactions from a transaction provider
US20070031009A1 (en) * 2005-04-15 2007-02-08 Julius Mwale Method and system for string-based biometric authentication
US20060242418A1 (en) 2005-04-25 2006-10-26 Xerox Corporation Method for ensuring the integrity of image sets
US7814538B2 (en) * 2005-12-13 2010-10-12 Microsoft Corporation Two-way authentication using a combined code
US8356178B2 (en) * 2006-11-13 2013-01-15 Seagate Technology Llc Method and apparatus for authenticated data storage
US8699711B2 (en) 2007-07-18 2014-04-15 Interdigital Technology Corporation Method and apparatus to implement security in a long term evolution wireless device
US9547777B2 (en) * 2008-08-29 2017-01-17 Red Hat, Inc. Validating compressed archive keys
US8490321B1 (en) 2009-11-04 2013-07-23 Scott A. Butz UV reflective fishing lure system
US8520903B2 (en) * 2010-02-01 2013-08-27 Daon Holdings Limited Method and system of accounting for positional variability of biometric features
US8041956B1 (en) 2010-08-16 2011-10-18 Daon Holdings Limited Method and system for biometric authentication
GB2551051A (en) * 2016-06-02 2017-12-06 Univ Plymouth Method of associating a person with a digital object
CN107644009B (en) * 2016-07-21 2020-07-14 北大方正集团有限公司 Transmission method and transmission system of book review information
US11496324B2 (en) 2019-12-17 2022-11-08 Digital Trust Networks Inc. Enforceable pseudonymous reputation through chained endorsers

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5765176A (en) * 1996-09-06 1998-06-09 Xerox Corporation Performing document image management tasks using an iconic image having embedded encoded information
EP0984598A2 (en) * 1998-08-31 2000-03-08 Hitachi, Ltd. Information authentication system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5319710A (en) * 1986-08-22 1994-06-07 Tandem Computers Incorporated Method and means for combining and managing personal verification and message authentication encrytions for network transmission
WO1994021066A1 (en) * 1993-03-05 1994-09-15 Telstra Corporation Limited A method and apparatus for generating a digital message authentication code
US6128737A (en) * 1998-04-20 2000-10-03 Microsoft Corporation Method and apparatus for producing a message authentication code in a cipher block chaining operation by using linear combinations of an encryption key
CA2242130A1 (en) * 1998-08-07 2000-02-07 Silanis Technology Inc. Method for parallel approval of documents in a distributed network
CN1163018C (en) * 1999-08-09 2004-08-18 高通股份有限公司 Method and device for generating message authentication code
US6785738B1 (en) * 1999-12-23 2004-08-31 Cisco Technology, Inc. ARP packet to preserve canonical form of addresses

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5765176A (en) * 1996-09-06 1998-06-09 Xerox Corporation Performing document image management tasks using an iconic image having embedded encoded information
EP0984598A2 (en) * 1998-08-31 2000-03-08 Hitachi, Ltd. Information authentication system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DIGIMARC CORPORATION: "Digimarc Expands And Enhances Digital Watermarking Services", DIGIMARC CORPORATION - PRESS RELEASES, 29 September 1997 (1997-09-29), SAN FRANCISCO, XP002323751, Retrieved from the Internet <URL:http://www.digimarc.com/about/release.asp?newsID=115> [retrieved on 20050407] *

Also Published As

Publication number Publication date
US6941461B2 (en) 2005-09-06
FR2808948B1 (en) 2006-03-03
US20010042206A1 (en) 2001-11-15

Similar Documents

Publication Publication Date Title
FR2808948A1 (en) SYSTEM AND METHOD FOR UNIQUE AUTHENTICATION OF EACH REPRODUCTION OF A GROUP OF ELECTRONIC DOCUMENTS
US6934845B2 (en) Method and system of reversibly marking a text document with a pattern of extra blanks for authentication
CA2181299C (en) Cryptographic communication process
WO2014118257A1 (en) Method of xor homomorphic encryption and secure calculation of a hamming distance
WO2020169542A1 (en) Cryptographic data verification method
WO2010046565A2 (en) Method for two step digital signature
CA2216607C (en) Asymmetrical cryptographic communication method and portable object therefor
US20060242416A1 (en) Systems and methods for embedding messages in look-up tables
US20060045309A1 (en) Systems and methods for digital content security
EP4012972A1 (en) Method for selective disclosure of data via a blockchain
EP1522168B1 (en) Method, system and computerized medium for making secure message transmission
CA1243738A (en) Method and system for enciphering and deciphering information between a transmitting device and a receiving device
EP0743775B1 (en) Method of zero-knowledge digital signatures, for creating a collision-resistant signature
FR2752121A1 (en) METHOD OF EXECUTING A DIGITAL SIGNATURE ASSOCIATED WITH A MESSAGE AND METHOD OF VERIFYING THE SAME
EP3863219A1 (en) Method and device for assessing matching of sets of structured data protected by encryption
US6992797B1 (en) Systems and methods for embedding messages in look-up tables
EP3340096B1 (en) Method for configuring a cryptographic program intended for being run by a terminal
EP1136903B1 (en) Method and system of reversibly marking a text document with a pattern of extra blanks for authentication
EP1989819B1 (en) Method for certifying a public key by an uncertified provider
EP4540956A1 (en) Method for homomorphically determining the sign of a message by dilation, associated methods and devices
Bossuat Provable Security of Real-World Protocols
EP1992104B1 (en) Authenticating a computer device at user level
EP2204007A2 (en) Generator and method of generating a secret-key pseudo-random function
EP4402854A1 (en) Methods and devices for authentication and verification of non-revocation
Bouillaguet Algorithms for some hard problems and cryptographic attacks against specific cryptographic primitives

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20131129