WO2001074053A1 - Document marking - Google Patents

Document marking Download PDF

Info

Publication number
WO2001074053A1
WO2001074053A1 PCT/GB2001/001088 GB0101088W WO0174053A1 WO 2001074053 A1 WO2001074053 A1 WO 2001074053A1 GB 0101088 W GB0101088 W GB 0101088W WO 0174053 A1 WO0174053 A1 WO 0174053A1
Authority
WO
WIPO (PCT)
Prior art keywords
fingeφrint
image
printed
printer driver
image data
Prior art date
Application number
PCT/GB2001/001088
Other languages
French (fr)
Inventor
Anthony William Harris
David Hilton
Original Assignee
Software 2000 Limited
Signum Technologies Limited
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 Software 2000 Limited, Signum Technologies Limited filed Critical Software 2000 Limited
Priority to GB0224255A priority Critical patent/GB2379119B/en
Priority to AU2001240806A priority patent/AU2001240806A1/en
Publication of WO2001074053A1 publication Critical patent/WO2001074053A1/en

Links

Classifications

    • 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/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00236Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer
    • H04N1/00238Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer using an image reproducing device as a local output from a computer
    • 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
    • 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
    • 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
    • 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/3225Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
    • H04N2201/3233Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document of authentication information, e.g. digital signature, watermark
    • 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

