The present invention relates to fraud prevention and in particular to a method of generating a copy detection pattern having both a static portion and a dynamic portion for incorporation into a postal indicium to discourage forgery.
The postal services of many countries around the world permit and/or require the printing of evidence of postage payment, such as a postal indicium, that includes a two-dimensional barcode. For example, the United States Postal Service has implemented a program known as the Information Based Indicia Program (IBIP) which permits a user to generate a postage indicium for sending a mailpiece (e.g., letter, package, etc.) that includes a human readable portion and a machine readable portion in the form of a two-dimensional barcode, such as without limitation, what is commonly referred to as a Data Matrix symbol. Such an indicium is commonly referred to as a Digital Postage Mark (DPM). In addition to encoding the value of the postage represented by such an indicium, the two-dimensional barcode may encode other pieces of information concerning the mailpiece and/or the indicium, such as the date on which the indicium was printed, data concerning a characteristic and/or unique identifier of the printer used to print the indicium, an identifier of the sender and/or intended recipient, data concerning the location of the sender and/or intended recipient, an identifier that is assigned and is unique to each mailpiece, the weight of the mailpiece, and/or data concerning the size of the mailpiece.
Because such a postal indicium with such a barcode represents monetary value, and is thus a type of currency, it is tempting for fraudsters to copy a valid postal indicium having such a barcode and reuse it on other mailpieces. Even if a system of detection of duplicates is in place at the postal facilities (such as a system recording the barcodes going through and matching them against a database of all previously recorded barcodes), a number of ways of avoiding detection are possible. For example, the fraudster could send the illegitimate copy of the barcode first and the legitimate barcode afterward, making prosecution practically impossible. Alternatively, in larger countries where billions or mailpieces are processed each year from many different locations around each country, the fraudster could send all copies of the barcode at the same time from different locations so that the copies would be processed before a central database used for detection of duplicates is updated. Thus, it is desirable to protect such a postal indicium against copying.
One possible way to protect a postal indicium against copying would be to incorporate a copy detection pattern (CDP) therein. A highly desirable form of CDP is a dynamic CDP. Such a CDP is dynamic in that the content of the CDP, itself, is dependent upon data that is expected to change frequently, and perhaps as frequently as each time the CDP is incorporated into a postal indicium. On one hand, such a dynamic CDP can be generated in the printing device. Unfortunately, considerable processing capability is needed to generate such a CDP. On the other hand, such a dynamic CDP can be generated by a server with greater computing capability and then transmitted to the printer together with the data to be later incorporated into the indicium. However, this system requires considerable amounts of data to be transmitted (and therefore slows down considerably the required transmission time), and it requires a considerable amount of memory in the printing device to store the CDPs.
The processing and data storage capabilities typically built into printers utilized to print postal indicia, however, are usually limited, typically by a need to produce such a printer at a minimal cost, and therefore are not suitable for incorporating dynamic CDPs therein. While the use of a fixed CDP, i.e., a CDP in which the content of the CDP, itself, is static and does not change such that the identical CDP is repeatedly used, may provide some security when used in postal indicia, while accommodating the limited processing and data storage capabilities of typical printers used to print postal indicia, the security of such a fixed CDP may not be sufficient. For example, improvements made in photocopying, image processing, printing and scanning equipment over time has made it easier to commit fraud by copying and reusing postal indicia, including postal indicia incorporating a fixed CDP. It would be desirable, therefore, to be able to provide dynamic copy detection patterns in postal indicia without having to significantly increase the processing and data storage capabilities built into printers that print such postal indicia and without having to significantly increase the amount of data to be transmitted to such printer.
The present invention provides methods and systems for providing security against fraudulent use of postal indicia by incorporating a static/dynamic copy detection pattern in postal indicia. In one embodiment, the invention provides a method of creating and printing a postal indicium incorporating a CDP having both a static portion and a dynamic portion, including storing one or more static portions in a storage of a printing device, generating the dynamic portion on the printing device, combining the static portion and the dynamic portion on the printing device to create the CDP, and printing the postal indicium including the CDP.
The method may further include combining the static portions and the dynamic portions by interspersing pixels of the static portions with pixels of the dynamic portions.
In another embodiment, the invention provides a printing device to print a postal indicium incorporating a CDP having one or more static portions and dynamic portions, including a print engine; a storage having stored therein a CDP generator software; and a processor structured to store the static portions and optionally dynamic portions in the storage, generate one or more dynamic portions, combine the static portions and the dynamic portions to create the CDP, and print the postal indicium.
In another embodiment, the invention provides a machine-readable medium on which a sequence of instructions are stored that when executed by a processor causes the processor to perform operations including generating a static portion of a CDP, and enabling a printing device to create the CDP from the static portion and a dynamic portion generated by the printing device by transmitting the static portion to the printing device.
In another embodiment, the invention provides a machine-readable medium on which a sequence of instructions are stored that when executed by a processor of a printing device causes the processor to perform operations including storing a static portion of a CDP, generating a dynamic portion of the CDP, combining the static portion and the dynamic portion to create the CDP, and printing a postal indicium incorporating the CDP.
Therefore, it should now be apparent that the invention substantially achieves all the above aspects and advantages. Additional aspects and advantages of the invention will be set forth in the description that follows, and in part will be obvious from the description, or may be learned by practice of the invention. Moreover, the aspects and advantages of the invention may be realized and obtained by means of the instrumentalities and combinations particularly pointed out in the appended claims.
The accompanying drawings illustrate presently preferred embodiments of the invention, and together with the general description given above and the detailed description given below, serve to explain the principles of the invention. As shown throughout the drawings, like reference numerals designate like or corresponding parts.
The present invention provides systems and methods of discouraging fraud arising from the duplication of postal indicia used to send mailpieces through the mail by incorporating a copy detection pattern (CDP) having both static portions and dynamic portions into a postal indicium to enable identification of fraudulent duplicates of the postal indicium.
Electronic device 100 incorporates a processor 110 connected to a storage 120 and an interface 130. The processor 110 accesses the storage 120 to retrieve and execute sequences of instructions that make up software, such as a CDP generator software 123. The interface 130 provides an interface by which the electronic device 100 may be attached to the printing device 200. The printing device 200 incorporates a processor 210 connected to a storage 220, an interface 230 and the print engine 240. The processor 210 accesses the storage 220 to retrieve and execute sequences of instructions that make up software, such as a print control software 222, CDP generator software 223 and a CDP combiner software 224. The interface 230 provides an interface by which the electronic device 200 may be attached to the electronic device 100.
As those skilled in the art will readily recognize, the processors 110 and 210 may be of any of a wide variety of processing devices, including and without limitation, microcontrollers, microprocessors, sequencers, digital signal processors or state machines implemented in hardware logic. In some embodiments, one or both of the processors 110 and 210 may be any of a number of commercially available processors executing at least a portion of the widely known and used “X86” instruction set. Furthermore, the storages 120 and 220 may be of any of a wide variety of types of storage devices, including and without limitation, disk drives (e.g. and without limitation, hard drives, floppy drives, magneto-optical drives, magnetic tape drives or CD-ROM drives), solid state memory (e.g. and without limitation, static RAM, dynamic RAM, ROM, EEPROM or FLASH) and memory card readers. As previously discussed, the interfaces 130 and 230 allow the electronic device 100 and the printing device 200 to be attached to each other. This attachment may be through a direct electrical or optical connection, such as a digital parallel or digital serial interface (e.g., RS-232C, Universal Serial Bus, IEEE-1394), or through a network (e.g., Ethernet).
Furthermore, the electronic device 100 may also incorporate a media storage device 190 capable of interacting with a storage medium 191 (which may or may not be a form of removable media) to store and/or retrieve software and/or data. Alternatively, the media storage device 190 may be incorporated into the printing device 200. The software and/or data may include software stored in either storages 120 or 220, including without limitation, the CDP generator software 123, the print control software 222, the CDP generator software 223, and/or the CDP combiner software 224.
In executing a sequence of instructions of the CDP generator software 123, the processor 110 performs tasks associated with the printing of the indicium 300 by generating a static portion of the CDP 340, using at least one piece of information about the printing device 200, the indicium 300 and/or the mailpiece with which the postal indicium 300 is used that is expected to change relatively infrequently (if at all) between printings of postal indicia by the printing device 200. Such a piece of static information may be, for example, a unique identifier of the printing device 200. Such static information could also be, for example, an identifier of a sender, or data concerning the location of the sender. Such a piece of static information may also be at least a portion of the barcode 310 that is expected to change relatively infrequently, and this may be done to gain the benefit of the manner in which data is encoded by the barcode 310, including a form of encryption that may be used in generating the barcode 310. At least some of these pieces of information may be stored in storages 120 and/or 220.
Regardless of what pieces of information are used in generating the static portion of the CDP 340, and regardless of where that information is stored, considerable processing capability and storage capacity are required to execute the generation of the static portion just described. By employing the processor 110 of the electronic device 100 to carry out this processing, the processor 210 may be allowed to be a lower cost processor of lesser capability than the processor 110, and the storage 220 may be allowed to be of a smaller capacity than the storage 120.
After the static portion of the CDP 340 has been created, the processor 110 is caused to operate the interface 130 to transmit the static portion of the CDP 340 to the printing device 200, where the processor 210 receives the prepared form of the static portion through the interface 230 and stores it as the static portion 229 in the storage 220. Alternatively, the generation of the static portion may be performed when the printing device 200 is being manufactured and stored in the storage 220 during manufacture of the printing device 200, or may be performed upon initialization of the printing device 200 and stored in the storage 220 during such initialization.
At a time after receipt and storage of the static portion 229, a request by a user of the printing device 200 to print a postal indicium 300 executes the print control software 222 by the processor 210, which causes the processor 210 to create the CDP 340 and then incorporate the CDP 340 into the postal indicium 300. The processor 210, in executing a sequence of instructions of the CDP generator software 223, prepares for the printing of the postal indicium 300 by generating a dynamic portion 349 (
After generating the dynamic portion 349 of the CDP 340, the processor 210, in executing a sequence of instructions of the CDP combiner software 224, further prepares for the printing of the postal indicium 300 by retrieving the static portion 229 from the storage 220 and combining the dynamic portion 349 with the static portion 229 to create the CDP 340 as illustrated in
Further execution of a sequence of instructions of the print control software 222 by the processor 210 causes the processor 210 to create the postal indicium 300, such as, for example, by assembling all of the parts of the postal indicium 300 into a printable image, and operate the print engine 240 to print the postal indicium 300, incorporating the CDP 340. The postal indicium 300 may be printed either onto an envelope or other packaging of a mailpiece, directly, or onto a sticker or other adhesive label to be subsequently affixed to the mailpiece.
As those skilled in the art will readily recognize, numerous different algorithms may be employed in the generation of the static portion 229 and the dynamic portion 349 of the CDP 340. More particularly, various random or pseudo-random algorithms for creating apparently random gray levels and/or colors may be employed to create the static portion 229 and the dynamic portion 349 in which chosen static and dynamic pieces of data may serve as seed values and/or other as other inputs. In anticipation of the combining of the static portion 229 with the dynamic portion 349, one or more techniques may be employed to adjust the gray scale of one or both of the static portion 229 and the dynamic portion 349 to cause the gray scales of both to be substantially similar.
Similarly, as those skilled in the art will readily recognize, numerous different algorithms may be employed in combining the static portion 229 and the dynamic portion 349 to create the CDP 340. Although an approach of replacing pixels of one of either the static portion 229 or the dynamic portion 349 with pixels of the other may be used, other approaches including, for example and without limitation, the averaging or interspersing of pixels from both portions, may be employed.
At 552, the printing device creates a dynamic portion of the CDP from at least one piece of dynamic data. Any of a variety of algorithms may be employed to create the dynamic portion, including without limitation, random and pseudo-random algorithms for the generation of gray levels for monochrome or color pixels employing the at least one piece of dynamic data as a seed or other input. Furthermore, the at least one piece of dynamic data includes a piece of data that is expected to change frequently, perhaps with every printing of postal indicia, such as, for example, the time of generation of the dynamic portion.
At 554, the printing device combines the static and dynamic portions to create the CDP that will be incorporated into the postal indicium to be printed by the printing device. Any of a variety of algorithms may be employed to combine the static and dynamic portions, including without limitation, replacement of pixels of one portion by another, averaging of pixel gray levels, and interspersing pixels of both patterns. Furthermore, the gray levels of one or both patterns may be adjusted to achieve a substantially similar range of gray levels between the two patterns. At 556, the postal indicium is prepared and printed, wherein the postal indicium incorporates at least the CDP created at 554 from combining the static and dynamic portions. The postal indicium may also incorporate an image, human-readable text and/or a barcode. Since the postal indicium includes a copy detection pattern that is generated from static and dynamic portions, the possibility of fraudulently using the postal indicium by copying the postal indicium and re-using it is significantly reduced (if not eliminated completely), as known verification techniques for copy detection patterns can be utilized to determine whether or not an indicium is a copy or an original indicium. Such verification techniques are described, for example, in co-pending application Ser. No. 11/240,889, filed Sep. 30, 2005.
By utilizing the combination of the printing device 200 and electronic device 100 as described above to generate the CDP 340, greater flexibility is provided in the determining the amount of data to be transmitted from the electronic device 100 to the printing device 200, the amount of data to be stored in the printing device 200, and the amount of data to be generated in the printing device 200. Accordingly, this allows combined optimization of (i) the cost of the printing device 200 by limiting the processing requirements and memory requirements, (ii) the processing time required for generating and printing indicia, and (iii) transmission time of data between the electronic device 100 and printing device 200.
The operation of the pair of devices 1000 illustrated in
At 602, the printing device 1200 generates a semi-static portion 270 for use in generating a CDP and stores the semi-static portion 270 in the storage 220. The semi-static portion 270 encodes information that does not change with each indicium printed by the printing device 1200, but will change at some point during the use of the printing device 1200. Such semi-static information could include, for example, the date, provided by a clock (not shown), and therefore the semi-static portion 270 will change each day. Using the date as the semi-static information requires that a new semi-static portion 270 be generated only once each day. Therefore, the time required for processing is not critical and such processing can be performed by the processor 210 upon powering of the printing device 1200 for the first time each day (or when the clock changes to a new day if the printing device 1200 is powered all the time). Additionally, using the processor 210 to generate the semi-static portion 270, instead of the processor 110 of the electronic device 1100, removes the necessity for the printing device 1200 to communicate with the electronic device 1100 each day. It should be understood, of course, that using a semi-static portion 270 is optional, and need not be required.
At 604, the electronic device 1100 generates one or more barcodes 310 to be used in indicia, utilizing the barcode generator software 250, and generates an associated barcode CDP 260 for each barcode 310 utilizing the CDP generator software 1123. The barcodes 310 and associated barcode CDPs 260 are downloaded to the printing device 1200 for storage in the storage 220. Each barcode 310 encodes various pieces of information regarding the indicium 300 in which the barcode 310 will be used, such as, for example, the amount of postage represented by the indicium in which the barcode 310 will be used, the date on which the barcode 310 was generated, data identifying the printing device 1200 for which the barcode 310 was generated, and the like. The barcode CDP 260 also encodes various pieces of information regarding the barcode 310 with which it is associated. Such generation and downloading could be initiated by a communication from the printing device 1200 requesting such generation and downloading. Preferably, the printing device 1200 stores a plurality of barcodes 310, such that the printing device 1200 can print a plurality of indicia before having to communicate with the electronic device 1100 to receive additional barcodes 310. The barcodes 310 may represent different amounts of postage, allowing a user to select the value for an indicium. It should be understood that the generation and downloading of barcodes 310 and associated barcode CDP 260 can occur at any time and need not be performed if sufficient quantities (which may be one or more) of barcodes 310 and associated barcode CDPs 260 are available for use in the storage 220 of printing device 1200.
A request by a user of the printing device 1200 to generate and print a postal indicium 300 executes the print control software 222 by the processor 210, which causes the processor 210 to create a CDP 340 and then incorporate the CDP 340 into a postal indicium 300. More specifically, the processor 210, in executing a sequence of instructions of the CDP generator software 223, prepares for the printing of the postal indicium 300 by generating a dynamic portion 349, at 606, to be used in generating the CDP 340, using at least one piece of information about the indicium 300 and/or the mailpiece with which the postal indicium 300 is used that is expected to change relative frequently, perhaps with each printing of a postal indicia. Such a piece of dynamic information may be, for example, the time when the postal indicium 300 is generated. At 608, the processor 210 retrieves the static portion 229, the semi-static portion 270, and a barcode 310 and its associated barcode CDP 260 from the storage 220 for use in generating the CDP 340. It should be understood that such retrieval in 608 may occur concurrently with, before or after generation of the dynamic portion 349 in 606.
In 610, the processor 210, in executing a sequence of instructions of the CDP combiner software 224, combines the static portion 229, the semi-static portion 270, the barcode CDP 260, and the dynamic portion 349 to create the CDP 340. Any of a variety of algorithms may be employed to combine the multiple portions, including without limitation, interspersing pixels of all patterns in a predefined pattern. Furthermore, the gray levels of one or both patterns may be adjusted to achieve a substantially similar range of gray levels between the patterns.
At 612, the processor 210 forms a postal indicium 300 using the CDP 340 generated at 610, the barcode 310 associated with the barcode CDP 260 used to generate the CDP 340, and any other information or images included in the postal indicium 300. At 614, the postal indicium 300 is printed by the printing device 1200. Since the postal indicium 300 printed by the printing device 1200 includes a CDP 340 that is generated from static and dynamic portions, the possibility of fraudulently using the postal indicium 300 by copying the postal indicium 300 and re-using it is significantly reduced (if not eliminated completely), as known verification techniques for copy detection patterns can be utilized to determine whether or not an indicium is a copy or an original indicium.
While preferred embodiments of the invention have been described and illustrated above, it should be understood that these are exemplary of the invention and are not to be considered as limiting. Those skilled in the art will also recognize that various modifications can be made without departing from the spirit of the present invention. Accordingly, the invention is not to be considered as limited by the foregoing description but is only limited by the scope of the appended claims and their equivalents.