System and method for performing mutual authentications between security tokens
OwnerYves Audebert, Wu Weninventors
Life of this patent
Estimating the term…
Abstract
This patent describes a data processing system and method for performing mutual authentications between two security tokens by generation of a common cryptographic key. The common cryptographic key is generated using unique identifiers associated with each security token that diversify a common master key. The generation process incorporates a message digest function such as SHA-1 and an XOR operator to arrive at the common symmetric key.
Claims24
A data processing system for generating at least one unique base key comprising a cryptographic device including at least one master group key, at least one security token including a unique identifier, and communication means for exchanging data between said cryptographic device and said token, wherein
- said cryptographic device includes logic operator means combining said at least one master group key with said unique identifier received from said token through said communication means, producing said at least one unique base key,
- said at least one security token includes data storage means for storing said at least one unique base key and cryptographic means using said stored at least one unique base key
A method of generating at least one unique base key comprising the steps of
- generating a master group key by a cryptographic device,
- receiving a unique identifier from a first security token by said cryptographic device,
- performing a logic operation using said unique identifier and said master group key as operands producing said at least one unique base,
- operatively injecting said at least one unique base key into said first security token,
- repeating said steps for at least a second security token.
A system for performing symmetric keys based mutual authentications between at least two security tokens comprising:
- a first secure token including a first unique identifier, a first unique base key which is a function of a master key and of said first unique identifier, first cryptography means, and first memory storage means;
- a second security token including a second unique identifier, a second unique base key which is a function of said master key and of said second unique identifier, and second cryptography means compatible with said first cryptography means, second memory storage means and
- communication means for exchanging data between said first and second secure tokens, wherein
- said first secure token comprises first logic operator means for processing said first unique base key and said second unique identifier received from said second security token, producing a first composite group key,
- said second secure token comprises second logic operator means for processing said second unique base key and said first unique identifier received from said first security token, producing a second composite group key,
- said first and second composite group keys being equal.
A method for performing mutual authentications between a first security token and a second security token comprising:
- sending a first unique identifier from a first security token to a second security token,
- sending a second unique identifier from said second security token to a said first security token,
- digesting said second unique identifier by said first security token using a message digest function mutually installed in said first and said second security tokens producing a second digest result,
- digesting said first unique identifier by said second security token using said message digest function producing a first digest result,
- performing an exclusive OR bit-wise operation by said second security token using said second digest result and a second unique base key as operands, producing a second composite group key,
- performing an exclusive OR bit-wise operation by said first security token using said first digest result and a second unique base key as operands, producing a first composite group key,
- generating a first random number by said first security token, storing a copy of said first random number and encrypting said first random number using said first composite group key and a mutually shared cryptographic algorithm, producing a first cryptogram,
- generating a second random number by said second security token, storing a copy of said second random number and encrypting said second random number using said second composite group key and said mutually shared cryptographic algorithm, producing a second cryptogram,
- sending said first cryptogram from said first security token to said second security token,
- sending said second cryptogram from said second security token to said first security token,
- receiving and decrypting said first cryptogram using said second composite group key and said mutually shared cryptographic algorithm by said second security token producing a first random number result,
- receiving and decrypting said second cryptogram using said first composite group key and said mutually shared cryptographic algorithm by said first security token producing a second random number result,
- sending said first random number result from said second security token to said first security token,
- sending said second random number result from said first security token to said second security token,
- receiving said first random number result by said first security token, retrieving said copy of said first random number from memory and comparing said first random number result to said copy of said first random number,
- receiving said second random number result by said second security token, retrieving said copy of said second random number from memory and comparing said second random number result to said copy of said second random number,
- authenticating said second security token to said first security token if said first random number result matches said copy of said first random number,
- authenticating said first security token to said second security token if said second random number result matches said copy of said second random number.
Dependencies are inferred from the claim text.