FR2896938A1 - METHOD FOR TATOOTING DIGITAL DATA - Google Patents

METHOD FOR TATOOTING DIGITAL DATA Download PDF

Info

Publication number
FR2896938A1
FR2896938A1 FR0650294A FR0650294A FR2896938A1 FR 2896938 A1 FR2896938 A1 FR 2896938A1 FR 0650294 A FR0650294 A FR 0650294A FR 0650294 A FR0650294 A FR 0650294A FR 2896938 A1 FR2896938 A1 FR 2896938A1
Authority
FR
France
Prior art keywords
block
blocks
signature
video
image
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.)
Pending
Application number
FR0650294A
Other languages
French (fr)
Inventor
Philippe Nguyen
Severine Baudry
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.)
Nextamp SA
Original Assignee
Nextamp SA
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 Nextamp SA filed Critical Nextamp SA
Priority to FR0650294A priority Critical patent/FR2896938A1/en
Priority to PCT/EP2007/050732 priority patent/WO2007085632A1/en
Publication of FR2896938A1 publication Critical patent/FR2896938A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • G06T1/0071Robust watermarking, e.g. average attack or collusion attack resistant using multiple or alternating watermarks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0051Embedding of the watermark in the spatial domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0061Embedding of the watermark in each block of the image, e.g. segmented watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0083Image watermarking whereby only watermarked image required at decoder, e.g. source-based, blind, oblivious

Abstract

L'invention concerne un procédé de tatouage numérique comprenant les étapes de- décomposition de la vidéo en blocs (N, N+1,N+2)- calcul (E1, E2) pour chaque bloc de ladite vidéo d'une signature numérique (S),Selon l'invention le procédé comprend en outre une étape d'insertion dans un second bloc (N+1) de ladite signature (S) relative à un premier bloc (N), avant le calcul de ladite signature (S) dudit second bloc (N+1).The invention relates to a digital tattooing method comprising the stages of decomposition of the video in blocks (N, N + 1, N + 2) - computation (E1, E2) for each block of said video of a digital signature ( S), according to the invention the method further comprises a step of insertion in a second block (N + 1) of said signature (S) relating to a first block (N), before the calculation of said signature (S) said second block (N + 1).

Description

PROCEDE DE TATOUAGE DE DONNEES NUMERIQUES. L'invention concerne un procédéMETHOD FOR TATOOTING DIGITAL DATA The invention relates to a method

de tatouage de données numériques.  tattooing of digital data.

L'invention concerne le domaine général du tatouage de données numériques. Plus précisément, elle concerne le contrôle d'intégrité des données numériques.  The invention relates to the general field of tattooing digital data. More precisely, it concerns the integrity control of digital data.

L'intégrité est généralement comprise comme intégrité stricte. Dans les applications de notaire électronique par exemple, on veut s'assurer qu'un document (testament par exemple) est strictement identique à sa version originelle. Toute modification, même minime, de ce document (changement d'un mot ou même d'un seul caractère) peut avoir un impact fort sur la sémantique. D'autre part, de tels documents ne sont pas amenés à évoluer ou à être transformés pour des raisons de coût de stockage ou de transport : la taille d'un document texte ù quelques milliers d'octets ù ne nécessite en effet pas d'efforts de compression. Toute coupe dans le document est également synonyme de violation de l'intégrité, et n'est donc pas considérée comme acceptable. L'intégrité stricte est également nécessaire lors de l'échange de code exécutable, afin que chacun puisse s'assurer de la provenance du code, et notamment se prémunir contre d'éventuels virus. Là encore, la faible taille des données et leur structure particulière ù pas de possibilité de compression à perte notamment ù font qu'un mécanisme d'intégrité stricte est parfaitement adapté.  Integrity is generally understood as strict integrity. In electronic notary applications for example, we want to ensure that a document (testament for example) is strictly identical to its original version. Any modification, even minimal, of this document (change of a word or even of a single character) can have a strong impact on the semantics. On the other hand, such documents are not likely to evolve or be transformed for reasons of storage or transport cost: the size of a text document to a few thousand bytes does not require any compression efforts. Any cut in the document is also synonymous with integrity violation, and is therefore not considered acceptable. Strict integrity is also required when exchanging executable code, so that everyone can ensure the source of the code, including protection against possible viruses. Here again, the small size of the data and their particular structure - no possibility of compression at a loss in particular - make a strict integrity mechanism perfectly suitable.

Des solutions existent dans l'état de l'art, qui permettent de garantir l'intégrité stricte d'un document. Les fonctions de hash cryptographiques permettent notamment d'obtenir, à partir de n'importe quel document, un condensé (ensemble de données de taille beaucoup plus petite que le document originel) aux propriétés intéressantes. En particulier, tout changement même minime (un seul bit par exemple) du document source conduit à un condensé totalement différent.  Solutions exist in the state of the art, which make it possible to guarantee the strict integrity of a document. The functions of cryptographic hash allow in particular to obtain, from any document, a digest (dataset size much smaller than the original document) with interesting properties. In particular, any very small change (eg a single bit) of the source document leads to a totally different digest.

La probabilité d'avoir deux documents sources de même condensé est très faible ; d'autre part, il n'existe pas de méthode simple (c'est-à-dire de complexité beaucoup plus faible que celle de l'exploration exhaustive) de générer, à partir d'un condensé, un document source correspondant à ce condensé. On peut donc très difficilement fabriquer un document falsifié correspondant à un condensé donné ; d'autre part, même si on y arrive, ce document sera avec toute probabilité très différent du document originel (si celui-ci est un texte, le document falsifié consistera sans doute en une suite de caractères inintelligible).  The probability of having two source documents with the same digest is very low; on the other hand, there is no simple method (that is to say, a much lower complexity than the exhaustive exploration) to generate, from a condensed, a source document corresponding to this condensed. It is therefore very difficult to manufacture a falsified document corresponding to a given condensate; On the other hand, even if we get there, this document will probably be very different from the original document (if it is a text, the falsified document will probably consist of a series of unintelligible characters).

Intégrité souple Les mécanismes d'intégrité stricte sont parfaitement adaptés aux données de type texte, programmes, exécutables etc. Par contre, ils sont peu adaptés à des données telles que des images, de la vidéo ou de l'audio. En effet, des données de ce type sont souvent très volumineuses, en conséquence elles sont généralement compressées. D'autre part, elles se prêtent particulièrement bien à de la compression à perte. En effet, elles sont au final destinées à un utilisateur humain ûspectateur ou auditeur û, dont le cerveau ne peut traiter qu'un nombre très limité d'informations.  Flexible Integrity Strict integrity mechanisms are ideally suited to text, program, executable, and other data. On the other hand, they are poorly suited to data such as images, video or audio. Indeed, data of this type are often very large, therefore they are generally compressed. On the other hand, they lend themselves particularly well to compression at a loss. Indeed, they are ultimately intended for a human user - viewer or listener - whose brain can only process a very limited amount of information.

