WO1999011020A1 - Hiding of encrypted data - Google Patents

Hiding of encrypted data Download PDF

Info

Publication number
WO1999011020A1
WO1999011020A1 PCT/US1998/017321 US9817321W WO9911020A1 WO 1999011020 A1 WO1999011020 A1 WO 1999011020A1 US 9817321 W US9817321 W US 9817321W WO 9911020 A1 WO9911020 A1 WO 9911020A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
carrier signal
encrypted message
sequence
encryption
Prior art date
Application number
PCT/US1998/017321
Other languages
French (fr)
Inventor
Jordan J. Glogau
Edward J. Delp, Iii
Raymond B. Wolfgang
Eugene Ted Lin
Original Assignee
Purdue Research Foundation
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 Purdue Research Foundation filed Critical Purdue Research Foundation
Priority to US09/485,759 priority Critical patent/US6912658B1/en
Publication of WO1999011020A1 publication Critical patent/WO1999011020A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • 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/32154Transform domain methods
    • 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/32208Spatial or amplitude domain methods involving changing the magnitude of selected pixels, e.g. overlay of information or super-imposition
    • H04N1/32213Modulating the least significant bits of pixels
    • 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/32309Methods relating to embedding, encoding, decoding, detection or retrieval operations in colour image data
    • 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/0081Image watermarking whereby both original and watermarked images are required at decoder, e.g. destination-based, non-blind, non-oblivious
    • 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/16Obfuscation or hiding, e.g. involving white box
    • 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/3261Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of multimedia information, e.g. a sound signal
    • 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
    • H04N2201/327Display, 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 which are undetectable to the naked eye, e.g. embedded codes
    • 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/328Processing of the additional information
    • H04N2201/3281Encryption; Ciphering