Definitions

  • the present invention relates to document marking and in particular to a method, apparatus, and computer program for incorporating a unique identifier into a printed document.
  • a method of incorporating a fingerprint into a printed work comprising the steps of: sending digital data corresponding to an image to be printed to a printer driver; incorporating at least one fingerprint into the data during processing by the printer driver by altering the colour and/or intensity of pixels of the image data; and sending the data processed by the printer driver to a printer.
  • the printer driver represents a "point" through which all data to be printed must pass, and is aware of both the format of the data received from the printing application and of the format of data required by the printer. It therefore represents a more comprehensive solution than could be achieved by incorporating a fingerprint into image data at say an image scanner (using either a software or a hardware solution) or by way of a specific application (e.g. Microsoft WordTM).
  • a solution at the operating system level is also unlikely to be feasible as many operating systems are already in use and it would be difficult or impossible to "retrofit" a fingerprint solution.
  • printer drivers tend to be replaced or updated (e.g. to introduce bug fixes) fairly often, and so a solution introduced at this level would percolate through computer systems fairly rapidly.
  • the step of incorporating at least one fingerprint into the image data is carried out automatically by the printer driver substantially without any possibility for intervention by the user of the equipment on which the printer driver resides.
  • said fingerprint corresponds to an identification (e.g. serial number) associated with the host computer system (e.g. the ID of the host computer BIOS, the operating system ID or a chip ID), the printer, or the printer driver. More preferably, the identification is a unique identifier.
  • the method of the present invention may comprise the steps of determimng whether or not the printer has an ID which can be used as said fingerprint and, if not, determining whether or not the computer system has a usable ID.
  • the latter step may comprise determining whether or not the computer operating system has an ID which can be used as said fingerprint and, if not, determining whether or not the motherboard or microprocessor of the computer system has a usable ID.
  • the step(s) of determining a suitable fingerprint may be carried for example out during the installation of the printer driver, or each time the printer driver receives a new print job.
  • the fingerprint may be incorporated into the image data to be printed, in an encrypted form so that it can only be determined after image processing and decryption steps.
  • the use of encryption may prevent unauthorised parties from determining the source of a printed document. Encryption may be achieved, for example, using an encryption key based algorithm.
  • the fingerprint may be subjected to a one way hashing operation using a hashing function prior to incorporation into the image data. This would make it difficult or impossible to reverse the process, i.e. to determine the fingerprint from data recovered from a printed work. However, it would be possible to associate a printed work to a computer system if the computer system is available.
  • a finge ⁇ rint which is generated using multiple IDs, e.g. an ID of the printer and an ID of the printer driver, may result in an increased level of security.
  • the step of incorporating a fingerprint into the image data step is carried out after the received image data has been rasterised by the printer driver. More preferably, the luminance of pixels is varied, whilst the chrominance remains substantially unchanged. This may be achieved, in a colour image, by varying each of the Red, Green, and Blue components.
  • the pixels are altered prior to rendering the image data.
  • the level by which the image data is altered to incorporate the fingerprint depends upon the quality of the image to be printed.
  • the level of alteration may vary with one or more of the following; the printing resolution, paper quality, and bit depth of the image.
  • the level of alteration may vary across the image to be printed.
  • a single fingerprint may be repeated at intervals across the image to be printed, or different fingerprints may be incorporated into a single image.
  • a computer memory encoded with executable instructions representing a printer driver computer program for causing a computer system to output digital data to a printer, wherein the resulting printed image comprises an image corresponding to the image data received by the printer driver and a finge ⁇ rint which is substantially invisible to the naked eye but can be recognised by image processing techniques.
  • said computer program is a ⁇ anged to be inoperable in the event that software code relating to said finge ⁇ rint or to the inco ⁇ oration of said finge ⁇ rint into an image to be printed is tampered with.
  • a method of combating the counterfeiting of printed works comprising inco ⁇ orating into printer driver software, software code for causing a finge ⁇ rint to be inco ⁇ orated into image data processed by that printer driver, which finge ⁇ rint results in a change in the image when printed which is substantially invisible to the naked eye but can be detected by image processing techniques.
  • a method of combating the pirating of driver software or images comprising inco ⁇ orating into printer driver software, software code for causing a finge ⁇ rint to be inco ⁇ orated into image data processed by that printer driver, which finge ⁇ rint results in a change in the image when printed which is substantially invisible to the naked eye but can be detected by image processing techniques.
  • a computer system having memory means storing a computer program according to the above second aspect of the present invention, and processing means for executing said program so as to cause a finge ⁇ rint to be inco ⁇ orated into an image printed from the computer system.
  • a method of inco ⁇ orating a finge ⁇ rint into printed image which finge ⁇ rint is substantially invisible to the naked eye, the method comprising encrypting the finge ⁇ rint using a one-way hashing function prior to its inco ⁇ oration into image data to be printed, and subsequently printing the modified image data, wherein the finge ⁇ rint may only be recovered from the printed image using a knowledge of the hashing function.
  • Figure 1 illustrates a typical computer system
  • Figure 2 illustrates in block diagram form a printing portion of the computer system of Figure 1.
  • FIG. 1 a personal computer (PC) 1 and a digital printer 2.
  • the PC is controlled by a software operating system 3 such as Microsoft Windows 98TM, LINUX, or UNIXTM, and is arranged to run applications 4 such as Microsoft WordTM, Adobe PhotoShopTM and the like.
  • applications 4 such as Microsoft WordTM, Adobe PhotoShopTM and the like.
  • data to be printed is transferred from an application 4, under the control of the operating system 3, to a software module known as a printer driver 5.
  • Printer drivers are often printer specific and are typically installed into a PC from a printer manufacturer's CD ROM or from a driver library provided with the operating system. Printer drivers may be updated, e.g. to add new features or to fix bugs, using executable files supplied by the driver manufacturers.
  • the printer driver 5 typically takes image data to be printed (the image may correspond to text, pictures, diagrams, etc), and converts this into a grid (or raster space) of pixel values, where each value represents the colour of the image at that point in the grid. This process is referred to as "rasterising”. Following the rasterising of the image data, the data is modified in order to inco ⁇ orate into the image a unique finge ⁇ rint.
  • This finge ⁇ rint is preferably a unique ID which is encoded into the printer hardware or software and which is detected by the printer driver 5 during its installation. The determined ID is stored in an appropriate secure location for later use by the printer driver 5.
  • the printer driver 5 may then try to identify a motherboard serial number or CPU serial number (as for example on the Intel Pentium III). If a usable ID still cannot be obtained, then the printer driver 5 may look for a hard disk serial number, an Ethernet MAC address (when the computer has a card with a non-null address), a hash value generated based on the bad sector map on the boot drive, a Plug and Play serial number (on PCs with PCI only), or an MS-DOS serial number (on PCs).
  • FIG 2 illustrates schematically a printing system of the computer system of Figure 1.
  • the printing system consists of a printer driver 5 which uses a set of data processing modules to process image data received from the operating system.
  • a first of the modules used by the driver 5 is a rasterising module 6, the function of which has already been described above.
  • the second module which receives the rasterised data from the rasterising module is a finge ⁇ rint application module 7.
  • the operation of the finge ⁇ rint module 7 will not be describer in detail here. Instead, reference should be made to International application no. PCT/GB/00491 in the name of Highwater FBI Ltd.
  • this document describes a method of inco ⁇ orating a finge ⁇ rint into a printed image in such a way that the finge ⁇ rint is not readily visible to the naked eye, but can be determined by scanning and processing the printed image.
  • the method uses a technique known as the "permutation" method and involves applying a code to modify the luminance (with the chrominance remaining substantially unchanged) of a sequence of pixels of the rasterised image data. Permutations of the code are applied in sequence to modify the entire image (alternatively, the process may be repeated for multiple tiled regions of the image). Orientation markers are inco ⁇ orated into the image to allow analysis software to correctly orient the image.
  • PCT/GB/00491 describes how the finge ⁇ rint may be recovered using a statistical analysis of a subsequently scanned version of the image, and the encryption key.
  • the finge ⁇ rint module of the printer driver 5 uses the permutation technique, where the code used to modify the image data is generated using the finge ⁇ rint described above and an encryption key. Both the finge ⁇ rint and the encryption key are stored in secure block of memory and are retrieved by the finge ⁇ rint module when required.
  • the "strength" of the finge ⁇ rint may be scaled prior to its inco ⁇ oration into the image in order to prevent the encrypted finge ⁇ rint from visibly altering the image quality (obviously any distortion of a printed image is undesirable).
  • the strength may be determined on the basis of a number of factors including the resolution at which the printing occurs, the quality of the paper on which the image is to be printed, and the bit depth of the image data. The strength may vary across an image depending upon local conditions, e.g. the finge ⁇ rint is applied more heavily in noisy regions.
  • the finge ⁇ rint module should be secure against tampering, e.g. to modify the finge ⁇ rint.
  • a satisfactory level of security may be achieved, for example, by using the multiple storage and cross-referencing of the finge ⁇ rint, and/or storage of the finge ⁇ rint within a self-modifying driver.
  • the image data output from the f ⁇ nge ⁇ rint module 7 is passed by the printer driver 5 to a rendering module 8.
  • a main function of the rendering module 8 is to convert the pixel intensity data into corresponding halftone values (most printers are incapable of varying the intensity of a printed pixel, and so intensity variations are achieved by mixing colour and white pixels to an appropriate degree, a process known as "halftoning").
  • the halftone data is then passed to a formatting module 9 which arranges the data, and introduces formatting commands, into a form acceptable to the printer 2.
  • the present invention may be adopted by organisations, such as the major world banks, as a means of combating the forgery of bank notes, bonds, certificates, and the like.
  • organisations such as the major world banks
  • the matching of an finge ⁇ rint found on a counterfeit document to a particular piece of software or hardware is likely to prove convincing evidence in a court of law.
  • printer drivers or other software components
  • printer drivers and technologies such as halftoning and colour matching are critical to the success of print devices and require multiple man years to develop.
  • Third parties are often tempted copy all or parts of drivers and to illegally attempt to pass them off as having developed them themselves. This problem may be combated by introducing of a hidden finge ⁇ rint into printed output as described above.
  • a one-way hashing function may be used to encrypt a finge ⁇ rint in a printer driver.
  • the operation of one-way hashing is described in "Applied Cryptography", Bruce Schneier, 2ed, 1996, John Wiley & Sons, p30-31 and 351-354, and results in a value from which the finge ⁇ rint cannot be derived without the knowledge of the hashing function.
  • the finge ⁇ rint may be combined with a unique identity known only to the printer driver, prior to hashing, in order to significantly reduce the possibility of someone deriving the finge ⁇ rint by applying all possible finge ⁇ rints to recovered image data.