L'oeil, ou l'oreille, n'est donc peu ou pas sensible à un grand nombre de composantes des signaux audio ou vidéo. Il est par exemple bien connu que les fréquences audio très élevées sont peu perceptibles : la bande passante fréquentielle peut être réduite sans altérer la qualité subjective du son. Des modifications ponctuelles et de faible amplitude d'une image sont de même très rarement perçues. La compression à perte exploite ces propriétés, en supprimant du signal ou en altérant fortement (par exemple par quantification) toutes les composantes auquel le récepteur subjectif est peu sensible.  The eye, or the ear, is thus little or not sensitive to a large number of components of the audio or video signals. It is well known, for example, that very high audio frequencies are not very noticeable: the frequency bandwidth can be reduced without altering the subjective quality of the sound. Punctual changes and small amplitude of an image are likewise very rarely perceived. Lossy compression exploits these properties by suppressing or strongly altering (eg, quantizing) all the components to which the subjective receiver is insensitive.

Le signal obtenu après compression à perte est donc différent du signal originel. De plus, il peut y avoir un grand nombre de documents compressés différents pour un même document originel, selon le type d'algorithme de compression utilisé, le paramétrage, ou la qualité perceptuelle souhaitée. D'autres altérations sont également courantes. Elles modifient peu la sémantique de la vidéo, mais altèrent fortement le contenu des données. C'est le cas notamment des transformations géométriques pour les images û découpages légers, changement d'échelle ou d'aspect ratio û, du changement de fréquence d'échantillonnage pour le son.  The signal obtained after compression at a loss is therefore different from the original signal. In addition, there may be a large number of different compressed documents for the same original document, depending on the type of compression algorithm used, the setting, or the desired perceptual quality. Other alterations are also common. They do not change the semantics of the video, but strongly alter the content of the data. This is particularly the case for geometric transformations for images - light cut-outs, scaling or aspect ratio - of the change in sampling frequency for sound.

Toutes ces transformations sont malheureusement courantes dans la vie d'un contenu audiovisuel, car elles sont souvent rendues indispensables par les contingences opérationnelles (place de stockage limitée, bande passante réduite etc.). Un mécanisme de protection de l'intégrité stricte de bout en bout, appliqué sans discernement, a donc toutes les chances d'être totalement inadapté dans ce contexte.  All these transformations are unfortunately common in the life of an audiovisual content, because they are often made indispensable by operational contingencies (limited storage space, reduced bandwidth, etc.). A strict end-to-end integrity protection mechanism, applied indiscriminately, is therefore likely to be totally inappropriate in this context.

On cherche bien plutôt à préserver la sémantique du contenu. Notons dès à présent que la notion de sémantique est extrêmement difficile à définir de façon formelle. En effet, elle implique non seulement les mécanismes mentionnés plus haut de sélectivité de la vision ou de l'audition, qui sont encore mal compris à l'heure actuelle, mais également l'analyse haut niveau réalisée par le cerveau pour extraire le sens de la scène.  We rather seek to preserve the semantics of the content. It should be noted now that the notion of semantics is extremely difficult to define formally. Indeed, it involves not only the aforementioned mechanisms of selectivity of vision or hearing, which are still poorly understood at present, but also the high-level analysis performed by the brain to extract the meaning of the scene.

Par exemple, l'attention du sujet va être focalisée sur les personnages d'une scène plutôt que sur le fond. Une extraction de la sémantique nécessite donc une reconnaissance préalable d'objets, puis une analyse des relations entre ces objets dans la scène donnée, opérations qui sont hors de portée pour les connaissances scientifiques actuelles.  For example, the attention of the subject will be focused on the characters of a scene rather than the background. An extraction of semantics thus requires prior recognition of objects, then an analysis of the relationships between these objects in the given scene, operations that are out of reach for current scientific knowledge.

On appelle fonction de hash visuel (en anglais visual hash ) ou signature souple un procédé permettant de calculer un condensé d'une image (ou d'une vidéo, d'un son). Contrairement aux fonctions de hash cryptographique, une telle fonction peut (c'est tout du moins ce qui est escompté à sa conception) donner un condensé identique pour deux images différentes, sous réserve que celles-ci soient suffisamment proches du point de vue perceptuel ; d'où le qualificatif de souple ou parfois robuste par opposition au qualificatif strict .  The term "visual hash function" (in English visual hash) or "flexible signature" is used to calculate a digest of an image (or a video, a sound). Unlike cryptographic hash functions, such a function can (at least that is expected at its conception) give an identical digest for two different images, provided that they are sufficiently close to the perceptual point of view; hence the qualifier of flexible or sometimes robust as opposed to the strict qualifier.

Par contre, le condensé devra être différent dès lors que l'image subit une altération de sa sémantique ; par exemple l'ajout d'un personnage ou d'un objet dans une scène, la modification d'images de texte, etc. On se rend immédiatement compte que la problématique de définition formelle de la sémantique d'une image va rendre la conception de fonctions de hash visuel délicate. On peut même douter du caractère bien posé du problème.  On the other hand, the condensed will have to be different since the image undergoes an alteration of its semantics; for example adding a character or an object in a scene, editing text images, etc. We immediately realize that the problematic of formal definition of the semantics of an image will make the design of functions of hash visual delicate. One can even doubt the well-posed nature of the problem.

On peut néanmoins définir un critère de localité, qui peut être considéré comme valide dans la grande majorité des cas : une altération contingente (due à la compression par exemple) va donner lieu à des modifications du signal de faible amplitude, mais réparties de manière relativement uniforme sur l'ensemble de l'image. Par contre, une altération de la sémantique résultera en une modification forte mais localisée des données. On cherche donc des fonctions de hash à seuil , qui tolèrent des modifications inférieures à une certaine valeur mais réagissent à des variations localisée trop fortes.  We can nevertheless define a locality criterion, which can be considered valid in the vast majority of cases: a contingent alteration (due to compression for example) will give rise to modifications of the signal of small amplitude, but distributed relatively uniform over the entire image. On the other hand, an alteration of the semantics will result in a strong but localized modification of the data. We therefore look for threshold hash functions, which tolerate modifications that are lower than a certain value but react to localized variations that are too strong.

Le condensé de l'image doit accompagner celle-ci tout au long de sa vie, afin que l'intégrité puisse être vérifiée à une étape quelconque de la chaîne de transmission et de stockage. Malheureusement, les étapes de traitement, acheminement et archivage des images sont souvent multiples et complexes, et mettent en oeuvre des formats ou des équipements dans lesquels il n'est pas toujours possible d'associer image et condensé. Il est donc particulièrement intéressant que le condensé puisse être véhiculé avec l'image, de façon transparente et quel que soit le standard de représentation des données utilisé.  The condensed image must accompany it throughout its life, so that integrity can be verified at any stage of the chain of transmission and storage. Unfortunately, the steps of processing, routing and archiving images are often multiple and complex, and implement formats or equipment in which it is not always possible to associate image and condensed. It is therefore particularly interesting that the condensed can be conveyed with the image, transparently and regardless of the data representation standard used.

