A method for authenticating a request for access to a resource, comprising: receiving, by an authentication server, a request for authentication that includes an identifier that corresponds to a token and a first One Time Password generated by the token, wherein the first One Time Password is based upon a first count at the token and a secret shared between the token and the authentication server; retrieving, at the authentication server, the secret and a second count that correspond to the token based upon the received identifier; calculating, by the authentication server, a second One Time Password based upon the retrieved second count and the retrieved secret; comparing, by the authentication server, the calculated second One Time Password with the received first One Time Password; determining, by the authentication server, that the calculated second One Time Password does not correspond to the received first One Time Password and, in response, repeatedly a) incrementing the second count, b) recalculating the calculated second One Time Password based upon the incremented second count and the retrieved secret, and c) comparing the recalculated second One Time Password with the received first One Time Password at least until determining that the recalculated second One Time Password corresponds to the received first One Time Password or at least until repeating the incrementing and recalculating a predetermined number of times where the recalculated second One Time Password does not correspond to the received first One Time Password; and determining, by the authentication server, that the request is authenticated in response to determining that the recalculated second One Time Password corresponds to the received first One Time Password or determining that the request is not authenticated in response to repeating the incrementing and recalculating the predetermined number of times where the recalculated second One Time Password does not correspond to the received first One Time Password. receiving, by an authentication server, a request for authentication that includes an identifier that corresponds to a token and a first One Time Password generated by the token, wherein the first One Time Password is based upon a first count at the token and a secret shared between the token and the authentication server; retrieving, at the authentication server, the secret and a second count that correspond to the token based upon the received identifier; calculating, by the authentication server, a second One Time Password based upon the retrieved second count and the retrieved secret; calculating, by the authentication server, a second One Time Password based upon the retrieved second count and the retrieved secret; comparing, by the authentication server, the calculated second One Time Password with the received first One Time Password; determining, by the authentication server, that the calculated second One Time Password does not correspond to the received first One Time Password and, in response, repeatedly a) incrementing the second count, b) recalculating the calculated second One Time Password based upon the incremented second count and the retrieved secret, and c) comparing the recalculated second One Time Password with the received first One Time Password at least until determining that the recalculated second One Time Password corresponds to the received first One Time Password or at least until repeating the incrementing and recalculating a predetermined number of times where the recalculated second One Time Password does not correspond to the received first One Time Password; and determining, by the authentication server, that the request is authenticated in response to determining that the recalculated second One Time Password corresponds to the received first One Time Password or determining that the request is not authenticated in response to repeating the incrementing and recalculating the predetermined number of times where the recalculated second One Time Password does not correspond to the received first One Time Password.