USRE49745E1 - Device and method for identification and authentication - Google Patents

Device and method for identification and authentication Download PDF

Info

Publication number
USRE49745E1
USRE49745E1 US17/186,993 US202117186993A USRE49745E US RE49745 E1 USRE49745 E1 US RE49745E1 US 202117186993 A US202117186993 A US 202117186993A US RE49745 E USRE49745 E US RE49745E
Authority
US
United States
Prior art keywords
user device
holder
identifier
code
user
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.)
Active
Application number
US17/186,993
Inventor
Jakob Ehrensvärd
Stina Ehrensvärd
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Acq Bure AB
Yubico AB
Original Assignee
Yubico AB
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yubico AB filed Critical Yubico AB
Priority to US17/186,993 priority Critical patent/USRE49745E1/en
Assigned to YUBICO AB reassignment YUBICO AB ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: YUBICO INC.
Assigned to YUBICO INC. reassignment YUBICO INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: EHRENSVÄRD, Jakob, EHRENSVÄRD, Stina
Assigned to YUBICO AB reassignment YUBICO AB CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: ACQ BURE AB
Assigned to ACQ BURE AB reassignment ACQ BURE AB MERGER (SEE DOCUMENT FOR DETAILS). Assignors: YUBICO AB
Application granted granted Critical
Publication of USRE49745E1 publication Critical patent/USRE49745E1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor

Definitions

  • Two factor authentication is an effective way to increase the strength of the identification process as the user must Have something physical and also know a secret to conduct a transaction.
  • the requirement of having a physical device adds another dimension of security as the singularity of an identity can be more easily enforced. If the physical device is lost, the user recognizes it and can request to have the credentials for its current device revoked.
  • This scheme typically requires a time-variant code which needs to be maintained by the device and the server needs to synchronize this at each authentication event. This in turn puts some requirements of the stability of the device's time base and further requires that the device must have a battery to maintain the time base. Needless to say, this adds additional problems and potential sources of errors.
  • biometrics such as fingerprint scanning
  • fingerprint scanning has in recent years been recognized as a convenient and secure method of identification and authentication.
  • an additional identification code needs to be supplied so that the biometric data can be matched to a pre-stored biometric template paired with that identification code.
  • the static nature or the biometric data would make it no more secure than a static password.
  • the personal integrity when supplying a biometric template as the biometric data cannot be revoked and will therefore have an unlimited lifetime. In settings where the matching of the biometric data is performed integral in a device and there is only one or a few user for that device, this problem can be avoided.
  • the present invention relates to a device for identification and authentication of a remote user connecting to a service over a network, comprising a cryptographic processor and at least one cryptographic key and storage means, additional processing means and interface means to generate and transmit a static identification part in conjunction with a dynamic part by emulation through a standard input means of a client terminal by explicit command of the device holder.
  • Typical Internet based services all have a least common denominator of keyboard entry by alphanumeric keystrokes sent in clear text, key by key through a keyboard port.
  • Today's computers typically have a legacy PS/2 port and/or a state-of-the-art USB port, where an external keyboard can be attached.
  • the legacy PS/2 keyboard port is somewhat restricted to certain computer hardware it is generally supported by most operating systems.
  • USB Universal Serial Bus
  • HID Human Interaction. Device
  • the present invention features a device connectable to a standard keyboard port, which from the terminal's point of view acts exactly as if it was an external keyboard, i.e. the device perfectly emulates a keyboard and has built-in features to send emulated key codes.
  • the device can generate a unique sequence of emulated keystrokes, which are sent as a stream to the terminal it is connected to.
  • the state-of-the-art approach would be to provide the device with means for the user to supply a personal and/or confidential piece of authentication information, such as a keypad for entry of a Personal Identification Number (PIN), a joystick for entry of a unique code pattern fingerprint reader, voice recognition or other biometric scanning means.
  • PIN Personal Identification Number
  • the supplied personal authentication data is then matched on the device with a pre-stored template. If the supplied information matches, the device is being considered to be in the hands of a legitimate user and the identification and authentication sequence is generated. If there is no match, the process is terminated and no information leaves the device.
  • the above described keypad could be omitted.
  • the sequence is completed by pressing a single activation key on the device.
  • the static username and password are thereby appended with a dynamic code generated by the device.
  • this scheme would be somewhat a compromise in terms of security as a Trojan Horse could intercept the entered username and password pair, the requirement for the physical device and the additional requirement that the activation needs to he performed manually would make an intercepted username-password pair less useful.
  • This sequence with Scroll Lock on and Scroll Lock off will be recognized by the authentication device (which again is identified by the computer as a keyboard) and cause the device to release an authentication code sequence.
  • the trigger key sequence can he a secret combination of keys, which is used in place of a PIN-code.
  • the authentication device then intercepts the received sequence of indicator update codes and waits for an expected sequence, known to the device holder only before releasing the authentication code sequence.
  • the authentication code sequence begins with a unique identifier which identifies the user and is followed with an authentication code in form of an encrypted single-use long number, which is composed of certain fields.
  • the authentication code is designed to be one-way, i.e. only the token can generate it and only the receiving site can decode it and determine if the code is authentic.
  • the authentication code includes variant fields that change each time a code is generated.
  • integral of the invention is to include a non-volatile linear counter (NVC) which is incremented by one the first time the device is used after power-up where at the same time a volatile timer (VT) value is initiated to zero and a third volatile counter (VC) is initiated to zero. Once powered up, the timer counts up with a reasonably stable frequency of around 5 Hz.
  • NVC non-volatile linear counter
  • each received authentication code will follow a predictable scheme.
  • the first released authentication code always has VT and VC values set to zero. Further, the NVC value should be the previously recorded one plus one. When this code is received, a timestamp shall he captured from a system real-time-clock source to a value VS.
  • the second released authentication code must have its NVC value matching the one at session start.
  • the VC value shall be one. Given that the VT counts up with around 5 Hz (a value which is not critical per se), the value of VT should be reasonably known from the stored value of VS. The ratio between VS and VT will give an indicative means of the actual frequency ratio between the absolute time and the less accurate time generated by VT.
  • the third released authentication code must have its NVC value matching the one at the session start and the VC value shall be two.
  • the VT value should now be even more reasonably known given VT ( ⁇ -2) and VT ( ⁇ -1) .
  • the fourth released code should then follow the above described pattern and so on.
  • each received authentication code is compared with information from the previous one, it is somewhat sensitive to single codes being unintentionally lost.
  • the verifying service should inform the user that the scheme is out of sync and if the user thinks there may be a potentially fraudulent situation or if he or she thinks there is a plausible explanation to the discrepancy.
  • the code further includes a fixed secret code which is known by the service only.
  • a fixed secret code which is known by the service only.
  • the code In order to keep the cost of the device down, there should be no particular requirement of having a battery backup and keep a time value maintained in a non-volatile means. Further from a cost perspective, there should be no requirements of having a particular absolute accuracy of a volatile time-keeping means, allowing the device to be manufactured as a single-chip device without the need of an external quartz crystal, which in turn allows it to be integrated into a standard credit-card.
  • biometrics input means such as a small embedded fingerprint scanner.
  • biometrics input means such as a small embedded fingerprint scanner.
  • the traditional shortcomings of biometric authentication can here be avoided as the fingerprint template will be scanned by the device stored in the device and matched in the device, all integrated without any possibility to retrieve or change the stored template. As the fingerprint is used on one single device only, a stricter matching can be done as no compensation for different readers needs to be performed.
  • biometric scenario could be reviewed as a way to make biometric data. “unique on a per-service basis, dynamic and revokeable”.
  • the device can be made to include a single button only.
  • a use scenario could the be as:
  • the device can be made to not having any button at all.
  • a use scenario can then be as:
  • the device could from a convenience- and customer loyalty perspective provide means of automatically transmitting a URL pre-stored in the device as a stream of emulated keystrokes.
  • the user would then just need to start its browser and press a “connect” key, which then transmits the tall and an ENTER keystroke.
  • this could be made to incorporate the initial identification and authentication stage as well.
  • a device that can be used for identification and authentication to more than one service.
  • a device could be supplied with different usernames, codes and keys, all targeting different services. Depending on which personal identification data that was specified, the device determines which service to use.
  • a set of keys can he used to select which service that the user wants to identify and authenticate itself to.
  • Such a device could be pre-programmed by a third-party trusted source to hold, say ten different usernames, keys and codes for ten different services.
  • Such devices having a pre-printed device issuer code (which could be an URL) printed on them could then be sold over the counter to users, who themselves sign up for the services they want to use.
  • the user enters the printed issuer code in a field of the registration form and moves to the field of username and password, selects the intended service number and enters the PIN (or biometrics).
  • the service can then use the issuer code to automatically retrieve the appropriate secret code and encryption key for the selected service number.
  • the he aspects of the present invention could be used to transmit any type of one-way information from a device held by a user to a centralized service over a network, such as an intelligent pharmaceutical packaging as described in U.S. Pat. No. 6,244,462.
  • additional collected data could be converted to a character stream and be sent as emulated keystrokes, thereby allowing such a device to be used with any computer, independent of brand or installed browser and further without any requirements to install any client software.
  • an additional battery and a display would allow the device to be used in scenarios where a keyboard port is not available, where information then would be read from the screen and transferred to the terminal (or through telephone) by “manual- or verbal means”.
  • the device could not possibly yield the hill security, as the number of digits that is to be read from the display must be very limited from a practical viewpoint.
  • a value-added benefit for certain types of services would be the requirement of repeating human interaction, where “bots”, i.e. computers acting as humans on network services. From a practical viewpoint, whereas entering a key on terminal A or B is of little obfuscation from a real human's point of view, “bot” can obviously not physically push buttons on an external device. For group gaming sites, such as poker, this could be a real benefit, as apart from the imminent security problems, “bots” poses another plague which can be addressed with the features of the present invention.
  • a potentially suitable way could be to fit the devices with a Radio Frequency Identification (RFID) antenna to allow them to be configured in bulk using state-of-the-art equipment.
  • RFID Radio Frequency Identification
  • Such an approach would yield the additional benefit that the devices could be used as RFID tokens as well, suitable far applications like access control etc.
  • the key and code generation should be generated in the same system as the system being used to verify the access code.
  • a “closed appliance”, i.e. a device which cannot be controlled or interrogated from the outside is preferred.
  • the scheme limits itself by practical means to be a one-to-one relationship only, several different sites cannot independently verify a received authentication code.
  • a centralized arbitrator which maintains the NVC, VC and VT values as well as the asymmetric key, the scheme can be extended to a one-to-many relationship as well.
  • the central arbitrator would then keep track of individual identities and keys and make appropriate translations for requesting services.
  • each site can apply to make a one-to-one mapping between a legacy username and password pair and a generated authentication code.
  • the arbitrator could then make the appropriate translation between a verified authentication code and the requesting site's legacy username and password,
  • the protocol between the requesting site and the arbitrator could then use PKI schemes to encrypt and sign requests being transmitted.
  • the device can further be designed to allow the authentication code to be triggered and retrieved by means of a software driver.
  • the benefit in such a setting would be that the authentication operation can be done by direct- and automatic command of the application itself. It is however important that such a setting is designed to prevent a Trojan from fraudulently retrieving authentication codes from the device.
  • One way of securing the device in this setting can be to use a PIN in order to gain access to the device in a similar way that is performed with traditional Smart Cards.
  • An authentication device with a keypad, a single key or biometric scanner could use these means to have the user to “approve” a requested operation.
  • the device can further be designed to allow a two-way scheme, such as challenge-response.
  • a server issued challenge is then transferred through the client application and through a driver to the device, which in turn creates a response based on the challenge which is then sent back to the server application.
  • this optional extension for the present invention can allow the authentication device to be used in a wider variety of settings.
  • the keyboard emulation feature can be used as well and no specific resident client driver needs to be installed in the computer.
  • the present invention describes a device and method to conveniently and securely identify and authenticate a user to a service in a network at a very low cost, even from a total cost of ownership perspective.
  • a higher level of security can be yielded for all state-of-the-art computers, independent of brand, operating system or Internet browser, without the need to install any client computer drivers or other software components.
  • An additional level of security is provided by the possibility to quickly and automatically provide new authentication codes by a keystroke. Services can therefore increase the number of times authentication will be requested without adding any significant obstacle for the user.
  • FIG. 1 is an example of a possible embodiment of a device according to the invention.
  • the preferred embodiment describes an identification card with authentication capabilities in the size and shape of a credit-card having an integrated keypad such as described in U.S. Pat. No. 6,616,035.
  • Said card is designed to be used together with a card reader with the capability to connect to a standard computer device and perform emulation to act as an external keyboard from said computer's point of view.
  • Said reader may either provide emulation means of a standard PS2- or USB-keyboard or both. This approach would allow the reader to be connected to almost any today existing personal computer, independent of brand, operating system or Internet browser,
  • said card has functionality to generate a unique authentication code on the command of the card holder together with a username in clear text, said username and authentication code being used in an identification and authentication procedure to a service over a network.
  • the authentication code includes the following fields: (The supplied field sizes in bits are for illustrational purposes only)
  • the session identifier and timestamp fields ensure that all generated codes are absolutely unique for a given secret user identity.
  • the receiving service should keep track of these two values in order to thwart any attempt of replay and/or phishing.
  • the fields concatenated yields in total 128 bits.
  • the 128-bit package Prior to being sent, the 128-bit package is encrypted with a stored 128 bits symmetric encryption key and is then converted to an alphanumeric format to allow it to be transferred as clear text accepted by all systems.
  • a good candidate is the widely used MIME or Base64 encoding scheme, where 6 bits of data is packed into 7-bit ASCII characters.
  • a hexadecimal coding scheme can be utilized.
  • Each 8 bit value is converted to two keystrokes and instead of the traditional coding 0.9 and a.f, the sixteen combinations for each nibble is translated to keystrokes that are more or less common to all keyboard layouts.
  • Such keys are “bdefghijklnrtuv”, where an additional wild-card is needed.
  • a good candidate is a 128 bit plaintext encrypted with the 128-bits.
  • Advanced Encryption Standard due to its acknowledged strength, high processing speed and small footprint. Shorter key length or longer fields can easily be implemented by having a block cipher scheme.
  • the intended device usage is when a reliable provider issues devices to, users (which by definition are unreliable).
  • asymmetric encryption could be used.
  • the device should have the ability to generate a key pair by its own and further have means to protect the private key from being retrieved from the device in any format whatsoever.
  • the device could be adapted to allow the PIN to be changed at any time, where a common method would require the user to supply the old PIN and then enter the new one and finally confirm it.
  • a practical way could be that information about the progress is displayed in clear text by sending emulated keystrokes.
  • a typical procedure may be as:
  • the preferred embodiment does not limit the actual implementation, design or physical appearance of the described identification and authentication device. In very low-cost applications, it could for example be desirable to combine the functionality of the above described card with the functionality of the above described reader into a single unit.
  • An appreciated and widely accepted form factor is something that fits into a keychain. Such a device could physically have the appearance of a commonly available e “fob” or “USB memory stick”, i.e. a small device that fits directly into is USB port of a computer. In cases where the USB port of the computer is not conveniently located, an external extension cord could be provided.
  • this particular device embodiment could be fitted with a keypad for entry of a PIN, it may be more practical to incorporate a small joystick or similar, where the user can enter a secret code by clicking in a given pattern, known by the user only.
  • Another option for the fob design could be to integrate a small fingerprint scanner integrated on the device (which would be less practical to use in a card embodiment).
  • the PIN entry is replaced with the user simply placing its finger (or sweeping its finger over) a fingerprint scanner.
  • the fingerprint scan is then matched with a pre-stored fingerprint template which is stored on the fob.
  • the device should be designed to have a one-way function, i.e. the fingerprint template could only be assigned and never retrieved from the device.
  • the device could be paired with a new fingerprint template, where a hidden switch is activated (with the top of a pen for example). The user would then have to place its finger on the scanner to retrieve several scans. If the new template is accepted, all previous codes and keys are deleted.
  • the preferred embodiment could include a method of selecting between a plurality of pre-stored service usernames, secret codes and encryption keys.
  • the device can be supplied from a trusted party, which business model relies in supplying identification and authentication devices with a number of pre-stored codes and keys in them.
  • the user purchases the devices and for each service the user signs up for, it supplies a code and a password in clear text (one for each service) accompanying the device to the service provider.
  • the service provider can then require the trusted party to supply the secret key and user identification codes.
  • a traditional Smartcard and reader may be used where that Smartcard reader would have a keyboard interface rather than the conventional ISO7816 protocol implementation.
  • the Smartcard should have a keypad.
  • the computer will detect the reader as a conventional keyboard (although it is a Smartcard reader).
  • the Smartcard reader transmits emulated keystrokes to the computer.
  • a wireless setting can be implemented with a host-powered telemetry solution, such as RFID, where a strong Radio Frequency (RF) field is emitted by a transceiver.
  • RF Radio Frequency
  • the portable device can then be powered by the transceiver without any need for a battery in the device. This will, however limit the usable range between the transceiver and the portable device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

