# US 9,038,886 B2 · Verification of portable consumer devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,038,886 B2
- Document ID: US9038886B2
- Status: Granted
- Kind: B2
- Application number: 12/780,657
- Filed: 2010-05-14
- Published: 2010-11-18
- Granted: 2015-05-26
- Earliest claimed: 2009-05-15
- Assignees: Visa International Service Association
- Applicants: Ayman Hammad
- Inventors: Ayman Hammad
- Web page: https://patentgrep.com/patent/US9038886B2

## CPC

- G06Q 20/3674: {involving authentication}
- G06F 21/34: involving the use of external additional devices, e.g. dongles or smart cards
- G06Q 20/12: specially adapted for electronic shopping systems
- G06Q 20/385: {using an alias or single-use codes}
- G06Q 20/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
- G06Q 20/401: {Transaction verification}
- G06Q 20/42: Confirmation, e.g. check or permission by the legal debtor of payment
- G06Q 20/425: {using two different networks, one for transaction and one for security confirmation}
- H04L 9/3234: {involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token (network architectures or network communication protocols for supporting authentication of entities using an additional device in a packet data network H04L63/0853)}
- H04L 63/0853: {using an additional device, e.g. smartcard, SIM or a different communication terminal (cryptographic mechanisms or cryptographic arrangements for entity authentication involving additional secure or trusted devices H04L9/3234)}
- G06F 2221/2129: Authenticate client device independently of the user
- G06Q 2220/00: Business processing using cryptography
- H04L 63/126: {the source of the received data}
- H04L 2209/56: Financial cryptography, e.g. electronic payment or e-cash
- H04L 2209/805: Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
- 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
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Apparatuses, methods, and systems pertaining to the verification of portable consumer devices are disclosed. In one implementation, a verification token is coupled to a computer by a USB connection so as to use the computer's networking facilities. The verification token reads identification information from a user's portable consumer device (e.g., credit card) and sends the information to a validation entry over a communications network using the computer's networking facilities. The validation entity applies one or more validation tests to the information that it receives from the verification token. If a selected number of tests are passed, the validation entity sends a device verification value to the verification token, and optionally to a payment processing network. The verification token may enter the device verification value into a CVV field of a web page appearing on the computer's display, or may display the value to the user using the computer's display.

## Claims

### Claim 1

A verification token comprising:
a peripheral interface adapted to couple to a peripheral interface of a computer;
a reader adapted to read identification information from portable consumer devices;
a computer-readable medium;
a data processor electrically coupled to the peripheral interface of the verification token, the reader, and the computer-readable medium;
code embodied on the computer-readable medium that directs the data processor to receive identification information read from a portable consumer device by the reader;
code embodied on the computer-readable medium that directs the data processor to communicate with a computer by way of the peripheral interface of the verification token and to gain access to a networking facility of the computer;
code embodied on the computer-readable medium that directs the data processor to transmit by way of the networking facility of the computer at least a portion of the received identification information to an entity;
code embodied on the computer-readable medium that directs the data processor to receive, after transmitting said identification information, a dynamic value from the entity by way of the networking facility of the computer; and
code embodied on the computer-readable medium that directs the data processor to locate a browser web page on the computer that has a form field for a value, and to enter the dynamic value received from the entity in the form field.

### Claim 2 (depends on 1)

The verification token of claim 1, wherein the peripheral interface of the verification token comprises a universal serial bus connector.

### Claim 3 (depends on 1)

The verification token of claim 1, wherein the identification information is encrypted and includes an account number of a portable consumer device and at least one of the following: a digital fingerprint of a magnetic stripe of the portable consumer device, or a variable datum that varies each time the portable consumer device is read for its identification information.

### Claim 4 (depends on 1)

The verification token of claim 1, wherein the code that directs the data processor to communicate with a computer comprises code that directs the data processor to send a device driver to the computer and an instruction to install the device driver in the computer's operating system, wherein the device driver enables the computer to recognize the verification token and communicate with the verification token;
wherein the code that directs the data processor to gain access to a networking facility of the computer comprises a function call to a network services module of the computer's operating system.

### Claim 5 (depends on 1)

The verification token of claim 1 further comprising a serial number and an encryption key, and wherein the verification token transmits the serial number and a message encrypted by the encryption key to the entity, the serial number and the encryption key being uniquely assigned to the verification token.

### Claim 6 (depends on 1)

The verification token of claim 1, wherein the dynamic value is a dynamic device verification value.

### Claim 7 (depends on 1)

The verification token of claim 1, wherein the form field is a hidden form field.

### Claim 8 (depends on 1)

The verification token of claim 1, further comprising:
code embodied on the computer-readable medium that directs the data processor to display the dynamic value received from the entity to the user on a display of the computer.

### Claim 9 (depends on 1)

The verification token of claim 1, wherein the dynamic value is a dynamic account number.

