Patent ID: 8645708

Claim:
An authentication system for authenticating an individual comprising: a portable device, wherein the portable device includes: a first clock for generating a first time-dependent dynamic variable; memory for storing a predetermined static variable; and software for utilizing the first time-dependent dynamic variable and the predetermined static variable, wherein the software is configured to calculate a time-based challenge and a response in accordance with a first and second pre-determined algorithm, wherein the first pre-determined algorithm is used to compute the time-based challenge without utilizing a personal identification number (PIN) and the second pre-determined algorithm is used to compute the response; and a decryption node, wherein the decryption node includes: a second clock for generating a second time dependent dynamic variable; wherein the decryption node is configured to perform the following steps: receiving an identification of the portable device or an identification of an operator of the portable device; receiving the challenge and the response displayed by the portable device during the selected time interval; storing the predetermined static variable of the portable device; retrieving the predetermined static variable using the received identification; storing a last event first dynamic variable of the portable device; retrieving the last event first dynamic variable corresponding to the portable device; storing a last event receiver time of the portable device; retrieving the last event receiver time corresponding to the portable device; utilizing the second time dependent dynamic variable, the predetermined static variable, the last event first dynamic variable, the last event receiver time, and the challenge to calculate at the selected time interval an approximate value of the first time dependent dynamic variable and a presumed response in accordance with a third predetermined algorithm; comparing the presumed response with the response; storing the last event receiver time; and storing the last event first dynamic variable.