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 CA002304041A CA2304041A CA2304041C CA 2304041 C CA2304041 C CA 2304041C CA 002304041 A CA002304041 A CA 002304041A CA 2304041 A CA2304041 A CA 2304041A CA 2304041 C CA2304041 C CA 2304041C
Authority
CA
Canada
Prior art keywords
string
work
document
values
copy protection
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
CA002304041A
Other languages
French (fr)
Other versions
CA2304041A1 (en
Inventor
F. Thomson Leighton
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
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
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • G06T1/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 protecti on 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.
CA002304041A 1998-07-17 1999-07-19 Method for image processing to facilitate copy protection Expired - Lifetime CA2304041C (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12002398A 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
CA002304041A 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 (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US7441045B2 (en) 1999-12-13 2008-10-21 F5 Networks, Inc. Method and system for balancing load distribution on a wide area network
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
JP2006025129A (en) * 2004-07-07 2006-01-26 Canon Inc System and method for image processing
JP2008541169A (en) * 2005-05-13 2008-11-20 テンプル・ユニバーシティ−オブ・ザ・コモンウェルス・システム・オブ・ハイアー・エデュケイション Secret sharing technique in 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
US10721269B1 (en) 2009-11-06 2020-07-21 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
US8868961B1 (en) 2009-11-06 2014-10-21 F5 Networks, Inc. Methods for acquiring hyper transport timing and devices thereof
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
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
US8959571B2 (en) 2010-10-29 2015-02-17 F5 Networks, Inc. Automated policy builder
EP2633667B1 (en) 2010-10-29 2017-09-06 F5 Networks, Inc System and method for on the fly protocol conversion in obtaining policy enforcement information
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
US9231879B1 (en) 2012-02-20 2016-01-05 F5 Networks, Inc. Methods for policy-based network traffic queue management and devices thereof
US9172753B1 (en) 2012-02-20 2015-10-27 F5 Networks, Inc. Methods for optimizing HTTP header based authentication and devices thereof
EP2853074B1 (en) 2012-04-27 2021-03-24 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
US11838851B1 (en) 2014-07-15 2023-12-05 F5, Inc. Methods for managing L7 traffic classification 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
US11895138B1 (en) 2015-02-02 2024-02-06 F5, Inc. Methods for improving web scanner accuracy and devices thereof
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication 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
US11757946B1 (en) 2015-12-22 2023-09-12 F5, Inc. Methods for analyzing network traffic and enforcing network policies 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
US10797888B1 (en) 2016-01-20 2020-10-06 F5 Networks, Inc. Methods for secured SCEP enrollment for client devices and devices thereof
US10791088B1 (en) 2016-06-17 2020-09-29 F5 Networks, Inc. Methods for disaggregating subscribers via DHCP address translation and devices thereof
US11063758B1 (en) 2016-11-01 2021-07-13 F5 Networks, Inc. Methods for facilitating cipher selection and devices thereof
US10505792B1 (en) 2016-11-02 2019-12-10 F5 Networks, Inc. Methods for facilitating network traffic analytics and devices thereof
CN108205810B (en) * 2016-12-16 2021-08-10 富士通株式会社 Image comparison device and method and electronic equipment
US11496438B1 (en) 2017-02-07 2022-11-08 F5, Inc. Methods for improved network security using asymmetric traffic delivery and devices thereof
US10791119B1 (en) 2017-03-14 2020-09-29 F5 Networks, Inc. Methods for temporal password injection and devices thereof
US10812266B1 (en) 2017-03-17 2020-10-20 F5 Networks, Inc. Methods for managing security tokens based on security violations and devices thereof
US10931662B1 (en) 2017-04-10 2021-02-23 F5 Networks, Inc. Methods for ephemeral authentication screening and devices thereof
US10972453B1 (en) 2017-05-03 2021-04-06 F5 Networks, Inc. Methods for token refreshment based on single sign-on (SSO) for federated identity environments and devices thereof
US11122042B1 (en) 2017-05-12 2021-09-14 F5 Networks, Inc. Methods for dynamically managing user access control and devices thereof
US11122083B1 (en) 2017-09-08 2021-09-14 F5 Networks, Inc. Methods for managing network connections based on DNS data and network policies and devices thereof
US11658995B1 (en) 2018-03-20 2023-05-23 F5, Inc. Methods for dynamically mitigating network attacks and devices thereof
US11044200B1 (en) 2018-07-06 2021-06-22 F5 Networks, Inc. Methods for service stitching using a packet header 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 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
AU5318999A (en) 2000-02-07
CA2304041A1 (en) 2000-01-27
WO2000004422A3 (en) 2000-04-20

Similar Documents

Publication Publication Date Title
CA2304041C (en) Method for image processing to facilitate copy protection
US5949885A (en) Method for protecting content using watermarking
Celik et al. Hierarchical watermarking for secure image authentication with localization
US5664018A (en) Watermarking process resilient to collusion attacks
Sion et al. Rights protection for relational data
JP4767927B2 (en) How to make digital signal protection easier
Sion et al. On watermarking numeric sets
Kundar Multiresolution digital watermarking: algorithms and implications for multimedia signals.
Li et al. Constructing a virtual primary key for fingerprinting relational data
Sahoo et al. Designing an embedded algorithm for data hiding using steganographic technique by file hybridization
Ahmed et al. Information Hiding using LSB technique
Prasad et al. A secure fragile watermarking scheme for protecting integrity of digital images
CA2483992A1 (en) System and method for digital watermarking of data repository
Guru et al. Digital watermarking classification: a survey
EP1510075B1 (en) Method of extracting a watermark
Ahuja et al. A survey of digital watermarking scheme
WO1997034391A1 (en) Watermarking process resilient to collusion attacks
Jaiswal et al. Implementation of a new technique for web document protection using unicode
Sharma et al. A study of steganography based data hiding techniques
Gort et al. Preventing additive attacks to relational database watermarking
Arab et al. Comparison of Data Hiding Techniques for Video Watermarking Applications
Yeung et al. Digital watermarks: Shedding light on the invisible
Khadam et al. Data aggregation and privacy preserving using computational intelligence
Murugan et al. A robust watermarking technique for copyright protection for relational databases
Jia et al. Digital watermark-based security technology for geo-spatial graphics data

Legal Events

Date Code Title Description
EEER Examination request