DATA ENTRY DEVICE
FIELD OF THE INVENTION
This invention relates to a data entry device and, more particularly, to a data entry device which may be employed in conjunction with a computer workstation to perform data entry and various other tasks such as, for example, providing convenient access to the Worldwide Web of the Internet. The invention extends to a method of operation of the data entry device.
BACKGROUND TO THE INVENTION
Many types of data entry devices are known, of which, conventional computer keyboards are the most widely used and applied. Many different configurations of computer keyboards are known. Fundamentally, all of these different keyboard configurations share the same set of alphanumeric and punctuation keys, as well as a further set of keys that are often referred to as the "Function keys" (or "F- keys"). The F-keys are usually 12 in number, and are grouped separately, either above, or alongside, the standard alphanumeric keys on the keyboard.
Despite their physical presence on a standard computer keyboard, the use of such F-keys is uncommon. The use of F-keys is usually limited to performing occasional services within the context of a particular application program. As an example, in the well-known Microsoft Office suite of programs available from the Microsoft Corporation of Seattle, Washington, U.S.A., the F1 key is used to open a help file, whilst the F12 key is used as a short cut to the "Save as ..." command. Minimal use is made of the remaining F-keys, if at all.
The F-keys can have any number of roles assigned to them by software programs. The most common use for the F-keys has been to execute frequently used
commands or tools in an application program by means of a single keystroke, instead of through the use of drop-down menus.
Access to the Worldwide Web of the Internet is usually achieved by means of an Internet browser program that is executed on a computer workstation. In order to access a particular Web page, a Universal Resource Locator (URL) must be keyed into the browser program by a user, which then transmits the URL to a destination server through the user's Internet Service Provider. Once the destination server corresponding to the required URL is reached, the contents of the Web page are downloaded from the destination server to the computer workstation. The operation of keying in desired URLs is tedious and time-consuming. In order to overcome this difficulty, a list of the URLs most commonly accessed by a user may be stored as part of the browser program in a category referred to as "Favourites", which enables the user to select any one of these preferred websites by clicking thereon. Despite this feature, access to any one of these preferred websites still requires a user to launch the Web browser program and to select a desired Web page which the user wishes to access.
It is known that current methods of conducting commercial transactions in an on- line environment such as the World Wide Web of the Internet are unsatisfactory. The reason is that a majority of all commercial transactions across the Web are processed as Mail Order/Telephone Order (MOTO) credit card purchases. Such a transaction only requires that a purchaser provide a credit card number and a corresponding expiry date. The cardholder is not required to authorise the transaction either by means of a signature or by presentation of the credit card. Due to the ease with which credit card numbers and expiry dates may be intercepted, fraudulent MOTO transactions are easy to conduct, particularly on the Internet, as compared to mail order transactions.
The above situation is disadvantageous for merchants because current credit card legislation favours a purchaser who can simply claim that a charge relating to a particular transaction is fraudulent, the so-called "charge back", thereby placing the onus on the merchant to prove the legitimacy of the purchase. In many instances, this burden of proof is exceedingly difficult, if not impossible, to discharge.
A more secure form of on-line commercial transaction is one that is processed as a " card present" transaction, in which confirmation is provided of the authenticity of the transaction. In order to process a transaction as a card present transaction, it is firstly necessary to identify a card presented for settlement of a transaction. All credit cards have an integral magnetic stripe on the rear thereof, which contains data relating to an identity of the credit card holder, and to a corresponding bank account held at a financial institution. This data is stored in different tracks on the magnetic stripe. In particular, track "2" of the magnetic stripe contains the bank account number, the card expiry date and a verification code which is known, variously, as a Card Verification Value ("CW") or Card Validation Code ("CVC"). This data is also stored on track "1", along with a billing address corresponding to the cardholder. By convention, however, financial institutions require that the data be read off track "2".
Some types of commercial transaction conducted in an on-line environment may require the use of a personal identification number ("PIN"). Such transactions require the use of a point of sale terminal that includes a PIN entry system in conjunction with a card reader having an on-line capability. As far as the applicant is aware, there is no transaction and PIN entry system that can be used securely in an on-line environment in conjunction with a computer workstation.
OBJECT OF THE INVENTION
It is an object of this invention to provide a data entry device, and a method of operation thereof that will, at least partially, alleviate the above-mentioned difficulties and disadvantages.
SUMMARY OF THE INVENTION
In accordance with this invention there is provided a data entry device, comprising: a standard keyboard connectable to a computer workstation, the standard keyboard being operable, upon activation of any one of the keys thereon, to transmit a respective identification code to the computer workstation;
a configuration facility configurable to store the identification codes corresponding to a number of selected keys on the standard keyboard, and at least one associated instruction corresponding to each one of the stored identification codes; and a detection facility operable to detect an identification code transmitted by the standard keyboard upon activation of any one of the keys thereon, and to execute the at least one corresponding associated instruction when the detected identification code corresponds to one of the stored identification codes.
Further features of the invention provide for the stored identification codes to be ASCII codes, for the stored ASCII codes to correspond to the standard Function key codes on the keyboard, for the configuration facility to be accessible through the computer workstation, and for the detection facility to be a software program executable in the computer workstation.
Still further features of the invention provide for the at least one associated instruction corresponding to one of the stored ASCII identification codes to be an instruction to launch an Internet browser, for the instruction to launch an Internet browser to include a default URL of a Web page on the Worldwide Web of the Internet, and for the instruction to launch an Internet browser and the corresponding default URL to be stored on a mass storage device associated with the computer workstation.
In accordance with one aspect of the invention there is provided for the data entry device to include: a reader co-operable with a token having an integral storage memory, the reader being operable to read token data contained in the storage memory; and an encryption facility for encrypting the token data.
There is further provided the token to be a payment token, for the computer workstation to operate under control of an application software program, for the application software program to be operable by a purchaser to input data relating to a commercial transaction and to the payment token to be used for settlement of the commercial transaction, for the encryption facility to also encrypt the
commercial transaction data, and for the computer workstation to include a communication means responsive to the encryption facility to transmit the encrypted data to a transaction server and to receive a transaction status therefrom, the transaction status being an approved status if the commercial transaction is approved, and a declined status if the commercial transaction is declined.
There is still further provided for the communication means to be communicable with the transaction server by means of an open communication channel, preferably the Internet, for the token to be a magnetic stripe card, for the reader to be a magnetic stripe card reader, for the payment token data to be stored on a magnetic stripe on the card, for the payment token data to be stored in track 2 of the magnetic stripe, and for the payment token data to include an identity of a payment token holder, a corresponding bank account held at a financial institution, an expiry date of the payment token, and a verification code.
There is yet further provided for the data entry device to include a PIN entry facility, for the encryption facility to encrypt the purchase transaction data and the payment token data according to a Data Encryption Standard ("DES") algorithm, and for the encryption facility to encrypt the purchase transaction data and the payment token data by means of a different encryption key for each purchase transaction.
There is also provided for the transaction server to authenticate the payment token, for the transaction server to authenticate the payment token by at least determining whether the expiry date of the payment token has passed and determining whether the payment token has been stolen, for the communication means to instruct payment of a purchase price corresponding to the commercial transaction if the status of the transaction is an approved status, and for the communication means to notify the purchaser if the status of the commercial transaction is a declined status.
The invention extends to a method of operation of a data entry device, comprising the steps of:
providing a standard keyboard connected to a computer workstation, the standard keyboard being operable, upon activation of any one of the keys thereon, to transmit a respective identification code to the computer workstation; configuring a configuration facility to store the identification codes corresponding to a number of selected keys on the standard keyboard, together with at least one associated instruction corresponding to each one of the stored identification codes; and detecting an identification code transmitted by the standard keyboard upon activation of any one of the keys thereon, and executing the at least one corresponding associated instruction when the detected identification code corresponds to one of the stored identification codes.
There is further provided for storing the identification codes as ASCII codes, for storing the ASCII codes which correspond to the standard Function key codes on the keyboard, for accessing the configuration facility through the computer workstation, and for detecting an identification code transmitted by the standard keyboard upon activation of any one of the keys thereon by means of a software program executing in the computer workstation.
There is still further provided for executing the at least one associated instruction corresponding to one of the stored ASCII identification codes to launch an Internet browser, for launching the Internet browser with a default URL of a Web page on the Worldwide Web of the Internet, and for storing the at least one associated instruction and the corresponding default URL on a mass storage device on the computer workstation.
In accordance with a further aspect of the invention there is provided for the method to include the further steps of: reading token data stored in an integral storage memory; and encrypting the token data, for the token to be a payment token, for operating the computer workstation under control of an application software program, for inputting data relating to a commercial transaction and to the payment token to be used for settlement of the commercial transaction, for also encrypting the commercial transaction data, for transmitting the encrypted data to a transaction
server and receiving a transaction status therefrom, the transaction status being an approved status if the commercial transaction is approved, and a declined status if the commercial transaction is declined.
There is still further provided for transmitting the encrypted data to the transaction server by means of an open communication channel, for encrypting the commercial transaction data and the payment token data according to a DES algorithm, and for encrypting the commercial transaction data and the payment token data by means of a different encryption key for each commercial transaction.
There is yet further provided for the method to include the further step of authenticating the payment token, for authenticating the payment token by at least determining whether an expiry date of the payment token has passed and determining whether the payment token has been stolen, for instructing payment of a purchase price corresponding to the commercial transaction if the status of the transaction is an approved status, and for notifying parties to the commercial transaction if the status of the transaction is a declined status.
The invention extends to a data entry device for use in conjunction with the point- of-sale terminal described above, comprising: a computer workstation operable to display a graphical representation of a keypad; input means activatable by a user to input a PIN on the graphical representation of the keypad; and communication means arranged to transmit the PIN to the point-of-sale terminal.
There is further provided for the input means to be a pointing device, preferably a computer mouse, alternatively a graphic tablet, a trackball or a touch screen, or a keyboard, for the data entry device to include an encryption means for encrypting the PIN prior to transmission thereof to the point-of-sale terminal, and for the communication means to be a software program executable in the computer workstation.
BRIEF DESCRIPTION OF THE DRAWINGS
Preferred embodiments of the invention are described below, by way of example only, and with reference to the accompanying drawings, in which:
Figure 1 is a functional representation of a first embodiment of a data entry device according to the invention;
Figure 2 is a functional block diagram of a second embodiment of a data entry device according to the invention; and
Figure 3 is a functional block diagram of PIN entry facility of the data entry device of Figure 2.
DETAILED DESCRIPTION OF THE INVENTION
Referring to Figure 1 , a first embodiment of a data entry device is indicated generally by reference numeral (1).
The data entry device (1 ) includes a standard keyboard (2) consisting of 101 keys, which is well known in the art. The standard keyboard (2) contains a set of 12 Function keys conventionally labelled F1 to F12. The standard keyboard (2) is connectable to a conventional PS2 keyboard connector (3) of a conventional computer workstation (4). The data entry device (1) also includes a detection facility (5) in the form of a computer program which is executable in the computer workstation (4), the operation of which will be described in a greater detail below. The data entry device (1) also includes a configuration facility (6) which is configurable to store the identification codes in the form of ASCII codes corresponding to a number of selected keys on the standard keyboard (2). The configuration facility (6) is also configurable to store one or more instructions associated with each one of the stored ASCII codes.
In use, a user of the data entry device (1 ) may use the configuration facility (6) to store the particular ASCII codes corresponding to the 12 Function keys F1 to F12 of the standard keyboard (2), and to store one or more associated instructions corresponding to each one of these 12 Function keys, the associated instructions being an instruction to launch execution of an Internet Web browser on the computer workstation (4), and an associated default URL corresponding to each of the 12 function keys. This configuration data is stored in on a mass storage device (7) in the computer workstation (4).
In use, when the user activates any one of the keys on the standard keyboard (2) an ASCII code is transmitted by the standard keyboard to the computer workstation (4). The transmitted ASCII code is detected by detection facility (5), which compares the detected code with the stored ASCII codes corresponding to the 12 function keys F1 to F12. If the detected ASCII code does not correspond to any of the 12 stored identification codes, no further action is taken by the detection facility (5). When the intercepted ASCII code does correspond to one of the stored identification codes F1 to F12, the detection facility (5) will cause the instruction associated with that particular identification code to be executed. In this instance, interception of one of the stored ASCII codes will cause an Internet browser to be launched on the computer workstation (4), with the corresponding URL as the default URL to be requested by the Internet browser.
It will be appreciated by those skilled in the art that the embodiment described above enables the Function keys of a conventional keyboard (2) to work as a short-cut keys for accessing the Worldwide Web of the Internet in order to facilitate connection of a user to his most frequently visited Websites. In this manner, a user may have a set of customised bookmarks (or "favourites") residing directly on the keyboard of his computer workstation.
Numerous modifications are possible to this embodiment without departing from the scope of the invention. In particular, keyboard keys other than the above- mentioned Function keys F1 to F12 can be configured for use in the manner described above. Further, different instructions maybe associated with the ASCII
codes corresponding to the configured keys, other than instructions to launch an Internet browser and to request the contents of a default Web page, such as instructions to perform time-saving tasks, or tasks which are characteristic of Internet commerce activity.
It is envisaged that the invention will be appealing to enterprises that do business on the Worldwide Web of the Internet. For example, a company generally desires as many page hits and return users to its corporate Website, as possible. The invention enables such a company to link a user to its Website by means of hardware already present on the user's standard computer keyboard. By customisation as described above, the company will have a user who is more likely to return to that company's Website by means of a single keystroke without having to memorise the appropriate URL.
As a further example, an enterprise may have a number of different Websites of a similar nature, such as Websites relating to games, for example. It is possible for the enterprise to create a configuration program to link each of the Function keys of a standard keyboard to a different one of the Websites, so that a user has access to a variety of different games with at a single keystroke.
Still further, a form-filling function maybe embedded in the detection facility (5) and assigned to a particular Function key in which predetermined information is pasted into an online form by means of a single keystroke, thereby reducing the tedium of filling out such online forms by users to shop frequently, request information, or sign up for services on the Internet.
This embodiment of the invention therefore provides a data entry device that may be customised to launch different executable software programs by means of a single keystroke.
Referring now to Figures 2 and 3, a further embodiment of the data entry device is indicated generally by reference numeral (10).
The data entry device (10) includes transaction input means in the form of an Internet-enabled computer workstation (11) operating under control of an executable software program. The functionality of the software program enables a purchaser to input data relating to a commercial transaction and to a payment token, such as a credit card (12), to be used for settlement of the commercial transaction. The credit card (12) is a magnetic stripe card that has an integral storage memory in the form of a magnetic stripe (not shown) thereon. The data entry device (10) also includes a magnetic stripe card reader (13) connected to the computer workstation (11 ), which receives the purchaser's credit card (12) and reads card data that is stored on the magnetic stripe. The software program also provides an encryption facility (14) for encrypting the data relating to the commercial transaction data and to the credit card. The encrypted data is transmitted to a transaction server (15) that returns a transaction status to the computer workstation (11 ), the transaction status being an approved status if the transaction server approves the commercial transaction, and a declined status if the commercial transaction is declined by the transaction server.
The credit card data read by the magnetic stripe card reader (13) relates, inter alia, to an identity of the credit card holder, and to a corresponding bank account held at a financial institution. In addition, track "2" of the magnetic stripe contains the bank account number, the card expiry date and a verification code which is known, variously, as a Card Verification Value ("CVV") or Card Validation Code ("CVC").
In use, in order to conclude a commercial transaction, a user enters data relating to the commercial transaction on the computer workstation (11) of the data entry device (10). The credit card (12) is the swiped through the magnetic stripe card reader (13). The credit card data which is stored on track "2" of the magnetic stripe (not shown) is read by the magnetic stripe card reader (13) and is passed to the computer workstation. The transaction data and the credit card data is encrypted by the encryption facility (14) according to a Data Encryption Standard algorithm with a unique encryption key per transaction. The software program executing in the computer workstation (11) then emulates the functionality of a standard point- of-sale device as follows:
• the encrypted data is passed to the transaction server (15) where it is validated by checking that the expiry date has not passed and that the credit card number is not contained in a database of stolen cards;
• a transaction status is then received back from the transaction server (15) by which the transaction is either approved or declined;
• where the transaction is approved, the software communicates with a merchant server (not shown) and an acquiring financial institution (not shown) to execute payment for the commercial transaction; and
• where the transaction is declined, the user is notified on the computer workstation (11).
It will be appreciated by those skilled in the art that reading of the track "2" data of the credit card (12), as described above, which data appears exclusively on the magnetic stripe (not shown) on the credit card, constitutes a unique identification of the card and the commercial transaction can then be processed as a "card present" transaction.
Where the payment token is a debit card or an Automated Teller Machine (ATM) bankcard, the user is required to enter a PIN in order to authenticate the commercial transaction. In this instance, data entry device (10) includes a PIN entry facility indicated generally by reference numeral (20) in Figure 3.
The PIN entry facility (20) comprises a computer workstation (21 ) operating under control of an executable software program. The software program generates and displays a graphical representation of a numeric keypad on a display monitor (22) associated with the computer workstation. The numeric keypad is displayed to include numeric keys, as well as ENTER and CLEAR keys associated with conventional physical numeric keypads. The PIN entry facility also includes input means (23) such as a mouse or other pointing device operable by a user of the
data entry device (20) to enter a PIN on the facility. The computer workstation (21 ) is communicable with the data entry device (10).
In use, a user of the PIN entry facility (20) uses the mouse (23) to enter a PIN by clicking in a conventional manner on the keys of the graphical representation of the numeric keypad. After the PIN has been entered in this manner, the PIN is encrypted by the software program in the same manner as described above and is transmitted to the data entry device (10) to authenticate a commercial transaction. The encrypted PIN is only decipherable by a financial institution that issued the debit card or ATM bank card.
Numerous modifications are possible to this embodiment without departing from the scope of the invention. In particular, the data entry device (10) may communicate with the transaction server, the merchant server, and the acquiring and issuing financial institutions by means of any open communication channel other than the Internet. Further, the software program generating and displaying the graphical representation of the numeric keypad may resize or recolour the graphic representation so that it is difficult to view at a distance. Still further, the input means (23) on the PIN entry facility (20) may be a keyboard instead of the mouse, or other types of pointing devices such as graphic tablets, trackballs or touch screens. Yet further, although DES is currently the standard method for encrypting point-of-sale transactions, this is likely to change to the 3DES algorithm in the near future. The encryption algorithm used by the data entry device (10), which is implemented in software, is easily upgradeable.
This embodiment of the invention therefore provides a data entry devise that can function as a point-of-sale terminal utilising an Internet-enabled computer workstation that can be used to process commercial transactions as "card present" transactions.