Les techniques de tatouage sont ici particulièrement indiquées : elles permettent de transmettre une information par modification visuellement imperceptible des données support. Contrairement aux méta-données, le tatouage est donc persistant même après conversion de format de l'image support. Si on utilise des algorithmes de tatouage robustes, l'information enfouie peut être relue même lorsque l'image aura été altérée, par exemple compressée. Par contre, si l'image est trop fortement modifiée, le tatouage est alors effacé. On entrevoit ainsi deux utilisations possibles, non exclusives, du tatouage : • Transport robuste et persistant du condensé, conjointement à l'image • Détection d'altérations fortes de l'image, fondée sur la lisibilité du tatouage lui-même.  Tattooing techniques are particularly indicated here: they make it possible to transmit information by visually imperceptible modification of the support data. Unlike metadata, tattooing is therefore persistent even after format conversion of the support image. If robust tattooing algorithms are used, the buried information can be re-read even when the image has been altered, for example compressed. On the other hand, if the image is too strongly modified, the tattoo is then erased. Two possible uses, not exclusive, of the tattoo are thus envisioned: • Robust and persistent transport of the condensate, together with the image • Detection of strong alterations of the image, based on the readability of the tattoo itself.

L'algorithme de tatouage et son paramétrage sont choisis avec soin afin de répondre aux contraintes de protection de l'intégrité. Les modifications de l'image dues au tatouage ne doivent pas être trop fortes, afin de ne pas altérer l'intégrité. Le tatouage doit être lisible au moins pour des altérations correspondant aux limites d'acceptation pour l'intégrité. Pour mettre en oeuvre le critère de localité, il est intéressant d'avoir des algorithmes de tatouage séparables, permettant de coder des informations distinctes dans des zones distinctes de l'image.  The tattoo algorithm and its setting are carefully chosen to meet the integrity protection requirements. Changes in the image due to tattooing should not be too strong, so as not to alter the integrity. The tattoo must be readable at least for alterations corresponding to the acceptance limits for integrity. To implement the locality criterion, it is interesting to have separable tattooing algorithms for coding distinct information in distinct areas of the image.

Différentes techniques de tatouage numérique adaptées au contrôle de l'intégrité des données existent : • Les méthodes fragiles qui détectent toutes les modifications, ne serait-ce que la modification d'un bit. Ces méthodes sont très précises pour localiser les altérations. • Les méthodes dites semi-fragiles, dont l'objectif est non seulement de tolérer certains traitements (surtout la compression JPEG) mais aussi de détecter les substitutions ou l'ajout d'objets dans l'image. A la différence des précédentes, la localisation est relativement grossière. Le gros problème actuel étant que ces techniques peuvent ne pas fonctionner correctement et génèrent parfois des fausses alarmes (c'est-à-dire signaler des altérations "imaginaires" pour certaines d'images). • Les méthodes hybrides, qui essayent de combiner les avantages des méthodes précédentes ; on utilise en fait un double marquage, • enfin les méthodes à capacité d'autocorrection proposant de restaurer l'image modifiée.  Different digital tattooing techniques for data integrity control exist: • Fragile methods that detect all changes, even just changing a bit. These methods are very accurate for locating alterations. • So-called semi-fragile methods, the purpose of which is not only to tolerate certain treatments (especially JPEG compression) but also to detect substitutions or the addition of objects in the image. Unlike the previous ones, the location is relatively coarse. The big problem today is that these techniques may not work properly and sometimes generate false alarms (that is, report "imaginary" alterations for some images). • Hybrid methods, which try to combine the advantages of the previous methods; in fact, a double marking is used. Finally, methods with self-correction capability propose to restore the modified image.

Pour le type d'applications particulier du tatouage qu'est le contrôle d'intégrité, les techniques substitutives sont privilégiées. Elles permettent en effet l'insertion d'un message qui peut être extrait lors du processus de vérification de l'intégrité.  For the particular type of tattooing application that is integrity control, substitute techniques are preferred. They allow the insertion of a message that can be extracted during the integrity verification process.

Les techniques fragiles exploitent en général un résumé, calculé sur les données image non affectées par le phénomène d'insertion. Il peut s'agir du résultat d'un "checksum", ou d'une fonction de hachage sur les plans de bits de poids forts, suivis d'une insertion dans les bits de poids faible.  Fragile techniques generally use a summary, calculated on the image data not affected by the insertion phenomenon. This may be the result of a checksum, or a hash function on the most significant bit planes, followed by an insertion in the least significant bits.

Pour les méthodes semi-fragiles, le processus d'extraction du résumé est plus pertinent et s'attache aux attributs image ne devant pas être altérés. D'autres auteurs mettent à profit des relations entre coefficients DCT de blocs distincts; relations a priori invariantes par compression JPEG.  For semi-fragile methods, the summary extraction process is more relevant and focuses on image attributes that should not be altered. Other authors take advantage of the relationships between DCT coefficients of distinct blocks; a priori relations invariant by JPEG compression.

Une seconde solution consiste à introduire des altérations dans l'image, et à en vérifier la présence à la détection.  A second solution is to introduce alterations in the image, and to check for presence on detection.

Enfin, il faut citer les méthodes de tatouage réversible. Dans ces approches, après avoir calculé un résumé de l'image dans sa totalité, on l'insère dans les LSB de l'image en ayant compressé les bits originaux de l'image. En fait, la signature cachée dans les bits de poids faible est constituée du résumé et des bits de poids faibles compressés. Cette méthode, est bien évidemment fragile.  Finally, we must mention the methods of reversible tattooing. In these approaches, after calculating a summary of the image as a whole, it is inserted into the LSBs of the image by compressing the original bits of the image. In fact, the signature hidden in the low-order bits consists of the summary and the low-order bits that are compressed. This method is obviously fragile.

L'invention propose de transporter une signature de la vidéo par tatouage de la vidéo elle-même. Il peut alors se poser un problème de type étreinte fatale : le tatouage modifie la vidéo, qui peut ensuite donner lieu à un condensé différent de celui de la vidéo originelle.  The invention proposes to carry a signature of the video by tattooing the video itself. It can then pose a problem of type embrace fatal: the tattoo modifies the video, which can then give rise to a digest different from that of the original video.

Le document de C. Rey & J.-L. Dugelay intitulé Blind Detection of Malicious Alterations On Stil/ Images Using Robust Watermarks , paru dans Secure Images and Image Authentication, IEE Electronics & Communications ,April 10, 2000 - London, propose une méthode pour résoudre ce problème par une approche itérative : on calcule le condensé de l'image tatouée, que l'on réinsère dans l'image, et on réitère le procédé jusqu'à convergence. Cependant cette méthode pose des problèmes de temps de calcul, de stabilité et de visibilité du tatouage : la convergence n'est notamment pas garantie. Cette méthode ne peut notamment pas être utilisée avec une fonction de hash stricte car on n'a aucune garantie de sa convergence, c'est-à-dire qu'une image peut ne pas être protégeable sans que l'on puisse rien faire. On propose ici l'approche suivante : la vidéo est découpée en blocs.  C. Rey & J.-L. Dugelay's Blind Detection of Malicious Alterations On Stil / Images Using Robust Watermarks, published in Secure Images and Image Authentication, IEE Electronics & Communications, April 10, 2000 - London, proposes a method to solve this problem by an iterative approach: one calculates the condensate of the tattooed image, which one reinserts in the image, and one reiterates the process until convergence. However, this method poses problems of calculation time, stability and visibility of tattooing: convergence is not guaranteed. In particular, this method can not be used with a strict hash function because there is no guarantee of its convergence, that is to say that an image may not be protectable without being able to do anything. The following approach is proposed here: the video is cut into blocks.

