US20070215693A1 - Method and apparatus to provide authentication using an authentication card - Google Patents
Method and apparatus to provide authentication using an authentication card Download PDFInfo
- Publication number
- US20070215693A1 US20070215693A1 US11/376,678 US37667806A US2007215693A1 US 20070215693 A1 US20070215693 A1 US 20070215693A1 US 37667806 A US37667806 A US 37667806A US 2007215693 A1 US2007215693 A1 US 2007215693A1
- Authority
- US
- United States
- Prior art keywords
- user
- card
- challenge
- value
- secret key
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000013507 mapping Methods 0.000 claims abstract description 5
- 230000004044 response Effects 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 14
- 238000004422 calculation algorithm Methods 0.000 description 11
- 230000015654 memory Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000011111 cardboard Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000000123 paper Substances 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3823—Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
- G06Q20/3674—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/409—Device specific authentication in transaction processing
- G06Q20/4097—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
- G06Q20/40975—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
Definitions
- Embodiments of the present invention relate generally to the field of authentication. More particularly, embodiments of the present invention relate to a second factor used for authentication.
- Authentication is the process of determining whether someone or something is, in fact, who or what it is declared to be. In private and public computer networks (including the Internet), authentication is commonly done through the use of logon passwords. Knowledge of the password is assumed to guarantee that the user is authentic. Each user registers initially using an assigned or self-declared password. On each subsequent use, the user must know and use the previously declared password. The password is considered a first factor, because it is something the user knows that presumptively no one else knows.
- the second factor is generally something the user has (as opposed to something the user knows).
- Common second factors are credit cards, smart keys, and other similar objects.
- a second factor containing only one piece of information is relatively vulnerable. What is needed is a second factor containing information that can be generated systematically and verified efficiently while not consuming excessive memory at the authentication authority.
- FIG. 1A is a block diagram illustrating an authentication card according to one embodiment of the present invention.
- FIG. 1B is a block diagram illustrating an authentication card according to another embodiment of the present invention.
- FIG. 2 is a flow diagram illustrating prior art prefetch optimization including static prefetch distance calculation
- FIG. 3 is a flow diagram illustrating authentication processing according to one embodiment of the present invention.
- FIG. 4A is a flow diagram illustrating authentication processing according to another embodiment of the present invention.
- FIG. 4B is a flow diagram continuing the illustration of authentication processing according to one embodiment of the present invention.
- the authentication card 100 may be a plastic card in the shape of a credit card or other similar shape that fits into most wallets.
- the authentication card may be fabricated out of paper, cardboard, metal, or any other suitable material.
- the card is uniquely associated with a card number 112 .
- the card number 112 for authentication card 100 in FIG. 1A is 4536 3657 2352 7658.
- the numbers on the card may include the card number itself (for identification purposes) and the method of computation.
- the card number may be 4536 3657 2352 7658 A1.
- the number 4536 3657 2352 7658 is the card number for identification, while the Al indicates the method computation.
- the authentication card 100 also includes a set of reference/value pairs.
- a reference/value pair describes a reference and a value associated with the reference.
- the reference/value pairs can be represented in numerous ways on the authentication card 100 .
- Another way to represent reference/value pairs is shown in FIG. 1B .
- each reference is a cell in a grid, represented by its (row, column) coordinate.
- the reference ( 1 , 1 ) has value F
- the reference ( 2 , 1 ) has value Q
- reference ( 4 , 3 ) which has a value L.
- There are numerous other ways to represent reference value pairs including a list or a number of graphic devices such as color coding, shape coding, and so on.
- the concept of a reference/value pair which is a reference and a value associated with the reference remains constant regardless of physical representation.
- the authentication cards issued by an entity all have the same number of references and associated values.
- the authentication cards 100 in FIGS. 1A and 1B have twelve references. In other embodiments, cards can have a variable number of references.
- the value associated with each reference is generated by performing a one-way operation (e.g., a one-way hash function such as MD5 or SHA-1) on a combination of the secret key and the reference.
- a one-way operation e.g., a one-way hash function such as MD5 or SHA-1
- the one way function used is the Hash-based One-Time Password (HOTP) algorithm, a publicly available algorithm published by the Open Initiative for Authentication (OATH). See Internet Engineering Task Force (IETF) HMAC OTP Draft 4, available at http://www.openauthentication.com.
- HOTP Hash-based One-Time Password
- OATH Open Initiative for Authentication
- the value associated with reference 6 would be HOTP (K, 6), where K is the secret key and the arguments of the hash function are concatenated.
- the resulting hash would be mapped to an alphabet resulting in “I.”
- the HOTP algorithm results in a 6-digit code, and is thus able to support any alphabet up to 999,999 “letters,” or members. Other one-way functions can support larger or smaller alphabets.
- FIGS. 1A and 1B a standard A-Z alphabet is shown. However, any alphabet could be used, including characters, hexadecimal and decimal numerals, or any other symbols. In one embodiment all possible values in the alphabet used can be represented using a standard QWERTY keyboard.
- the x-y coordinates of a cell can be combined with the secret key to give the value.
- cell ( 2 , 3 ) can be mapped as HOTP (K, 23).
- the x-y coordinates are simply concatenated, which produces a unique reference for each cell.
- the x-y coordinates may be combined in some other way, such as multiplication, although multiplication in particular will not produce unique references.
- FIG. 2 shows a card generator 216 that generates the authentication card 100 using the secret key 218 .
- the card generator 216 may be a separate entity or company specializing in authentication or card printing and pressing.
- the card generator 216 may generate the secret key 218 itself, or may receive the secret key 218 from another entity.
- the secret key 218 is a random number generated by a random number generator.
- the secret key 218 can be created by any other means.
- One characteristic of the secret key is that it is not known to anyone outside of the card generator 216 .
- the card generator 216 provides the authentication card 100 to a user 220 and the secret key 218 to an authentication entity 222 .
- the secret key 218 can be delivered on an secure physical medium, or via transmission on a secure encrypted communication channel.
- the card 100 can be provided first to an intermediary (such as a bank that will issue it to a customer), before coming into the possession of the user 220 who will use it for authentication.
- the authentication entity 222 can be the entity requesting the authentication (e.g., the bank) or an entity or company specializing in authentication contracted by the entity requesting the authentication.
- the secret key 218 is stored in a key database 224 .
- the secret key is associated with the card number of the authentication card it was used to generate. For example, the Key 1 was used by the card generator 216 to generate card with card number 1234 5678 9101, then a record in the key database 224 will associate Key 1 with card number 1234 5678 9101.
- the key database is searchable by card number.
- the key database is stored on a hardware security module (HSM).
- HSM hardware security module
- a challenge generator 250 in the authentication entity 222 presents a challenge to the user 220 in the form of asking for the value associated with one or more references on the authentication card 100 issued to the user.
- the logon interface will also ask for the values associated with three randomly chosen references. Fewer or more references may be used.
- the authentication module 226 can send an authentication message to a content provider 228 that the user 220 wants to access.
- This communication may be implemented by a special content provider interface module that may be separate from the user interface 229 .
- the content provider 228 may be a bank, an insurance company, and internet service provider or any other content or service provider that has users that the content provider 228 wishes to authenticate.
- the content provider 228 may be the same entity as the authentication entity 222 , if the content provider 228 is handling the authentication in-house.
- FIG. 3 One embodiment of a challenge-response protocol to authenticate a user having a second factor authentication card as described above is now set forth with reference to FIG. 3 .
- the process described with reference to FIG. 3 can be performed, e.g., by the authentication entity 222 in FIG. 2 .
- a challenge is sent to a user wanting access to some content or service.
- the challenge can be presented along with a standard login interface that asks for a user identifier (ID) or some other logon name and a password.
- ID user identifier
- an email program typically asks for an email address (e.g. [email protected]) and a password.
- the logon in addition to the usual logon screen, the logon also presents a challenge to identify one or more specific values on the authentication card issued to the user.
- the values may be identified by reference (such as a number or cell coordinates) or in some other manner.
- the challenge can ask for more than one value, however only one value is discussed for simplicity and ease of understanding.
- a challenge asking for three values may ask a user for a user ID, a password, and the values of references 4 , 9 , and 12 .
- the correct values would be T, N, and L.
- a user-supplied value (or values in the case of multiple reference challenges) is received along with the user ID, in response to the challenge sent in block 302 .
- the user in possession of the card 100 in FIG. 1A may have entered T as the user-supplied value.
- a user not in possession of the card 100 (or a user making a mistake) may have entered a different (incorrect) value.
- the user-supplied value may have been entered by the user via the logon interface described above, or via some other challenge-response interface.
- the user ID is mapped to a card number of the authentication card issued to the user and bound to the user ID.
- the user ID to card number mapping may be contained in a customer table or customer database.
- the card number is used to access the secret key associated with the card number.
- the secret key was used to generate the reference-value pairs contained on the card, as described above.
- the value associated with the reference asked for in the challenge sent in block 302 is calculated by calculating the HOTP of the concatenation of the secret key and the reference. Since, as described above, this algorithm was used to generate the value associated with the reference by the card generator, this calculation regenerates the value associated with the reference asked for in the challenge. In other embodiments, other algorithms can be used. So long as the algorithm used is the same algorithm used to initially generate the value on the card requested in the challenge, any suitable algorithm (such as hash algorithms) may be used.
- the HOTP and the user-supplied value do not match in block 312 , then, in block 316 the user is not authenticated, and is not allowed access to the content or service requested by the user. If not authenticated, the account of the user ID may be alerted of the failed authentication, and the account may be locked to prevent further attack. In one embodiment, the user is given one or more additional chances to correctly respond to the challenge. In one embodiment, additional chances ask for the values associated with the same reference or references as the initial failed authentication attempt. In another embodiment, different references are used.
- a logon request is received from the user, such as a logon to an email account or some other online content or service.
- the logon will include a user ID (such as an email address) as described above.
- the user ID is mapped to a card number, and in block 406 the secret key associated with the card number is accessed.
- a set of reference-value pairs are calculated using the secret key. This can be done by calculating a set of HOTP using the secret key and a set of references, as described above.
- the process and function used to generate the card is used to regenerate the values associated with a set of selected references. For example, if four references are selected (e.g., 2, 6, 9, and 11 of the card illustrated by FIG. 1A ) then four reference-value pairs are calculated (e.g., 2-Q, 6-I, 9-N, and 11-W using the card illustrated by FIG. 1A ).
- a graphical display is delivered to the user displaying one or more correct reference-pairs.
- the other reference value pairs are purposefully displayed incorrectly.
- reference 9 may be selected for correct display, resulting is a display showing 2-J, 6-O, 9-N, and 11-R.
- more than one reference-value pair can be displayed correctly. Stated generally, a subset of the set of calculated reference-value pairs are displayed correctly and the remainder (all other reference-value pairs calculated) is displayed incorrectly.
- the number of correct reference-value pairs is less than the number of incorrect reference-value pairs to make guessing the correct response more difficult.
- a user-supplied reference is received indicating which reference the user believes shows the correct associated value.
- multiple user-supplied references may be received. In this example, however, only one reference and value pair is displayed correctly, thus only one user-supplied reference is expected from the user in block 412 .
- the user can indicate the user's selection of the correct reference-value pair by clicking a mouse or cursor on a graphical representation of the reference-value pair. In this manner, the actual value of the correct reference value pair need not be transmitted between the user and the authentication entity resulting in additional security.
- FIG. 5 An example computer system on which such a compiler can be implemented in now described with reference to FIG. 5 .
- Computer system 500 that may be used to perform one or more of the operations described herein.
- the machine may comprise a network router, a network switch, a network bridge, Personal Digital Assistant (PDA), a cellular telephone, a web appliance or any machine capable of executing a sequence of instructions that specify actions to be taken by that machine.
- PDA Personal Digital Assistant
- the computer system 500 includes a processor 502 , a main memory 504 and a static memory 506 , which communicate with each other via a bus 508 .
- the computer system 500 may further include a video display unit 510 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)).
- the computer system 500 also includes an alpha-numeric input device 512 (e.g., a keyboard), a cursor control device 514 (e.g., a mouse), a disk drive unit 516 , a signal generation device 520 (e.g., a speaker) and a network interface device 522 .
- the disk drive unit 516 includes a machine-readable medium 524 on which is stored a set of instructions (i.e., software) 526 embodying any one, or all, of the methodologies described above.
- the software 526 is also shown to reside, completely or at least partially, within the main memory 504 and/or within the processor 502 .
- the software 526 may further be transmitted or received via the network interface device 522 .
- the term “machine-readable medium” shall be taken to include any medium that is capable of storing or encoding a sequence of instructions for execution by the computer and that cause the computer to perform any one of the methodologies of the present invention.
- the term “machine-readable medium” shall accordingly be taken to included, but not be limited to, solid-state memories, optical and magnetic disks, and carrier wave signals.
- Embodiments of the present invention include various processes.
- the processes may be performed by hardware components or may be embodied in machine-executable instructions, which may be used to cause one or more processors programmed with the instructions to perform the processes.
- the processes may be performed by a combination of hardware and software.
- Embodiments of the present invention may be provided as a computer program product that may include a machine-readable medium having stored thereon instructions, which may be used to program a computer (or other electronic device) to perform a process according to one or more embodiments of the present invention.
- the machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, compact disc read-only memories (CD-ROMs), and magneto-optical disks, read-only memories (ROMs), random access memories (RAMs), erasable programmable read-only memories (EPROMs), electrically erasable programmable read-only memories (EEPROMs), magnetic or optical cards, flash memory, or other type of media/machine-readable medium suitable for storing instructions.
- embodiments of the present invention may also be downloaded as a computer program product, wherein the program may be transferred from a remote computer to a requesting computer by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).
- a communication link e.g., a modem or network connection
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Storage Device Security (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Lock And Its Accessories (AREA)
Abstract
Description
- Contained herein is material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction of the patent disclosure by any person as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all rights to the copyright whatsoever.
- 1. Field
- Embodiments of the present invention relate generally to the field of authentication. More particularly, embodiments of the present invention relate to a second factor used for authentication.
- 2. Description of the Related Art
- Authentication is the process of determining whether someone or something is, in fact, who or what it is declared to be. In private and public computer networks (including the Internet), authentication is commonly done through the use of logon passwords. Knowledge of the password is assumed to guarantee that the user is authentic. Each user registers initially using an assigned or self-declared password. On each subsequent use, the user must know and use the previously declared password. The password is considered a first factor, because it is something the user knows that presumptively no one else knows.
- Since passwords are vulnerable to clever hackers, more security can be provided by adding a second factor to the authentication. The second factor is generally something the user has (as opposed to something the user knows). Common second factors are credit cards, smart keys, and other similar objects. A second factor containing only one piece of information is relatively vulnerable. What is needed is a second factor containing information that can be generated systematically and verified efficiently while not consuming excessive memory at the authentication authority.
- Embodiments of the present invention are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:
-
FIG. 1A is a block diagram illustrating an authentication card according to one embodiment of the present invention; -
FIG. 1B is a block diagram illustrating an authentication card according to another embodiment of the present invention; -
FIG. 2 is a flow diagram illustrating prior art prefetch optimization including static prefetch distance calculation; -
FIG. 3 is a flow diagram illustrating authentication processing according to one embodiment of the present invention; -
FIG. 4A is a flow diagram illustrating authentication processing according to another embodiment of the present invention; -
FIG. 4B is a flow diagram continuing the illustration of authentication processing according to one embodiment of the present invention; and -
FIG. 5 is a block diagram illustrating an example computer system according to one embodiment of the present invention. - The Authentication Card
- One embodiment of the invention provides an authentication card as a second factor for authentication. One embodiment of such an authentication card is now described with reference to
FIG. 1A . In one embodiment, theauthentication card 100 may be a plastic card in the shape of a credit card or other similar shape that fits into most wallets. In other embodiments, the authentication card may be fabricated out of paper, cardboard, metal, or any other suitable material. - In one embodiment, the card is uniquely associated with a card number 112. For example, the card number 112 for
authentication card 100 inFIG. 1A is 4536 3657 2352 7658. In one embodiment, the numbers on the card may include the card number itself (for identification purposes) and the method of computation. For example, the card number may be 4536 3657 2352 7658 A1. Thenumber 4536 3657 2352 7658 is the card number for identification, while the Al indicates the method computation. Various methods of computation may be utilized, as is described in more detail below. In one embodiment, theauthentication card 100 also includes a set of reference/value pairs. A reference/value pair describes a reference and a value associated with the reference. For example, theauthentication card 100 inFIG. 1A has twelve reference/value pairs, listed in order from top to bottom in three columns. Reference one has value F, reference two has value Q, and so on until reference twelve which has value L. While the Figures show the matrix and the card number on the same side, of course, they may be on opposite sides. In one embodiment, one side may include the card number and branding information while the other includes the matrix. In one embodiment, both sides can include parts of the matrix and/or card information. The distribution of information on the card itself can be varied without affecting the underlying invention. - The reference/value pairs can be represented in numerous ways on the
authentication card 100. Another way to represent reference/value pairs is shown inFIG. 1B . InFIG. 1B each reference is a cell in a grid, represented by its (row, column) coordinate. For example, inFIG. 1B , the reference (1,1) has value F, the reference (2,1) has value Q, and so on until reference (4,3) which has a value L. There are numerous other ways to represent reference value pairs including a list or a number of graphic devices such as color coding, shape coding, and so on. The concept of a reference/value pair, which is a reference and a value associated with the reference remains constant regardless of physical representation. - In one embodiment, the authentication cards issued by an entity (such as a bank or other organization that wishes to authenticate users) all have the same number of references and associated values. For example, the
authentication cards 100 inFIGS. 1A and 1B have twelve references. In other embodiments, cards can have a variable number of references. - In one embodiment, the values associated with the references are generated methodically. In one embodiment, a secret key associated with the card is used to generate values for the reference numbers. In such an embodiment, when a card is being produced a secret key is generated and associated with the card. This association can be stored using the card number 112 associated with the
authentication card 100. - In one embodiment, the value associated with each reference is generated by performing a one-way operation (e.g., a one-way hash function such as MD5 or SHA-1) on a combination of the secret key and the reference. In one embodiment the one way function used is the Hash-based One-Time Password (HOTP) algorithm, a publicly available algorithm published by the Open Initiative for Authentication (OATH). See Internet Engineering Task Force (IETF)
HMAC OTP Draft 4, available at http://www.openauthentication.com. For example, using theauthentication card 100 inFIG. 1A , the value associated withreference 6 would be HOTP (K, 6), where K is the secret key and the arguments of the hash function are concatenated. In the example ofFIG. 1A , the resulting hash would be mapped to an alphabet resulting in “I.” - The HOTP algorithm results in a 6-digit code, and is thus able to support any alphabet up to 999,999 “letters,” or members. Other one-way functions can support larger or smaller alphabets. In the examples shown in
FIGS. 1A and 1B , a standard A-Z alphabet is shown. However, any alphabet could be used, including characters, hexadecimal and decimal numerals, or any other symbols. In one embodiment all possible values in the alphabet used can be represented using a standard QWERTY keyboard. - Another example of using the HOTP algorithm to generate the reference-value pairs is now given with reference to
FIG. 1B . The x-y coordinates of a cell can be combined with the secret key to give the value. For example cell (2,3) can be mapped as HOTP (K, 23). In this example, the x-y coordinates are simply concatenated, which produces a unique reference for each cell. The x-y coordinates may be combined in some other way, such as multiplication, although multiplication in particular will not produce unique references. - Authentication System
- With an understanding of some embodiments of an
authentication card 100, one embodiment of an authentication system using theauthentication card 100 is now described with reference toFIG. 2 .FIG. 2 shows acard generator 216 that generates theauthentication card 100 using thesecret key 218. Thecard generator 216 may be a separate entity or company specializing in authentication or card printing and pressing. Thecard generator 216 may generate thesecret key 218 itself, or may receive the secret key 218 from another entity. - In one embodiment, the
secret key 218 is a random number generated by a random number generator. Thesecret key 218 can be created by any other means. One characteristic of the secret key is that it is not known to anyone outside of thecard generator 216. Thecard generator 216 provides theauthentication card 100 to a user 220 and thesecret key 218 to anauthentication entity 222. In one embodiment, thesecret key 218 can be delivered on an secure physical medium, or via transmission on a secure encrypted communication channel. Thecard 100 can be provided first to an intermediary (such as a bank that will issue it to a customer), before coming into the possession of the user 220 who will use it for authentication. - The
authentication entity 222 can be the entity requesting the authentication (e.g., the bank) or an entity or company specializing in authentication contracted by the entity requesting the authentication. In one embodiment, thesecret key 218 is stored in akey database 224. In one embodiment, the secret key is associated with the card number of the authentication card it was used to generate. For example, the Key1 was used by thecard generator 216 to generate card with card number 1234 5678 9101, then a record in thekey database 224 will associate Key1 with card number 1234 5678 9101. In one embodiment, the key database is searchable by card number. In one embodiment, to protect the secret keys, the key database is stored on a hardware security module (HSM). - The
authentication entity 222 also includes anauthentication module 226. In one embodiment, theauthentication entity 222 creates the challenges presented to the user 220 and evaluates the response received from the user 220. Theauthentication module 226 can contain a user interface 229 to communicate challenges to, and receive responses from the user 220. In another embodiment, a separate entity (such as the bank) interfaces with the user, and forwards the response to the challenge to theauthentication entity 222. In other embodiments, one entity handles both user interface and authentication. - In one embodiment, a
challenge generator 250 in theauthentication entity 222 presents a challenge to the user 220 in the form of asking for the value associated with one or more references on theauthentication card 100 issued to the user. For example, in one embodiment, in addition to the user's logon and password (first factor), the logon interface will also ask for the values associated with three randomly chosen references. Fewer or more references may be used. - For example, a user in possession of the
authentication card 100 shown inFIG. 1A may be asked to provide the values ofreferences logic 255 in the authentication entity 220 can look up the card number of thecard 100 issued to the user 220 and access thekey database 224 to access the secret key tied to the card number. Theauthentication module 226 can then regenerate the values asked for in the challenge using the algorithm used to generate the card. In this manner, theauthentication module 226 can verify the possession of thecard 100 by the user 220 without being in possession of all the reference-value pairs on thecard 100. This enables efficient hardware protection of the information needed to verify the user 220. - If the authentication module successfully authenticates the user 220, then the
authentication module 226 can send an authentication message to acontent provider 228 that the user 220 wants to access. This communication may be implemented by a special content provider interface module that may be separate from the user interface 229. Thecontent provider 228 may be a bank, an insurance company, and internet service provider or any other content or service provider that has users that thecontent provider 228 wishes to authenticate. Thecontent provider 228 may be the same entity as theauthentication entity 222, if thecontent provider 228 is handling the authentication in-house. - Upon receiving the authentication from the
authentication module 226, the user 220 and thecontent provider 228 can engage in an authenticated session which may include online banking, web surfing, gaming or any other content or service provided. If authentication is not successful, theauthentication module 226 informs the content provider that authentication has failed in the authentication message. The user 220 is then considered not authenticated, and will not be allowed authenticated access to thecontent provider 228. - Challenge-Response Protocols
- One embodiment of a challenge-response protocol to authenticate a user having a second factor authentication card as described above is now set forth with reference to
FIG. 3 . The process described with reference toFIG. 3 can be performed, e.g., by theauthentication entity 222 inFIG. 2 . - In
block 302, a challenge is sent to a user wanting access to some content or service. The challenge can be presented along with a standard login interface that asks for a user identifier (ID) or some other logon name and a password. For example, an email program typically asks for an email address (e.g. [email protected]) and a password. - In one embodiment, in addition to the usual logon screen, the logon also presents a challenge to identify one or more specific values on the authentication card issued to the user. The values may be identified by reference (such as a number or cell coordinates) or in some other manner. The challenge can ask for more than one value, however only one value is discussed for simplicity and ease of understanding. For example, a challenge asking for three values may ask a user for a user ID, a password, and the values of
references card 100 shown inFIG. 1A , the correct values would be T, N, and L. - In
block 304, a user-supplied value (or values in the case of multiple reference challenges) is received along with the user ID, in response to the challenge sent inblock 302. For example, if the challenge asked for the value ofreference 4, the user in possession of thecard 100 inFIG. 1A may have entered T as the user-supplied value. However, a user not in possession of the card 100 (or a user making a mistake) may have entered a different (incorrect) value. The user-supplied value may have been entered by the user via the logon interface described above, or via some other challenge-response interface. - In block 306, the user ID is mapped to a card number of the authentication card issued to the user and bound to the user ID. The user ID to card number mapping may be contained in a customer table or customer database. In
block 308, the card number is used to access the secret key associated with the card number. In one embodiment, the secret key was used to generate the reference-value pairs contained on the card, as described above. - In one embodiment, accessing the secret key can include searching a secure database using the card number as the search term. The database then includes the secret key associated with the card number. The secret key may be stored in encrypted form, and may need to be decrypted after being accessed before it can be used.
- In block 310, the value associated with the reference asked for in the challenge sent in
block 302 is calculated by calculating the HOTP of the concatenation of the secret key and the reference. Since, as described above, this algorithm was used to generate the value associated with the reference by the card generator, this calculation regenerates the value associated with the reference asked for in the challenge. In other embodiments, other algorithms can be used. So long as the algorithm used is the same algorithm used to initially generate the value on the card requested in the challenge, any suitable algorithm (such as hash algorithms) may be used. - In block 312, a determination is made as to whether the user-supplied value received in
block 304 matches the HOTP calculated in block 310. Since the HOTP calculated in block 310 is the same as the original value of the reference printed on the card, if the user-supplied value matches the HOTP, then that is strong evidence that the user is in possession of the card associated to the user ID. Therefore, if there is a match in block 312, then, in block 314 the user is authenticated, and allowed access to the content or service requested by the user. - If, one the other hand, the HOTP and the user-supplied value do not match in block 312, then, in block 316 the user is not authenticated, and is not allowed access to the content or service requested by the user. If not authenticated, the account of the user ID may be alerted of the failed authentication, and the account may be locked to prevent further attack. In one embodiment, the user is given one or more additional chances to correctly respond to the challenge. In one embodiment, additional chances ask for the values associated with the same reference or references as the initial failed authentication attempt. In another embodiment, different references are used.
- One embodiment of a different challenge-response protocol using the authentication card is now described with reference to
FIGS. 4A and 4B . Inblock 402, a logon request is received from the user, such as a logon to an email account or some other online content or service. The logon will include a user ID (such as an email address) as described above. In block 404 the user ID is mapped to a card number, and inblock 406 the secret key associated with the card number is accessed. - In block 408 a set of reference-value pairs are calculated using the secret key. This can be done by calculating a set of HOTP using the secret key and a set of references, as described above. In another embodiment, the process and function used to generate the card is used to regenerate the values associated with a set of selected references. For example, if four references are selected (e.g., 2, 6, 9, and 11 of the card illustrated by
FIG. 1A ) then four reference-value pairs are calculated (e.g., 2-Q, 6-I, 9-N, and 11-W using the card illustrated byFIG. 1A ). - In
block 410, a graphical display is delivered to the user displaying one or more correct reference-pairs. In one embodiment, the other reference value pairs are purposefully displayed incorrectly. In the example above,reference 9 may be selected for correct display, resulting is a display showing 2-J, 6-O, 9-N, and 11-R. In another embodiment, more than one reference-value pair can be displayed correctly. Stated generally, a subset of the set of calculated reference-value pairs are displayed correctly and the remainder (all other reference-value pairs calculated) is displayed incorrectly. In one embodiment, the number of correct reference-value pairs is less than the number of incorrect reference-value pairs to make guessing the correct response more difficult. - In block 412, a user-supplied reference is received indicating which reference the user believes shows the correct associated value. In an embodiment where multiple reference value-pairs are displayed, multiple user-supplied references may be received. In this example, however, only one reference and value pair is displayed correctly, thus only one user-supplied reference is expected from the user in block 412. In one embodiment, the user can indicate the user's selection of the correct reference-value pair by clicking a mouse or cursor on a graphical representation of the reference-value pair. In this manner, the actual value of the correct reference value pair need not be transmitted between the user and the authentication entity resulting in additional security.
- In
block 414, a determination is made as to whether the user-supplied reference corresponds with the correct reference-value pair ofblock 410. In other words, did the user identify which reference-value pair displayed in the challenge inblock 410 correctly matched a reference-value pair on the authentication card issued to the user? If, it is determined that the user-supplied reference (or references) does correspond with the correct reference-value pair, then in block 416 the user is authenticated. However, if it is determined that the user-supplied reference (or references) does not correspond with the correct reference-value pair, then in block 416 the user is not authenticated. - Example Computer System
- Various embodiments of the present invention have been described in the context of a compiler that generates code that is inserted into a program being compiled by the compiler. An example computer system on which such a compiler can be implemented in now described with reference to
FIG. 5 .Computer system 500 that may be used to perform one or more of the operations described herein. In alternative embodiments, the machine may comprise a network router, a network switch, a network bridge, Personal Digital Assistant (PDA), a cellular telephone, a web appliance or any machine capable of executing a sequence of instructions that specify actions to be taken by that machine. - The
computer system 500 includes aprocessor 502, amain memory 504 and astatic memory 506, which communicate with each other via abus 508. Thecomputer system 500 may further include a video display unit 510 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). Thecomputer system 500 also includes an alpha-numeric input device 512 (e.g., a keyboard), a cursor control device 514 (e.g., a mouse), adisk drive unit 516, a signal generation device 520 (e.g., a speaker) and anetwork interface device 522. - The
disk drive unit 516 includes a machine-readable medium 524 on which is stored a set of instructions (i.e., software) 526 embodying any one, or all, of the methodologies described above. Thesoftware 526 is also shown to reside, completely or at least partially, within themain memory 504 and/or within theprocessor 502. Thesoftware 526 may further be transmitted or received via thenetwork interface device 522. For the purposes of this specification, the term “machine-readable medium” shall be taken to include any medium that is capable of storing or encoding a sequence of instructions for execution by the computer and that cause the computer to perform any one of the methodologies of the present invention. The term “machine-readable medium” shall accordingly be taken to included, but not be limited to, solid-state memories, optical and magnetic disks, and carrier wave signals. - General Matters
- In the description above, for the purposes of explanation, numerous specific details have been set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In other instances, well-known circuits, structures and techniques have not been shown in detail in order not to obscure the understanding of this description.
- Embodiments of the present invention include various processes. The processes may be performed by hardware components or may be embodied in machine-executable instructions, which may be used to cause one or more processors programmed with the instructions to perform the processes. Alternatively, the processes may be performed by a combination of hardware and software.
- Embodiments of the present invention may be provided as a computer program product that may include a machine-readable medium having stored thereon instructions, which may be used to program a computer (or other electronic device) to perform a process according to one or more embodiments of the present invention. The machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, compact disc read-only memories (CD-ROMs), and magneto-optical disks, read-only memories (ROMs), random access memories (RAMs), erasable programmable read-only memories (EPROMs), electrically erasable programmable read-only memories (EEPROMs), magnetic or optical cards, flash memory, or other type of media/machine-readable medium suitable for storing instructions. Moreover, embodiments of the present invention may also be downloaded as a computer program product, wherein the program may be transferred from a remote computer to a requesting computer by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).
- While the invention has been described in terms of several embodiments, those skilled in the art will recognize that the invention is not limited to the embodiments described, but can be practiced with modification and alteration within the spirit and scope of the appended claims. The description is thus to be regarded as illustrative instead of limiting.
Claims (23)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/376,678 US7347366B2 (en) | 2006-03-14 | 2006-03-14 | Method and apparatus to provide authentication using an authentication card |
BRPI0709392-6A BRPI0709392A2 (en) | 2006-03-14 | 2007-03-14 | method and apparatus for providing authentication using an authentication card |
EP07753195.2A EP1999682A4 (en) | 2006-03-14 | 2007-03-14 | A method and apparatus to provide authentication using an authentication card |
PCT/US2007/006549 WO2007106566A2 (en) | 2006-03-14 | 2007-03-14 | A method and apparatus to provide authentication using an authentication card |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/376,678 US7347366B2 (en) | 2006-03-14 | 2006-03-14 | Method and apparatus to provide authentication using an authentication card |
Publications (2)
Publication Number | Publication Date |
---|---|
US20070215693A1 true US20070215693A1 (en) | 2007-09-20 |
US7347366B2 US7347366B2 (en) | 2008-03-25 |
Family
ID=38510096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/376,678 Expired - Fee Related US7347366B2 (en) | 2006-03-14 | 2006-03-14 | Method and apparatus to provide authentication using an authentication card |
Country Status (4)
Country | Link |
---|---|
US (1) | US7347366B2 (en) |
EP (1) | EP1999682A4 (en) |
BR (1) | BRPI0709392A2 (en) |
WO (1) | WO2007106566A2 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080086758A1 (en) * | 2006-10-10 | 2008-04-10 | Honeywell International Inc. | Decentralized access control framework |
US20080173709A1 (en) * | 2007-01-18 | 2008-07-24 | Subhas Kumar Ghosh | System and method for secure and distributed physical access control using smart cards |
US20080201578A1 (en) * | 2007-02-15 | 2008-08-21 | Christopher Nathan Drake | Computer security using visual authentication |
US20080201577A1 (en) * | 2007-02-20 | 2008-08-21 | Jonathan Roshan Tuliani | Authentication device and method |
US20110213985A1 (en) * | 2010-02-26 | 2011-09-01 | Compuware Corporation | Two factor authentication scheme |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8397281B2 (en) | 2009-12-30 | 2013-03-12 | Symantec Corporation | Service assisted secret provisioning |
US8902040B2 (en) | 2011-08-18 | 2014-12-02 | Greisen Enterprises Llc | Electronic lock and method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5712627A (en) * | 1995-04-19 | 1998-01-27 | Eastman Chemical Company | Security system |
US20060031174A1 (en) * | 2004-07-20 | 2006-02-09 | Scribocel, Inc. | Method of authentication and indentification for computerized and networked systems |
US20060266822A1 (en) * | 2005-03-24 | 2006-11-30 | Kelley Edward E | Secure Credit Card with Near Field Communications |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2001270912A1 (en) | 2000-07-21 | 2002-02-05 | Nexxgen Limited | Improvements relating to the security of authentication systems |
US6983381B2 (en) * | 2001-01-17 | 2006-01-03 | Arcot Systems, Inc. | Methods for pre-authentication of users using one-time passwords |
US6908030B2 (en) * | 2001-10-31 | 2005-06-21 | Arcot Systems, Inc. | One-time credit card number generator and single round-trip authentication |
US7194765B2 (en) * | 2002-06-12 | 2007-03-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Challenge-response user authentication |
US20050144450A1 (en) * | 2003-12-30 | 2005-06-30 | Entrust Limited | Method and apparatus for providing mutual authentication between a sending unit and a recipient |
US7882361B2 (en) * | 2004-02-05 | 2011-02-01 | Oracle America, Inc. | Method and system for accepting a pass code |
-
2006
- 2006-03-14 US US11/376,678 patent/US7347366B2/en not_active Expired - Fee Related
-
2007
- 2007-03-14 WO PCT/US2007/006549 patent/WO2007106566A2/en active Application Filing
- 2007-03-14 EP EP07753195.2A patent/EP1999682A4/en not_active Withdrawn
- 2007-03-14 BR BRPI0709392-6A patent/BRPI0709392A2/en not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5712627A (en) * | 1995-04-19 | 1998-01-27 | Eastman Chemical Company | Security system |
US20060031174A1 (en) * | 2004-07-20 | 2006-02-09 | Scribocel, Inc. | Method of authentication and indentification for computerized and networked systems |
US20060266822A1 (en) * | 2005-03-24 | 2006-11-30 | Kelley Edward E | Secure Credit Card with Near Field Communications |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080086758A1 (en) * | 2006-10-10 | 2008-04-10 | Honeywell International Inc. | Decentralized access control framework |
US8166532B2 (en) | 2006-10-10 | 2012-04-24 | Honeywell International Inc. | Decentralized access control framework |
US20080173709A1 (en) * | 2007-01-18 | 2008-07-24 | Subhas Kumar Ghosh | System and method for secure and distributed physical access control using smart cards |
US9286481B2 (en) * | 2007-01-18 | 2016-03-15 | Honeywell International Inc. | System and method for secure and distributed physical access control using smart cards |
US20080201578A1 (en) * | 2007-02-15 | 2008-08-21 | Christopher Nathan Drake | Computer security using visual authentication |
US8176332B2 (en) * | 2007-02-15 | 2012-05-08 | Christopher Nathan Drake | Computer security using visual authentication |
US20080201577A1 (en) * | 2007-02-20 | 2008-08-21 | Jonathan Roshan Tuliani | Authentication device and method |
US7882553B2 (en) * | 2007-02-20 | 2011-02-01 | Cryptomathic A/S | Authentication device and method |
US20110213985A1 (en) * | 2010-02-26 | 2011-09-01 | Compuware Corporation | Two factor authentication scheme |
Also Published As
Publication number | Publication date |
---|---|
US7347366B2 (en) | 2008-03-25 |
WO2007106566A3 (en) | 2008-01-17 |
EP1999682A2 (en) | 2008-12-10 |
EP1999682A4 (en) | 2015-07-08 |
BRPI0709392A2 (en) | 2011-07-05 |
WO2007106566A2 (en) | 2007-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2839603B1 (en) | Abstracted and randomized one-time passwords for transactional authentication | |
CN101443774B (en) | Method and system for optimized integrity verification procedures | |
KR100786551B1 (en) | Method for registering and certificating user of one time password by a plurality of mode and computer-readable recording medium where program executing the same method is recorded | |
JP4866432B2 (en) | General user self-certification and authentication system | |
JP5133248B2 (en) | Offline authentication method in client / server authentication system | |
US20220209951A1 (en) | Authentication method, apparatus and device, and computer-readable storage medium | |
US20100242104A1 (en) | Methods and systems for secure authentication | |
US20130185778A1 (en) | System, method and program for off-line two-factor user authentication | |
US20130097419A1 (en) | Method and system for accessing e-book data | |
KR20180026508A (en) | A security verification method based on biometric characteristics, a client terminal, and a server | |
US7347366B2 (en) | Method and apparatus to provide authentication using an authentication card | |
US20080229109A1 (en) | Human-recognizable cryptographic keys | |
SG189120A1 (en) | System and method for two-factor user authentication | |
US20140359730A1 (en) | Input validation, user and data authentication on potentially compromised mobile devices | |
US20180130056A1 (en) | Method and system for transaction security | |
JP2019505051A (en) | Dynamic graphical password-based network registration method and system | |
KR20120087095A (en) | Apparatus and method for generating a realtime password and storage medium | |
KR101151367B1 (en) | Apparatus and method for authorization of online financial transaction | |
JP2007065789A (en) | Authentication system and method | |
CN115935331A (en) | User password generation method and device, electronic equipment and medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: VERISIGN, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:M'RAIHI, DAVID;REEL/FRAME:017658/0500 Effective date: 20060308 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: SYMANTEC CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:VERISIGN, INC.;REEL/FRAME:025499/0882 Effective date: 20100809 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20200325 |