Fragile watermarks for detecting tampering in images
First Claim
1. A method of watermarking a compressed digital image, comprising the steps of:
- partially decoding the compressed digital image to generate a plurality of data blocks, each block having a plurality of transform coefficients;
determining whether to embed a watermark bit in each block based on one of the plurality of transform coefficients in that block and a number of watermark bits remaining to be embedded in the digital image;
computing a watermark, having a plurality of bits, for the entire digital image by applying a digital signature algorithm and a secret key; and
embedding a watermark bit in each block for which it was determined to do so in said determining step by setting the one of the plurality of transform coefficients in that block to match a corresponding bit of the computed watermark.
2 Assignments
0 Petitions
Accused Products
Abstract
A watermarking scheme for images which includes techniques for inserting and extracting fragile watermarks in the frequency domain and for determining whether an image so watermarked has been tampered with. Watermark insertion is accomplished by embedding the bits of a digital signature of a hash function of the image in the frequency coefficients of the image. Tamper detection is accomplished generally as follows: the fragile watermark which was embedded during the watermark insertion process is extracted from the image; the hash function of the image is computed as in the insertion process; it is verified using a public key whether the extracted watermark is a valid signature of the hash value. If so, then there is assurance that the image has not been tampered with. Otherwise, there is reason to conclude that the image has been tampered with.
486 Citations
21 Claims
-
1. A method of watermarking a compressed digital image, comprising the steps of:
-
partially decoding the compressed digital image to generate a plurality of data blocks, each block having a plurality of transform coefficients; determining whether to embed a watermark bit in each block based on one of the plurality of transform coefficients in that block and a number of watermark bits remaining to be embedded in the digital image; computing a watermark, having a plurality of bits, for the entire digital image by applying a digital signature algorithm and a secret key; and embedding a watermark bit in each block for which it was determined to do so in said determining step by setting the one of the plurality of transform coefficients in that block to match a corresponding bit of the computed watermark. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of watermarking a compressed digital image, comprising the steps of:
-
computing a watermark, having a plurality of bits, for the entire digital image, comprising the steps of; partially decoding the compressed digital image to generate a plurality of data blocks, each block having a plurality of transform coefficients; obtaining a quantizer of the one of the plurality of transform coefficients in each block; multiplying the one of the plurality of transform coefficients in each block by its quantizer; determining whether to embed a watermark bit in each block based on one of the plurality of transform coefficients in that block that is representative of a highest vertical frequency and a highest horizontal frequency in that block and a number of watermark bits remaining to be embedded in the digital image; setting to zero at least one bit of the one of the plurality of transform coefficients in each block for which it is determined in said determining step to embed a watermark bit; updating a hash value at each block by applying a hash function at each block, wherein the hash value computed at a last block is a multiple-bit hash value representative of the entire digital image; and applying a secret key and a digital signature algorithm to the multiple-bit hash value to compute the watermark; and embedding a watermark bit in each block for which it was determined to do so in said determining step by setting the at least one bit of the one of the plurality of transform coefficients in that block to match a corresponding bit of the computed watermark.
-
-
8. A method of detecting tampering of a compressed watermarked image, comprising the steps of:
-
partially decoding the compressed watermarked image to generate a plurality of data blocks, each block having a plurality of transform coefficients; determining each block in which a watermark bit is embedded; extracting, from each block for which it was determined in said determining step to be an embedder of a watermark bit, at least one bit of one of the plurality of transform coefficients in that block to generate an extracted watermark; computing a hash value of the digital image by applying a hash function at each block based on a zeroed value of the at least one bit of one of the plurality of transform coefficients in that block, wherein the hash value computed at a last block is a multiple-bit value representative of the entire digital image; and applying a digital signature verification algorithm to the extracted watermark and the multiple-bit computed hash value and a public key to determine whether the compressed watermarked image has been tampered with. - View Dependent Claims (9)
-
-
10. An image capturing device, comprising:
-
a sensor for capturing light and converting the light into an analog image signal; an analog-to-digital converter for converting the analog image signal to a digital image; and a digital image processor for compressing the digital image to generate a plurality of data blocks, each block having a plurality of transform coefficients, determining whether to embed a watermark bit in each block based on one of the plurality of transform coefficients in that block and a number of watermark bits remaining to be embedded in the digital image, computing a watermark, having a plurality of bits, for the entire digital image, and embedding a watermark bit in each block for which it was determined to do so by setting the one of the plurality of transform coefficients in that block to match a corresponding bit of the computed watermark. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A computer system including a processor and a memory having a computer-readable readable program code embodied therein for causing the processor to detect tampering of a compressed watermarked digital image by performing the steps of:
-
partially decoding the compressed watermarked image to generate a plurality of data blocks, each block having a plurality of transform coefficients; determining each block in which a watermark bit is embedded; extracting, from each block for which it was determined in said determining step to be an embedder of a watermark bit, at least one bit of one of the plurality of transform coefficients in that block to generate an extracted watermark; computing a hash value of the digital image by applying a hash function at each block based on a zeroed value of the at least one bit of one of the plurality of transform coefficients in that block, wherein the hash value computed at a last block is a multiple-bit value representative of the entire digital image; and comparing the extracted watermark with the multiple-bit value by applying a digital signature verification algorithm to determine whether the compressed watermarked image has been tampered with. - View Dependent Claims (16)
-
-
17. A method of watermarking a digital image, having a plurality of pixels, comprising the steps of:
-
computing a watermark, having a plurality of bits, for the entire digital image, comprising the steps of; determining whether to embed a watermark bit in each pixel based on one of a plurality of bits representative of that pixel and a number of watermark bits remaining to be embedded in the digital image; setting to zero at least one bit of each pixel for which it is determined in said determining step to embed a watermark bit; updating a hash value at each pixel by applying a hash function at each pixel, wherein the hash value computed at a last pixel is a multiple-bit hash value representative of the entire digital image; and applying a secret key and a digital signature algorithm to the multiple-bit hash value to compute the watermark; and embedding a watermark bit in each pixel for which it was determined to do so in said determining step by setting the at least one bit of that pixel to match a corresponding bit of the computed watermark. - View Dependent Claims (18)
-
-
19. A method of detecting tampering of a watermarked digital image, having a lo plurality of pixels, comprising the steps of:
-
determining each pixel in which a watermark bit is embedded; extracting, from each pixel for which it was determined in said determining step to be an embedder of a watermark bit, at least one of a plurality of bits representative of that pixel to generate an extracted watermark; computing a hash value of the digital image by applying a hash function at each pixel based on a zeroed value of the at least one bit of that pixel, wherein the hash value computed at a last pixel is a multiple-bit value representative of the entire digital image; and applying a digital signature verification algorithm to the extracted watermark and the multiple-bit computed hash value and a public key to determine whether the compressed watermarked image has been tampered with. - View Dependent Claims (20)
-
-
21. A method of watermarking a compressed digital image, comprising the steps of:
-
adding a visible watermark; computing an invisible watermark from the digital image and the visible watermark, comprising the steps of; partially decoding the compressed digital image to generate a plurality of data blocks, each block having a plurality of transform coefficients; obtaining a quantizer of the one of the plurality of transform coefficients in each block; multiplying the one of the plurality of transform coefficients in each block by its quantizer; determining whether to embed an invisible watermark bit in each block based on one of the plurality of transform coefficients in that block that is representative of a highest vertical frequency and a highest horizontal frequency in that block and a number of invisible watermark bits remaining to be embedded in the digital image; setting to zero at least one bit of the one of the plurality of transform coefficients in each block for which it is determined in said determining step to embed an invisible watermark bit; updating a hash value at each block by applying a hash function at each block, wherein the hash value computed at a last block is a multiple-bit hash value representative of the entire digital image; and applying a secret key and a digital signature algorithm to the multiple-bit hash value to compute the invisible watermark; and embedding an invisible watermark bit in each block for which it was determined to do so in said determining step by setting the at least one bit of the one of the plurality of transform coefficients in that block to match a corresponding bit of the computed invisible watermark.
-
Specification