Ces blocs peuvent être des groupes d'images ou des portions d'images; on peut reprendre les structures définies dans les standards tels MPEG ou JPEG (GOP û Group of Pictures ; macroblocs 16x16 ou blocs 8x8) afin de simplifier les opérations sur des flux compressés et favoriser l'interopérabilité.  These blocks can be groups of images or portions of images; the structures defined in standards such as MPEG or JPEG (GOP - Group of Pictures, 16x16 macroblocks or 8x8 blocks) can be used to simplify operations on compressed streams and promote interoperability.

A cet effet, l'invention propose un procédé de tatouage numérique comprenant les étapes de - décomposition de la vidéo en blocs, - calcul pour chaque bloc de ladite vidéo d'une signature numérique, Selon l'invention le procédé comprend en outre une étape d'insertion dans un second bloc de ladite signature relative à un premier bloc, avant le calcul de ladite signature dudit second bloc.  For this purpose, the invention proposes a digital tattooing method comprising the steps of - decomposing the video into blocks, - calculating for each block of said video a digital signature, according to the invention the method further comprises a step inserting in a second block of said signature relating to a first block, before calculating said signature of said second block.

Avantageusement, lors de l'étape de calcul de ladite signature numérique, on applique à chaque bloc une fonction de hash et une fonction 30 de chiffrement asymétrique.  Advantageously, during the step of calculating said digital signature, a hash function and an asymmetric encryption function are applied to each block.

Selon un mode de réalisation préféré, lesdits blocs comprennent une suite de sous-blocs représentatifs d'une décomposition fréquentielle de ladite vidéo.  According to a preferred embodiment, said blocks comprise a series of sub-blocks representative of a frequency decomposition of said video.

Préférentiellement, lesdits premiers et second blocs sont des blocs adjacents temporellement et spatialement.  Preferably, said first and second blocks are temporally and spatially adjacent blocks.

De manière avantageuse, ladite signature étant une suite de bits, on insère ladite signature relative à un premier bloc dans le second bloc, en insérant dans chacun des sous-blocs dudit second bloc un desdits bit de ladite signature dudit premier bloc.  Advantageously, said signature being a sequence of bits, inserting said signature relating to a first block in the second block, inserting in each of the sub-blocks of said second block one of said bits of said signature of said first block.

Préférentiellement, lors de l'insertion desdits bits dans lesdits sous-blocs, on modifie l'ordre de coefficients dudit sous-bloc.  Preferably, during the insertion of said bits into said sub-blocks, the order of coefficients of said sub-block is modified.

Avantageusement, on choisit les coefficient à modifier de telle sorte que la valeur absolue de la différence de leur valeurs absolues soit inférieure à un seuil prédéterminé.  Advantageously, the coefficients to be modified are chosen so that the absolute value of the difference of their absolute values is less than a predetermined threshold.

L'invention concerne également un produit programme d'ordinateur ; Selon l'invention le programme comprend des instructions de code de programme pour l'exécution des étapes du procédé selon l'invention lorsque ledit programme est exécuté sur un ordinateur.  The invention also relates to a computer program product; According to the invention the program comprises program code instructions for executing the steps of the method according to the invention when said program is executed on a computer.

Par produit programme d'ordinateur , on entend un support de programme d'ordinateur, qui peut consister non seulement en un espace de stockage contenant le programme, tel qu'une disquette ou une cassette, mais aussi en un signal, tel qu'un signal électrique ou optique.  By computer program product is meant a computer program support, which may consist not only of a storage space containing the program, such as a floppy disk or a cassette, but also a signal, such as a electrical or optical signal.

L'invention sera mieux comprise et illustrée au moyen d'exemples de modes de réalisation et de mise en oeuvre avantageux, nullement limitatifs, en référence aux figures annexées sur lesquelles :  The invention will be better understood and illustrated by means of examples of advantageous embodiments and implementations, in no way limiting, with reference to the appended figures in which:

- la figure 1 représente un bloc diagramme illustrant les modifications effectuées sur les blocs lors de l'opération de cryptage. - la figure 2 représente un algorithme de cryptographie (signature numérique) utilisé dans le mode de réalisation préféré de l'invention L'invention est décrite dans le cadre de données codées conformément à la norme de codage vidéo MPEG-4 AVC telle que décrite dans le document ISO/IEC 14496-10 (intitulé en anglais information technology û coding of audio-visual objects û part 10 : advanced video coding ).  FIG. 1 represents a block diagram illustrating the modifications made on the blocks during the encryption operation. FIG. 2 represents a cryptographic algorithm (digital signature) used in the preferred embodiment of the invention. The invention is described in the context of data coded according to the MPEG-4 AVC video coding standard as described in FIG. ISO / IEC 14496-10 (entitled information technology - coding of audio-visual objects - part 10: advanced video coding).

