CA2304041C - Method for image processing to facilitate copy protection - Google Patents

Method for image processing to facilitate copy protection Download PDF

Info

Publication number
CA2304041C
CA2304041C CA 2304041 CA2304041A CA2304041C CA 2304041 C CA2304041 C CA 2304041C CA 2304041 CA2304041 CA 2304041 CA 2304041 A CA2304041 A CA 2304041A CA 2304041 C CA2304041 C CA 2304041C
Authority
CA
Canada
Prior art keywords
string
work
document
copy protection
values
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.)
Expired - Lifetime
Application number
CA 2304041
Other languages
French (fr)
Other versions
CA2304041A1 (en
Inventor
F. Thomson Leighton
Original Assignee
F. Thomson Leighton
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
Priority to US12002398A priority Critical
Priority to US09/120,023 priority
Application filed by F. Thomson Leighton filed Critical F. Thomson Leighton
Priority to PCT/US1999/016515 priority patent/WO2000004422A2/en
Publication of CA2304041A1 publication Critical patent/CA2304041A1/en
Application granted granted Critical
Publication of CA2304041C publication Critical patent/CA2304041C/en
Anticipated expiration legal-status Critical
Application status is Expired - Lifetime legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/0078Robust watermarking, e.g. average attack or collusion attack resistant using multiple thresholds

Abstract

A method for mapping a work (e.g., a picture, a document or the like) comprising a large number of bytes into a relatively small bit string to facilitate copy protection. The technique creates a first string from the work with the property that if one modifies the work by some given degree (e.g., through intentional variation or perhaps merely through aging), a second string (generated by the inventive technique) and associated with the modified work is not meaningfully distinct from the first string. When applied through the algorithm, works that are similar result in the same or similar strings. As a result, an owner of the content sought to be protected may apply the algorithm to copies of the work for copy protection purposes.

Description

METHOD FOR IMAGE PROCESSING TO FACILITATE COPY PROTECTION
BACKGROUND OF THE INVENTION
Technical Field The present invention relates generally to securing content against wrongful duplication and, more particularly, techniques for processing an image into a digital string so that images with similar features (e.g., illicit or cropped copies) get mapped into a digital string that is close to the original string.
Description of the Related Art The proliferation of digitized media and the ease with which digital files can be copied especially over public computer networks (e.g., the Internet) has created a need for copy and copyright enforcement schemes. Conventional cryptographic systems permit only valid keyholders access to encrypted data, but once such data is decrypted there is no way to track its reproduction or retransmission. Such schemes thus provide insufficient protection against unauthorized reproduction of information. It is known in the prior art to provide a so-called digital "watermark" on a document to address this problem. A "watermark" is a visible or preferably invisible identification code that is permanently embedded in the data and thus remains present within the data after any decryption process. One example of a digital watermark would be a visible "seal" placed over an image to identify the copyright owner.
However, the watermark might also contain additional information, including the identity of the purchaser of a particular copy of the material.
Many schemes have been proposed for watermarking digital data. In a known watermarking procedure, each copy of a document D is varied slightly so as to look the same to the user but also so as to include the identity of the purchaser. The watermark consists of the variations that are unique to each copy. The idea behind such schemes is that the watermark should be hard to remove without destroying the document. Thus, a copy of a watermarked document should be traceable back to the specific version of the original from which it was created. Although certain watermarking techniques provide advantages, there remains a need for a more general approach to the problems associated with content protection.
SUMMARY OF THE INVENTION
It is a primary object of the present invention to provide an improved method for securing content against wrongful duplication.
SUBST1TUZ'E SHEET (RULE 26) It is still another object of this invention to provide improved methods for processing an image (or other work) into a digital string so that images with similar features (e.g., illicit or cropped copies) get mapped into a digital string that is close to the original digital string.
It is another more general object of this invention to protect against the wrongful proliferation of digitized media over public computer networks (e.g., the Internet).
A still further object of this invention is to provide for more efficient and reliable copy and copyright enforcement schemes.
In accordance with one aspect of the present invention there is provided a method for mapping a document comprising a large number of bytes into a bit string b_1, ..., b m to facilitate copy protection of the document, comprising the steps of:
generating m x n N(0,1) random variables Z_(1,1), ..., Z_(m,n) and storing the random variables in an m x n matrix Z*;
processing the document into a digital string y_1, ..., y_n; normalizing the y i values to generate a vector y*; computing a matrix-vector product v* = Z*xy*, where v_1, ..., v m denote the values of v*; selecting first and second thresholds t' and t" where t' is selected so that the probability that y_1 x u_1 + ... + y m x a m < t' is close to about'/a when each a i is an independent N(0,1 ) random variable, and where t" is selected so that the probability that y_1 x u_1 + ... + y m x a m > t" is close to about'/e; and determining if v i < t' or if v i > t"
for each v i from v_1 to v m; and if v_i is less than t' or if v i is greater than t", then set b i = 0; if v i is not less than t' or if v i is not greater than t", set b i = l; wherein the value of i in b i corresponds to the value of i in v_i.
The above as well as additional objects, features, and advantages of the present invention will become apparent in the following detailed written description.
BRIEF DESCRIPTION OF THE DRAWING
The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself however, as well as a preferred mode of use, further objects and advantages thereof, are best understood by reference to the following Detailed Description of an illustrative embodiment when read in conjunction with the accompanying Drawing, therein:
Figure 1 is a flowchart of the inventive method.

2a DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
The present invention is preferably implemented in software (e.g., a series of program instructions) executed in a computer. It is assumed that the content to be protected is a picture or other image. The invention may be applied to any content (including, without limitation, video, graphics, sound, text, etc.) irrespective of its form, however. For purposes of illustration, the invention will be described in the context of a picture. The picture is digitized in any convenient manner.
According to the invention, once digitized, the picture is run through a hashing algorithm and reduced to approximately thirty (30) bits so that most any other picture that was a small modification of the original gets mapped to the same string (with maybe a couple of bits different). This is useful in watermarking since this string, then, could be used as part of x 1, .. ., x n when one uses H(x-1 ... x n~Do not copy) as an offset watermark.
When this approach is followed, the watermark used for different pictures is different (which makes it harder for the adversary to remove), but it is still possible for someone who knows H to regenerate the watermark. In particular, the watermark used for different pictures is different (which makes it harder for the adversary to remove) but it is still possible for someone who knows H to regenerate the watermark for a correlation test (without access to a database), since even if the adversary changes the picture a little, he cannot change the string x_1, ..., x n very much; so, it is possible to later regenerate the original x I, ..., x n by computing the derived values from the picture and trying all possibilities that are within a few bits.
Such a mapping function is also useful in Web search engines. For example, assume one wants to search for copies of a document/picture on the Web even if such copies are changed a little bit. One could use the present invention and compute the string for every candidate picture on the Web and see which ones were close to the string for the original. From this information, one could check the candidates that match by eye, thereby cutting the search space by a huge factor.
There may also be applications in the domain of organizing pictorial data into similarity classes, which could be done according to the digital string produced by the following algorithm.
Implementation With reference now to the flowchart of Figure 1, the inventive mapping scheme has a number of steps.
Step 1: generate m x n N(0,1 ) random variables Z_( I,1 ), ..., Z (m,n). Store these values in an m x n matrix Z*. These values will be used for all documents and will be kept secret.
This may be done in an off line process.
Step 2: convert the document into a digital string y I, ..., y n using any standard method.
If possible, normalize the y_i values so that over the universe of all documents, y i can be thought of as a N(0,1 ) random variable. (The latter step is not required, but it makes the process work better.) Treat the n values as a vector y*.
Step 3: compute the matrix-vector product v* = Z*xy*. Let v I, ..., v m denote the values of v*. Note that each v i can be thought of as a normal random variable, no matter what the y values are. For example, the mean of each v i is M = (y 1 + ... + y m)/m.
Step 4: compute two thresholds t' and t" as follows. Select t' so that the probability that y I x a 1 + ... + y m x a m <t' is close to about 1 /4 when each a i is an independent N(0,1 ) random variable. Select t" so that the probability that y 1 x a 1 + ... + y m x a m > t" is close to about 1/4. There are many possible variations of this step, e.g., one with just one threshold at the value t =M, or by adjusting the two threshold values.
Step 5: For each of i, if v i <t' or if v i >t", then set b i = 0. Otherwise, set b i = 1.
(Note that each b i will be equally likely to be 0 or l.) The values b_1, ..., b m form the desired bit string for the document.
SUBSZ1TIJTE SHEET (RULE 26) The mapping function reduces the content (to be protected) from a large number of bytes to a string having a small number of bits. Changing just a few values of y* (or all of the values of y* by a little bit), however, does not have a meaningful effect on the values of b* that are computed. For example, in order to change the value of brj, the adversary must change enough of the y_i's by enough so that the corresponding vrj is pushed across a threshold.
Without knowing the Z* values, this is hard for the adversary to do if he is restricted to making small changes in the y_i's (since most of the vrj's are not likely to be very near a threshold in the first place). In fact, it is well supported in the art that the amount by which the adversary is required to change the y i's to effect a significant change in the b_j's is the maximum possible for any scheme.
Thus, the mapping function (when applied to copies of the document) is quite useful for copy protection purposes. Generalizing, the technique described above creates a first string from a picture (or other work) with the property that if one modifies the picture by some given degree (e.g., through intentional variation or perhaps merely through aging), a second string I S (generated by the inventive technique) and associated with the modified picture is not meaningfully distinct from the first string. The invention can be used to reduce a picture (or other work) comprising a large number of bytes into a string having a small number of bits, and thus pictures that are similar result in the same or similar strings. As a result, an owner of the content sought to be protected may apply the algorithm to copies of the work for copy protection purposes.
As described above, aspects of the present invention pertain to specific "method steps"
implementable on one or more computers. In an alternate embodiment, the invention may be implemented as a computer program product for use with a computer system.
Those skilled in the art should readily appreciate that programs defining the functions of the present invention can be delivered to a computer in many forms, which include, but are not limited to: (a) information permanently stored on non-writable storage media (e.g. read only memory devices with a computer such as ROM or optical disks readable by CD-ROM drive); (b) information alterably stored or writable storage media (e.g., floppy disks within a diskette drive or a hard disk drive); or (c) information conveyed to a computer through communication media, such as through a computer or telephone or other network. It should be understood, therefore, that such media, when carrying computer readable instructions that direct the method functions of the present invention, represent alternate embodiments of the present invention.

