Method of enabling a server to authorize access to a service...

Electrical computers and digital processing systems: support – System access control based on user identification by...

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C713S170000, C713S152000, C713S152000, C380S249000

Reexamination Certificate

active

06393567

ABSTRACT:

The present invention relates to a method of enabling a server to authorize access to a service on the basis of portable devices having electronic microcircuits, e.g. devices of the smart card type.
In the nineteen-seventies, the advent of the concept of a card having electronic microcircuits, now commonly referred to as a “smart card” or a “chip card”, and incorporating in particular a microprocessor and a non-volatile memory of the EEPROM type, opened up numerous applications, in particular for use by the general public, with the appearance of card-operated public telephones, and then banking terminals taking advantage of the facilities offered by the microprocessors incorporated in such cards.
In general, such a card can be used as a mere access key for obtaining access to a service, whether such access be customized or otherwise, and whether it be secure or otherwise, and/or as a means for validating information transfer, e.g. between two cards, between a card and a terminal, or between two terminals, whether such information is confidential or otherwise, and whether the transfer takes place remotely or otherwise.
In most of the intended applications, access to a service or the transfer of information is preceded by executing an identification protocol of the one-way type or of the both-way type, which protocol takes into account at least one item of specific information that is prerecorded in the memory of the card.
The specific information taken into account in an identification protocol may be a confidential code or “PIN” code which is allocated to the bearer of the card and which enables the microprocessor of the card to authenticate said bearer before authorizing the bearer to access the requested service, as in the case of a banking transaction, for example.
The specific information taken into account in an identification protocol may also be a code specific to the service requested by the bearer of the card.
In which case, the code contained in the card is transmitted remotely or otherwise to a server for identification purposes. The identification protocol is either one-way, in which case the server authorizes access to the requested service merely on the basis of recognizing the code transmitted by the card, or both-way, in which case the server authorizes access to the requested service after various codes have been interchanged, which codes are computed separately in the card and in the server, such codes taking into account a secret key and/or random numbers, for example.
The codes computed separately in the card and in the server may be cryptograms, but each cryptogram transmitted by the card to the server must be accompanied by synchronization information to enable the server to authenticate the cryptogram transmitted by the card. The synchronization information may be a time stamp, but that requires either the contents of a counter, or a time base in the card, which time base must be synchronized with the time base of the server. Such solutions are described in particular in Documents U.S. Pat. No. 4,601,011 and EP-A-0 451 056.
Such solutions suffer, in particular, from the drawback of being complex and difficult to implement.
An object of the invention is to design an identification protocol that is simple and easy to implement, while guaranteeing a degree of security that is high enough to protect it from fraudulent users or “attackers”.
To this end, the invention provides a method of enabling a server to authorize access to a service from portable devices having electronic microcircuits, e.g., devices of the smart card type, said method being characterized in that it consists of initializing each portable device and the server, and, when a user requests access from a portable device, the method consists, in a synchronization first step, of:
causing the portable device to transmit at least a first identity sequence containing at least an identity number N
c
allocated to the portable device and a cryptogram C
i
computed by processing circuits of the portable device, this cryptogram C
i
being the result of an iterative algorithm A
2
being executed that is based on a non-invertible secret-key function F2, and being such that its value is computed at least on the basis of the value of the preceding cryptogram C
i−1
;
transmitting the first identity sequence to the server via a terminal;
causing processing circuits of the server to use the same iterative algorithm A
2
as the algorithm used by the portable devices to compute successive cryptograms Q
1
, Q
2
, . . . on the basis of a cryptogram Q
0
stored in the server and whose value is equal to the value of the cryptogram C
i−n
which was contained in the most recent identity sequence transmitted by the portable device to the server, until a cryptogram Q
n
is found whose value is equal to the value of the cryptogram C
i
contained in the first identity sequence; and
giving a new value to the cryptogram Q
0
stored in the server, which new value is equal to the value of the cryptogram C
i
;
and in that the method consists, in an authentication second step, of causing the access request to be validated by the server only if at least the synchronization first step has been satisfied.
To reinforce the security of the identification protocol, and according to another characterisic of the invention, in the authentication second step and once the synchronization step has been satisfied, the method consists of:
causing the portable device to transmit a second identity sequence containing at least the identity number N
c
allocated to the portable device and the cryptogram C
i+1
computed by the portable device on the basis of the cryptogram C
i
contained in the first identity sequence and stored in the portable device;
transmitting the second identity sequence to the server via the terminal;
causing the server to execute the algorithm A
2
so as to compute the cryptogram Q
1
on the basis of the value of the cryptogram Q
0
stored in the server;
causing the access request to be validated by the server only if the values of the two cryptograms C
i+1
and Q
1
are equal; and
giving a new value to the cryptogram Q
0
stored in the server, which new value is equal to the value of the cryptogram C
i+1
.
The fact that two identity sequences must be transmitted successively by the portable device before the server authorizes access makes it possible to reinforce its security against attackers.
In general, during the synchronization step and during the authentication step, the methods also consists of:
causing each portable device to compute and store a new cryptogram C
i+1
when it transmits an identity sequence containing the previously computed cryptogram C
i
; and
causing the algorithms A
2
for computing the cryptograms of the portable devices and of the server to take into account confidential data G
c
allocated to the portable device by an authorized person.
Thus, on each request for access to the server from a portable device, the server manages an identification protocol which comprises a synchronization step and an authentication step.
The identification protocol can run only if each portable device and the server have been initialized, i.e. only if they contain the information necessary to be able to execute the identification protocol.
In general, initializing each portable device consists of storing at least the following items of information in a non-volatile memory of the EEPROM type in the portable device:
an identity number N
c
allocated to the portable device;
confidential data G
c
allocated to the portable device; and
the value of an initial cryptogram C
0
to enable the portable device to be able then to compute the successive cryptograms C
1
, C
2
, . . .
During initialization of the portable device, the method may consist of diversifying or varying the confidential data G
c
allocated to each portable device on the basis of base data, and on the basis of an algorithm A
1
corresponding to a function F1 having a secret key K
s
, the base data being, for example,

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method of enabling a server to authorize access to a service... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method of enabling a server to authorize access to a service..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method of enabling a server to authorize access to a service... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2848213

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.