Abstract

A method of incorporating a fingerprint into a printed work, which fingerprint is substantially invisible to the naked eye but can be recognised by image processing techniques. The method comprises the steps of sending digital data corresponding to an image to be printed to a printer driver (5), incorporating at least one fingerprint into the data during processing by the printer driver (5), and sending the data processed by the printer driver (5) to a printer (2).

Description

DOCUMENT MARKING
The present invention relates to document marking and in particular to a method, apparatus, and computer program for incorporating a unique identifier into a printed document.
The counterfeiting of bank notes and of other intrinsically valuable documents has always been a serious problem which has exercised the minds of individuals, companies, and governments alike. The counterfeiting of bank notes in the US alone is estimated to run at 70 million dollars per annum. Recently, the problem of counterfeiting has increased due to the availability of high quality, low cost digital printers and scanners, and the quality of counterfeits produced by such means is approaching that which can be achieved by conventional offset lithography equipment. It will be appreciated that the potential for damage is enormous, if every home and office is capable of producing extremely high quality forgeries.
There is only a limited amount which can be done to stop a person producing counterfeits if they have the desire to do so. Attempts have been made to produce bank notes which are in some ways resistant to photocopying or digital scanning, but these have met with only limited success and at best achieve only some degree of degradation in the copies or scanned image. In the light of this, enforcement agencies still rely on more conventional methods of policing. However, in the event that a suspected counterfeiter is apprehended by the authorities, there is often a problem in obtaining sufficient information to achieve a successful prosecution. Particularly where counterfeits are prepared using a home PC and printer, it is very easy for the counterfeiter to erase any trace of his activities.
One solution to the problem of obtaining evidence for use in a court of law, involves incorporating a "fingerprint" into printed or copied documents which is unique to the equipment used to prepare the document. For example, certain photocopiers comprise a chip on which is encoded a unique identifier which is incorporated into a copied document in such a way that, whilst substantially invisible to the naked eye, it can be discerned using special imaging technology. The requirement for a special chip adds to manufacturing costs however and, whilst contributing only a relatively small fraction of the total cost of a photocopier, would be more significant if the same technology were to be incorporated into desktop printers.
It is an object of the present invention to overcome or at least mitigate the disadvantages of existing anti-counterfeiting measures noted above. In particular, it is an object of the present invention to provide a relatively simple and low cost anti-counterfeiting means which may be incorporated into desktop PCs, workstations, and the like. It is also an object of the present invention to provide a mechanism for combating the pirating of printer driver software and software components.
According to a first aspect of the present invention there is provided a method of incorporating a fingerprint into a printed work, which fingerprint is substantially invisible to the naked eye but can be recognised by image processing techniques, the method comprising the steps of: sending digital data corresponding to an image to be printed to a printer driver; incorporating at least one fingerprint into the data during processing by the printer driver by altering the colour and/or intensity of pixels of the image data; and sending the data processed by the printer driver to a printer.
The printer driver represents a "point" through which all data to be printed must pass, and is aware of both the format of the data received from the printing application and of the format of data required by the printer. It therefore represents a more comprehensive solution than could be achieved by incorporating a fingerprint into image data at say an image scanner (using either a software or a hardware solution) or by way of a specific application (e.g. Microsoft Word™). Implementing a solution at the operating system level is also unlikely to be feasible as many operating systems are already in use and it would be difficult or impossible to "retrofit" a fingerprint solution. In contrast, printer drivers tend to be replaced or updated (e.g. to introduce bug fixes) fairly often, and so a solution introduced at this level would percolate through computer systems fairly rapidly. Preferably, the step of incorporating at least one fingerprint into the image data is carried out automatically by the printer driver substantially without any possibility for intervention by the user of the equipment on which the printer driver resides.
Preferably, said fingerprint corresponds to an identification (e.g. serial number) associated with the host computer system (e.g. the ID of the host computer BIOS, the operating system ID or a chip ID), the printer, or the printer driver. More preferably, the identification is a unique identifier. The method of the present invention may comprise the steps of determimng whether or not the printer has an ID which can be used as said fingerprint and, if not, determining whether or not the computer system has a usable ID. The latter step may comprise determining whether or not the computer operating system has an ID which can be used as said fingerprint and, if not, determining whether or not the motherboard or microprocessor of the computer system has a usable ID. The step(s) of determining a suitable fingerprint may be carried for example out during the installation of the printer driver, or each time the printer driver receives a new print job.
The fingerprint may be incorporated into the image data to be printed, in an encrypted form so that it can only be determined after image processing and decryption steps. The use of encryption may prevent unauthorised parties from determining the source of a printed document. Encryption may be achieved, for example, using an encryption key based algorithm.
In certain embodiments of the present invention, the fingerprint may be subjected to a one way hashing operation using a hashing function prior to incorporation into the image data. This would make it difficult or impossible to reverse the process, i.e. to determine the fingerprint from data recovered from a printed work. However, it would be possible to associate a printed work to a computer system if the computer system is available. The use of a fingeφrint which is generated using multiple IDs, e.g. an ID of the printer and an ID of the printer driver, may result in an increased level of security.
Preferably, the step of incorporating a fingerprint into the image data step is carried out after the received image data has been rasterised by the printer driver. More preferably, the luminance of pixels is varied, whilst the chrominance remains substantially unchanged. This may be achieved, in a colour image, by varying each of the Red, Green, and Blue components.
Preferably, the pixels are altered prior to rendering the image data.
Preferably, the level by which the image data is altered to incorporate the fingerprint depends upon the quality of the image to be printed. The level of alteration may vary with one or more of the following; the printing resolution, paper quality, and bit depth of the image.
The level of alteration may vary across the image to be printed. A single fingerprint may be repeated at intervals across the image to be printed, or different fingerprints may be incorporated into a single image.
According to a second aspect of the present invention there is provided a computer memory encoded with executable instructions representing a printer driver computer program for causing a computer system to output digital data to a printer, wherein the resulting printed image comprises an image corresponding to the image data received by the printer driver and a fingeφrint which is substantially invisible to the naked eye but can be recognised by image processing techniques.
Preferably, said computer program is aπanged to be inoperable in the event that software code relating to said fingeφrint or to the incoφoration of said fingeφrint into an image to be printed is tampered with.
According to a third aspect of the present invention there is provided a method of combating the counterfeiting of printed works, the method comprising incoφorating into printer driver software, software code for causing a fingeφrint to be incoφorated into image data processed by that printer driver, which fingeφrint results in a change in the image when printed which is substantially invisible to the naked eye but can be detected by image processing techniques. According to a fourth aspect of the present invention there is provided a method of combating the pirating of driver software or images, the method comprising incoφorating into printer driver software, software code for causing a fingeφrint to be incoφorated into image data processed by that printer driver, which fingeφrint results in a change in the image when printed which is substantially invisible to the naked eye but can be detected by image processing techniques.
According to a fifth aspect of the present invention there is provided a computer system having memory means storing a computer program according to the above second aspect of the present invention, and processing means for executing said program so as to cause a fingeφrint to be incoφorated into an image printed from the computer system.
According to a sixth aspect of the present invention there is provided a method of incoφorating a fingeφrint into printed image, which fingeφrint is substantially invisible to the naked eye, the method comprising encrypting the fingeφrint using a one-way hashing function prior to its incoφoration into image data to be printed, and subsequently printing the modified image data, wherein the fingeφrint may only be recovered from the printed image using a knowledge of the hashing function.
For a better understanding of the present invention and in order to show how the same may be carried into effect reference will now be made, by way of example, to the accompanying drawings, in which: Figure 1 illustrates a typical computer system; and Figure 2 illustrates in block diagram form a printing portion of the computer system of Figure 1.
There is illustrated in Figure 1 a personal computer (PC) 1 and a digital printer 2. The PC is controlled by a software operating system 3 such as Microsoft Windows 98™, LINUX, or UNIX™, and is arranged to run applications 4 such as Microsoft Word™, Adobe PhotoShop™ and the like. In use, data to be printed is transferred from an application 4, under the control of the operating system 3, to a software module known as a printer driver 5. Printer drivers are often printer specific and are typically installed into a PC from a printer manufacturer's CD ROM or from a driver library provided with the operating system. Printer drivers may be updated, e.g. to add new features or to fix bugs, using executable files supplied by the driver manufacturers.
The printer driver 5 typically takes image data to be printed (the image may correspond to text, pictures, diagrams, etc), and converts this into a grid (or raster space) of pixel values, where each value represents the colour of the image at that point in the grid. This process is referred to as "rasterising". Following the rasterising of the image data, the data is modified in order to incoφorate into the image a unique fingeφrint. This fingeφrint is preferably a unique ID which is encoded into the printer hardware or software and which is detected by the printer driver 5 during its installation. The determined ID is stored in an appropriate secure location for later use by the printer driver 5. If the printer 2 has no useable ID, or the ID cannot be determined for any reason, the printer driver 5 may then try to identify a motherboard serial number or CPU serial number (as for example on the Intel Pentium III). If a usable ID still cannot be obtained, then the printer driver 5 may look for a hard disk serial number, an Ethernet MAC address (when the computer has a card with a non-null address), a hash value generated based on the bad sector map on the boot drive, a Plug and Play serial number (on PCs with PCI only), or an MS-DOS serial number (on PCs). If there is no convenient permanent value, then one may be generated, for example using CoCreateGuid (under MS Windows on a PC), and stored in the PC's registry or its equivalent, or in a custom generated file. A unique ID may also be generated using some combination of the listed codes. An advantage of using such a combination would be that even though a user changes some parts of his system, it may still be possible to link the fingeφrint to remaining parts of the system.
Figure 2 illustrates schematically a printing system of the computer system of Figure 1. In essence, the printing system consists of a printer driver 5 which uses a set of data processing modules to process image data received from the operating system. A first of the modules used by the driver 5 is a rasterising module 6, the function of which has already been described above. The second module which receives the rasterised data from the rasterising module is a fingeφrint application module 7. The operation of the fingeφrint module 7 will not be describer in detail here. Instead, reference should be made to International application no. PCT/GB/00491 in the name of Highwater FBI Ltd. Briefly, this document describes a method of incoφorating a fingeφrint into a printed image in such a way that the fingeφrint is not readily visible to the naked eye, but can be determined by scanning and processing the printed image. The method uses a technique known as the "permutation" method and involves applying a code to modify the luminance (with the chrominance remaining substantially unchanged) of a sequence of pixels of the rasterised image data. Permutations of the code are applied in sequence to modify the entire image (alternatively, the process may be repeated for multiple tiled regions of the image). Orientation markers are incoφorated into the image to allow analysis software to correctly orient the image. PCT/GB/00491 describes how the fingeφrint may be recovered using a statistical analysis of a subsequently scanned version of the image, and the encryption key. The fingeφrint module of the printer driver 5 uses the permutation technique, where the code used to modify the image data is generated using the fingeφrint described above and an encryption key. Both the fingeφrint and the encryption key are stored in secure block of memory and are retrieved by the fingeφrint module when required.
The "strength" of the fingeφrint may be scaled prior to its incoφoration into the image in order to prevent the encrypted fingeφrint from visibly altering the image quality (obviously any distortion of a printed image is undesirable). The strength may be determined on the basis of a number of factors including the resolution at which the printing occurs, the quality of the paper on which the image is to be printed, and the bit depth of the image data. The strength may vary across an image depending upon local conditions, e.g. the fingeφrint is applied more heavily in noisy regions.
It will be appreciated that in order to be useful, the fingeφrint module should be secure against tampering, e.g. to modify the fingeφrint. A satisfactory level of security may be achieved, for example, by using the multiple storage and cross-referencing of the fingeφrint, and/or storage of the fingeφrint within a self-modifying driver.
The image data output from the fϊngeφrint module 7 is passed by the printer driver 5 to a rendering module 8. A main function of the rendering module 8 is to convert the pixel intensity data into corresponding halftone values (most printers are incapable of varying the intensity of a printed pixel, and so intensity variations are achieved by mixing colour and white pixels to an appropriate degree, a process known as "halftoning"). The halftone data is then passed to a formatting module 9 which arranges the data, and introduces formatting commands, into a form acceptable to the printer 2.
It is envisaged that the present invention may be adopted by organisations, such as the major world banks, as a means of combating the forgery of bank notes, bonds, certificates, and the like. The matching of an fingeφrint found on a counterfeit document to a particular piece of software or hardware is likely to prove convincing evidence in a court of law.
It is also envisaged that manufacturers of printer drivers (or other software components) may use the present invention to combat the pirating of their software. Printer drivers and technologies such as halftoning and colour matching are critical to the success of print devices and require multiple man years to develop. Third parties are often tempted copy all or parts of drivers and to illegally attempt to pass them off as having developed them themselves. This problem may be combated by introducing of a hidden fingeφrint into printed output as described above.
It will be appreciated by the person of skill in the art that various modifications may be made to the above described embodiment without departing from the scope of the present invention. For example, in order to overcome fears that an innocently printed document may be traced back to an originating computer system or printer, a one-way hashing function may be used to encrypt a fingeφrint in a printer driver. The operation of one-way hashing is described in "Applied Cryptography", Bruce Schneier, 2ed, 1996, John Wiley & Sons, p30-31 and 351-354, and results in a value from which the fingeφrint cannot be derived without the knowledge of the hashing function. Thus, assuming that the hashing function is only contained in the printer driver, authorities would only be able to match a printed document to a computer system or printer if they have access to the printer driver. The fingeφrint may be combined with a unique identity known only to the printer driver, prior to hashing, in order to significantly reduce the possibility of someone deriving the fingeφrint by applying all possible fingeφrints to recovered image data.