### Claim 10 (depends on 9)

The verification token of claim 9, wherein the form field is a first form field
for an account number and wherein the browser web page comprises a second form field for a dynamic device verification value received from the entity.

### Claim 11 (depends on 9)

The verification token of claim 9, further comprising:
code embodied on the computer-readable medium that directs the data processor to display the dynamic account number on a display device of the computer.

### Claim 12 (depends on 1)

The verification token of claim 1, wherein the code that directs the data processor to receive the dynamic value from the entity further directs the data processor to receive address information from the entity; and
wherein the verification token further comprises code embodied on the computer-readable medium that directs the data processor to locate a browser web page on the computer that has a plurality of form fields for address information, and to fill said fields with respective portions of the address information received from the entity.

### Claim 13 (depends on 1)

The verification token of claim 1, further comprising code that directs the data processor to obtain address information from the computer-readable medium; and
code embodied on the computer-readable medium that directs the data processor to locate a browser web page on the computer that has a plurality of form fields for address information, and to fill said fields with respective portions of the obtained address information.

### Claim 14 (depends on 1)

The verification token of claim 1, further comprising:
code embodied on the computer-readable medium that directs the data processor to prompt a user to enter a password on a keyboard of the computer, to read a password entered by the user, and to compare the entered password against a stored password embodied on the computer-readable medium; and
code embodied on the computer-readable medium that directs the data processor to prevent identification information from at least being read or sent when the read password is not the same as the stored password.

### Claim 15 (depends on 1)

The verification token of claim 1, further comprising:
code embodied on the computer-readable medium that directs the data processor to establish, using the networking facility of the computer, a communications session with the entity; and
code embodied on the computer-readable medium that directs the data processor to transmit the at least a portion of the received identification information using the established communications session.

### Claim 16 (depends on 15)

The verification token of claim 15, wherein the code that directs the data processor to establish a communications session with the entity using the networking facility of the computer comprises one or more function calls to an application program interface of a network services module of the computer, the one or more function calls providing a universal resource identifier of an entity and an instruction to establish a communications session with the entity, the universal resource identifier being stored in the computer-readable medium or read from the portable consumer device.

### Claim 17 (depends on 16)

The verification token of claim 16, wherein the communications session is established before the data processor reads device data from the reader.

### Claim 18 (depends on 16)

The verification token of claim 16, further comprising code that directs the data processor to select one of a number of universal resource identifiers stored in the token based on a bank number provided in the read identification information or embedded in the account number of the read identification information.

### Claim 19 (depends on 1)

The verification token of claim 1, further comprising code that directs the processor to encrypt the at least a portion of the identification information prior to transmitting it to the entity.

### Claim 20 (depends on 1)

The verification token of claim 1, wherein the dynamic value is configured to be enterable in a card-verification value field of a merchant web page.

### Claim 21 (depends on 1)

The verification token of claim 1, wherein the identification information includes an account number and a first device verification value provided by the portable consumer device; and
wherein the dynamic value received from the entity is a second device verification value that is different from the first device verification value.

### Claim 22

A method comprising:
establishing a communications link between a verification token and a computer, the computer having a networking facility;
reading identification information from a portable consumer device into the verification token;
transmitting the read identification information from the verification token to an entity through the networking facility of the computer;
after transmitting the identification information, receiving, at the verification token, a dynamic value from the entity by way of the networking facility of the computer; and further comprising
locating a browser web page on the computer that has a form field for a dynamic value, and entering the dynamic value in the form field.

### Claim 23 (depends on 22)

The method of claim 22, further comprising encrypting, in the verification token, at least a portion of the identification information read from the portable consumer device using an encryption key stored in the verification token.

### Claim 24 (depends on 22)

The method of claim 22 further comprising:
prompting a user to enter a password into the computer;
reading a password entered by the user;
comparing the entered password against a password stored in the verification token; and
preventing identification information from at least being read or sent when the read password is not the same as the stored password.

### Claim 25 (depends on 22)

The method of claim 22 further comprising:
transmitting from the verification token to the entity through the networking facility of the computer a serial number stored in the verification token and a message encrypted by an encryption key stored in the verification token, the serial number and the encryption key being uniquely assigned to the verification token.

### Claim 26 (depends on 22)

The method of claim 22 further comprising:
displaying the dynamic value received from the entity to the user on a display of the computer.

### Claim 27 (depends on 22)

The method of claim 22, wherein the dynamic value is a dynamic account number.

### Claim 28 (depends on 27)

The method of claim 27, wherein the form field is a hidden form field.

### Claim 29 (depends on 22)

The method of claim 22, further comprising:
receiving, in the verification token, address information from the entity; and
filling said fields in the browser web page with respective portions of the obtained address information.

### Claim 30 (depends on 22)

The method of claim 22 wherein the identification information is transmitted from the token to the computer in a hashed form.