Definitions

  • the present invention relates to methods and apparatus for hiding data within a digital signal, and particularly for concealing information within multimedia signals such as digital image, audio, or video signals. More particularly, the present invention relates to methods and apparatus for embedding and retrieving information into and out of a digital signal used in multimedia applications while minimizing the effect on the multimedia application of the digital signal.
  • a method of hiding data is provided.
  • a message to be hidden and an encrypting sequence are provided along with a carrier signal that conveys information (unrelated to the message).
  • An encrypted message is generated based on the message and the encrypting sequence.
  • the encrypted message is embedded into the carrier signal by performing an exclusive-OR of the encrypted message with a first portion of the carrier signal.
  • the carrier signal is a digital image
  • the first portion of the carrier signal is an LSB plane of the digital image.
  • the digital image has a plurality of color planes
  • the first portion of the carrier signal is an LSB plane of a first color plane
  • the second portion of the carrier signal is an LSB plane of a second color plane.
  • the carrier signal is transmitted to a receiving location.
  • the encrypted message is extracted and from the carrier signal and deciphered at the receiving location.
  • the encrypted sequence is generated based on an encrypting key.
  • the encrypted message is generated by performing an exclusive-OR of the message with the encrypting sequence.
  • a method of data hiding in which an encryption key and a carrier signal that conveys information unrelated to the encryption key are supplied. An encryption sequence based on the encryption key is generated. The encryption sequence is embedded into the carrier signal.
  • the encryption key is a public key for an asymmetric encryption algorithm.
  • the carrier signal can be a signal such as a digital image, digital audio, or digital video.
  • the encryption sequence is substantially random, and can be generated based on a linear feedback shift register.
  • the encryption sequence is embedded into the carrier signal by performing an exclusive-OR of the encryption sequence with a portion of the carrier signal.
  • the carrier signal including the embedded encryption sequence is transmitted to a receiving location.
  • the encryption sequence is extracted from the composite signal at the receiving location.
  • the encryption sequence is decrypted to obtain the encryption key.
  • the encryption key is used to generate an encrypted message at the receiving location, and the encrypted message is transmitted from the receiving location.
  • a method of data hiding is provided.
  • An encrypted message is embedded into a first portion of a carrier signal and message extraction information is embedded into a second portion of the carrier signal for extracting the encrypted message from the first portion of the carrier signal.
  • the encrypted message is embedded by performing an exclusive-OR of the encrypted message with the first portion of the carrier signal.
  • the message extraction information is embedded by performing an exclusive-OR of the first portion of the carrier signal with the second portion of the carrier signal.
  • the first and second portions of the carrier signal can be first and second bit-planes of a digital image.
  • a method of exchanging data hidden in a carrier signal is provided.
  • a signal including hidden data is generated by transforming a carrier signal from a first domain into a second domain.
  • a message is embedded into the carrier signal in the second domain.
  • the carrier signal is transformed back from the second domain to the first domain.
  • the signal including hidden data is sent to a receiving location.
  • the message is obtained from the signal including hidden data at the receiving location by transforming the signal including hidden data into the second domain and extracting the message.
  • the message is encrypted prior to generating the signal including hidden data.
  • the message is decrypted after obtaining the message from the signal including hidden data.
  • a data hiding apparatus generates an encryption sequence based on an encrypting key.
  • An encrypted message generator generates an encrypted message based on the encryption sequence and an input message.
  • An encrypted message embedder embeds the encrypted message into a carrier signal.
  • the encryption sequence generator generates a substantially random encryption sequence.
  • the encrypted message embedder performs an exclusive-OR of the encrypted message with a portion of the carrier signal.
  • the encrypted message embedder replaces a first LSB plane of a digital image with information based on a second LSB plane of the digital image and performs an exclusive- OR of the encrypted message with the second LSB plane of the digital image.
  • the encrypted message generator performs an exclusive-OR of the input message with the encrypting sequence to generate the encrypted message.
  • Fig. 1 is a block diagram of two computer systems connected over a network, each computer system configured with a processor and memory for implementing embodiments of the present invention
  • Fig. 2 is a flow chart showing a method according to the present invention for hiding data within an image for transmission over a network
  • Fig. 3 is a high level block diagram showing a technique for embedding encrypted information into a carrier signal
  • Fig. 4 is a more detailed block diagram similar to Fig. 3 showing a similar, more specific technique for embedding encrypted information into a carrier signal;
  • Fig. 5 is a stylized representation of a message format containing embedded, hidden information
  • Fig. 6 is a stylized representation similar to Fig. 5 of an alternative message format; and Fig. 7 is a flow chart showing an alternative method according to the present invention for hiding data within an image for transmission over a network.
  • Computer network 10 illustratively includes computer systems 12, 18 connected through a series of network communication devices
  • a network 22 such as the standard telephone lines, or the Internet or World Wide Web.
  • a network 22 such as the standard telephone lines, or the Internet or World Wide Web.
  • Computer systems 12, 18 are illustratively personal computers and each includes basic elements such as a processor 26, 32, memory 28, 34, storage device 30, 36, and display 31, 38.
  • Computer systems 12, 18 can also include optional peripheral devices such as removable storage device 40 (e.g., a CD-ROM or VA inch disk drive).
  • FIG. 2 An exemplary method of data hiding according to the present invention that is suitable for carrying out on computer network 10 is shown in Fig. 2.
  • an image is used to transport and exchange data that is embedded in the image itself and that cannot be perceived by the human eye.
  • An appropriate analogy is that the image acts as an envelope, with the embedded data transmitted with the image being equivalent to a letter contained within the envelope.
  • Conventional encryption such as PGP or RSA is used to enhance security of the embedded data. The security is improved because the encrypted data is hidden within the image and therefore cannot be recognized as such. This allows for secure data communication and exchange over an insecure transmission channel.
  • step 50 an original digital image is obtained.
  • a secret message that is desired to be embedded into the image is generated in step 52.
  • a message encrypting key is used in step 54 to generate an encryption sequence.
  • the message encrypting key can be a seed value for use in generating an m-sequence from a linear feedback shift register as discussed in more detail below, although it is understood that any suitable message encrypting algorithm can be used.
  • the message encrypting key will ultimately be used by the recipient of the image embedded with the secret message.
  • step 56 the secret message from step 52 is encrypted with the encryption sequence from step 54 to create an encrypted message.
  • the encrypted message is then embedded into the image in step 58. There are many methods to embed the encrypted message into the image such as the method discussed below, but, again, it is understood that other suitable methods can be used.
  • the image with the embedded message is then made available such as on a public network as shown in step 60.
  • the secret message from step 52 is actually information that is not desired to be kept secret, such as a public key for an asymmetric encryption algorithm
  • the encryption key from step 54 is also made available on the public network as shown in steps 62, 64.
  • the message can be a public encryption key that is hidden within the image but that is readily available to a party that has knowledge of the fact that the hidden message exists.
  • This provides a convenient way of exchanging information, such as allowing an individual to make a public encryption key available over the World Wide Web by posting it within an image on a Web site, while still concealing the information from the casual observer. It is useful at this point to provide some preliminary definitions before discussing a specific implementation of the method of Fig. 2.
  • the symbol ⁇ denotes a bit exclusive-OR function (equivalently, modulo-2 addition). Table 1 illustrates the exclusive-OR function:
  • a digital image is typically represented with a two dimensional array of pixel values. If A is the array of pixel values, then A(x,y) denotes the pixel value in the x-th column of the y-th row of the array. Each index x,y begins at zero, and by convention the origin is at the upper-left corner with positive coordinates going rightwards and downwards, although this convention is somewhat arbitrary.
  • the digital image is a 24-bit RGB image with pixel values ordered as shown in Table 2: xx
  • bits 16-23 refer to the red component
  • bits 8-15 refer to the green component
  • bits 0-7 refer to the blue component for any given pixel value.
  • Ioo(x,y) refers to the least-significant bit of the green component of the (x,y)- pixel in the image I. Since bit GO is equivalent to bit 8, is equivalent to I 8 (x,y).
  • this labeling convention is somewhat arbitrary.
  • An m-sequence is a pseudo-random sequence of binary digits (bits). m-sequences have good statistical properties and can be generated by linear feedback shift registers (configured appropriately as is known in the art).
  • Knowing the size (number of bits), structure (the feedback configuration), and initial fill (the initial contents of each bit) of the shift register allows the reconstruction of the entire m-sequence.
  • the m-sequences here illustratively are generated by a 96-bit m-sequence generator. If the structure and size of the shift register are known (as would be the case with this embodiment), and if a consecutive portion of the m-sequence equal to twice the shift register size is also known, the initial fill used to generate the sequence can be determined. In this embodiment the initial fill is used as the key that generates the m-sequence. In this way, the key can be determined from the sequence itself by techniques known to those skilled in cryptography.
  • a sequence function z(i) is defined to provide a one-to-one mapping from i->(x,y), where i is an ordinal number and (x,y) refers to coordinate values in an image.
  • the ordinal i ranges from zero to N-l, where N is the total number of pixels in the image.
  • z(0), z(l), z(2), etc. to obtain a sequence of pixel coordinates (x ls yi), (x 2 ,y 2 ), etc.
  • z(i) (i mod ImageWidth,
  • Input signals are a source image 66 (obtained in step 50), an unencrypted message 68 (generated in step 52), and an encrypting key 70 (used in step 54).
  • Message 68 and encrypting key 70 are processed by an encrypted message generator 76 to create an encrypted message signal 72.
  • Encrypted message 72 is an input along with source image 66 into composite signal generator 78, which creates a composite signal 74 containing source image signal 66 embedded with encrypted message 72.
  • Composite signal generator 78 illustratively embeds encrypted message 72 into the least-significant bit in the green plane IQ O CX ) of source image 66 to create a new least-significant green bit-plane I' G o( ⁇ > y) of composite signal 74.
  • Composite signal generator 78 eliminates the requirement of using original image signal 66 by encoding the original Ioo(x,y) into the least-significant red bit-plane I' R0 (x,y) of composite signal 74 as discussed below.
  • I' is initially set to be an exact copy of I. I' is then traversed in order z(i) and the red and green least-significant bit planes are set to:
  • I' GO (Z )) K PUB (i) ⁇ r ⁇ zO)) ⁇ m-seq(2i+l)
  • K PUB (i) refers to the I-th bit of K PUB
  • m-seq(j) refers to the j-th bit in the m- sequence using K, as the initial fill.
  • the first step is to extract I G0 *(z(i)) by using the least-significant red bit plane and the m-sequence:
  • the method of the invention provides for including within the image both the message that is embedded or encrypted in the image as well as the information needed to extract or decrypt the message from the image.
  • a more specific method corresponding to an implementation of the method of Figs. 2 and 3 is shown Fig. 4.
  • the same input signals are used, that is, source image 66 (I), message 68 (here, Q instead of K PUB ), and encrypting key 70 (K j ) are used.
  • the primary refinement in the method of Fig. 4 as compared with Fig. 3 is an encoding process to handle varying length messages 68.
  • Message 68 which in the example of Fig. 3 was a public encryption key for use in an asymmetric cryptography system, can more generally simply be a collection of bits intended to be encrypted and is referred to here as Q.
  • the length (i.e., the total number of bits) of Q is denoted
  • the i-th bit of the message Q is denoted Q(i), where the bits are numbered from 0 to
  • Message 68 (Q) is an input signal to message generator 82 which has as a second input the output from a random noise generator 84.
  • Random noise generator 84 illustratively is also a 96-bit m-sequence generator using an initial fill of a computer system time value, although other suitable random signal generators can be used.
  • Encrypting key 70 (K,) is an input signal (initial fill) to an m-sequence generator 80 that illustratively is the same as random noise generator 84, which then generates as an output an encrypting sequence 86.
  • the message 88 to be encoded onto image 66 (I) is generated by message generator 82 with special properties and is denoted Q' to show that it is derived from Q.
  • Q' has the following properties. For any given source image I, regardless of what message Q is being encoded, the size of a message Q' is the same as the total number of pixels in image I (that is,
  • # pixels in I).
  • bits of message Q' are labeled according to standard convention, that is, the first bit (or the left-most bit if Q' is viewed as an ordered bit stream from left to right as shown in Fig. 5) is numbered zero. Thus the bits of Q' are numbered from zero to
  • Q' The structure of Q' is shown in Fig. 5. All bits except the last sixty-four form a data area 92.
  • the last sixty-four bits consist of two thirty-two bit words (StartPos and Length, in that order), which form a Trailer.
  • Data area 92 includes data bits 98 that correspond to the message Q itself, and random bits 97, 99 that help hide the location of Q (bits 98) within Q'.
  • message generator 82 computes the length of message Q and stores its value in the final 32 bits 94 of the Trailer. The value of the length is not directly encoded and instead a value congruent (actual length modulo Data Area size) is placed in the 32-bit word. It is trivial to recover the length from this encoded value.
  • Starting position 94 describes the location within data area 92 where the bits of the message Q reside.
  • Message generator 82 randomly chooses a place 98 to store Q and populates all other bits of unused portions 97, 99 in data area 92 with random noise generated by random noise generator 84.
  • Q can be anywhere in data area 92.
  • Including noise for portions 97, 99 of data area 92 unused by message Q improves security of data embedded within I because the noise increases the difficulty of recognizing the existence or location of Q within the data area.
  • the encoding of each bit of message Q' is encoded onto image I on a one- bit per one-pixel basis using an exclusive-OR as discussed above for the method of Fig. 3.
  • the output of m-sequence generator 80 (with K, as a seed value) is used to encrypt Q' in encrypter 90.
  • the encrypted Q' is embedded onto the LSB green plane I ⁇ ,.
  • Encrypted message Q is subsequently extracted from Q' by locating its starting position and length from the trailer. The extracted Q is then decoded as discussed above.
  • Random number generator 84 and m-sequence generator 80 can be different. Even if both use 96-bit m-sequence generators, this can be achieved simply by changing the feedback coefficients.
  • the message length 94 in the trailer can be relocated to data area 92 as shown in Fig. 6. This relocation will limit the ability of an attacker to take advantage of a known size of message Q.
  • step 102 the carrier image is transformed from a first domain to a second domain.
  • a typical RGB image that is considered to be represented in a spatial domain can be transformed using a discrete cosine transform.
  • a message is then embedded into the transformed carrier image in step 104, using any appropriate technique for embedding a message onto a carrier signal.
  • An example of a transformed image into which a message can be embedded would be a JPEG image.
  • the message can also be pre-encrypted before being embedded into the transformed image to further improve security.
  • the image is then transformed back into the first domain in step 106 and made available for access by third parties in step 108. For a third party to extract the message the steps are essentially reversed.
  • the image is copied by the third party in step 110, and it is then transformed into the second domain in step 112 using the same transform performed in step 106.
  • the message is extracted in step 114, again, using any appropriate technique that corresponds to the technique used in step 104 for originally embedding the message. If the message was pre-encrypted then another decryption step (not shown) will be necessary.
  • Encrypted messages relying on the use of encryption keys are used in the methods discussed above. For example, if a pre-encrypted message is embedded into an image, then the recipient will need a key to decrypt the message.
  • a technique for providing for secure exchanges of encrypted data such as encryption keys that is known in the art is the use of a trusted third party.
  • the trusted third party essentially acts as a secure broker in exchanging data between two other parties. It is within the scope of this invention to exchange information, such as encryption keys, by use of a trusted third party.