Conformément aux standards de compression vidéo classiques, tel que MPEG-2, MPEG-4, et H.264, les images d'une séquence d'images peuvent être de type intra (image I), i.e. codées sans référence aux autres images de la séquence ou de type inter (i.e. images P et B), i.e. codées en étant prédites à partir d'autres images de la séquence. Les images sont généralement divisées en macroblocs eux-mêmes divisés en blocs de pixels disjoints de taille N pixels par P pixels, appelés blocs NxP. Ces macroblocs sont eux-mêmes codés selon un mode de codage intra ou inter. Plus précisément tous les macroblocs dans une image I sont codés selon le mode intra alors que les macroblocs dans une image P peuvent être codés selon un mode inter ou intra. Les macroblocs éventuellement prédits sont ensuite transformés bloc par bloc en utilisant une transformée par exemple une transformée en cosinus discrète ( Discrete Cosinus Transform en anglais) référencée DCT ou encore une transformée de Hadamard. Les blocs ainsi transformés sont quantifiés puis codés en utilisant généralement des codes à longueur variable. Dans le cas particulier de la norme MPEG-2 les macroblocs de taille 16 par 16 pixels sont divisés en blocs 8x8 eux mêmes transformés avec une DCT 8x8 en blocs 8x8 transformés. Dans le cas de H.264, les macroblocs de type intra relatifs à la composante de luminance peuvent être codé selon le mode intra4x4 ou selon le mode intral6x16. Un macrobloc intra codé selon le mode intra4x4 est divisé en 16 blocs 4x4 disjoints. Chaque bloc 4x4 est prédit spatialement par rapport à certains blocs voisins situés dans un voisinage causal, i.e. à chaque bloc 4x4 est associé un bloc 4x4 de prédiction généré à partir desdits blocs voisins. Des blocs 4x4 de résidus sont générés en soustrayant de chacun des blocs 4x4, le bloc 4x4 de prédiction associé. Les 16 blocs de résidus ainsi générés sont transformés par une transformée 4x4 entière H qui approxime une DCT 4x4. Un macrobloc intra codé selon le mode intral6x16 est prédit spatialement par rapport à certains macroblocs voisins situés dans un voisinage causal, i.e. un bloc 16x16 de prédiction est généré à partir desdits macroblocs voisins. Un macrobloc de résidus est généré en soustrayant du macrobloc intra le macrobloc de prédiction associé. Ce macrobloc de résidus est divisé en 16 blocs 4x4 disjoints qui sont transformés par la transformée H. Les 16 coefficients basse fréquence (appelés coefficients DC) ainsi obtenus sont à leur tour transformés par une transformée de Hadamard 4x4. Dans la suite du document, la transformée T qui est appliquée sur un macrobloc désigne une transformée 4x4 H appliquée sur chacun des blocs 4x4 du macrobloc si le macrobloc est codé en mode intra4x4 et une transformée 4x4 H appliquée sur chacun des blocs 4x4 du macrobloc suivie d'une transformée de Hadamard appliquée sur les coefficients DC si le macrobloc est codé en mode intral6x16.  In accordance with conventional video compression standards, such as MPEG-2, MPEG-4, and H.264, the images of a sequence of images may be of intra type (I-picture), ie encoded without reference to other images of the sequence or inter type (ie P and B images), ie encoded by being predicted from other images of the sequence. The images are generally divided into macroblocks themselves divided into blocks of disjoint pixels of size N pixels by P pixels, called NxP blocks. These macroblocks are themselves coded according to an intra or inter coding mode. More precisely, all the macroblocks in an image I are coded according to the intra mode while the macroblocks in a picture P can be coded in an inter or intra mode. The possibly predicted macroblocks are then transformed block by block using a transform for example a Discrete Cosine Transform in English referenced DCT or a Hadamard transform. The blocks thus transformed are quantized and then coded using generally variable length codes. In the particular case of the MPEG-2 standard, the macroblocks of size 16 by 16 pixels are divided into 8x8 blocks themselves transformed with an 8x8 DCT in transformed 8x8 blocks. In the case of H.264, the intra type macroblocks relating to the luminance component can be encoded according to the intra4x4 mode or the intral6x16 mode. An intra-coded macroblock in intra4x4 mode is divided into 16 4x4 disjoint blocks. Each 4x4 block is spatially predicted relative to some neighboring blocks located in a causal neighborhood, i.e. to each 4x4 block is associated a 4x4 prediction block generated from said neighboring blocks. 4x4 blocks of residuals are generated by subtracting from each of the 4x4 blocks the associated 4x4 prediction block. The 16 residue blocks thus generated are transformed by an integral 4x4 transform H which approximates a 4x4 DCT. An intral6x16 intra-coded macroblock is spatially predicted relative to some neighboring macroblocks located in a causal neighborhood, i.e. a 16x16 prediction block is generated from said neighbor macroblocks. A residue macroblock is generated by subtracting from the intra macroblock the associated prediction macroblock. This macroblock of residues is divided into 16 4x4 disjoint blocks which are transformed by the H transform. The 16 low frequency coefficients (called DC coefficients) thus obtained are in turn transformed by a 4x4 Hadamard transform. In the remainder of the document, the transform T that is applied to a macroblock designates a 4x4 H transform applied to each of the 4x4 blocks of the macroblock if the macroblock is encoded in intra4x4 mode and a 4x4 H transform applied to each of the 4x4 blocks of the macroblock followed. a Hadamard transform applied to the DC coefficients if the macroblock is coded in intral6x16 mode.

Nous introduisons ici la notion de ST-block. La terme désigne une concaténation dans l'espace et dans le temps de block codé (en mpeg-4 par exemple) ou, indifféremment, de bloc de pixels. Un ST block est donc un sous ensemble particulier dans l'espace et dans le temps de la vidéo. Il peut correspondre à plusieurs blocs tels que décrits précédemment, à une image entière. Il correspond à l'unité de découpage de la vidéo. Les blocs N, N+1, N+2 représentés en figure 1 représentent chacun un ST-bloc. On applique au ST-bloc N une méthode de cryptographie décrite ultérieurement en référence à la figure 2, comprenant une fonction de hash et un chiffrement asymétrique. A l'issue de l'application de cette méthode de cryptographie, on obtient des données d'authentification de N. Ces données d'authentification sont alors insérées dans le bloc N+1 suivant de la vidéo sur lequel on va également appliquer la méthode cryptographie afin d'en obtenir des données d'authentification que l'on insère dans le bloc N+2 suivant et ainsi de suite.  We introduce here the notion of ST-block. The term denotes a concatenation in space and time coded block (in mpeg-4 for example) or, indifferently, block of pixels. An ST block is therefore a particular subset in the space and time of the video. It can correspond to several blocks as described above, to an entire image. It corresponds to the cutting unit of the video. The blocks N, N + 1, N + 2 shown in FIG. 1 each represent an ST-block. The ST-block N is applied to a cryptography method described later with reference to FIG. 2, comprising a hash function and asymmetric encryption. At the end of the application of this cryptographic method, N authentication data is obtained. This authentication data is then inserted into the next N + 1 block of the video on which the method will also be applied. cryptography to obtain authentication data that is inserted in the next block N + 2 and so on.

Ceci permet avantageusement de ne pas modifier les blocs après calcul du hash. Sinon, le bloc ne serait plus intègre à l'arrivée. Le bloc suivant est certes modifié mais de manière imperceptible, de part les propriétés du tatouage. Il n'y a donc pas de violation de l'intégrité sémantique du contenu.  This advantageously makes it possible not to modify the blocks after calculating the hash. Otherwise, the block would be more honest on arrival. The next block is certainly modified but imperceptibly, because of the properties of the tattoo. There is no violation of the semantic integrity of the content.

En outre, cette méthode permet également de contrôler ou de vérifier l'intégrité du chaînage des blocs, c'est-à-dire l'intégrité temporelle de la séquence. Supposons que l'on supprime la suite [N ;N+K] des blocs. La signature extraite de l'image N+K+1 ne correspond pas alors à la signature de l'image N-1, sauf si les images N+K+1 et N-1 étaient originellement identiques ; or, ce cas est extrêmement peu probable à cause de la variabilité intrinsèque des capteurs (bruit thermique etc.) . Ce mécanisme présente l'intérêt de pouvoir être implémenté au fil de l'eau, donc avec un gain mémoire important et une latence de traitement très faible. Une implémentation temps réelle à bas coût est donc envisageable, ce qui n'est pas le cas avec les approches itératives ou globales de l'état de l'art. Cette faible complexité est particulièrement intéressante dans une application de vidéo surveillance puisque, pour assurer un niveau de sécurité maximal, l'algorithme doit être opéré au plus proche du capteur.  In addition, this method also makes it possible to control or verify the integrity of the chaining of the blocks, that is to say the temporal integrity of the sequence. Suppose we delete the sequence [N; N + K] of the blocks. The signature extracted from the image N + K + 1 does not then correspond to the signature of the image N-1, except if the images N + K + 1 and N-1 were originally identical; however, this case is extremely unlikely because of the intrinsic variability of the sensors (thermal noise, etc.). This mechanism has the advantage of being implemented over the water, so with a large memory gain and a very low processing latency. A real-time implementation at low cost is therefore possible, which is not the case with the iterative or global approaches of the state of the art. This low complexity is particularly interesting in a video surveillance application since, to ensure a maximum level of security, the algorithm must be operated closer to the sensor.

D'autre part, le découpage en bloc est particulièrement bien adapté au critère de localité définissant l'intégrité souple. L'algorithme permet en effet de déterminer quel(s) bloc(s) ont été altérés. Cette information peut être particulièrement intéressante pour savoir si des zones cruciales de la vidéo ont été altérées, auquel cas on peut suspecter une modification frauduleuse, ou si l'altération porte sur des zones peu importantes de la scène.  On the other hand, the block division is particularly well suited to the locality criterion defining the flexible integrity. The algorithm makes it possible to determine which block (es) have been altered. This information can be particularly interesting to know if crucial areas of the video have been altered, in which case one can suspect a fraudulent modification, or if the alteration relates to minor areas of the scene.

