EP1501238A1

Method and system for key distribution comprising a step of authentication and a step of key distribution using a KEK (key encryption key)

Abstract

A method for protecting the transfer and storage of data by encryption using a private key encrypted with a first key encrypting key, which is encrypted using a second key encrypting key. This latter key is encrypted using a hashed passphrase value, obtained by hashing a passphrase known only to the authorized user. Upon receipt of a request initiated by the user by entering a passphrase, a first hashed passphrase is transferred to a first data processing system, where it is compared with a predefined hash string. If they match, the first data processing system transfers to a second data processing system the encrypted second key encrypting key. A candidate key is obtained by decrypting the encrypted second key encrypting key using a second hashed passphrase. Upon successful validation of the candidate key, the passphrase is verified and the user is authenticated. After the user has been authenticated, the first data processing system transmits to the second data processing system the encrypted private key and the encrypted data. The second processing system then decrypts the encrypted first key encrypting key using the second key encrypting key, decrypts the encrypted private key using the first key encrypting key and finally decrypts the data using the private key.

EP1501238A1, drawing sheet 1
Sheet 1 of 10

Term

Term ended

Projected expiry passed 23 July 2023, 3.2 years ago.

  1. Priority and filed
  2. Published
  3. Projected expiry
  4. Today

12 claims: 3 independent, 9 dependent

  1. 1
    A method for authentication, data communication, storage and retrieval in a distributed key cryptography system, comprising the following steps:a) at least one client system (300) hashing a passphrase using a first hashing function, so as to produce a first'hash, b) the at least one client system (300) transmitting, via telecommunication means (200), the first hash to a server system (100);c) the server system (100) performing an authentication of the first hash comparing it with a predefined hash;d) the server system (100) providing the at least one client system (300) with at least a second key encrypting key (Dk, Dpr1) in encrypted form over telecommunication means (200);e) the at least one client system (300) hashing the passphrase by means of a second hashing function, so as to produce a second hash;f) the at least one client system (300) utilising the second hash for decrypting the encrypted second key encrypting key (Dk, Dpr1);g) the at least one client system (300) utilising the decrypted second key encrypting key (Dk, Dpr1) for decrypting a first key encrypting key (Wk, Wpr1), stored in encrypted form in storage means (311, 313) of the client system (300);h) the server system (100) transmitting at least one private key (Fk, F1), stored in encrypted form in storage means (111, 121) of the server system (100), to the at least one client system (300);i) the at least one client system (300) decrypting the private key (Fk, F1) by means of the first key encrypting key (Wk, Wpr1);l) at least one client system (300) decrypting data by means of the private key (Fk, F1).
  2. 9
    System for authentication, data communication, storage and retrieval in a distributed key cryptography system, comprising:a) means in a client system for hashing a passphrase using a first hashing function, so as to produce a first hash;b) means in the client system (300) for transmitting, via telecommunication means (200), the first hash to the server system (100);c) means in the server system (100) performing an authentication of the first hash comparing it with a predefined hash;d) means in the server system (100) providing the client system (300) with a second key encrypting key (Dk) in encrypted form over telecommunication means (200);e) means in the client system (300) hashing the passphrase by means of a second hashing function, so as to produce a second hash;f) means in the client system (300) for utilising the second hash for decrypting the encrypted second key encrypting key (Dk);g) means the client system (300) for utilising the decrypted second key encrypting key (Dk) for decrypting a first key encrypting key (Wk), stored in encrypted form in storage means of the client system (300);h) means in the server system (100) for transmitting a private key (Fk), stored in encrypted form in storage means of the server system (100), to the client system (300);i) means for decrypting the private key (Fk) by means of the first key encrypting key (Wk);l) means in the client system (300) for decrypting data by means of the private key (Fk).
  3. 11
    A computer program product in a computer usable medium, comprising:a) instructions in a client system for hashing a passphrase using a first hashing function, so as to produce a first hash, and using a second hashing function so as to produce a second hash;b) instructions in the client system for transmitting, via telecommunication means (200), the first hash to the server system (100);c) instructions in the server system (100) for performing an authentication of the first hash comparing it with a predefined hash;d) instructions in the server system (100) for providing the client system (300) with a second key encrypting key (Dk) in encrypted form over telecommunication means (200);e) instructions in the client system (300) for hashing the passphrase by means of a second hashing function, so as to produce a second hash;f) instructions in the client system (300) for utilising the second hash for decrypting the encrypted second key encrypting key (Dk);g) instructions in the client system (300) for utilising the decrypted second key encrypting key (Dk) for decrypting a first key encrypting key (Wk), stored in encrypted form in storage means of the client system (300);h) instructions in the server system (100) for transmitting a private key (Fk), stored in encrypted form in storage means of the server system (100), to the client system (300);i) instructions in for decrypting the private key (Fk) by means of the first key encrypting key (Wk);l) instructions in the client system (300) for decrypting data by means of the private key (Fk).