A device for identification and authentication of a remote user connecting to a service over a network includes a cryptographic processor and at least one cryptographic key and storage means, additional processing means and interface means to generate and transmit a unique authentication code as emulated keystrokes through a standard input, means of a client terminal. The code may be transmitted only by an explicit command of the user.

Description

CROSS REFERENCE TO RELATED APPLICATIONS
More than one reissue application has been filed from U.S. Pat. No. 9,122,860, including the instant patent application, as well as U.S. patent application Ser. No. 15/692,931, filed on Aug. 31, 2017, from which the instant patent application was filed. The instant patent application is a reissue filed from U.S. Pat. No. 9,122,860.
This application is a continuation of U.S. application Ser. No. 12/669,929 filed Jan. 20, 2010, reissue application of Ser. No. 15/692,931 filed Aug. 31, 2017 which is a reissue of U.S. Pat. No. 9,122,860, filed Jun. 19, 2014 and issued Sep. 1, 2015, which is a continuation of U.S. Pat. No. 8,806,586, filed Feb. 23, 2010 and issued Aug. 12, 2014, which is a National Phase filing under 35 U.S.C. 371 of PCT/EP 2007/053966 filed Apr. 23, 2007, which claims priority to U.S. provisional Application No. 60/745,432, filed Apr. 24, 2006, U.S. provisional Application No. 60/746,915, filed on May 10, 2006, and U.S. provisional Application No. 60/806,299, filed on Jun. 30, 2006. The entire contents of each of the above-applications are incorporated herein by reference.
BACKGROUND
Recent year's evolution of the Internet has exposed the fact that dependable identification is the foundation for reliable network-based services. As simply providing an identity, such as a customer number or a user name is not enough from a security viewpoint, additional means of authentication must be added to ensure that identities are not misused or spread in an uncontrollable manner. Traditional methods of supplying a username and a secret password, known as static authentication, is nowadays known to be a too weak method of authenticating a remote user as the method is just “static”. Eaves-dropping and other means of intercepting the username-password pair immediately gains access to the service and there is no real way to determine that the identity has been compromised. Very basic means of having the user to reveal its username-password pair is known as “Phishing”, where a seemingly genuine message from the service owner asks the user to supply its username and password to a bogus site is surprisingly effective. Other means of “Social Engineering” and the simple reality that username-password pairs can by a high degree of certainty be guessed or broken by “Brute force” methods.
In order to address the issues with static authentication, several schemes of dynamic authentication have been developed, including several means requiring an external “token”, i.e., a small portable card, key-fob or other device which is capable of generating “passwords” that change every time they are used, i.e. replacing a. static scheme with a dynamic one.
There is also a common understanding today recognizing that what is known as “Two factor authentication” is an effective way to increase the strength of the identification process as the user must Have something physical and also know a secret to conduct a transaction. The requirement of having a physical device adds another dimension of security as the singularity of an identity can be more easily enforced. If the physical device is lost, the user recognizes it and can request to have the credentials for its current device revoked.
Several means of token-based identification and authentication have been introduced to the marked over the years, where the most known is probably the “Smartcard”. By embedding a cryptographic processor and a cryptographic key into a card, a bi-directional process known as challenge-response can be used where the password in a trivial description is made dynamic in a scheme known to the service provider only. This scheme effectively thwarts traditional means of intercepting a static password and later replaying it. As the initial challenge is issued by the service provider and is “scrambled” by the cryptographic processor in the user's token, recording of the response does not make sense as it will not work for subsequent challenges.
Although the Smartcard at first glance seems like the perfect solution for remote identification, it has been shown that it is fairly difficult and expensive to implement in a practical setting. Apart from the cost of the actual hardware and its deployment, the integration issues found on the client-side is often a more challenging problem. Although there is a certain level of conformity in the operating systems and computer hardware in an average user population, the number of permutation and the apparent differences between different systems and versions of hardware and software is very large, Further, integration and interaction between the service and the user's web-browser or client application software is somewhat open to non-standard implementations. Yet further, more or less complicated installation procedures of software drivers is usually required, which by certain percentages restrict users front installing it and by awkwardness limits the attractiveness from a user's point of view. From a cost of deployment and cost of ownership perspective, the largely unknown and uncertain cost and support burdens often scares service owners away from this otherwise attractive solution.
The above described shortcomings and awkwardness Smartcard deployment have created a marked for authentication devices working off-line. By not requiring a direct connection to the client computer, the incompatibility problems can largely be avoided at the expense of more user interaction and a less automated challenge-response scheme. Although several different varieties exist, they generally are capable of creating a dynamic password only, with or without a previous challenge that needs to be entered into the device. As this process is manual by nature, the number of interactions with the device has to be held down to a minimum. Further, as digits needs to be typed in, one by one, the number of digits used in the process needs to be kept at a minimum as well, which in turns requires more complicated processes to be used to reduce the risk of cryptanalysis of intercepted codes being sent. This scheme typically requires a time-variant code which needs to be maintained by the device and the server needs to synchronize this at each authentication event. This in turn puts some requirements of the stability of the device's time base and further requires that the device must have a battery to maintain the time base. Needless to say, this adds additional problems and potential sources of errors.
The usage of biometrics, such as fingerprint scanning, has in recent years been recognized as a convenient and secure method of identification and authentication. However, as the scanned biometric data is no identification per se, typically an additional identification code needs to be supplied so that the biometric data can be matched to a pre-stored biometric template paired with that identification code. It can then be argued that the static nature or the biometric data would make it no more secure than a static password. Further, as there is an overall concern regarding the personal integrity when supplying a biometric template as the biometric data cannot be revoked and will therefore have an unlimited lifetime. In settings where the matching of the biometric data is performed integral in a device and there is only one or a few user for that device, this problem can be avoided. In practical settings, this has been used to gain access to personal items, such as laptop computers and alike. From both a convenience and security perspective, this is a fairly attractive solution as no identification needs to be supplied and the biometric data is stored, scanned and matched in the device itself. This in turn avoids the biometric template to be spread and the stored template can be deleted at any time.
In summary, it would be desirable to have a system which gives a more favorable compromise between the simplicity of the username-password scheme, the security of the Smartcard scheme and the portability of the off-line token scheme, all available at a low overall cost. Further, in certain settings, the convenience and speed of supplying a simple fingerprint without transmitting the biometric template could be desired.
DESCRIPTION OF THE INVENTION
The present invention relates to a device for identification and authentication of a remote user connecting to a service over a network, comprising a cryptographic processor and at least one cryptographic key and storage means, additional processing means and interface means to generate and transmit a static identification part in conjunction with a dynamic part by emulation through a standard input means of a client terminal by explicit command of the device holder.
Typical Internet based services all have a least common denominator of keyboard entry by alphanumeric keystrokes sent in clear text, key by key through a keyboard port. Today's computers typically have a legacy PS/2 port and/or a state-of-the-art USB port, where an external keyboard can be attached. Although the legacy PS/2 keyboard port is somewhat restricted to certain computer hardware it is generally supported by most operating systems. In recent years, there has been conformity in keyboards with a Universal Serial Bus (USB) interface, where a simple key-by-key protocol known as Human Interaction. Device (HID) is used. This conformity together with a general built-in support (“Plug-and-Play”) for such devices without the need of additional drivers and/or privileges typically makes attachment of art external keyboard a very simple and painless procedure with a high probability to succeed. Both the PS/2 and USB ports supply power which allows the connected device to be powered from the computer which allows the device to he operated without the need of an additional battery or other power source.
In its basic setting, the present invention features a device connectable to a standard keyboard port, which from the terminal's point of view acts exactly as if it was an external keyboard, i.e. the device perfectly emulates a keyboard and has built-in features to send emulated key codes. By the command of the user, the device can generate a unique sequence of emulated keystrokes, which are sent as a stream to the terminal it is connected to.
In order to protect the device from being used by an unauthorized person, it should provide means of two-factor authentication or other means to restrict usage to the legitimate user only. The state-of-the-art approach would be to provide the device with means for the user to supply a personal and/or confidential piece of authentication information, such as a keypad for entry of a Personal Identification Number (PIN), a joystick for entry of a unique code pattern fingerprint reader, voice recognition or other biometric scanning means. The supplied personal authentication data is then matched on the device with a pre-stored template. If the supplied information matches, the device is being considered to be in the hands of a legitimate user and the identification and authentication sequence is generated. If there is no match, the process is terminated and no information leaves the device.
In order to further simplify the device hardware and to maintain compatibility with legacy username-password systems, the above described keypad could be omitted. By entering a legacy username and password in the appropriate fields, the sequence is completed by pressing a single activation key on the device. The static username and password are thereby appended with a dynamic code generated by the device. Although this scheme would be somewhat a compromise in terms of security as a Trojan Horse could intercept the entered username and password pair, the requirement for the physical device and the additional requirement that the activation needs to he performed manually would make an intercepted username-password pair less useful.
Given that the above described simplified scheme would be accepted from a security standpoint, a yet more simplified (and thereby even less expensive) device could be provided without any activation button at all. The activation would then be performed by using output means provided by the keyboard interface. In order to make this approach as portable as possible, standardized output messages provided by the keyboard driver would then he used, which typically would restrict the implementation to use any of the available indicator codes for the states Caps Lock, Num Lock and/or Scroll Lock, which are available on most standard keyboards. By entering a simple activation sequence which should be selected to be used for activation purposes only as these keys ore reserved for other purposes. A simple scheme could for example imply two consecutive presses en Scroll-Lock. This in turn would send out an indicator update to all attached keyboards. This sequence with Scroll Lock on and Scroll Lock off will be recognized by the authentication device (which again is identified by the computer as a keyboard) and cause the device to release an authentication code sequence. Alternatively, the trigger key sequence can he a secret combination of keys, which is used in place of a PIN-code. The authentication device then intercepts the received sequence of indicator update codes and waits for an expected sequence, known to the device holder only before releasing the authentication code sequence.
The authentication code sequence begins with a unique identifier which identifies the user and is followed with an authentication code in form of an encrypted single-use long number, which is composed of certain fields. The authentication code is designed to be one-way, i.e. only the token can generate it and only the receiving site can decode it and determine if the code is authentic.
In order to thwart phishing attempts and replay attacks, the authentication code includes variant fields that change each time a code is generated. Where one-time-pads often are more or less sensitive to phishing attacks, integral of the invention is to include a non-volatile linear counter (NVC) which is incremented by one the first time the device is used after power-up where at the same time a volatile timer (VT) value is initiated to zero and a third volatile counter (VC) is initiated to zero. Once powered up, the timer counts up with a reasonably stable frequency of around 5 Hz.
Each time a new authentication code is released by the device, the current NVC and the VT values are captured and concatenated with VC, where after VC incremented by one. These three fields together creates a guaranteed unique value which also has the characteristic that a more recent code always is higher than an older one, which as such provides a measure against replay attacks.
Further, within a session, each received authentication code will follow a predictable scheme.
The first released authentication code always has VT and VC values set to zero. Further, the NVC value should be the previously recorded one plus one. When this code is received, a timestamp shall he captured from a system real-time-clock source to a value VS.
The second released authentication code must have its NVC value matching the one at session start. The VC value shall be one. Given that the VT counts up with around 5 Hz (a value which is not critical per se), the value of VT should be reasonably known from the stored value of VS. The ratio between VS and VT will give an indicative means of the actual frequency ratio between the absolute time and the less accurate time generated by VT.
The third released authentication code must have its NVC value matching the one at the session start and the VC value shall be two. The VT value should now be even more reasonably known given VT(τ-2) and VT(γ-1).
The fourth released code should then follow the above described pattern and so on.
Obviously, as the scheme described above relies on the fact that each received authentication code is compared with information from the previous one, it is somewhat sensitive to single codes being unintentionally lost. Given that the user unintentionally releases a code when not being in a session, the VT value would not be zero as expected when first being used. In such a case, the verifying service should inform the user that the scheme is out of sync and if the user thinks there may be a potentially fraudulent situation or if he or she thinks there is a plausible explanation to the discrepancy.
Apart from the above exception, another issue may arise if a user “fiddles” with the device from time to time, thereby affecting the NVC. value between “real” sessions. As a “hole” in either NVC. or VC values could arise as a result of a fraudulent operation, this condition is important to address. Again, the most straight-forward approach is to inform the user that there is a discrepancy. If there is a doubt that a fraudulent/relaying user is fraudulently using an identity, the service provider could always trigger a “resynchronization operation”, where the user is requested to respond to certain questions within a random time period. If the user fails to properly respond to this “resynchronization scheme”, the user's account may be blocked by the service provider.
Apart from the dynamic codes described above, the code further includes a fixed secret code which is known by the service only. In order to keep the cost of the device down, there should be no particular requirement of having a battery backup and keep a time value maintained in a non-volatile means. Further from a cost perspective, there should be no requirements of having a particular absolute accuracy of a volatile time-keeping means, allowing the device to be manufactured as a single-chip device without the need of an external quartz crystal, which in turn allows it to be integrated into a standard credit-card.
All fields are then concatenated together (and padded with fixed or random bits if desired to make cryptanalysis even more difficult) and is then encrypted with a fixed symmetric encryption key.
The typical usage scenario, independent of keyboard input, will then be as follows:
    • A1). The user enters the URL of the login page of an Internet service, where the default input focus is in the username field. The username field should be succeeded with a password field. In the proposed scenario, the same page and basic background logic can be used for (legacy-) users that login using a static username and password only.
    • A2). By entering a correct PIN on the device's keypad or joystick (or in case by the biometric option, by simply placing the finger on the fingerprint scanner on the device), the device sends an emulated keystroke sequence of a pre-stored username, let's say “Alex_2285”.
    • A3). Immediately after, an emulated TAB keystroke is sent by the device, which moves the input focus on ate screen to the password field.
    • A4). The concatenated fields are all encrypted and converted to an alphanumeric representation (preferably MIME coded Base64 7-bit ASCII or anything similar). A full 128 bit encrypted package would then generate 1286=22 alphanumeric characters, which are all sent by the device as an emulated stream of keystrokes, let's say “ks9Af48auzPrricAuLhjf298”
    • A5). The entry is then optionally succeeded with an “ENTER.” keystroke being sent by the device, which then would apply to the page's default “Login” button, which in turn submits the entered username and password information in the same manner it would have been done in a typical manual login process.
    • A6). The received username is used to lookup the user in the database, where the fixed secret user code, expected linear counter value and encryption keys are stored.
    • A7) If the user is found in the database, the received password is decrypted with the symmetric key. When decrypted, the received secret user code is verified with the value stored in the database. If it does not match, the data was not encrypted with the correct key and therefore the transaction is rejected.
    • A8). Further, the stored secret user code, NYC, VC and VT values are verified as well. Given that the NVC and VC counters are equal to the expected values, the stored values are updated, which then reflects the next expected counter values.
    • A9). If any of the received counter values are lower than the expected value, the login is rejected as this may be a code replay attempt. If however any of the received counter values are higher than expected, the user may have generated codes that did not succeed or just by playing around. If so, the user can be informed (and potentially warned) that this is the case and be asked if he or she finds this okay (there may be a plausible cause) or if there is a reason to suspect that the identity has been subject to misuse. Given that codes have been pulled out from the device by a potential attacker, these codes will however be automatically invalidated as the linear counter has incremented.
    • A10). When the personal authentication data (PIN and/or biometrics) is entered and validated and the NVC. is incremented by one, where VC and VT are both initiated to zero. VT then further counts up with approximately 5 Hz, which allows a new and totally unique cede to be generated at any time without any risk of a clash.
    • A11). The service can now at any time request the user to re-identify itself, where the personal authentication needs to be supplied again where a NVC is generated. However, in order to keep a high level of session integrity security without making it too awkward for the user, a special procedure is provided for periodic “re-authentications”. Whenever needed (it could well be at every page), the service can post pages where the input focus is set in an authentication code field. After a successful user authentication (PIN or biometrics), by just pressing a button on the device, a new authentication code is generated and streamed out as emulated keystrokes followed by an ENTER key. Thereby, no additional actions (pressing ENTER on the device rather on the ordinary computer keyboard) are needed to get a significant session security increase.