Notons qu'il est nécessaire de dimensionner la taille des blocs en fonction d'un compromis sécurité / complexité de traitement / localisation des artefacts.  Note that it is necessary to size the blocks according to a compromise between security / complexity of processing / location of the artifacts.

La figure 2 représente un algorithme de cryptographie utilisé dans le mode de réalisation préféré de l'invention. Cet algorithme de cryptographie comprend tout d'abord une fonction de hash, étape El, suivie d'une fonction de calcul de signature numérique, étape E2. La fonction de hachage utilisée permet d'obtenir une version condensée du ST-bloc sur laquelle on calcule alors une signature numérique.  Figure 2 shows a cryptographic algorithm used in the preferred embodiment of the invention. This cryptographic algorithm firstly comprises a hash function, step E1, followed by a digital signature calculation function, step E2. The hash function used makes it possible to obtain a condensed version of the ST-block on which a digital signature is then calculated.

La fonction de hash utilisée est une fonction de type sha-1 . La fonction de sha-1 prend en entrée les coefficients du macro-bloc et produit en sortie un condensé du bloc présenté en entrée. Dans d'autres modes de réalisation, on peut également prendre une fonction de type SHA-256, SHA-384 ou SHA-512, MD5, Whirepool ou TIGER. Sur ce condensé du ST-bloc N, on applique un algorithme de signature lors de l'étape E2. La signature utilisée est l'algorithme ElGamal. Dans d'autres modes de réalisation, on peut également prendre une fonction de signature de type RSA.  The hash function used is a function of type sha-1. The function of sha-1 takes as input the coefficients of the macro-block and outputs a digest of the block presented as input. In other embodiments, one can also take a SHA-256, SHA-384 or SHA-512, MD5, Whirepool or TIGER function. On this digest of ST-block N, a signature algorithm is applied during step E2. The signature used is the ElGamal algorithm. In other embodiments, it is also possible to take an RSA type signature function.

On peut dériver de tout algorithme de chiffrement asymétrique un algorithme de signature numérique de la manière suivante : on applique la fonction de déchiffrement D() (utilisant la clé privée KS) au document à signer m, ou préférentiellement à son condensé H(m), pour obtenir la signature S = D(H(m)).  An asymmetric encryption algorithm can be derived from a digital signature algorithm as follows: the decryption function D () (using the private key KS) is applied to the document to be signed m, or preferentially to its condensed H (m) , to obtain the signature S = D (H (m)).

Dans les crypto systèmes asymétriques, on utilise une clé de chiffrement (appelée clé publique Kp) différente de la clé de déchiffrement (appelée clé privée ou clé secrète KS). La clé publique est générée à partir de la clé privée : il est facile de générer Kp à partir de Ks, mais extrêmement difficile (en terme de temps de calcul et de ressources) de générer Ks à partir de Kp. La personne désirant chiffrer ou signer ses messages choisit une clé secrète, par exemple en tirant un nombre aléatoire, puis génère la clé publique à partir de cette clé secrète. Elle maintient Ks strictement cachée, et divulgue Kp.  In asymmetric crypto systems, an encryption key (called public key Kp) different from the decryption key (called private key or secret key KS) is used. The public key is generated from the private key: it is easy to generate Kp from Ks, but it is extremely difficult (in terms of computation time and resources) to generate Ks from Kp. The person wishing to encrypt or sign his messages chooses a secret key, for example by drawing a random number, then generates the public key from this secret key. She keeps Ks strictly hidden, and divulges Kp.