Abstract

A method of data hiding includes providing a message (68), providing an encrypting sequence (86), and generating an encrypted message (72) based on the message and the encrypting sequence. A carrier signal (66) that conveys information unrelated to the encrypted message is provided, and the encrypted message is embedded (78) into the carrier signal by performing an exclusive-OR of the encrypted message with a first portion of the carrier signal.

Description

HIDING OF ENCRYPTED DATA
Field of the Invention
The present invention relates to methods and apparatus for hiding data within a digital signal, and particularly for concealing information within multimedia signals such as digital image, audio, or video signals. More particularly, the present invention relates to methods and apparatus for embedding and retrieving information into and out of a digital signal used in multimedia applications while minimizing the effect on the multimedia application of the digital signal.
Background and Summary of the Invention
The art of concealing information has existed for millennia and is one to which computers have been readily adapted. It is known, for example, to use computers for encrypting data using various symmetric and asymmetric cryptographic schemes such as the Data Encryption Standard (DES) and RSA encryption, and cryptographic software packages such as PGP (Pretty Good Privacy). Another technique for concealing information for which computers are used is data hiding or steganography, in which the existence of certain information is concealed within a carrier communication. In contrast to cryptography, where it is a goal to make a message undecipherable regardless of its detection, with steganography it is a goal to hide the very existence of the hidden message. An example of a known steganography technique using computers is to embed a digital watermark into a digital image.
According to the present invention, a method of hiding data is provided. A message to be hidden and an encrypting sequence are provided along with a carrier signal that conveys information (unrelated to the message). An encrypted message is generated based on the message and the encrypting sequence. The encrypted message is embedded into the carrier signal by performing an exclusive-OR of the encrypted message with a first portion of the carrier signal.
In preferred embodiments, the carrier signal is a digital image, and the first portion of the carrier signal is an LSB plane of the digital image. The digital image has a plurality of color planes, the first portion of the carrier signal is an LSB plane of a first color plane, and the second portion of the carrier signal is an LSB plane of a second color plane.
According to another aspect of the invention, the carrier signal is transmitted to a receiving location. The encrypted message is extracted and from the carrier signal and deciphered at the receiving location. In preferred embodiments, the encrypted sequence is generated based on an encrypting key. The encrypted message is generated by performing an exclusive-OR of the message with the encrypting sequence.
According to yet another aspect of the invention, a method of data hiding is provided in which an encryption key and a carrier signal that conveys information unrelated to the encryption key are supplied. An encryption sequence based on the encryption key is generated. The encryption sequence is embedded into the carrier signal.
In preferred embodiments, the encryption key is a public key for an asymmetric encryption algorithm. The carrier signal can be a signal such as a digital image, digital audio, or digital video. The encryption sequence is substantially random, and can be generated based on a linear feedback shift register. The encryption sequence is embedded into the carrier signal by performing an exclusive-OR of the encryption sequence with a portion of the carrier signal.
According to other aspects of the invention, the carrier signal including the embedded encryption sequence is transmitted to a receiving location. The encryption sequence is extracted from the composite signal at the receiving location. The encryption sequence is decrypted to obtain the encryption key. The encryption key is used to generate an encrypted message at the receiving location, and the encrypted message is transmitted from the receiving location.
According to yet another aspect of the invention, a method of data hiding is provided. An encrypted message is embedded into a first portion of a carrier signal and message extraction information is embedded into a second portion of the carrier signal for extracting the encrypted message from the first portion of the carrier signal.
In preferred embodiments, the encrypted message is embedded by performing an exclusive-OR of the encrypted message with the first portion of the carrier signal. The message extraction information is embedded by performing an exclusive-OR of the first portion of the carrier signal with the second portion of the carrier signal. The first and second portions of the carrier signal can be first and second bit-planes of a digital image.
According to still another aspect of the invention, a method of exchanging data hidden in a carrier signal is provided. A signal including hidden data is generated by transforming a carrier signal from a first domain into a second domain. A message is embedded into the carrier signal in the second domain. The carrier signal is transformed back from the second domain to the first domain. The signal including hidden data is sent to a receiving location. The message is obtained from the signal including hidden data at the receiving location by transforming the signal including hidden data into the second domain and extracting the message.
In prefened embodiments, the message is encrypted prior to generating the signal including hidden data. The message is decrypted after obtaining the message from the signal including hidden data.
According to still yet another aspect of the invention, a data hiding apparatus is provided. An encryption sequence generator generates an encryption sequence based on an encrypting key. An encrypted message generator generates an encrypted message based on the encryption sequence and an input message. An encrypted message embedder embeds the encrypted message into a carrier signal.
In preferred embodiments, the encryption sequence generator generates a substantially random encryption sequence. The encrypted message embedder performs an exclusive-OR of the encrypted message with a portion of the carrier signal. The encrypted message embedder replaces a first LSB plane of a digital image with information based on a second LSB plane of the digital image and performs an exclusive- OR of the encrypted message with the second LSB plane of the digital image. The encrypted message generator performs an exclusive-OR of the input message with the encrypting sequence to generate the encrypted message.
Additional features of the invention will become apparent to those skilled in the art upon consideration of the following detailed description of the preferred embodiments exemplifying the best mode of carrying out the invention as presently perceived. Brief Description of the Drawings
Fig. 1 is a block diagram of two computer systems connected over a network, each computer system configured with a processor and memory for implementing embodiments of the present invention; Fig. 2 is a flow chart showing a method according to the present invention for hiding data within an image for transmission over a network;
Fig. 3 is a high level block diagram showing a technique for embedding encrypted information into a carrier signal;
Fig. 4 is a more detailed block diagram similar to Fig. 3 showing a similar, more specific technique for embedding encrypted information into a carrier signal;
Fig. 5 is a stylized representation of a message format containing embedded, hidden information;
Fig. 6 is a stylized representation similar to Fig. 5 of an alternative message format; and Fig. 7 is a flow chart showing an alternative method according to the present invention for hiding data within an image for transmission over a network.
Detailed Description of the Illustrative Embodiments
The present invention lends itself to implementation in a conventional computer network 10 as shown in Fig. 1. Computer network 10 illustratively includes computer systems 12, 18 connected through a series of network communication devices
14, 16, 20 (e.g., modems, transceivers, etc.) for communication over a network 22 such as the standard telephone lines, or the Internet or World Wide Web. Computer systems
12, 18 are illustratively personal computers and each includes basic elements such as a processor 26, 32, memory 28, 34, storage device 30, 36, and display 31, 38. Computer systems 12, 18 can also include optional peripheral devices such as removable storage device 40 (e.g., a CD-ROM or VA inch disk drive).
An exemplary method of data hiding according to the present invention that is suitable for carrying out on computer network 10 is shown in Fig. 2. Although the present invention is disclosed in the context of certain embodiments discussing digital images, other digital signals, such as digital audio or video signals, are also within the scope of the invention. According to the method of Fig. 2, an image is used to transport and exchange data that is embedded in the image itself and that cannot be perceived by the human eye. An appropriate analogy is that the image acts as an envelope, with the embedded data transmitted with the image being equivalent to a letter contained within the envelope. Conventional encryption such as PGP or RSA is used to enhance security of the embedded data. The security is improved because the encrypted data is hidden within the image and therefore cannot be recognized as such. This allows for secure data communication and exchange over an insecure transmission channel.
In step 50 an original digital image is obtained. A secret message that is desired to be embedded into the image is generated in step 52. A message encrypting key is used in step 54 to generate an encryption sequence. The message encrypting key can be a seed value for use in generating an m-sequence from a linear feedback shift register as discussed in more detail below, although it is understood that any suitable message encrypting algorithm can be used. As also discussed below, the message encrypting key will ultimately be used by the recipient of the image embedded with the secret message. In step 56 the secret message from step 52 is encrypted with the encryption sequence from step 54 to create an encrypted message. The encrypted message is then embedded into the image in step 58. There are many methods to embed the encrypted message into the image such as the method discussed below, but, again, it is understood that other suitable methods can be used.
The image with the embedded message is then made available such as on a public network as shown in step 60. Finally, if the secret message from step 52 is actually information that is not desired to be kept secret, such as a public key for an asymmetric encryption algorithm, then the encryption key from step 54 is also made available on the public network as shown in steps 62, 64. This allows for third parties to extract the message from the image. Thus, for example, the message can be a public encryption key that is hidden within the image but that is readily available to a party that has knowledge of the fact that the hidden message exists. This provides a convenient way of exchanging information, such as allowing an individual to make a public encryption key available over the World Wide Web by posting it within an image on a Web site, while still concealing the information from the casual observer. It is useful at this point to provide some preliminary definitions before discussing a specific implementation of the method of Fig. 2. The symbol θ denotes a bit exclusive-OR function (equivalently, modulo-2 addition). Table 1 illustrates the exclusive-OR function:
Table 1
A. ϋ A φ B
0 0 0
0 1 1
1 0 1
1 1 0
A digital image is typically represented with a two dimensional array of pixel values. If A is the array of pixel values, then A(x,y) denotes the pixel value in the x-th column of the y-th row of the array. Each index x,y begins at zero, and by convention the origin is at the upper-left corner with positive coordinates going rightwards and downwards, although this convention is somewhat arbitrary.
For labeling purposes, it will be assumed that the digital image is a 24-bit RGB image with pixel values ordered as shown in Table 2: xx
Table 2 MSB LSB Red Green Blue
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R7 R6 R5 R4 R3 R2 RI R0 G7 G6 G5 G4 G3 G2 Gl GO B7 B6 B5 B4 B3 B2 Bl B0
Thus, bits 16-23 refer to the red component, bits 8-15 refer to the green component, and bits 0-7 refer to the blue component for any given pixel value. For example, Ioo(x,y) refers to the least-significant bit of the green component of the (x,y)- pixel in the image I. Since bit GO is equivalent to bit 8,
Figure imgf000008_0001
is equivalent to I8(x,y). As with the array convention, this labeling convention is somewhat arbitrary. An m-sequence is a pseudo-random sequence of binary digits (bits). m-sequences have good statistical properties and can be generated by linear feedback shift registers (configured appropriately as is known in the art). Knowing the size (number of bits), structure (the feedback configuration), and initial fill (the initial contents of each bit) of the shift register allows the reconstruction of the entire m-sequence. The m-sequences here illustratively are generated by a 96-bit m-sequence generator. If the structure and size of the shift register are known (as would be the case with this embodiment), and if a consecutive portion of the m-sequence equal to twice the shift register size is also known, the initial fill used to generate the sequence can be determined. In this embodiment the initial fill is used as the key that generates the m-sequence. In this way, the key can be determined from the sequence itself by techniques known to those skilled in cryptography. When embedding a message into a carrier signal, the order in which pixel operations are performed may be an important consideration. A sequence function z(i) is defined to provide a one-to-one mapping from i->(x,y), where i is an ordinal number and (x,y) refers to coordinate values in an image. The ordinal i ranges from zero to N-l, where N is the total number of pixels in the image. Given a sequence function z(i), one can compute z(0), z(l), z(2), etc., to obtain a sequence of pixel coordinates (xlsyi), (x2,y2), etc. As an example, z(i) = (i mod ImageWidth, |_i / ImageWidthJ) denotes a sequence beginning at the origin and proceeding in a row-by-row fashion.
Given these preliminary definitions, an implementation corresponding to the illustrative method of Fig. 2 of embedding a message into an image is shown by the block diagram in Fig. 3. Input signals are a source image 66 (obtained in step 50), an unencrypted message 68 (generated in step 52), and an encrypting key 70 (used in step 54). Message 68 and encrypting key 70 are processed by an encrypted message generator 76 to create an encrypted message signal 72. Encrypted message 72 is an input along with source image 66 into composite signal generator 78, which creates a composite signal 74 containing source image signal 66 embedded with encrypted message 72. Composite signal generator 78 illustratively embeds encrypted message 72 into the least-significant bit in the green plane IQOCX ) of source image 66 to create a new least-significant green bit-plane I'Go(χ >y) of composite signal 74. In order subsequently to extract encrypted message 72 from composite signal 74 (F) it will be necessary to know the original values of Ioofay) from source image 66. This can of course easily be accomplished by making the original, unmodified image signal 66 available. Composite signal generator 78, however, eliminates the requirement of using original image signal 66 by encoding the original Ioo(x,y) into the least-significant red bit-plane I'R0(x,y) of composite signal 74 as discussed below. Thus, in order to extract the embedded encrypted message 72, only composite signal 74 and the encrypting key 70 are needed. In order to use the method of Figs. 2 and 3 both a sender and receiver of composite signal 74 will need an m-bit shift register with identical feedback configurations and a well-defined ordering function z(i) for any arbitrary image. The following steps describe the generation of the composite signal 74 (also referred to as public image I') from original signal 66 (also referred to as original image I), unencrypted message 68 (illustratively a public encryption key, also refened to as KPUB), and encrypting key 70 (also referred to as K,). As intimated above, encrypting key 70 (Kj) is the initial fill of the m-sequence generator.
In order to generate I', I' is initially set to be an exact copy of I. I' is then traversed in order z(i) and the red and green least-significant bit planes are set to:
r R0 ,'(z(i)) = rGo(z(i)) θ m-seq(2i)
I'GO(Z )) = KPUB(i) θ r^zO)) © m-seq(2i+l)
where KPUB(i) refers to the I-th bit of KPUB, and m-seq(j) refers to the j-th bit in the m- sequence using K, as the initial fill. With these two equations, information on portion 2 of the image (the green LSB plane) is first placed in portion 1 of the image (the red LSB plane). Then, the message is embedded in portion 2.
To recover KPUB it is only necessary to have the composite signal or public image I' and the encrypting key K^ For each pixel in I' and in the order z(i), the first step is to extract IG0*(z(i)) by using the least-significant red bit plane and the m-sequence:
IGO*(Z( ) = I'Ro(z(i)) © m-seq(2i)
IQO*(Z( ) >S identical to IGO(Z( ) if there are no errors in I'. Then the i-th bit of KPUB(i) is computed by using IG0*(z(i)):
KpuB*(0 = I'GOCZO)) © IGO*(Z( ) © m-seq(2i+l)
Thus, given Kh it is possible to reconstruct the same m-sequence used to generate I'. Thus, if no errors occur KPUB* should be identical to KPUB. Thus, the method of the invention provides for including within the image both the message that is embedded or encrypted in the image as well as the information needed to extract or decrypt the message from the image. A more specific method corresponding to an implementation of the method of Figs. 2 and 3 is shown Fig. 4. The same input signals are used, that is, source image 66 (I), message 68 (here, Q instead of KPUB), and encrypting key 70 (Kj) are used. The primary refinement in the method of Fig. 4 as compared with Fig. 3 is an encoding process to handle varying length messages 68.
Message 68, which in the example of Fig. 3 was a public encryption key for use in an asymmetric cryptography system, can more generally simply be a collection of bits intended to be encrypted and is referred to here as Q. The length (i.e., the total number of bits) of Q is denoted |Q| . The i-th bit of the message Q is denoted Q(i), where the bits are numbered from 0 to | Q | - 1.
Message 68 (Q) is an input signal to message generator 82 which has as a second input the output from a random noise generator 84. Random noise generator 84 illustratively is also a 96-bit m-sequence generator using an initial fill of a computer system time value, although other suitable random signal generators can be used. Encrypting key 70 (K,) is an input signal (initial fill) to an m-sequence generator 80 that illustratively is the same as random noise generator 84, which then generates as an output an encrypting sequence 86.
Unless the message 68 (Q) will always be the same length (in bits) and that length is the number of pixels in the source image, it will not be possible to embed Q directly onto source image 66 (I). It is therefore necessary to encode additional information that will enable subsequent extraction of messages Q of varying sizes from composite signal 74 (F). Thus, the message 88 to be encoded onto image 66 (I) is generated by message generator 82 with special properties and is denoted Q' to show that it is derived from Q. Q' has the following properties. For any given source image I, regardless of what message Q is being encoded, the size of a message Q' is the same as the total number of pixels in image I (that is, |Q' | = # pixels in I). The bits of message Q' are labeled according to standard convention, that is, the first bit (or the left-most bit if Q' is viewed as an ordered bit stream from left to right as shown in Fig. 5) is numbered zero. Thus the bits of Q' are numbered from zero to | Q' | - 1.
The structure of Q' is shown in Fig. 5. All bits except the last sixty-four form a data area 92. The last sixty-four bits consist of two thirty-two bit words (StartPos and Length, in that order), which form a Trailer. Data area 92 includes data bits 98 that correspond to the message Q itself, and random bits 97, 99 that help hide the location of Q (bits 98) within Q'. As part of the encoding process, message generator 82 computes the length of message Q and stores its value in the final 32 bits 94 of the Trailer. The value of the length is not directly encoded and instead a value congruent (actual length modulo Data Area size) is placed in the 32-bit word. It is trivial to recover the length from this encoded value.
Starting position 94 describes the location within data area 92 where the bits of the message Q reside. Message generator 82 randomly chooses a place 98 to store Q and populates all other bits of unused portions 97, 99 in data area 92 with random noise generated by random noise generator 84. Thus, Q can be anywhere in data area 92. Including noise for portions 97, 99 of data area 92 unused by message Q improves security of data embedded within I because the noise increases the difficulty of recognizing the existence or location of Q within the data area. The encoding of each bit of message Q' is encoded onto image I on a one- bit per one-pixel basis using an exclusive-OR as discussed above for the method of Fig. 3. First, the output of m-sequence generator 80 (with K, as a seed value) is used to encrypt Q' in encrypter 90. Next, the encrypted Q' is embedded onto the LSB green plane I^,. Encrypted message Q is subsequently extracted from Q' by locating its starting position and length from the trailer. The extracted Q is then decoded as discussed above.
Further implementation steps can be taken to increase security for message Q'. Random number generator 84 and m-sequence generator 80 can be different. Even if both use 96-bit m-sequence generators, this can be achieved simply by changing the feedback coefficients. Moreover, the message length 94 in the trailer can be relocated to data area 92 as shown in Fig. 6. This relocation will limit the ability of an attacker to take advantage of a known size of message Q.
Another way to provide for security of data hidden within a carrier image is shown by the method of Fig. 7. In step 102 the carrier image is transformed from a first domain to a second domain. For example, a typical RGB image that is considered to be represented in a spatial domain can be transformed using a discrete cosine transform. A message is then embedded into the transformed carrier image in step 104, using any appropriate technique for embedding a message onto a carrier signal. An example of a transformed image into which a message can be embedded would be a JPEG image. If desired, the message can also be pre-encrypted before being embedded into the transformed image to further improve security. The image is then transformed back into the first domain in step 106 and made available for access by third parties in step 108. For a third party to extract the message the steps are essentially reversed.
First the image is copied by the third party in step 110, and it is then transformed into the second domain in step 112 using the same transform performed in step 106. Finally, the message is extracted in step 114, again, using any appropriate technique that corresponds to the technique used in step 104 for originally embedding the message. If the message was pre-encrypted then another decryption step (not shown) will be necessary.
Encrypted messages relying on the use of encryption keys are used in the methods discussed above. For example, if a pre-encrypted message is embedded into an image, then the recipient will need a key to decrypt the message. A technique for providing for secure exchanges of encrypted data such as encryption keys that is known in the art is the use of a trusted third party. The trusted third party essentially acts as a secure broker in exchanging data between two other parties. It is within the scope of this invention to exchange information, such as encryption keys, by use of a trusted third party.
Although the invention has been described in detail with reference to certain illustrated embodiments, variations and modifications exist within the scope and spirit of the present invention as described and defined in the following claims.

Claims

CLAIMS:
1. A method of data hiding comprising the steps of: providing a message; providing an encrypting sequence; generating an encrypted message based on the message and the encrypting sequence; providing a carrier signal that conveys information unrelated to the encrypted message; and embedding the encrypted message into the carrier signal by performing an exclusive-OR of the encrypted message with a first portion of the carrier signal.
2. The method of claim 1, wherein the carrier signal is a digital image.
3. The method of claim 2, wherein the first portion of the carrier signal is an LSB plane of the digital image.
4. The method of claim 1, further comprising the step of embedding the first portion of the carrier signal into a second portion of the carrier signal.
5. The method of claim 4, wherein the carrier signal is a digital image having a plurality of color planes, the first portion of the carrier signal is an LSB plane of a first color plane, and the second portion of the carrier signal is an LSB plane of a second color plane.
6. The method of claim 1, further comprising the steps of transmitting the composite signal to a receiving location, extracting the encrypted message from the composite signal at the receiving location, and decrypting the encrypted message at the receiving location.
7. The method of claim 1, wherein the step of generating an encrypted message includes generating the encrypting sequence based on an encrypting key and performing an exclusive-OR of the message with the encrypting sequence to generate the encrypted message.
8. The method of claim 7, further comprising the steps of transmitting the composite signal to a receiving location, extracting the encrypted message from the composite signal at the receiving location, and decrypting the encrypted message at the receiving location based on the encrypting key.
9. The method of claim 1, wherein the step of providing a message comprised of providing a pre-encrypted message.
10. The method of claim 9, further comprising the step of exchanging an encryption key for decrypting the pre-encrypted message using a trusted third party.
11. A method of data hiding comprising the steps of: providing an encryption key; generating an encryption sequence based on the encryption key; providing a carrier signal that conveys information unrelated to the encryption key; and embedding the encryption sequence into the carrier signal.
12. The method of claim 11, wherein the encryption key is a public key for an asymmetric encryption algorithm.
13. The method of claim 11, wherein the carrier signal is selected from the group comprising digital images, digital audio, and digital video.
14. The method of claim 11, wherein the encryption sequence is substantially random.
15. The method of claim 14, wherein the encryption sequence is generated based on a linear feedback shift register.
16. The method of claim 11, wherein the step of embedding the encryption sequence includes performing an exclusive-OR of the encryption sequence with a portion of the carrier signal.
17. The method of claim 11, further comprising the steps of transmitting the carrier signal including the embedded encryption sequence to a receiving location, extracting the encryption sequence from the composite signal at the receiving location, and deciphering the encryption sequence to obtain the encryption key at the receiving location.
18. The method of claim 17, further comprising the steps of encrypting a message using the encryption key to generate an encrypted message at the receiving location and transmitting the encrypted message from the receiving location.
19. A method of data hiding comprising the steps of: embedding an encrypted message into a first portion of a carrier signal; and embedding message extraction information into a second portion of the carrier signal for extracting the encrypted message from the first portion of the carrier signal.
20. The method of claim 19, wherein the step of embedding an encrypted message includes performing an exclusive-OR of the encrypted message with the first portion of the carrier signal.
21. The method of claim 20, wherein the step of embedding message extraction information includes performing an exclusive-OR of the first portion of the carrier signal with the second portion of the carrier signal.
22. The method of claim 21, wherein the first and second portions of the carrier signal are first and second bit-planes of a digital image.
23. A method of exchanging data hidden in a carrier signal comprising the steps of: generating a signal including hidden data by transforming a carrier signal from a first domain into a second domain, embedding a message into the carrier signal in the second domain, and transforming the carrier signal back from the second domain to the first domain; sending the signal including hidden data to a receiving location; and obtaining the message from the signal including hidden data at the receiving location by transforming the signal including hidden data into the second domain and extracting the message.
24. The method of claim 23, further comprising the steps of encrypting the message prior to generating the signal including hidden data and decrypting the message after obtaining the message from the signal including hidden data.
25. A data hiding apparatus comprising: an encryption sequence generator configured to generate an encryption sequence based on an encrypting key; an encrypted message generator configured to generate an encrypted message based on the encryption sequence and an input message; and an encrypted message embedder configured to embed the encrypted message into a earner signal.
26. The method of claim 25, wherein the encryption sequence generator is configured to generate a substantially random encryption sequence.
27. The method of claim 25, wherein the encrypted message generator is configured to perform an exclusive-OR of the input message with the encrypting sequence to generate the encrypted message.
28. The method of claim 25, wherein the encrypted message embedder is configured to perform an exclusive-OR of the encrypted message with a portion of the carrier signal.
29. The method of claim 28, wherein the encrypted message embedder is configured to replace a first LSB plane of the digital image with information based on a second LSB plane of the digital image and to perform an exclusive-OR of the encrypted message with the second LSB plane of the digital image.
PCT/US1998/017321 1997-08-22 1998-08-21 Hiding of encrypted data WO1999011020A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/485,759 US6912658B1 (en) 1997-08-22 1998-08-21 Hiding of encrypted data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US5672497P 1997-08-22 1997-08-22
US60/056,724 1997-08-22

Publications (1)

Publication Number Publication Date
WO1999011020A1 true WO1999011020A1 (en) 1999-03-04

Family

ID=22006220

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1998/017321 WO1999011020A1 (en) 1997-08-22 1998-08-21 Hiding of encrypted data

Country Status (1)

Country Link
WO (1) WO1999011020A1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001005075A1 (en) * 1999-07-13 2001-01-18 Microsoft Corporation Improved audio watermarking with covert channel and permutations
WO2001086650A1 (en) * 2000-05-10 2001-11-15 Koninklijke Philips Electronics N.V. Copy protection system
WO2002029808A2 (en) * 2000-10-04 2002-04-11 University Of Miami Auxiliary channel masking in an audio signal
WO2003003744A1 (en) * 2001-06-28 2003-01-09 Motorola Inc Video/image communication with watermarking
US6738744B2 (en) 2000-12-08 2004-05-18 Microsoft Corporation Watermark detection via cardinality-scaled correlation
US6952774B1 (en) 1999-05-22 2005-10-04 Microsoft Corporation Audio watermarking with dual watermarks
US7020285B1 (en) 1999-07-13 2006-03-28 Microsoft Corporation Stealthy audio watermarking
US7206649B2 (en) 2003-07-15 2007-04-17 Microsoft Corporation Audio watermarking with dual watermarks
US7886151B2 (en) * 2002-01-22 2011-02-08 Purdue Research Foundation Temporal synchronization of video and audio signals
US8878041B2 (en) 2009-05-27 2014-11-04 Microsoft Corporation Detecting beat information using a diverse set of correlations

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0359325A1 (en) * 1988-09-16 1990-03-21 Koninklijke Philips Electronics N.V. Device for transmitting data words representing a digitized analog signal and device for receiving the transmitted data words
US5195136A (en) * 1991-09-30 1993-03-16 Motorola, Inc. Method and apparatus for data encryption or decryption

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0359325A1 (en) * 1988-09-16 1990-03-21 Koninklijke Philips Electronics N.V. Device for transmitting data words representing a digitized analog signal and device for receiving the transmitted data words
US5195136A (en) * 1991-09-30 1993-03-16 Motorola, Inc. Method and apparatus for data encryption or decryption

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
COX I J ET AL: "SECURE SPREAD SPECTRUM WATERMARKING FOR MULTIMEDIA", IEEE TRANSACTIONS ON IMAGE PROCESSING, NEW YORK (US), vol. 6, no. 12, December 1997 (1997-12-01), pages 1673 - 1687, XP000199950 *
PODILCHUK C I ET AL: "DIGITAL IMAGE WATERMARKING USING VISUAL MODELS", PROCEEDINGS OF THE SPIE, vol. 3016, 10 February 1997 (1997-02-10), pages 100 - 111, XP000199957 *
YASUHIRO NAKAMURA ET AL: "A UNIFIED CODING METHOD OF DITHERED IMAGE AND TEXT DATA USING MICROPATTERNS", ELECTRONICS & COMMUNICATIONS IN JAPAN, PART I - COMMUNICATIONS, NEW YORK (US), vol. 72, no. 4, PART 01, 1 April 1989 (1989-04-01), pages 50 - 56, XP000080029 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6952774B1 (en) 1999-05-22 2005-10-04 Microsoft Corporation Audio watermarking with dual watermarks
US7197368B2 (en) 1999-05-22 2007-03-27 Microsoft Corporation Audio watermarking with dual watermarks
US7020285B1 (en) 1999-07-13 2006-03-28 Microsoft Corporation Stealthy audio watermarking
WO2001006755A2 (en) * 1999-07-13 2001-01-25 Microsoft Corporation Improved stealthy audio watermarking
WO2001006755A3 (en) * 1999-07-13 2001-04-05 Microsoft Corp Improved stealthy audio watermarking
WO2001005075A1 (en) * 1999-07-13 2001-01-18 Microsoft Corporation Improved audio watermarking with covert channel and permutations
US7552336B2 (en) 1999-07-13 2009-06-23 Microsoft Corporation Watermarking with covert channel and permutations
US7543148B1 (en) 1999-07-13 2009-06-02 Microsoft Corporation Audio watermarking with covert channel and permutations
US7266697B2 (en) 1999-07-13 2007-09-04 Microsoft Corporation Stealthy audio watermarking
WO2001086650A1 (en) * 2000-05-10 2001-11-15 Koninklijke Philips Electronics N.V. Copy protection system
WO2002029808A2 (en) * 2000-10-04 2002-04-11 University Of Miami Auxiliary channel masking in an audio signal
US6996521B2 (en) 2000-10-04 2006-02-07 The University Of Miami Auxiliary channel masking in an audio signal
WO2002029808A3 (en) * 2000-10-04 2002-09-06 Univ Miami Auxiliary channel masking in an audio signal
US6738744B2 (en) 2000-12-08 2004-05-18 Microsoft Corporation Watermark detection via cardinality-scaled correlation
WO2003003744A1 (en) * 2001-06-28 2003-01-09 Motorola Inc Video/image communication with watermarking
US7886151B2 (en) * 2002-01-22 2011-02-08 Purdue Research Foundation Temporal synchronization of video and audio signals
US7206649B2 (en) 2003-07-15 2007-04-17 Microsoft Corporation Audio watermarking with dual watermarks
US8878041B2 (en) 2009-05-27 2014-11-04 Microsoft Corporation Detecting beat information using a diverse set of correlations

Similar Documents

Publication Publication Date Title
US6912658B1 (en) Hiding of encrypted data
Mitra et al. A new image encryption approach using combinational permutation techniques
Lou et al. Steganographic method for secure communications
Song et al. A novel secure communication protocol combining steganography and cryptography
WO2003021861A1 (en) A system and method for protecting the content of digital cinema products
Narayana et al. Two new approaches for secured image steganography using cryptographic techniques and type conversions
Phad Vitthal et al. A novel security scheme for secret data using cryptography and steganography
Maiti et al. Data hiding in images using some efficient steganography techniques
Wei et al. A technique for sharing a digital image
CN107124616B (en) Method for realizing exchange of cipher watermarks in same operation domain based on homomorphic characteristics
WO1999011020A1 (en) Hiding of encrypted data
Ahmed et al. Robust and secure image steganography based on elliptic curve cryptography
Alhassan et al. Enhancing image security during transmission using residue number system and k-shuffle
CN115643015A (en) Digital watermark tracing method
Poonia et al. A secure image based steganography and cryptography with watermarking
Rao et al. A novel information security scheme using cryptic steganography
Bhattacharyya et al. Text steganography: a novel approach
Yadav et al. A hybrid approach to metamorphic cryptography using KIMLA and DNA concept
Pramanik et al. Analysis of visual cryptography, steganography schemes and its hybrid approach for security of images
Gangurde et al. LSB steganography using pixel locator sequence with AES
Ramana et al. A randomized secure data hiding algorithm using file hybridization for information security
Nehra et al. Review Paper On Image Based Steganography
Gomathi et al. Multistage Image Encryption using Rubik's Cube for Secured Image Transmission.
Vigil et al. Secure binary image steganography using F5 algorithm based on data hiding and diffusion techniques
Rao et al. A Novel Image Encryption Using Parity Based Visual Cryptography

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 09485759

Country of ref document: US

122 Ep: pct application non-entry in european phase