Claims

CLAIMS:
1. A method of incoφorating a fingeφrint into a printed work, which fingeφrint is substantially invisible to the naked eye but can be recognised by image processing techniques, the method comprising the steps of: sending digital data corresponding to an image to be printed to a printer driver; incoφorating at least one fingeφrint into the data during processing by the printer driver by altering the colour and/or intensity of pixels of the image data; and sending the data processed by the printer driver to a printer.
2. A method according to claim 1, wherein the step of incoφorating at least one fingeφrint into the image data is carried out automatically by the printer driver substantially without any possibility for intervention by the user of the equipment on which the printer driver resides.
3. A method according to claim 1 or 2, wherein said fingeφrint corresponds to an identification associated with the host computer system or the printer.
4. A method according to claim 3, wherein the identification is selected from one of the following: a printer hardware or software ID, computer motherboard serial number, a CPU serial number, a hard disk serial number, an Ethernet MAC address, a hash value generated based on the bad sector map on the boot drive, a Plug and Play serial number, or an MS-DOS serial number, or an identification generated by the printer driver.
5. A method according to claim 4, wherein the identification is generated using two or more of the listed numbers.
6. A method according to any one of the preceding claims, wherein a fingeφrint is identified during installation of the printer driver.
7. A method according to any one of the preceding claims, wherein the fingeφrint is incoφorated into the image to be printed in an encrypted form so that it can only be determined after image processing and decryption steps.
8. A method according to claim 7 and comprising subjecting the fingeφrint to a one way hashing operation using a hashing function, prior to incoφoration into the image data.
9. A method according to any one of the preceding claims, wherein the luminance of pixels is varied, whilst the chrominance remains substantially unchanged.
10. A method according to any one of the preceding claims, wherein the pixels are altered after the image data has been rasterised by the print driver.
11. A method according to any one of the preceding claims, wherein the pixels are altered prior to rendering the image data.
12. A method according to any one of the preceding claims, wherein the level by which the image data is altered to incoφorate the fingeφrint depends upon the quality of the image to be printed.
13. A computer memory encoded with executable instructions representing a printer driver computer program for causing a computer system to output digital data to a printer, wherein the resulting printed image comprises an image corresponding to the image data received by the printer driver and a fingeφrint which is substantially invisible to the naked eye but can be recognised by image processing techniques, said program causing introducing the fingeφrint into the image data by altering the colour and/or intensity of pixels of the image data.
14. A method according to claim 13, wherein said computer program is arranged to be inoperable in the event that software code relating to said fingeφrint or to the incoφoration of said fingeφrint into an image to be printed is tampered with.
15. A method of combating the counterfeiting of printed works, the method comprising incoφorating into printer driver software, software code for causing a fingeφrint to be incoφorated into image data processed by that printer driver, which fingeφrint results in a change in the image when printed which is substantially invisible to the naked eye but can be detected by image processing techniques.
16. A method of combating the pirating of driver software or images, the method comprising incoφorating into printer driver software, software code for causing a fingeφrint to be incoφorated into image data processed by that printer driver, which fingeφrint results in a change in the image when printed which is substantially invisible to the naked eye but can be detected by image processing techniques.
17. A computer system having memory means storing a computer program according to the above second aspect of the present invention, and processing means for executing said program so as to cause a fingeφrint to be incoφorated into an image printed from the computer system.
18. A method of incoφorating a fingeφrint into printed image, which fingeφrint is substantially invisible to the naked eye, the method comprising encrypting the fingeφrint using a one-way hashing function prior to its incoφoration into image data to be printed, and subsequently printing the modified image data, wherein the fingeφrint may only be recovered from the printed image using a knowledge of the hashing function.
PCT/GB2001/001088 2000-03-28 2001-03-14 Document marking WO2001074053A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
GB0224255A GB2379119B (en) 2000-03-28 2001-03-14 Document marking
AU2001240806A AU2001240806A1 (en) 2000-03-28 2001-03-14 Document marking

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0007330A GB2360893A (en) 2000-03-28 2000-03-28 Incorporating a fingerprint in a document at the printer driver
GB0007330.4 2000-03-28

