Generating Session Keys
AssigneeRed Hat, Inc.
InventorJames Paul Schneider
Life of this patent
Estimating the term…
Abstract
A method and apparatus for generating shared session keys. The method and apparatus does not rely on strong random number generation. The first node sends a timestamp and random sequence to the second node. The second node generates a message authentication code (MAC) using this data and a shared secret key. The MAC is then used to encrypt a reply containing a second timestamp and second random sequence from the second node. The first node receives this message and decrypts it by generating the same MAC. Both nodes then generate a session key using the shared set of timestamps and random sequences.
Claims20
A computer-implemented method comprising:
- sending a first message with a first timestamp and a first string;
- calculating a first message authentication code (MAC) based on the timestamp and the string;
- decrypting a second message received in response to the first message, using the MAC as a key to obtain a second timestamp and a second string;
- and
- generating a session key based on a second MAC generated based on the first time stamp, the first string, the second timestamp and the second string.
A computer-implemented method comprising:
- receiving a first message with a first timestamp and a first string;
- calculating a first message authentication code (MAC) based on the first timestamp and the first string;
- encrypting a second message using the first MAC as a key to encrypt a second timestamp and a second string;
- and
- generating a session key based on a second MAC generated based on the first time stamp, the first string, the second timestamp and the second string.
A computer readable storage medium, having instructions stored therein, which when executed, cause a computer to perform a set of operations comprising:
- sending a first message with a first timestamp and a first string;
- calculating a first message authentication code (MAC) based on the timestamp and the string;
- decrypting a second message received in response to the first message, using the MAC as a key to obtain a second timestamp and a second string;
- and
- generating a session key based on a second MAC generated based on the first time stamp, the first string, the second timestamp and the second string.
A computer readable storage medium, having instructions stored therein, which when executed, cause a computer to perform a set of operations comprising:
- receiving a first message with a first timestamp and a first string;
- calculating a first message authentication code (MAC) based on the first timestamp and the first string;
- encrypting a second message using the first MAC as a key to encrypt a second timestamp and a second string;
- and
- generating a session key based on a second MAC generated based on the first time stamp, the first string, the second timestamp and the second string.
A system comprising:
- a first computer including,
- a first session key generator to generate a first message with a first timestamp and a first string, the generator to generate a session key based on the first timestamp, first string and a second timestamp and a second key obtained from decrypting a message received from a second computer, the decrypting performed using a message authentication code (MAC) generated based on the first timestamp and the first string.
Dependencies are inferred from the claim text.