Par exemple, pour le système de signature El Gamal, la clé secrète Ks est un nombre x choisi de façon aléatoire. On calcule ensuite y = gX mod[p] à partir d'un nombre p premier et d'un nombre g. La clé publique Kp est alors constituée des nombres (y,p,g). Les propriétés des calculs sur les entiers modulo p font qu `il est extrêmement difficile de retrouver x à partir de (y,p,g).  For example, for the El Gamal signature system, the secret key Ks is a random number x. We then calculate y = gX mod [p] from a prime number p and a number g. The public key Kp then consists of the numbers (y, p, g). The properties of calculations on integers modulo p make it extremely difficult to find x from (y, p, g).

La signature du message m est une paire (r,$) telle que : gm = yr rs mod[p] Pour vérifier la signature, on regarde si l'égalité gm = yrrs mod[p] est vérifiée.  The signature of the message m is a pair (r, $) such that: gm = yr rs mod [p] To verify the signature, we examine whether the equality gm = yrrs mod [p] is verified.

On obtient alors en sortie une signature numérique pour le bloc. Cette signature numérique est alors insérée dans le bloc suivant N+1 en utilisant des techniques connues de tatouage. Avant l'insertion de la signature par tatouage, on encode la signature numérique en utilisant un code correcteur d'erreur, de type BCH par exemple. Une technique de tatouage possible consiste à découper le ST-bloc N+1 en un ensemble de k blocs DCT (k étant au moins égal à la taille de la signature numérique), et à appliquer l'algorithme de tatouage suivant : Un procédé de tatouage connu, appliqué par exemple dans l'espace de transformation DCT aux blocs 8x8 transformés notés Bg gT d'une image à tatouer, consiste à modifier éventuellement pour chaque bloc Bg gT la relation d'ordre existant entre les valeurs absolues de deux de ses coefficients DCT, notés F1 et T2. La signature S du ST-bloc N est une suite de j bits {bl,b2...bj}. Le ST-15 bloc N+1 comprend un ensemble de k blocs DCT Bg gT (k>=j). Dans chacun de ces blocs Bg gT on insère un des bits bi de la signature du ST-bloc N. Cette insertion est réalisée par l'application de l'algorithme de tatouage ci-dessous.  A digital signature is then output for the block. This digital signature is then inserted into the next block N + 1 using known tattooing techniques. Before the tattoo signature is inserted, the digital signature is enciphered using an error correction code, of the BCH type, for example. A possible tattooing technique consists of cutting the ST-block N + 1 into a set of k DCT blocks (k being at least equal to the size of the digital signature), and applying the following tattoo algorithm: known tattoo, applied for example in the DCT transformation space transformed 8x8 blocks noted Bg gT of an image to tattoo, is to possibly modify for each block Bg gT the order relationship existing between the absolute values of two of its DCT coefficients, denoted F1 and T2. The signature S of ST-block N is a sequence of j bits {bl, b2 ... bj}. The ST-15 N + 1 block comprises a set of k DCT blocks Bg gT (k> = j). In each of these blocks Bg gT, one of the bi bits of the signature of the ST-block N is inserted. This insertion is carried out by the application of the tattoo algorithm below.

En général, ces deux coefficients sont sélectionnés pour un bloc donné 20 à l'aide d'une clé secrète. Le bit bi de l'empreinte associé à un bloc Bg gT est inséré dans ce bloc en modifiant la relation d'ordre existant entre les valeurs absolues des deux coefficients F1 et F2. Afin de contrôler la visibilité du tatouage, on ne modifie les coefficients d'un bloc que si la relation suivante est vérifiée: 25 rl û 11-'2 Il <Th où Th est un seuil paramétrable. Les coefficient F1 et F2 sont modifiés de telle sorte que la relation d'ordre suivante soit vérifiée : F1 = 1F'21+ d * BZ (1) où : - F1 et I'2 sont les coefficients F1 et F2 modifiés. 30 - d est un paramètre de marquage appelé distance de marquage , et - Bi est un coefficient dont la valeur est définie comme suit : Bi =1 si bi=0 et Bi = -1 si bi=1. F1 et F2 peuvent être modifiés de diverses façons afin d'assurer la relation définie précédemment. Définissons e1 = ri ûF1 et e2 = r2 -F2, les valeurs de e1 et e2 sont définies pour chaque bloc Bg gT de la manière suivante : e1 =ùT1+signe(T1)*(f (T1,F2)+di) et e2 =ùT2+signe(T2)*(f2(T1,T2)+d2) Le choix de la fonction/ est libre, on peut par exemple choisir fi(F1,T2) = f2(F1,T2) = F2 .Par exemple, dans le cas ou bi=O, choisissons d2 = -1F21 et dl = -1F21+ d , alors la relation d'ordre (1) est bien vérifiée. Dans le cas où bi=1, choisissons di = ûF2 et d2 = ûF2 û d , alors la relation d'ordre (1) est également vérifiée. Les valeurs de d et de Th varient en fonction de l'application et notamment en fonction du risque de piratage. En effet, plus la valeur de d est élevée, plus le tatouage est robuste mais plus il est visible. Ainsi pour conserver une bonne qualité visuelle de la séquence d'images, la force de marquage doit être limitée.  In general, these two coefficients are selected for a given block 20 using a secret key. The bit bi of the footprint associated with a block Bg gT is inserted into this block by modifying the order relation existing between the absolute values of the two coefficients F1 and F2. In order to control the visibility of the watermarking, the coefficients of a block are only modified if the following relation is satisfied: 25 rl û 11 -'2 Il <Th where Th is a parameterizable threshold. The coefficients F1 and F2 are modified so that the following order relation is satisfied: F1 = 1F'21 + d * BZ (1) where: F1 and I'2 are the modified coefficients F1 and F2. 30 - d is a marking parameter called marking distance, and - Bi is a coefficient whose value is defined as follows: Bi = 1 if bi = 0 and Bi = -1 if bi = 1. F1 and F2 can be modified in various ways to ensure the relationship defined above. Let us define e1 = ri ûF1 and e2 = r2 -F2, the values of e1 and e2 are defined for each block Bg gT as follows: e1 = ùT1 + sign (T1) * (f (T1, F2) + di) and e2 = ùT2 + sign (T2) * (f2 (T1, T2) + d2) The choice of the function / is free, we can for example choose fi (F1, T2) = f2 (F1, T2) = F2 .By example, in the case where bi = O, choose d2 = -1F21 and d1 = -1F21 + d, then the relation of order (1) is well verified. In the case where bi = 1, choose di = ûF2 and d2 = ûF2 û d, then the order relation (1) is also verified. The values of d and Th vary according to the application and in particular according to the risk of piracy. Indeed, the higher the value of d, the more robust the tattoo is but the more visible it is. Thus to maintain a good visual quality of the image sequence, the marking force must be limited.

Une fois la signature S insérée dans le bloc N+1, on calcule la signature du bloc N+1 comme indiquée précédemment pour le bloc N. Le dernier bloc de la vidéo n'est donc pas protégé, puisque l'on ne peut pas tatouer sa signature dans le bloc suivant, qui n'existe pas. Cependant, si l'on travaille au fil de l'eau sur un flux vidéo, par exemple si on veut certifier l'intégrité d'une vidéo acquise par une caméra de surveillance qui tourne en continu, on n'a jamais de dernier bloc et donc la protection est toujours garantie. Sur une vidéo bornée, il faut veiller àdimensionner la taille des blocs de telle sorte qu'une perte d'intégrité sur le dernier bloc ne soit pas importante. Remarquons que l'on n'a alors pas besoin de procéder dans l'ordre temporel ni spatial ayant la totalité de la vidéo à disposition, on peut réordonner les blocs de la vidéo de n'importe quelle façon (le bloc n+1 ne sera alors pas forcément situé après le bloc n). on peut alors choisir un bloc peu important pour la sémantique de la vidéo comme étant le bloc de fin.  Once the signature S inserted in the block N + 1, the signature of the block N + 1 is calculated as indicated previously for the block N. The last block of the video is therefore not protected, since one can not tattoo his signature in the next block, which does not exist. However, if you work on the water in a video stream, for example if you want to certify the integrity of a video acquired by a surveillance camera that runs continuously, we never have a last block and so the protection is always guaranteed. On a bounded video, care must be taken to size the blocks so that a loss of integrity on the last block is not important. Note that we do not need to proceed in the temporal or spatial order with all the video available, we can reorder the blocks of the video in any way (the n + 1 block does not will not necessarily be located after block n). we can then choose an unimportant block for the semantics of the video as being the end block.

Pour vérifier l'intégrité du document m', on calcule son condensé H(m') en appliquant la fonction de hachage. Ensuite, on applique la fonction de chiffrement asymétrique CO (utilisant la clé publique Kp) à la signature S : C(S) = C(D(H(m))) = H(m) On obtient alors le condensé du document initial H(m), que l'on compare avec le condensé H(m') du document suspect m': si les deux sont égaux, alors l'intégrité du document est vérifiée.  To check the integrity of the document m ', we calculate its digest H (m') by applying the hash function. Then, we apply the asymmetric encryption function CO (using the public key Kp) to the signature S: C (S) = C (D (H (m))) = H (m) We then obtain the digest of the initial document H (m), which we compare with the condensate H (m ') of the suspect document m': if both are equal, then the integrity of the document is verified.

Claims (8)

Revendicationsclaims 1. Procédé de tatouage numérique comprenant les étapes de - décomposition de la vidéo en blocs (N, N+1,N+2) - calcul (El, E2) pour chaque bloc de ladite vidéo d'une signature numérique (S), caractérisé en ce qu'il comprend en outre une étape d'insertion dans un second bloc (N+1) de ladite signature (S) relative à un premier bloc (N), avant le calcul de ladite signature (S) dudit second bloc (N+1).  A digital tattooing method comprising the steps of: - decomposing the video into blocks (N, N + 1, N + 2) - calculating (E1, E2) for each block of said video of a digital signature (S), characterized in that it further comprises a step of insertion in a second block (N + 1) of said signature (S) relating to a first block (N), before the calculation of said signature (S) of said second block (N + 1). 2. Procédé de tatouage numérique selon la revendication 1 caractérisé en ce que lors de l'étape de calcul de ladite signature numérique (El, E2), on applique à chaque bloc une fonction de hash et une fonction de chiffrement asymétrique.  2. Digital tattooing method according to claim 1 characterized in that during the step of calculating said digital signature (E1, E2), is applied to each block a hash function and an asymmetric encryption function. 3. Procédé selon l'une des revendications précédentes caractérisé en ce que lesdits blocs (N, N+1, N+2) comprennent une suite de sous-blocs (B" représentatifs d'une décomposition fréquentielle de ladite vidéo.  3. Method according to one of the preceding claims characterized in that said blocks (N, N + 1, N + 2) comprise a series of sub-blocks (B "representative of a frequency decomposition of said video. 4. Procédé selon l'une des revendications précédentes caractérisé en ce que, lesdits premiers (N) et second blocs (N+1) sont des blocs adjacents temporellement et spatialement.  4. Method according to one of the preceding claims characterized in that, said first (N) and second blocks (N + 1) are adjacent blocks temporally and spatially. 5. Procédé selon les revendications 3 et 4 caractérisé en ce que, ladite signature (S) étant une suite de bits (bi), on insère ladite signature (S) relative à un premier bloc (N) dans le second bloc (N+1), en insérant dans chacun des sous-blocs (B8 8r) dudit second bloc (N+1) un desdits bit (bi) de ladite signature (S) dudit premier bloc (N).  5. Method according to claims 3 and 4 characterized in that, said signature (S) being a sequence of bits (bi), inserting said signature (S) relating to a first block (N) in the second block (N + 1), inserting into each of the sub-blocks (B8 8r) of said second block (N + 1) one of said bit (bi) of said signature (S) of said first block (N). 6. Procédé selon la revendication g 5 caractérisé en ce que, lors de l'insertion desdits bits (bi) dans lesdits sous-blocs (Bg 8T ), on modifie l'ordre de coefficients (I'1,F2) dudit sous-bloc (B8 8T ).  6. Method according to claim 5, characterized in that, during the insertion of said bits (bi) into said sub-blocks (Bg 8T), the order of coefficients (I'1, F2) of said sub-block is modified. block (B8 8T). 7. Procédé selon la revendication 6 caractérisé en ce que l'on choisit les coefficients (F1,r'2) à modifier de telle sorte que la valeur absolue de la différence de leur valeurs absolues soit inférieure à un seuil prédéterminé (Th).  7. The method of claim 6 characterized in that one chooses the coefficients (F1, r'2) to be modified so that the absolute value of the difference of their absolute values is less than a predetermined threshold (Th). 8. Procédé selon la revendication 3 caractérisé en ce que lesdits sous-blocs (B$T) sont représentatifs d'une décomposition par la transformation de Fourrier (DCT) de ladite vidéo.  8. Method according to claim 3 characterized in that said sub-blocks (B $ T) are representative of a decomposition by the Fourier transformation (DCT) of said video.
FR0650294A 2006-01-27 2006-01-27 METHOD FOR TATOOTING DIGITAL DATA Pending FR2896938A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR0650294A FR2896938A1 (en) 2006-01-27 2006-01-27 METHOD FOR TATOOTING DIGITAL DATA
PCT/EP2007/050732 WO2007085632A1 (en) 2006-01-27 2007-01-25 Method of watermarking digital data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0650294A FR2896938A1 (en) 2006-01-27 2006-01-27 METHOD FOR TATOOTING DIGITAL DATA

Publications (1)

Publication Number Publication Date
FR2896938A1 true FR2896938A1 (en) 2007-08-03

Family

ID=36950143

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0650294A Pending FR2896938A1 (en) 2006-01-27 2006-01-27 METHOD FOR TATOOTING DIGITAL DATA

Country Status (2)

Country Link
FR (1) FR2896938A1 (en)
WO (1) WO2007085632A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010063680A1 (en) 2008-12-05 2010-06-10 Thales Method and device for embedding a binary sequence in a compressed video stream

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009101491A2 (en) * 2007-12-28 2009-08-20 France Telecom Scalable encoding method and system
CN102497597B (en) * 2011-12-05 2013-11-06 中国华录集团有限公司 Method for carrying out integrity checkout on HD (high-definition) video files
CN105005723B (en) * 2015-06-30 2017-10-03 广东欧珀移动通信有限公司 A kind of picture portion display methods and user terminal
US10123031B2 (en) 2015-07-02 2018-11-06 Cisco Technology, Inc. MPEG-2 video watermarking technique

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000075925A1 (en) * 1999-06-08 2000-12-14 Intertrust Technologies Corp. Method and systems for protecting data using digital signature and watermark
WO2002039714A2 (en) * 2000-11-08 2002-05-16 Digimarc Corporation Content authentication and recovery using digital watermarks
US20040264732A1 (en) * 2000-08-24 2004-12-30 Jun Tian Digital authentication with digital and analog documents

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000075925A1 (en) * 1999-06-08 2000-12-14 Intertrust Technologies Corp. Method and systems for protecting data using digital signature and watermark
US20040264732A1 (en) * 2000-08-24 2004-12-30 Jun Tian Digital authentication with digital and analog documents
WO2002039714A2 (en) * 2000-11-08 2002-05-16 Digimarc Corporation Content authentication and recovery using digital watermarks

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010063680A1 (en) 2008-12-05 2010-06-10 Thales Method and device for embedding a binary sequence in a compressed video stream
US8553995B2 (en) 2008-12-05 2013-10-08 Thales Method and device for embedding a binary sequence in a compressed video stream

Also Published As

Publication number Publication date
WO2007085632A1 (en) 2007-08-02

Similar Documents

Publication Publication Date Title
Zhou et al. Secure reversible image data hiding over encrypted domain via key modulation
EP0997042B1 (en) Method for marking a compressed digital video signal
Oostveen et al. Visual hashing of digital video: applications and techniques
Tagliasacchi et al. Hash-based identification of sparse image tampering
KR101143233B1 (en) Desynchronized fingerprinting method and system for digital multimedia data
US20050193206A1 (en) Digital watermarking system using a cryptographic key
Lin et al. Image authentication using distributed source coding
Manisha et al. A two-level secure data hiding algorithm for video steganography
US20030215111A1 (en) Image processing apparatus, image processing system, electronic information apparatus, image processing method, control program, and computer-readable recording medium
EP1473944A2 (en) Digital video watermarking method with adaptive selection of the watermarking area, watermarking detection method, device, corresponding computer readable storage medium and computer program product.
KR101677110B1 (en) Watermark extracting and insertion apparatus for video forgery detection and prevention based zero-knowledge and the method thereof
FR2896938A1 (en) METHOD FOR TATOOTING DIGITAL DATA
Rajalakshmi et al. Robust secure video steganography using reversible patch-wise code-based embedding
WO2014147077A1 (en) Method and device for generating protected data, method and device for retrieving watermarked source data and computer program corresponding thereto
Ling et al. Watermarking for image authentication
Sowmya et al. Video authentication using watermark and digital signature—a study
EP2364489B1 (en) Method and device for embedding a binary sequence in a compressed video stream
EP3985989A1 (en) Detection of modification of an item of content
Mahajan et al. CEET: A Compressed Encrypted & Embedded Technique for Digital Image Steganography
EP3602478B1 (en) Video watermarking
Upendra Raju et al. Data hiding steganography model based on hyper chaos 2D compressive sensing inhabited with manchester encoder/decoder using circular queue exploiting modification direction
Masoodhu Banu et al. Improved tampering detection for image authentication based on image partitioning
Rossi et al. Peak-shaped-based steganographic technique for JPEG images
Aboalsamh et al. Steganalysis of JPEG images: an improved approach for breaking the F5 algorithm
Liu A novel image authentication and recovery method for applications of image sharing