Although the usage scenario above relates to a device with a PIN- or joystick to supply a secret personal identification code, several benefits could be achieved by a device with biometrics input means, such as a small embedded fingerprint scanner. The traditional shortcomings of biometric authentication can here be avoided as the fingerprint template will be scanned by the device stored in the device and matched in the device, all integrated without any possibility to retrieve or change the stored template. As the fingerprint is used on one single device only, a stricter matching can be done as no compensation for different readers needs to be performed.
In addition, traditional skepticism towards biometrics from a personal integrity perspective could be avoided. if a device is lost or an account is revoked, there should be no fear that anyone could misuse or spread the device holder's biometric template.
Further, recent years development in low-cost fingerprint scanning sensors could make this a cost efficient solution as well.
The basic steps in the fingerprint scenario would then be as (simplified from the PIN based entry described above):
    • B1). The user positions the input focus on the username field.
    • B2). The user puts or sweeps its finger on the fingerprint scanner of the fob inserted in the USB port.
    • B3). The scanned fingerprint is compared with the stored template. If the templates match, the username and generated one-time codes are sent by emulated keystrokes.
In summary, the above described biometric scenario could be reviewed as a way to make biometric data. “unique on a per-service basis, dynamic and revokeable”.
In a simplified setting, the device can be made to include a single button only. A use scenario could the be as:
    • C1). The user manually enters its username in the username field
    • C2). The user enters its password in the password field
    • C3). The user presses the key on the device and thereby yields a dynamic password which is appended to the previously entered password.