Publications (1)

Publication Number Publication Date
WO2001074053A1 true WO2001074053A1 (en) 2001-10-04

Family

ID=9888450

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2001/001088 WO2001074053A1 (en) 2000-03-28 2001-03-14 Document marking

Country Status (3)

Country Link
AU (1) AU2001240806A1 (en)
GB (2) GB2360893A (en)
WO (1) WO2001074053A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760464B2 (en) 2000-10-11 2004-07-06 Digimarc Corporation Halftone watermarking and related applications
US6899475B2 (en) 2002-01-30 2005-05-31 Digimarc Corporation Watermarking a page description language file
US6952485B1 (en) 2000-09-11 2005-10-04 Digimarc Corporation Watermark encoding and decoding in imaging devices and imaging device interfaces
EP1591952A1 (en) * 2004-04-26 2005-11-02 Adalbert Gubo Device for encoding and marking of documents for identification and retrieval
US6993150B2 (en) 2001-01-24 2006-01-31 Digimarc Corporation Halftone primitive watermarking and related applications
US7142691B2 (en) 2000-03-18 2006-11-28 Digimarc Corporation Watermark embedding functions in rendering description files
US7246239B2 (en) 2001-01-24 2007-07-17 Digimarc Corporation Digital watermarks for checking authenticity of printed objects
US7463380B2 (en) 2004-04-23 2008-12-09 Sharp Laboratories Of America, Inc. Spooling/despooling subsystem job fingerprinting
US9630443B2 (en) 1995-07-27 2017-04-25 Digimarc Corporation Printer driver separately applying watermark and information

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996027259A1 (en) * 1995-03-02 1996-09-06 Signum Technologies Limited Method of and apparatus for manipulating digital data works
WO1997002522A1 (en) * 1995-07-03 1997-01-23 Signum Technologies Limited Method of authenticating digital data works
US5644682A (en) * 1994-12-21 1997-07-01 Joseph Weinberger Method and system for incorporating indicia into a document generated by a computer application

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5530757A (en) * 1994-06-28 1996-06-25 International Business Machines Corporation Distributed fingerprints for information integrity verification
US5530759A (en) * 1995-02-01 1996-06-25 International Business Machines Corporation Color correct digital watermarking of images
US5825892A (en) * 1996-10-28 1998-10-20 International Business Machines Corporation Protecting images with an image watermark
US6198832B1 (en) * 1998-01-09 2001-03-06 U.S. Philips Corporation Embedding and detecting a watermark in images
US6064764A (en) * 1998-03-30 2000-05-16 Seiko Epson Corporation Fragile watermarks for detecting tampering in images
JP3680109B2 (en) * 1998-04-13 2005-08-10 株式会社沖データ Printing system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5644682A (en) * 1994-12-21 1997-07-01 Joseph Weinberger Method and system for incorporating indicia into a document generated by a computer application
WO1996027259A1 (en) * 1995-03-02 1996-09-06 Signum Technologies Limited Method of and apparatus for manipulating digital data works
WO1997002522A1 (en) * 1995-07-03 1997-01-23 Signum Technologies Limited Method of authenticating digital data works

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MINTZER F ET AL: "EFFECTIVE AND INEFFECTIVE DIGITAL WATERMARKS", PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING.,US,LOS ALAMITOS, CA: IEEE COMPUTER SOCIETY, 1997, pages 9 - 12, XP000780838, ISBN: 0-8186-8184-5 *
WOLFGANG R B ET AL: "Overview of image security techniques with applications in multimedia systems", PROCEEDINGS OF THE SPIE, 4 November 1997 (1997-11-04), XP002104655 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9630443B2 (en) 1995-07-27 2017-04-25 Digimarc Corporation Printer driver separately applying watermark and information
US7142691B2 (en) 2000-03-18 2006-11-28 Digimarc Corporation Watermark embedding functions in rendering description files
US6952485B1 (en) 2000-09-11 2005-10-04 Digimarc Corporation Watermark encoding and decoding in imaging devices and imaging device interfaces
US6760464B2 (en) 2000-10-11 2004-07-06 Digimarc Corporation Halftone watermarking and related applications
US6993150B2 (en) 2001-01-24 2006-01-31 Digimarc Corporation Halftone primitive watermarking and related applications
US7246239B2 (en) 2001-01-24 2007-07-17 Digimarc Corporation Digital watermarks for checking authenticity of printed objects
US6899475B2 (en) 2002-01-30 2005-05-31 Digimarc Corporation Watermarking a page description language file
US8228563B2 (en) 2002-01-30 2012-07-24 Digimarc Corporation Watermarking a page description language file
US7463380B2 (en) 2004-04-23 2008-12-09 Sharp Laboratories Of America, Inc. Spooling/despooling subsystem job fingerprinting
EP1591952A1 (en) * 2004-04-26 2005-11-02 Adalbert Gubo Device for encoding and marking of documents for identification and retrieval
US7599513B2 (en) 2004-04-26 2009-10-06 Adalbert Gubo Device for encoding and marking of documents for identification and retrieval