In addition, although the various methods described are conveniently implemented in a general purpose computer selectively activated or reconfigured by software, one of ordinary skill in the art would also recognize that such methods may be carned out in hardware, in fnmware, or in more specialized apparatus (e.g., a secure chip) constructed to perform the required method steps.
While the invention has been particularly shown and described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention.
SUBSTITUTE SHEET (RULE 26)

Claims

1. A method for mapping a document comprising a large number of bytes into a bit string b_1, ..., b_m to facilitate copy protection of the document, comprising the steps of:
generating m x n N(0,1 ) random variables Z_(1,1), ..., Z_(m,n) and storing the random variables in an m x n matrix Z*;
processing the document into a digital string y_1, ..., y_n;
normalizing the y_i values to generate a vector y*;
computing a matrix-vector product v* = Z*xy*, where v_1, ..., v_m denote the values of v*;
selecting first and second thresholds t' and t" where t' is selected so that the probability that y_1 x u_1 + ... + y_m x u_m < t' is close to about 1/4 when each u_i is an independent N(0,1) random variable, and where t" is selected so that the probability that y_1 x u_1 + ... +
y_m x a_m > t" is close to about 1/4; and determining if v_i < t' or if v_i > t" for each v_i from v_1 to v_m; and if v_i is less than t' or if v_i is greater than t", then set b_i = 0;
if v_i is not less than t' or if v_i is not greater than t", set b_i = 1;
wherein the value of i in b_i corresponds to the value of i in v_i.
CA 2304041 1998-07-17 1999-07-19 Method for image processing to facilitate copy protection Expired - Lifetime CA2304041C (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US12002398A true 1998-07-17 1998-07-17
US09/120,023 1998-07-17
PCT/US1999/016515 WO2000004422A2 (en) 1998-07-17 1999-07-19 Method for image processing to facilitate copy protection

Publications (2)

Publication Number Publication Date
CA2304041A1 CA2304041A1 (en) 2000-01-27
CA2304041C true CA2304041C (en) 2004-06-01

Family

ID=22387830

Family Applications (1)

Application Number Title Priority Date Filing Date
CA 2304041 Expired - Lifetime CA2304041C (en) 1998-07-17 1999-07-19 Method for image processing to facilitate copy protection

Country Status (3)

Country Link
AU (1) AU5318999A (en)
CA (1) CA2304041C (en)
WO (1) WO2000004422A2 (en)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7441045B2 (en) 1999-12-13 2008-10-21 F5 Networks, Inc. Method and system for balancing load distribution on a wide area network
US7146354B1 (en) 1999-06-18 2006-12-05 F5 Networks, Inc. Method and system for network load balancing with a compound data structure
US6405219B2 (en) 1999-06-22 2002-06-11 F5 Networks, Inc. Method and system for automatically updating the version of a set of files stored on content servers
US6374300B2 (en) 1999-07-15 2002-04-16 F5 Networks, Inc. Method and system for storing load balancing information with an HTTP cookie
US7047301B2 (en) 2000-01-31 2006-05-16 F5 Networks, Inc. Method and system for enabling persistent access to virtual servers by an LDNS server
US8380854B2 (en) 2000-03-21 2013-02-19 F5 Networks, Inc. Simplified method for processing multiple connections from the same client
US7343413B2 (en) 2000-03-21 2008-03-11 F5 Networks, Inc. Method and system for optimizing a network by independently scaling control segments and data flow
US7430755B1 (en) 2002-09-03 2008-09-30 Fs Networks, Inc. Method and system for providing persistence in a secure network access
EP1884059A2 (en) * 2005-05-13 2008-02-06 Temple University of the Commonwealth System of Higher Education Secret sharing technique with low overhead information content
US7975025B1 (en) 2008-07-08 2011-07-05 F5 Networks, Inc. Smart prefetching of data over a network
US10157280B2 (en) 2009-09-23 2018-12-18 F5 Networks, Inc. System and method for identifying security breach attempts of a website
US9313047B2 (en) 2009-11-06 2016-04-12 F5 Networks, Inc. Handling high throughput and low latency network data packets in a traffic management device
US8868961B1 (en) 2009-11-06 2014-10-21 F5 Networks, Inc. Methods for acquiring hyper transport timing and devices thereof
US9141625B1 (en) 2010-06-22 2015-09-22 F5 Networks, Inc. Methods for preserving flow state during virtual machine migration and devices thereof
US10015286B1 (en) 2010-06-23 2018-07-03 F5 Networks, Inc. System and method for proxying HTTP single sign on across network domains
US8908545B1 (en) 2010-07-08 2014-12-09 F5 Networks, Inc. System and method for handling TCP performance in network access with driver initiated application tunnel
US8347100B1 (en) 2010-07-14 2013-01-01 F5 Networks, Inc. Methods for DNSSEC proxying and deployment amelioration and systems thereof
US9083760B1 (en) 2010-08-09 2015-07-14 F5 Networks, Inc. Dynamic cloning and reservation of detached idle connections
US8886981B1 (en) 2010-09-15 2014-11-11 F5 Networks, Inc. Systems and methods for idle driven scheduling
WO2012058643A2 (en) 2010-10-29 2012-05-03 F5 Networks, Inc. System and method for on the fly protocol conversion in obtaining policy enforcement information
US8959571B2 (en) 2010-10-29 2015-02-17 F5 Networks, Inc. Automated policy builder
US10135831B2 (en) 2011-01-28 2018-11-20 F5 Networks, Inc. System and method for combining an access control system with a traffic management system
US9246819B1 (en) 2011-06-20 2016-01-26 F5 Networks, Inc. System and method for performing message-based load balancing
US9270766B2 (en) 2011-12-30 2016-02-23 F5 Networks, Inc. Methods for identifying network traffic characteristics to correlate and manage one or more subsequent flows and devices thereof
US10230566B1 (en) 2012-02-17 2019-03-12 F5 Networks, Inc. Methods for dynamically constructing a service principal name and devices thereof
US9172753B1 (en) 2012-02-20 2015-10-27 F5 Networks, Inc. Methods for optimizing HTTP header based authentication and devices thereof
US9231879B1 (en) 2012-02-20 2016-01-05 F5 Networks, Inc. Methods for policy-based network traffic queue management and devices thereof
WO2013163648A2 (en) 2012-04-27 2013-10-31 F5 Networks, Inc. Methods for optimizing service of content requests and devices thereof
US9154423B1 (en) 2012-05-01 2015-10-06 F5 Networks, Inc. Minimize SYN-flood issues with flow cache while maintaining performance
US9338095B2 (en) 2012-05-01 2016-05-10 F5 Networks, Inc. Data flow segment optimized for hot flows
US9525632B1 (en) 2012-05-01 2016-12-20 F5 Networks, Inc. Minimize recycle SYN issues for split TCP hot flows to improve system reliability and performance
US9203771B1 (en) 2012-07-23 2015-12-01 F5 Networks, Inc. Hot service flow hardware offloads based on service priority and resource usage
US10375155B1 (en) 2013-02-19 2019-08-06 F5 Networks, Inc. System and method for achieving hardware acceleration for asymmetric flow connections
US10187317B1 (en) 2013-11-15 2019-01-22 F5 Networks, Inc. Methods for traffic rate control and devices thereof
US10015143B1 (en) 2014-06-05 2018-07-03 F5 Networks, Inc. Methods for securing one or more license entitlement grants and devices thereof
US10122630B1 (en) 2014-08-15 2018-11-06 F5 Networks, Inc. Methods for network traffic presteering and devices thereof
US10182013B1 (en) 2014-12-01 2019-01-15 F5 Networks, Inc. Methods for managing progressive image delivery and devices thereof
US10505818B1 (en) 2015-05-05 2019-12-10 F5 Networks. Inc. Methods for analyzing and load balancing based on server health and devices thereof
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US10505792B1 (en) 2016-11-02 2019-12-10 F5 Networks, Inc. Methods for facilitating network traffic analytics and devices thereof

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3469650B2 (en) * 1994-09-13 2003-11-25 ソニー株式会社 Optical recording medium and a signal recording method
US5915027A (en) * 1996-11-05 1999-06-22 Nec Research Institute Digital watermarking
US5875249A (en) * 1997-01-08 1999-02-23 International Business Machines Corporation Invisible image watermark for image verification

Also Published As

Publication number Publication date
WO2000004422A2 (en) 2000-01-27
WO2000004422A3 (en) 2000-04-20
AU5318999A (en) 2000-02-07
CA2304041A1 (en) 2000-01-27

Similar Documents

Publication Publication Date Title
US6996273B2 (en) Robust recognizer of perceptually similar content
Anderson et al. The steganographic file system
Singh et al. A survey of digital watermarking techniques, applications and attacks
Cox et al. A secure, robust watermark for multimedia
US8095795B2 (en) Methods and apparatus for robust embedded data
US8131760B2 (en) Using object identifiers with content distribution
Agrawal et al. Watermarking relational data: framework, algorithms and analysis
Memon et al. Protecting digital media content
CN100364326C (en) Method and apparatus for embedding and detecting digital watermark in text file
Agrawal et al. Watermarking relational databases
CA2319340C (en) Secure distribution of digital representations
EP0575765B1 (en) Secure file erasure
EP1256086B1 (en) Methods and apparatus for multi-layer data hiding
Lin et al. A hierarchical digital watermarking method for image tamper detection and recovery
Rey et al. A survey of watermarking algorithms for image authentication
Barni et al. Data hiding for fighting piracy
US5905800A (en) Method and system for digital watermarking
US8452972B2 (en) Methods and systems for encoding and protecting data using digital signature and watermarking techniques
Li et al. Tamper detection and localization for categorical data using fragile watermarks
EP0459046A1 (en) Computer software protection
US7639834B2 (en) Software anti-piracy systems and methods utilizing certificates with digital content
US20020126872A1 (en) Method, apparatus and programs for generating and utilizing content signatures
US20020154778A1 (en) Derivation and quantization of robust non-local characteristics for blind watermarking
JP2008211784A (en) Method for facilitating inserting information in video signal and method for facilitating protecting video signal
Guo et al. A fragile watermarking scheme for detecting malicious modifications of database relations

Legal Events

Date Code Title Description
EEER Examination request