In yet an even mere simplified scenario, the device can be made to not having any button at all. A use scenario can then be as:
    • D1). The user positions the input focus on the username
    • D2). The user types in a secret key sequence on the default keyboard using the keys controlling the output indicators Caps Lock, Num Lock and Scroll Lock, let's in this example say Caps-Num-Caps-Scroll.
    • D3). If the entered sequence matches the reference sequence, the device's stored username and a dynamic access code is yielded by the device,
    • D4). The device sends the appropriate scan codes for Num and Scroll to restore these to the previous state before the sequence was entered.
The device could from a convenience- and customer loyalty perspective provide means of automatically transmitting a URL pre-stored in the device as a stream of emulated keystrokes. The user would then just need to start its browser and press a “connect” key, which then transmits the tall and an ENTER keystroke. Alternatively, this could be made to incorporate the initial identification and authentication stage as well. In such a setting, the initial identification and authentication codes would be sent as parameters to the initial URL, e.g. https://www.acme.co./logub,gtnk?id=Alex_2285?auth=ks9Af48auzPmc AuLhjf298.
Recent years growing popularity of keychain USB memory stick devices gives that a value-added benefit could be to further integrate a memory bank as well. The device would then act as a “composite” device, both emulating a Mass Storage Device and a keyboard device. Given a setting where the device has a keypad, a single key or a biometric scanner, these can be used to unlock a normally disabled memory. Depending on the access code given, read and/or write protection can be locked and unlocked by command of the device holder.
In certain settings, it may be beneficial to supply a device that can be used for identification and authentication to more than one service. In such a setting, a device could be supplied with different usernames, codes and keys, all targeting different services. Depending on which personal identification data that was specified, the device determines which service to use. In the case of a device with biometric scanning, a set of keys can he used to select which service that the user wants to identify and authenticate itself to. Such a device could be pre-programmed by a third-party trusted source to hold, say ten different usernames, keys and codes for ten different services. Such devices having a pre-printed device issuer code (which could be an URL) printed on them could then be sold over the counter to users, who themselves sign up for the services they want to use. As a part of the registration service, the user enters the printed issuer code in a field of the registration form and moves to the field of username and password, selects the intended service number and enters the PIN (or biometrics). The service can then use the issuer code to automatically retrieve the appropriate secret code and encryption key for the selected service number.
Further, the he aspects of the present invention could be used to transmit any type of one-way information from a device held by a user to a centralized service over a network, such as an intelligent pharmaceutical packaging as described in U.S. Pat. No. 6,244,462. In such a setting additional collected data could be converted to a character stream and be sent as emulated keystrokes, thereby allowing such a device to be used with any computer, independent of brand or installed browser and further without any requirements to install any client software.
As the invention would rely on a pure one-way transmission throng keyboard emulation, an additional battery and a display would allow the device to be used in scenarios where a keyboard port is not available, where information then would be read from the screen and transferred to the terminal (or through telephone) by “manual- or verbal means”. However, in such a setting the device could not possibly yield the hill security, as the number of digits that is to be read from the display must be very limited from a practical viewpoint.
A value-added benefit for certain types of services would be the requirement of repeating human interaction, where “bots”, i.e. computers acting as humans on network services. From a practical viewpoint, whereas entering a key on terminal A or B is of little obfuscation from a real human's point of view, “bot” can obviously not physically push buttons on an external device. For group gaming sites, such as poker, this could be a real benefit, as apart from the imminent security problems, “bots” poses another plague which can be addressed with the features of the present invention.
Although not central to the present innovation, personalization of manufactured devices will be a key issue in the overall feasibility and total cost of a system deployment. In the personalization phase, open (user id) and secret information (encryption key and secret user id) is transferred to the device before being deployed to the user. A typical approach would be to insert the device into an USB port and write the data in a secure and confined environment. However, this may require a tedious and slow manual process and given that devices may be packed in wrapping or other form of packaging a different option would be to have a short-range telemetry interface, where information could be exchanged with the devices from a configuration utility. A potentially suitable way could be to fit the devices with a Radio Frequency Identification (RFID) antenna to allow them to be configured in bulk using state-of-the-art equipment. Such an approach would yield the additional benefit that the devices could be used as RFID tokens as well, suitable far applications like access control etc.
It is however always important to keep the initialization process in a confined and secured environment as secret information is transmitted in clear text by this single maneuver. Preferably, the key and code generation should be generated in the same system as the system being used to verify the access code. By security means, a “closed appliance”, i.e. a device which cannot be controlled or interrogated from the outside is preferred.
From an international perspective, the wide variety of national keyboard layouts poses somewhat of a challenge from a deployment point of view. Given that an authentication device is supposed to transmit a MIME/Base64 coded message, the nature of an USB keyboard that transmits “scan codes” rather than characters. If for example a device configured as a United States keyboard layout would be used on a computer in Germany, certain transmitted keystrokes would be interpreted incorrectly, thereby yielding a gibberish code. However, several measures can he taken to address this issue;
    • E1). The coding scheme can be changed to use characters that are common to most keyboard layouts. Where a hexadecimal coded scheme would yield characters 0.9 and a.f., a modified scheme could use the characters “bdefghijklnrtuv” and one additional character in place of 0.f.
    • E2). As a prefix to the dynamic password being sent, the device may send a known series of scan codes. The receiving application can then examine these received “reference codes” to determine which current keyboard layout is used.
    • E3). A more sophisticated host application could implement a “guesswork” scheme, where a code that is rejected can be tried using one of several known and common key mappings. An authentication device yielding characters according to a United States keyboard scheme could by a French site be translated by “guesswork”, where a list of known keyboard mappings are tried by translation if the initial verification fails.