Also Published As

Publication number Publication date
AU2001240806A1 (en) 2001-10-08
GB2379119A (en) 2003-02-26
GB2379119B (en) 2004-12-08
GB0007330D0 (en) 2000-05-17
GB0224255D0 (en) 2002-11-27
GB2360893A (en) 2001-10-03

Similar Documents

Publication Publication Date Title
EP1591953B1 (en) System and method for decoding digital encoded images
Johnson et al. Information hiding: steganography and watermarking-attacks and countermeasures: steganography and watermarking: attacks and countermeasures
US6748533B1 (en) Method and apparatus for protecting the legitimacy of an article
US7644281B2 (en) Character and vector graphics watermark for structured electronic documents security
US6101602A (en) Digital watermarking by adding random, smooth patterns
US7809152B2 (en) Visible authentication patterns for printed document
US7844073B2 (en) Watermark-based goods authentication
EP1416440A2 (en) Apparatus and methods for improving detection of watermarks in content that has undergone a lossy transformation
US20030070075A1 (en) Secure hybrid robust watermarking resistant against tampering and copy-attack
US20090087020A1 (en) Image processing method and image processing device
JP2001245132A (en) System, processing method and storage medium
US20070003341A1 (en) Image processing device, image processing method, program, and recording medium
JP2007158947A (en) Image processing apparatus, program for executing image processing method, and medium which has stored program
US7352879B2 (en) Conjugate cluster screens for embedding digital watermarks into printed halftone documents
US7787152B2 (en) Copy detection system using correlations of copy detection patterns
WO2001074053A1 (en) Document marking
CA2355715A1 (en) Counterfeit deterrence system
Perry et al. Digital watermarks as a security feature for identity documents
Koltai et al. Enhanced optical security by using information carrier digital screening
Iqbal High capacity analog channels for smart documents
Singh Novel and Robust Methodologies for Image Security.
KUMAR et al. A New Orthogonal Data Embedding for Binary Images in Morphological Transform Domain
Eisenman Summary of Selected Topics in Digital Watermarking for Copyright Protection
Yoo et al. Practical off-line authentication
Mezey A Quasi-Copysafe Security of Documents on Normal Papersheets

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

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

Ref document number: GB0224255.0

Country of ref document: GB

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP