Offline PIN validation with DES
First Claim
1. In a multi-terminal system, a method of offline personal authentication using an authentication tree with an authentication tree function comprising a one-way function, said method employing memory cards issued to users of the system and each user being issued a personal identification number, each of said memory cards having stored thereon a personal key and an index position number representing the tree path for the user to which the card is issued, said method comprising the steps of:
- calculating an authentication parameter as a function of a personal key read from a user'"'"'s card, a personal identification number entered by a user at a terminal being used, and a global secret key stored in the terminal being used, said global secret key being a common secret key stored at every terminal said calculating an authentication parameter step further comprising the steps of;
calculating an encrypted personal identification number (PIN), denoted EPIN, by the equation
space="preserve" listing-type="equation">EPIN=E.sub.KGb1 (E.sub.PIN (ID)), where KGb1 is a global secret key stored in each terminal and ID is a user identifier, andcalculating an authentication parameter AP by the equation
space="preserve" listing-type="equation">AP=RightN[E.sub.KP⊕
EPIN (ID)⊕
ID], where the symbol ⊕
is the Exclusive OR operation and "RightN" is a function that extracts the rightmost N bits in the binary variable denoted by the argument of the function, wherein said binary variable is greater than N bitsmapping the calculated authentication parameter to a verification value using said index position number in said one-way function to the root of said authentication tree,comparing the verification value obtained by mapping the calculated authentication parameter with a global verification value of reference stored at the terminal, said global verification value being a common verification value stored at every terminal andenabling said system if the comparison of the versification value obtained by mapping with the global verification value of reference is favorable.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of offline personal authentication in a multi-terminal system uses a secret user PIN, a secret key and other nonsecret data stored on a customer memory card and a nonsecret validation value stored in each terminal connected in a network. The technique of "tree authentication" is used which employs an authentication tree with an authentication tree function comprising a one-way function. An authentication parameter is calculated as a function of a personal key and a user identifier read from the user'"'"'s card and the PIN entered by the user. The calculated authentication parameter is mapped to a verification value using the one-way function to the root of the authentication tree. The verification value obtained by mapping the calculated authentication parameter is then compared with a global verification value stored at the terminal. If the comparison is favorable, the system is enabled for the user; otherwise, the user is rejected.
-
Citations
8 Claims
-
1. In a multi-terminal system, a method of offline personal authentication using an authentication tree with an authentication tree function comprising a one-way function, said method employing memory cards issued to users of the system and each user being issued a personal identification number, each of said memory cards having stored thereon a personal key and an index position number representing the tree path for the user to which the card is issued, said method comprising the steps of:
-
calculating an authentication parameter as a function of a personal key read from a user'"'"'s card, a personal identification number entered by a user at a terminal being used, and a global secret key stored in the terminal being used, said global secret key being a common secret key stored at every terminal said calculating an authentication parameter step further comprising the steps of; calculating an encrypted personal identification number (PIN), denoted EPIN, by the equation
space="preserve" listing-type="equation">EPIN=E.sub.KGb1 (E.sub.PIN (ID)),where KGb1 is a global secret key stored in each terminal and ID is a user identifier, and calculating an authentication parameter AP by the equation
space="preserve" listing-type="equation">AP=RightN[E.sub.KP⊕
EPIN (ID)⊕
ID],where the symbol ⊕
is the Exclusive OR operation and "RightN" is a function that extracts the rightmost N bits in the binary variable denoted by the argument of the function, wherein said binary variable is greater than N bitsmapping the calculated authentication parameter to a verification value using said index position number in said one-way function to the root of said authentication tree, comparing the verification value obtained by mapping the calculated authentication parameter with a global verification value of reference stored at the terminal, said global verification value being a common verification value stored at every terminal and enabling said system if the comparison of the versification value obtained by mapping with the global verification value of reference is favorable. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
- 6. The method of offline personal authentication as recited in claim 5 wherein the values of Ci are calculated by the equation
- space="preserve" listing-type="equation">C.sub.i =E.sub.Ki E.sub.Ki-1 . . . E.sub.K1 (Q) for i=1,2, . . . ,m
where Ki =KA if Xi =0 and Ki =KB if Xi =1 and X1, X2, X3, . . . , Xm denote binary bits stored on the user'"'"'s card which represent said index position number.
-
-
7. The method of offline personal authentication as recited in claim 1 wherein said user identifier ID is additionally stored on the user'"'"'s card, said method further comprising the step of checking the user identifier ID read from the user'"'"'s card against a list to determine if the ID is invalid, and if it is, rejecting the user.
-
8. The method of offline personal authentication as recited in claim 7 wherein after calculating the authentication parameter AP, performing the steps of checking a list to determine if the authentication parameter is invalid and, if it is, rejecting the user.
Specification