Given that the authentication scheme relies on the fact that a changing set of codes needs to be verified against a central database, the scheme limits itself by practical means to be a one-to-one relationship only, several different sites cannot independently verify a received authentication code. By introducing a centralized arbitrator, which maintains the NVC, VC and VT values as well as the asymmetric key, the scheme can be extended to a one-to-many relationship as well. The central arbitrator would then keep track of individual identities and keys and make appropriate translations for requesting services. In a preferred setting, each site can apply to make a one-to-one mapping between a legacy username and password pair and a generated authentication code. The arbitrator could then make the appropriate translation between a verified authentication code and the requesting site's legacy username and password, The protocol between the requesting site and the arbitrator could then use PKI schemes to encrypt and sign requests being transmitted.
In settings where the device is also used in conjunction with a known client computer application in a known IT environment, the device can further be designed to allow the authentication code to be triggered and retrieved by means of a software driver. The benefit in such a setting would be that the authentication operation can be done by direct- and automatic command of the application itself. It is however important that such a setting is designed to prevent a Trojan from fraudulently retrieving authentication codes from the device. One way of securing the device in this setting can be to use a PIN in order to gain access to the device in a similar way that is performed with traditional Smart Cards. An authentication device with a keypad, a single key or biometric scanner could use these means to have the user to “approve” a requested operation.
The device can further be designed to allow a two-way scheme, such as challenge-response. A server issued challenge is then transferred through the client application and through a driver to the device, which in turn creates a response based on the challenge which is then sent back to the server application.
Although this scheme can be said to be known per se, this optional extension for the present invention can allow the authentication device to be used in a wider variety of settings. By using the standard HID protocol by the means of feature reports, the keyboard emulation feature can be used as well and no specific resident client driver needs to be installed in the computer.
In summary, the present invention describes a device and method to conveniently and securely identify and authenticate a user to a service in a network at a very low cost, even from a total cost of ownership perspective. By providing uniquely generated scrambled codes, a higher level of security can be yielded for all state-of-the-art computers, independent of brand, operating system or Internet browser, without the need to install any client computer drivers or other software components. An additional level of security is provided by the possibility to quickly and automatically provide new authentication codes by a keystroke. Services can therefore increase the number of times authentication will be requested without adding any significant obstacle for the user.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is an example of a possible embodiment of a device according to the invention.
DESCRIPTION OF THE PREFERRED EMBODIMENT
The preferred embodiment describes an identification card with authentication capabilities in the size and shape of a credit-card having an integrated keypad such as described in U.S. Pat. No. 6,616,035.
Said card is designed to be used together with a card reader with the capability to connect to a standard computer device and perform emulation to act as an external keyboard from said computer's point of view. Said reader may either provide emulation means of a standard PS2- or USB-keyboard or both. This approach would allow the reader to be connected to almost any today existing personal computer, independent of brand, operating system or Internet browser,
Further, said card has functionality to generate a unique authentication code on the command of the card holder together with a username in clear text, said username and authentication code being used in an identification and authentication procedure to a service over a network.
The authentication code includes the following fields: (The supplied field sizes in bits are for illustrational purposes only)
a. Session identification counter (16 bits)
    • This fields contains a linear counter which is incremented when the first authentication code is yielded after power up.
b. Session counter (8 bits)
    • The session counter is a volatile value that is initialized to zero at the first usage after power-up. Each time a new authentication code is yielded, this value is incremented by one.
c. Timestamp (24 bits)
    • The timestamp is a linear counter which is initiated to zero when the session identifier is incremented. The counter is incremented by a fixed frequency of approximately 5 Hz to allow unique codes to be generated at any time.
d. Secret user identity (48 bits)
    • This is just a fixed value which together with the encryption key gives the ultimate uniqueness of each authentication code. Alternatively, this field could be replaced with a fixed number that is not unique to each device. The authentication then relies on the strength of the encryption only.
e. Random number (16 bits)
    • This additional “means of stochastic” adds some additional measures against cryptanalysis, which alternatively could be implemented by the means of a hash of the fields above if a random source is not available,.
f. Checksum (16 bits)
    • This code would yield checksum of the codes above. If any data is invalid or an invalid encryption key is used, this checksum would not match. The checksum does not need to be cryptographically safe, as it is only a means for the service to determine if the received and decrypted information is correct. Further, together with the time variant codes above, this also adds some additional “means of stochastic”.
The session identifier and timestamp fields ensure that all generated codes are absolutely unique for a given secret user identity. Preferably, the receiving service should keep track of these two values in order to thwart any attempt of replay and/or phishing.
The fields concatenated yields in total 128 bits. Prior to being sent, the 128-bit package is encrypted with a stored 128 bits symmetric encryption key and is then converted to an alphanumeric format to allow it to be transferred as clear text accepted by all systems. A good candidate is the widely used MIME or Base64 encoding scheme, where 6 bits of data is packed into 7-bit ASCII characters. A 128-bit ciphertext can then be converted into 128/6=22 alphanumeric characters.
Alternatively, in order to make the scheme more internationalized, a hexadecimal coding scheme can be utilized. Each 8 bit value is converted to two keystrokes and instead of the traditional coding 0.9 and a.f, the sixteen combinations for each nibble is translated to keystrokes that are more or less common to all keyboard layouts. Such keys are “bdefghijklnrtuv”, where an additional wild-card is needed.
Although the present invention does not rely on a particular encryption scheme, key length nor the exact disposition and length of the individual fields, a good candidate is a 128 bit plaintext encrypted with the 128-bits. Advanced Encryption Standard (AES) due to its acknowledged strength, high processing speed and small footprint. Shorter key length or longer fields can easily be implemented by having a block cipher scheme.
The intended device usage is when a reliable provider issues devices to, users (which by definition are unreliable). However, in a scenario where there is a mutual level of non-trust and a non-repudiation problem could arise as a consequence of the symmetric scheme used above, asymmetric encryption could be used. In such a case, the device should have the ability to generate a key pair by its own and further have means to protect the private key from being retrieved from the device in any format whatsoever. In such an asymmetric implementation, there should be a means for the service provider to retrieve the public key and a non-repudiation conflict could therefore always be resolved in court.
The device could be adapted to allow the PIN to be changed at any time, where a common method would require the user to supply the old PIN and then enter the new one and finally confirm it. As the device does not include any visual feedback, a practical way could be that information about the progress is displayed in clear text by sending emulated keystrokes. A typical procedure may be as:
    • F1). The user presses OK and holds the key for three seconds.
    • F2). The device sends out the text “Change PIN-supply old PIN” in clear text through emulated keystrokes.
    • F3). As the user enters the PIN on the device, the device sends “*” in clear text.
    • F4). If the supplied PIN is correct, the text “Supply new PIN” is sent.
    • F5). After being entered, the text “Confirm new PIN” is sent.
    • F6). When the new PIN has been entered and verified, the new PIN is stored to replace the old.
It should be apparent that the preferred embodiment does not limit the actual implementation, design or physical appearance of the described identification and authentication device. In very low-cost applications, it could for example be desirable to combine the functionality of the above described card with the functionality of the above described reader into a single unit. An appreciated and widely accepted form factor is something that fits into a keychain. Such a device could physically have the appearance of a commonly available e “fob” or “USB memory stick”, i.e. a small device that fits directly into is USB port of a computer. In cases where the USB port of the computer is not conveniently located, an external extension cord could be provided. Although this particular device embodiment could be fitted with a keypad for entry of a PIN, it may be more practical to incorporate a small joystick or similar, where the user can enter a secret code by clicking in a given pattern, known by the user only.
Another option for the fob design could be to integrate a small fingerprint scanner integrated on the device (which would be less practical to use in a card embodiment). In such a setting, the PIN entry is replaced with the user simply placing its finger (or sweeping its finger over) a fingerprint scanner. The fingerprint scan is then matched with a pre-stored fingerprint template which is stored on the fob. In order to maintain the user's personal integrity, the device should be designed to have a one-way function, i.e. the fingerprint template could only be assigned and never retrieved from the device. By a special sequence, the device could be paired with a new fingerprint template, where a hidden switch is activated (with the top of a pen for example). The user would then have to place its finger on the scanner to retrieve several scans. If the new template is accepted, all previous codes and keys are deleted.
Independent on the physical appearance, the preferred embodiment could include a method of selecting between a plurality of pre-stored service usernames, secret codes and encryption keys. In such a setting, the device can be supplied from a trusted party, which business model relies in supplying identification and authentication devices with a number of pre-stored codes and keys in them. At the time of manufacturing, it will not be known for which services the device is going to be used. The user then purchases the devices and for each service the user signs up for, it supplies a code and a password in clear text (one for each service) accompanying the device to the service provider. The service provider can then require the trusted party to supply the secret key and user identification codes.
In a different embodiment, a traditional Smartcard and reader may be used where that Smartcard reader would have a keyboard interface rather than the conventional ISO7816 protocol implementation. For increased security and two factor authentication support, the Smartcard should have a keypad. Again, when attached as a peripheral to a computer, the computer will detect the reader as a conventional keyboard (although it is a Smartcard reader). When the card is inserted and the PIN is entered, the Smartcard reader then transmits emulated keystrokes to the computer.
Conversely, in other setups it may be more convenient to have a short-range radio link between the device and a radio receiver connected to the host computer, just like conventional wireless keyboards. Such short-range radio links can be implemented at a very low cost, given the wide availability of wireless keyboards and mice. Further, a broader acceptance can be expected by adoption of initiatives such as “Wireless USB”. However, such an authentication device would require a battery as power cannot be efficiently provided with such radio links.
Alternatively, a wireless setting can be implemented with a host-powered telemetry solution, such as RFID, where a strong Radio Frequency (RF) field is emitted by a transceiver. The portable device can then be powered by the transceiver without any need for a battery in the device. This will, however limit the usable range between the transceiver and the portable device.

Claims (17)

What is claimed is:
1. A method for generating an output code from a user device, comprising:
receiving, by the user device, an explicit command to generate the output code;
generating, by the user device in response to the explicit command, the output code using a cryptographic key, wherein generating the output code comprises:
comparing an identifier of the a holder of the user device with information identifying one or more holders of the user device, the identifier uniquely identifying the holder of the user device;
responsive to the identifier of the holder of the user device matching the information identifying one or more holders of the user device, indicating that the holder of the user device is verified; and
responsive to the holder being verified, generating a dynamic authentication code associated with an identifier of the holder of the user device;
wherein the dynamic authentication code comprises a session identifier, a session counter and a timestamp of a plurality of variant fields, and the dynamic authentication code is variant and unique from other dynamic authentication codes generated by the user device and has characteristics that provide an indicator of potentially fraudulent usage of the user device; translating the generated output code into a plurality of emulated keystrokes; and
outputting the plurality of emulated keystrokes from the user device to an input of a client device.
2. The method of claim 1, wherein the cryptographic key used in generating the output code is stored in the user device and is uniquely associated with the user device.
3. The method of claim 1, further comprising:
concatenating the identifier with the dynamic authentication code to generate a concatenated code sequence; and
applying the cryptographic key to the concatenated code sequence to generate an alphanumeric representation as the output code.
4. The method of claim 1, wherein the plurality of variant fields comprise:
a random number; and
a checksum indicating whether a valid encryption key is used to generate the dynamic authentication code.
5. The method of claim 1, wherein the identifier identifying the holder of the user device comprises at least one of:
a personal identification number;
a combination of user name and password;
a key sequence comprising a plurality of keystrokes of a keyboard;
a fingerprint of the holder of the device;
a sample of voice of the holder of the device; and
a sample of biometric scanning data from the holder of the device.
6. The method of claim 1, further comprising:
intercepting an output message comprising a plurality of keystrokes entered by the holder of the user device on a keyboard in communication with the user device; and
using the intercepted output message as the identifier of the holder.
7. A user device for providing an output code, comprising:
a computer processor for executing computer program modules; and
a non-transitory computer readable storage device storing computer program modules executable to perform steps comprising:
receiving an explicit command to generate the output code;
generating, in response to the explicit command, the output code using a cryptographic key, wherein generating the output code comprises:
comparing an identifier of the a holder of the user device with information identifying one or more holders of the user device, the identifier uniquely identifying the holder of the user device;
responsive to the identifier of the holder of the user device matching the information identifying one or more holders of the user device, indicating that the holder of the user device is verified; and
responsive to the holder being verified, generating a dynamic authentication code associated with an identifier of the holder of the user device;
wherein the dynamic authentication code comprises a session identifier, a session counter and a times-tamp timestamp of a plurality of variant fields, and the dynamic authentication code is variant and unique from other dynamic authentication codes generated by the user device and has characteristics that provide an indicator of potentially fraudulent usage of the user device;
translating the generated output code into a plurality of emulated keystrokes; and
outputting the plurality of emulated keystrokes from the user device to an input of a client device.
8. The device of claim 7, wherein the cryptographic key used in generating the output code is stored in the user device and is uniquely associated with the user device.
9. The device of claim 7, further comprising executable computer program modules for:
concatenating the identifier with the dynamic authentication code to generate a concatenated code sequence; and
applying the cryptographic key to the concatenated code sequence to generate an alphanumeric representation as the output code.
10. The device of claim 7, wherein the plurality of variant fields comprise:
a random number; and
a checksum indicating whether a valid encryption key is used to generate the dynamic authentication code.
11. The device of claim 7, wherein the identifier identifying the holder of the user device comprises at least one of:
a personal identification number;
a combination of user name and password;
a key sequence comprising a plurality of keystrokes of a keyboard;
a fingerprint of the holder of the device;
a sample of voice of the holder of the device; and
a sample of biometric scanning data from the holder of the device.
12. The method of claim 1, wherein the information identifying one or more holders of the user device is stored in a pre-determined template.
13. The method of claim 12, wherein the pre-determined template is a pre-stored fingerprint template stored on the user device and the information stored on the user device identifying a holder of the user device is based on a fingerprint associated with the holder of the user device.
14. The device of claim 7, wherein the information identifying one or more holders of the user device is stored in a pre-determined template.
15. The device of claim 14, wherein the pre-determined template is a pre-stored fingerprint template stored on the user device and the information stored on the user device identifying a holder of the user device based on a fingerprint associated with the holder of the user device.
16. A non-transitory computer readable storage device storing computer program modules executable to perform steps comprising:
receiving an explicit command to generate an output code; generating, in response to the explicit command, the output code using a cryptographic key, wherein generating the output code comprises:
comparing an identifier of the a holder of the a user device with information identifying one or more holders of the user device, the identifier uniquely identifying the holder of the user device;
responsive to the identifier of the holder of the user device matching the information identifying one or more holders of the user device, indicating that the holder of the user device is verified; and
responsive to the holder being verified, generating a dynamic authentication code associated with an identifier of the holder of the user device;
wherein the dynamic authentication code comprises a session identifier, a session counter and a timestamp of a plurality of variant fields, and the dynamic authentication code is variant and unique from other dynamic authentication codes generated by the user device and has characteristics that provide an indicator of potentially fraudulent usage of the user device; translating the generated output code into a plurality of emulated keystrokes; and
outputting the plurality of emulated keystrokes from the user device to an input of a client device.
17. The non-transitory computer readable storage device of claim 16, wherein the cryptographic key used in generating the output code is stored in the user device and is uniquely associated with the user device.
US17/186,993 2006-04-24 2021-04-22 Device and method for identification and authentication Active USRE49745E1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/186,993 USRE49745E1 (en) 2006-04-24 2021-04-22 Device and method for identification and authentication

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US74543206P 2006-04-24 2006-04-24
US74691506P 2006-05-10 2006-05-10
US80629906P 2006-06-30 2006-06-30
PCT/EP2007/053966 WO2007122224A1 (en) 2006-04-24 2007-04-23 Device and method for identification and authentication
US12/669,929 US8806586B2 (en) 2006-04-24 2007-04-23 Device and method for identification and authentication
US14/309,061 US9122860B2 (en) 2006-04-24 2014-06-19 Device and method for identification and authentication
US15/692,931 USRE48541E1 (en) 2006-04-24 2017-08-31 Device and method for identification and authentication
US17/186,993 USRE49745E1 (en) 2006-04-24 2021-04-22 Device and method for identification and authentication

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US14/309,061 Reissue US9122860B2 (en) 2006-04-24 2014-06-19 Device and method for identification and authentication

Publications (1)

Publication Number Publication Date
USRE49745E1 true USRE49745E1 (en) 2023-12-05

Family

ID=38266707

Family Applications (4)

Application Number Title Priority Date Filing Date
US12/669,929 Active 2030-06-23 US8806586B2 (en) 2006-04-24 2007-04-23 Device and method for identification and authentication
US14/309,061 Ceased US9122860B2 (en) 2006-04-24 2014-06-19 Device and method for identification and authentication
US15/692,931 Active USRE48541E1 (en) 2006-04-24 2017-08-31 Device and method for identification and authentication
US17/186,993 Active USRE49745E1 (en) 2006-04-24 2021-04-22 Device and method for identification and authentication

Family Applications Before (3)

Application Number Title Priority Date Filing Date
US12/669,929 Active 2030-06-23 US8806586B2 (en) 2006-04-24 2007-04-23 Device and method for identification and authentication
US14/309,061 Ceased US9122860B2 (en) 2006-04-24 2014-06-19 Device and method for identification and authentication
US15/692,931 Active USRE48541E1 (en) 2006-04-24 2017-08-31 Device and method for identification and authentication

Country Status (7)

Country Link
US (4) US8806586B2 (en)
EP (2) EP2011052B1 (en)
JP (1) JP5268889B2 (en)
CN (1) CN101438291B (en)
DK (2) DK2011052T3 (en)
RU (1) RU2469391C2 (en)
WO (1) WO2007122224A1 (en)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007014074A1 (en) 2005-07-21 2007-02-01 Clevx, Llc Memory lock system
CN101438291B (en) * 2006-04-24 2012-11-21 Cypak股份公司 Device and method for identification and authentication
US7570167B2 (en) * 2006-06-30 2009-08-04 Gene Fein RFID ionosphere
EP2092452A2 (en) * 2006-12-14 2009-08-26 SAGEM Sécurité Peripheral security device
US8384516B2 (en) * 2007-01-12 2013-02-26 Voorhuis Plc, Limited Liability Company System and method for radio frequency identifier voice signature
US20110101093A1 (en) * 2007-08-19 2011-05-05 Yubico Ab Device and method for generating dynamic credit card data
US20120131655A1 (en) * 2009-05-11 2012-05-24 Emue Holdings Pty Ltd. User Authentication Device and Method
JP5210966B2 (en) * 2009-05-22 2013-06-12 株式会社日立製作所 Biometric authentication device and biometric authentication method
US8776215B2 (en) 2009-11-06 2014-07-08 Microsoft Corporation Credential device pairing
EP2339493A1 (en) * 2009-12-22 2011-06-29 Gemalto SA Authenticating human interface device
US20110191416A1 (en) * 2010-02-01 2011-08-04 Google, Inc. Content Author Badges
US20120102324A1 (en) * 2010-10-21 2012-04-26 Mr. Lazaro Rodriguez Remote verification of user presence and identity
FR2971350B1 (en) * 2011-02-08 2015-08-21 Morpho METHOD AND DEVICE FOR CONNECTING TO A REMOTE SERVICE FROM A HOST DEVICE
KR101239297B1 (en) 2011-07-28 2013-03-05 한국전자통신연구원 System for protecting information and method thereof
WO2013036962A1 (en) 2011-09-08 2013-03-14 Google Inc. System and method for confirming authorship of documents
CN103917973A (en) 2011-09-08 2014-07-09 谷歌公司 System and method for confirming authorship of documents
US9306743B2 (en) * 2012-08-30 2016-04-05 Texas Instruments Incorporated One-way key fob and vehicle pairing verification, retention, and revocation
US11210648B2 (en) 2012-10-17 2021-12-28 Royal Bank Of Canada Systems, methods, and devices for secure generation and processing of data sets representing pre-funded payments
US11080701B2 (en) 2015-07-02 2021-08-03 Royal Bank Of Canada Secure processing of electronic payments
CA2830260C (en) 2012-10-17 2021-10-12 Royal Bank Of Canada Virtualization and secure processing of data
US9710628B2 (en) * 2012-12-21 2017-07-18 Nokia Technologies Oy Unlocking an apparatus
US20140189794A1 (en) * 2012-12-28 2014-07-03 Richard A. Ferdinand System and method for utilizing and replacing anonymous recognition cards
US10812955B2 (en) 2013-01-05 2020-10-20 Brian G Agee Generation of signals with unpredictable transmission properties for wireless M2M networks
US9648444B2 (en) 2014-01-06 2017-05-09 Brian G. Agee Physically secure digital signal processing for wireless M2M networks
US9251396B2 (en) * 2013-01-29 2016-02-02 Diamond Fortress Technologies, Inc. Touchless fingerprinting acquisition and processing application for mobile devices
EP2967150A2 (en) * 2013-03-15 2016-01-20 Altria Client Services LLC An electronic smoking article
US9350550B2 (en) 2013-09-10 2016-05-24 M2M And Iot Technologies, Llc Power management and security for wireless modules in “machine-to-machine” communications
US9100175B2 (en) 2013-11-19 2015-08-04 M2M And Iot Technologies, Llc Embedded universal integrated circuit card supporting two-factor authentication
US10498530B2 (en) 2013-09-27 2019-12-03 Network-1 Technologies, Inc. Secure PKI communications for “machine-to-machine” modules, including key derivation by modules and authenticating public keys
RU2560810C2 (en) * 2013-11-01 2015-08-20 Илья Самуилович Рабинович Method and system for protecting information from unauthorised use (versions thereof)
US10700856B2 (en) 2013-11-19 2020-06-30 Network-1 Technologies, Inc. Key derivation for a module using an embedded universal integrated circuit card
US9680872B1 (en) 2014-03-25 2017-06-13 Amazon Technologies, Inc. Trusted-code generated requests
US9854001B1 (en) * 2014-03-25 2017-12-26 Amazon Technologies, Inc. Transparent policies
CN103916725B (en) * 2014-03-27 2018-01-19 上海华博信息服务有限公司 A kind of bluetooth earphone
US10154082B2 (en) 2014-08-12 2018-12-11 Danal Inc. Providing customer information obtained from a carrier system to a client device
US9461983B2 (en) * 2014-08-12 2016-10-04 Danal Inc. Multi-dimensional framework for defining criteria that indicate when authentication should be revoked
US9454773B2 (en) 2014-08-12 2016-09-27 Danal Inc. Aggregator system having a platform for engaging mobile device users
CN107004190A (en) 2014-10-10 2017-08-01 加拿大皇家银行 System for handling electronic transaction
US11354651B2 (en) 2015-01-19 2022-06-07 Royal Bank Of Canada System and method for location-based token transaction processing
WO2016115620A1 (en) 2015-01-19 2016-07-28 Royal Bank Of Canada Secure processing of electronic payments
US9853977B1 (en) 2015-01-26 2017-12-26 Winklevoss Ip, Llc System, method, and program product for processing secure transactions within a cloud computing system
US11599879B2 (en) 2015-07-02 2023-03-07 Royal Bank Of Canada Processing of electronic transactions
WO2017007767A1 (en) * 2015-07-08 2017-01-12 Alibaba Group Holding Limited Method and device for authentication using dynamic passwords
CN106341372A (en) * 2015-07-08 2017-01-18 阿里巴巴集团控股有限公司 Terminal authentication processing method and device, and terminal authentication method, device and system
DE102015112891A1 (en) * 2015-08-05 2017-02-09 Iseconsult Device and method for secure storage, management and provision of authentication information
US9996730B2 (en) * 2016-03-18 2018-06-12 Toyota Motor Engineering & Manufacturing North America, Inc. Vision-assist systems adapted for inter-device communication session
DE102016213104A1 (en) 2016-07-18 2018-01-18 bitagentur GmbH & Co. KG Token-based authentication with signed message
CN109034815B (en) * 2017-06-09 2021-06-18 创新先进技术有限公司 Method and device for performing security verification based on biological characteristics
JP7185493B2 (en) * 2018-11-05 2022-12-07 株式会社Pfu emulator
US11824761B1 (en) * 2018-11-26 2023-11-21 Xilinx, Inc. Identifying alignment markers using partial correlators
US11698957B2 (en) 2019-12-18 2023-07-11 Yubico Ab Pre-registration of authentication devices

Citations (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000042491A1 (en) 1999-01-15 2000-07-20 Rainbow Technologies, Inc. Usb-compliant personal key with integral input and output devices
US6374145B1 (en) 1998-12-14 2002-04-16 Mark Lignoul Proximity sensor for screen saver and password delay
US20030046588A1 (en) 2001-09-05 2003-03-06 Gliniecki Gregory James Ultrasonic sensor component signal communication to standalone universal serial bus keyboard emulator for entry/exit computer proximity determination
US20030048173A1 (en) * 2001-09-06 2003-03-13 Satoshi Shigematsu Authentication method, authentication system, and authentication token
US6704824B1 (en) 1999-07-27 2004-03-09 Inline Connection Corporation Universal serial bus adapter with automatic installation
US20040075642A1 (en) 2002-08-07 2004-04-22 Canon Information Systems Research Aust. Pty Ltd User input device
US20040111631A1 (en) 1999-09-02 2004-06-10 Kocher Paul C. Using smartcards or other cryptographic modules for enabling connected devices to access encrypted audio and visual content
US20040123127A1 (en) 2002-12-18 2004-06-24 M-Systems Flash Disk Pioneers, Ltd. System and method for securing portable data
US20050091367A1 (en) * 2003-10-23 2005-04-28 Nokia Corporation System and method for tracking content communicated over networks
US20050109841A1 (en) 2003-11-17 2005-05-26 Ryan Dennis J. Multi-interface compact personal token apparatus and methods of use
US20050182971A1 (en) 2004-02-12 2005-08-18 Ong Peng T. Multi-purpose user authentication device
US20050193199A1 (en) * 2004-02-13 2005-09-01 Nokia Corporation Accessing protected data on network storage from multiple devices
US7080244B2 (en) 2003-03-24 2006-07-18 Intel Corporation System and method for configuring hardware devices using a menu for platforms with EFI and legacy option-ROMs
US20060208066A1 (en) 2003-11-17 2006-09-21 Dpd Patent Trust RFID token with multiple interface controller
US20060279413A1 (en) 2005-03-28 2006-12-14 Sirit Technologies, Inc. Radio frequency identification device
WO2007023473A2 (en) 2005-08-25 2007-03-01 Idtek Track-And-Trace Sa Element combining a usb key and an rfid reader
EP1783660A2 (en) 2005-10-31 2007-05-09 Huawei Technologies Co., Ltd. Memory card and terminal equipment incorporating the same
US7412722B1 (en) 2002-08-08 2008-08-12 Verizon Laboratories Inc. Detection of softswitch attacks
US20080192933A1 (en) 2007-02-12 2008-08-14 Oberthur Card Systems Sa Portable electronic entity and communication method
EP2063400A1 (en) 2007-11-23 2009-05-27 Gemalto SA Virtual security access module
JP2009187502A (en) 2008-02-01 2009-08-20 Hideki Watanabe Ticket selling and event management system using rfic chip built-in usb compact device
US20100093334A1 (en) 2006-11-07 2010-04-15 Oberthur Card Systems Sa Portable electronic entity and method for personalization of such an electronic entity
FR2938094A1 (en) 2008-11-03 2010-05-07 Neowave USB KEY WITH NON-CONTACT DRIVE FUNCTIONS AND NON-CONTACT CHIP CARD EMULATION
US20100191951A1 (en) 2009-01-26 2010-07-29 Assa Abloy Ab Provisioned firmware updates using object identifiers
US20120265988A1 (en) 2011-04-14 2012-10-18 Yubico Ab Dual interface device for access control and a method therefor
US8806586B2 (en) * 2006-04-24 2014-08-12 Yubico Inc. Device and method for identification and authentication

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4799258A (en) 1984-02-13 1989-01-17 National Research Development Corporation Apparatus and methods for granting access to computers
US4916738A (en) * 1986-11-05 1990-04-10 International Business Machines Corp. Remote access terminal security
JPH0799497B2 (en) * 1990-12-14 1995-10-25 インターナショナル・ビジネス・マシーンズ・コーポレイション Device and method for controlling the use of software
RU94009615A (en) * 1994-03-21 1996-08-20 К.А. Гурштейн Device for input of alphanumeric data
US5778071A (en) 1994-07-12 1998-07-07 Information Resource Engineering, Inc. Pocket encrypting and authenticating communications device
JPH08263438A (en) * 1994-11-23 1996-10-11 Xerox Corp Distribution and use control system of digital work and access control method to digital work
US5604801A (en) 1995-02-03 1997-02-18 International Business Machines Corporation Public key data communications system under control of a portable security device
US5887131A (en) 1996-12-31 1999-03-23 Compaq Computer Corporation Method for controlling access to a computer system by utilizing an external device containing a hash value representation of a user password
SE508758C2 (en) 1997-02-19 1998-11-02 Jakob Ehrensvaerd Recording device
US7269844B2 (en) * 1999-01-15 2007-09-11 Safenet, Inc. Secure IR communication between a keypad and a token
ATE391323T1 (en) 2000-02-18 2008-04-15 Cypak Ab METHOD AND DEVICE FOR IDENTIFICATION AND AUTHENTICATION
JP2003178033A (en) * 2001-09-06 2003-06-27 Nippon Telegr & Teleph Corp <Ntt> Authentication method, authentication system and authentication token
JP3844452B2 (en) * 2002-06-21 2006-11-15 日本電信電話株式会社 Biometric authentication system and authentication token
US20040098596A1 (en) 2002-11-15 2004-05-20 Rainbow Technologies, Inc. Driverless USB security token
US7669236B2 (en) * 2004-11-18 2010-02-23 Biogy, Inc. Determining whether to grant access to a passcode protected system
DE10359680A1 (en) 2003-12-18 2005-07-14 Giesecke & Devrient Gmbh Method for enabling access to a computer system or to a program

Patent Citations (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374145B1 (en) 1998-12-14 2002-04-16 Mark Lignoul Proximity sensor for screen saver and password delay
WO2000042491A1 (en) 1999-01-15 2000-07-20 Rainbow Technologies, Inc. Usb-compliant personal key with integral input and output devices
US6704824B1 (en) 1999-07-27 2004-03-09 Inline Connection Corporation Universal serial bus adapter with automatic installation
US20040111631A1 (en) 1999-09-02 2004-06-10 Kocher Paul C. Using smartcards or other cryptographic modules for enabling connected devices to access encrypted audio and visual content
US20030046588A1 (en) 2001-09-05 2003-03-06 Gliniecki Gregory James Ultrasonic sensor component signal communication to standalone universal serial bus keyboard emulator for entry/exit computer proximity determination
US20030048173A1 (en) * 2001-09-06 2003-03-13 Satoshi Shigematsu Authentication method, authentication system, and authentication token
US20040075642A1 (en) 2002-08-07 2004-04-22 Canon Information Systems Research Aust. Pty Ltd User input device
US7412722B1 (en) 2002-08-08 2008-08-12 Verizon Laboratories Inc. Detection of softswitch attacks
US20040123127A1 (en) 2002-12-18 2004-06-24 M-Systems Flash Disk Pioneers, Ltd. System and method for securing portable data
US7080244B2 (en) 2003-03-24 2006-07-18 Intel Corporation System and method for configuring hardware devices using a menu for platforms with EFI and legacy option-ROMs
US20050091367A1 (en) * 2003-10-23 2005-04-28 Nokia Corporation System and method for tracking content communicated over networks
US20060208066A1 (en) 2003-11-17 2006-09-21 Dpd Patent Trust RFID token with multiple interface controller
WO2005050384A2 (en) 2003-11-17 2005-06-02 Dpd Patent Trust Ltd. Multi-interface compact personal token apparatus and methods of use
US20050109841A1 (en) 2003-11-17 2005-05-26 Ryan Dennis J. Multi-interface compact personal token apparatus and methods of use
US20050182971A1 (en) 2004-02-12 2005-08-18 Ong Peng T. Multi-purpose user authentication device
US20050193199A1 (en) * 2004-02-13 2005-09-01 Nokia Corporation Accessing protected data on network storage from multiple devices
US20060279413A1 (en) 2005-03-28 2006-12-14 Sirit Technologies, Inc. Radio frequency identification device
WO2007023473A2 (en) 2005-08-25 2007-03-01 Idtek Track-And-Trace Sa Element combining a usb key and an rfid reader
EP1783660A2 (en) 2005-10-31 2007-05-09 Huawei Technologies Co., Ltd. Memory card and terminal equipment incorporating the same
US8806586B2 (en) * 2006-04-24 2014-08-12 Yubico Inc. Device and method for identification and authentication
USRE48541E1 (en) * 2006-04-24 2021-04-27 Yubico Ab Device and method for identification and authentication
US20100093334A1 (en) 2006-11-07 2010-04-15 Oberthur Card Systems Sa Portable electronic entity and method for personalization of such an electronic entity
US20080192933A1 (en) 2007-02-12 2008-08-14 Oberthur Card Systems Sa Portable electronic entity and communication method
EP2063400A1 (en) 2007-11-23 2009-05-27 Gemalto SA Virtual security access module
JP2009187502A (en) 2008-02-01 2009-08-20 Hideki Watanabe Ticket selling and event management system using rfic chip built-in usb compact device
FR2938094A1 (en) 2008-11-03 2010-05-07 Neowave USB KEY WITH NON-CONTACT DRIVE FUNCTIONS AND NON-CONTACT CHIP CARD EMULATION
US20100191951A1 (en) 2009-01-26 2010-07-29 Assa Abloy Ab Provisioned firmware updates using object identifiers
US20120265988A1 (en) 2011-04-14 2012-10-18 Yubico Ab Dual interface device for access control and a method therefor

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
International Search Report and Written Opinion, PCT Application No. PCT/EP2012/056881, Jul. 17, 2012, 13 pages.
PCT International Search Report, PCT Application No. PCT/EP2007/053966, Aug. 2, 2007, 2 pages.
PCT Written Opinion, PCT Application No. PCT/EP2007/053966, Aug. 2, 2007, 10 pages.
United States Advisory Action, U.S. Appl. No. 12/669,929, Sep. 25, 2013, 3 pages.
United States Office Action, U.S. Appl. No. 12/669,929, Aug. 27, 2012, 13 pages.
United States Office Action, U.S. Appl. No. 12/669,929, Jun. 5, 2013, 13 pages.
United States Office Action, U.S. Appl. No. 12/669,929, Nov. 6, 2013, 14 pages.

Also Published As

Publication number Publication date
RU2008146049A (en) 2010-05-27
RU2469391C2 (en) 2012-12-10
JP2009534768A (en) 2009-09-24
US8806586B2 (en) 2014-08-12
WO2007122224A1 (en) 2007-11-01
US9122860B2 (en) 2015-09-01
EP3457307A1 (en) 2019-03-20
DK3457307T3 (en) 2019-09-23
EP2011052B1 (en) 2018-11-14
USRE48541E1 (en) 2021-04-27
US20100199334A1 (en) 2010-08-05
CN101438291B (en) 2012-11-21
EP2011052A1 (en) 2009-01-07
DK2011052T3 (en) 2019-02-25
EP3457307B1 (en) 2019-08-14
CN101438291A (en) 2009-05-20
JP5268889B2 (en) 2013-08-21
US20150012981A1 (en) 2015-01-08

Similar Documents

Publication Publication Date Title
USRE49745E1 (en) Device and method for identification and authentication
US8214888B2 (en) Two-factor USB authentication token
CN111884806B (en) System and hardware authentication token for authenticating a user or securing interactions
US8739266B2 (en) Universal authentication token
EP3807831B1 (en) Method and system to create a trusted record or message and usage for a secure activation or strong customer authentication
EP2252961B1 (en) A strong authentication token generating one-time passwords and signatures upon server credential verification
EP2034458A2 (en) One-time passwords
US20080046988A1 (en) Authentication Method
US20100180120A1 (en) Information protection device
EP3994906A1 (en) Method for securing an execution of a local application and corresponding first and second user device and system
JP2008234096A (en) Method of generating one-time password (otp) of time synchronization system by using ic card, authentication method for one-time password, ic card system, interface device, and ic card
JP4904180B2 (en) Thin client system, server used therefor, client terminal, security card and data communication method
US20050283633A1 (en) Method and system for securing a device
WO2021106381A1 (en) Information processing device, information processing method, authentication device, authentication method, authentication system, authentication method in authentication system, and computer program
JP4895288B2 (en) Authentication system and authentication method
JP2009020783A (en) Authentication system and authentication method using noncontact ic and personal digital assistant
EP1547298A1 (en) Systems and methods for secure authentication of electronic transactions

Legal Events

Date Code Title Description
FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

AS Assignment

Owner name: YUBICO AB, SWEDEN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:YUBICO INC.;REEL/FRAME:064512/0645

Effective date: 20200131

Owner name: YUBICO INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:EHRENSVAERD, JAKOB;EHRENSVAERD, STINA;REEL/FRAME:064512/0642

Effective date: 20140322

AS Assignment

Owner name: YUBICO AB, SWEDEN

Free format text: CHANGE OF NAME;ASSIGNOR:ACQ BURE AB;REEL/FRAME:065724/0321

Effective date: 20230920

Owner name: ACQ BURE AB, SWEDEN

Free format text: MERGER;ASSIGNOR:YUBICO AB;REEL/FRAME:065713/0908

Effective date: 20230920