Method and apparatus for article authentication
First Claim
1. An authentication method for authenticating an article in a device, the method comprising the steps of:
- reading an identification number stored on the article;
reading an authentication number stored on the article;
determining an input number based at least in part on the identification number;
applying an authentication function to the input number to calculate an output number;
determining that the article is authentic only if the authentication number corresponds to the output number; and
permitting use of the article in the device if the article is authentic, and disabling use of the article in the device if the article is not authentic.
9 Assignments
0 Petitions
Accused Products
Abstract
An authentication method for authenticating an article in a device includes the steps of a) reading an identification number stored on the article, b) reading an authentication number stored on the article, c) determining an input number based at least in part on the identification number, d) applying an authentication function to the input number to calculate an output number, e) determining that the article is authentic only if the authentication number corresponds to the output number, and f) permitting use of the article in the device if the article is authentic, and disabling use of the article in the device if the article is not authentic.
107 Citations
66 Claims
-
1. An authentication method for authenticating an article in a device, the method comprising the steps of:
-
reading an identification number stored on the article;
reading an authentication number stored on the article;
determining an input number based at least in part on the identification number;
applying an authentication function to the input number to calculate an output number;
determining that the article is authentic only if the authentication number corresponds to the output number; and
permitting use of the article in the device if the article is authentic, and disabling use of the article in the device if the article is not authentic. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A device configured to authenticate an article installable in the device, the device comprising:
-
a reader adapted to read an identification number stored on the article, the identification number corresponding to an identification of the article;
the reader further adapted to read an authentication number stored on the article;
a memory of the device containing a computer program configured to transform the identification number into an output number and compare the output number to the authentication number; and
the article being authenticated only if the output number is equal to the authentication number, wherein use of the article in the device is permitted if the article is authentic, and use of the article in the device is not permitted if the article is not authentic. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A host device configured to authenticate an article, the host device comprising:
-
means for reading an identification number stored on the article;
means for reading an authentication number stored on the article;
means for determining an input number based at least in part on the identification number;
means for applying an authentication function to the input number to calculate an output number;
means for determining that the article is authentic only if the authentication number corresponds to the output number, and means for permitting use of the article in the device if the article is authentic, and disabling use of the article in the device if the article is not authentic.
-
- 26. An article adapted to be authenticated by a host device, the article comprising a memory system configured to store a first predetermined number and an authentication number, the first predetermined number corresponding to an identification of the article.
-
32. A computer program product comprising:
a computer readable medium containing computer program code, the computer program code providing a first prime, a second prime number that is a primitive element of the prime Galois Field of the first prime number, and an input value, the computer program code having a) a computer program code that initializes a partial product by (i) setting a multiplier equal to the second prime number;
(ii) setting the partial product equal to 1 if the least significant bit of the input number is equal to 0;
(iii) setting the partial product equal to the multiplier modulo the first prime number if the least significant bit of the input number is equal to 1;
b) a computer program code that evaluates the partial product iteratively from the least significant bit of the input number to the most significant bit of the input number by (i) doubling the multiplier;
(ii) resetting the partial product equal to the prior partial product modulo the first prime number if a next unevaluated bit of the input number equal to 0;
(iii) resetting the partial product equal to (a) the prior partial product times the modulo of the multiplier over the second prime number (b) modulo the second prime number, if said next unevaluated bit of the input number is equal to 1; and
whereinc) a computer program code that terminates an iterative evaluation of the partial product after evaluating the partial product for the most significant bit of the input number. The computer program product according to claim 0, wherein the computer program code that iteratively evaluates the partial product further includes forming a table with an entry for each bit of the input number, the contents of the entry being equal to the multiplier corresponding to that bit, modulo the first prime number, wherein iterative evaluations of the partial product access the table entries.
-
33. An apparatus for determining a remainder of an integer division, the apparatus comprising:
-
a memory;
a dividend storage location in the memory;
an exponent storage location in the memory;
a subtrahend storage location in the memory;
a divisor storage location in the memory, the quantity stored in the divisor storage location being equal to the quantity stored in the subtrahend location subtracted from two raised to the power of the quantity stored in the exponent location;
a summation algorithm stored in the memory, the algorithm summing the terms of a series equal to the quotient of the quantity stored in the dividend storage location divided by the quantity stored in the divisor storage location, the algorithm halting with the first term of the series that is less than one half; and
a modulo algorithm stored in the computer memory that computes the remainder by subtracting from the quantity stored in the dividend storage location the quantity stored in the product of the quantity stored in the divisor storage location multiplied by the integer portion of the quantity determined by the summation algorithm.
-
-
34. For use with a thermal transfer, thermal or other printer, or photographic or X-ray camera, or other media processing system, a media assembly configured to identify and disable used of counterfeit media, the media assembly comprising an anti-counterfeiting provision having a data store containing encrypted data and reference data uniquely associated with the media assembly;
- and a processor configured to access the encrypted data and reference data and configured to permit usage of the media if the media is not counterfeit.
- View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
- 47. For use with a thermal transfer, thermal or other printer, or photographic or X-ray camera, or other media processor, a media holder in the form of a spool having a shaft with an axis and an end flange, on which is located an antenna.
- 58. A thermal transfer, thermal or other printer, or photographic or X-ray camera, or other media processing system adapted to identify a counterfeit media assembly, said system including a program configured to execute an encryption algorithm employed to validate a media assembly.
Specification