Patent ID: 9614847
Date: 2017-04-04
CPC Classifications: G06F,H04L

Claim:
1. A computer implemented method for authenticating a user, wherein the method comprises: receiving, by a private key generator (PKG), an authentication code from an application server seeking authentication of the user; computing, by the PKG, a private key of the user in real time based on a user identity (ID) of the user and a master secret key of the PKG; ascertaining, by the PKG, a verification code based on the private key of the user and a verification timestamp, wherein the verification timestamp indicates a time at which the ascertaining of the verification code was initiated; comparing, by the PKG, the authentication code with the verification code; authenticating, by the PKG, the user based on the comparison; and wherein the computing comprises: obtaining a public key of the user based on the user ID; and performing a scalar multiplication between the public key and the master secret key of the PKG, wherein the master secret key is a random integer selected from within a range of one to one less than a prime number(p), wherein the public key of the user is a point on a super-singular elliptic curve, and wherein the super-singular elliptic curve is determined based on the prime number, and wherein the prime number (p) is based on a first variable (c) and Nth power of two, wherein N is an integer, and wherein base two logarithm of the first variable (c) has a minimum value greater than zero and a maximum value equal to half the value of the N given by the equation log2c≦(½)N, and wherein the prime number (p) is congruent to 3 (mod 4), and wherein bit length of the prime number (p) is of at least 512 bits.