# US 2014/0192979 A1 · Method and Apparatus for Generating Large Numbers of Encryption Keys

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0192979 A1
- Document ID: US20140192979A1
- Status: Published application
- Kind: A1
- Application number: 14/054,378
- Filed: 2013-10-15
- Published: 2014-07-10
- Earliest claimed: 2004-09-21
- Assignees: Rockstar Consortium US LP
- Applicants: Rockstar Consortium US LP
- Inventors: Lakshminath Dondeti
- Web page: https://patentgrep.com/patent/US20140192979A1

## CPC

- H04L 9/0816: {Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use}
- H04L 9/065: {Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3}
- H04L 9/0841: {involving Diffie-Hellman or related key agreement protocols}
- H04L 9/0869: {involving random numbers or seeds}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Entropy obtained from a series of key generation exchanges may be combined with entropy from a strong entropy source to allow the strong entropy to be stretched to generate a larger number of keys for use on a communication network, without requiring additional information from the group members and without requiring the entropy source to be increased in size or in number. In one embodiment, nonces exchanged during an initial key exchange are used to generate additional key material that is then fed, together with a fresh random secret, to another pseudo-random function to generate an additional key stream. The methods are particularly useful for group key management where a large number of keys are required to be generated in a short time frame.

## Claims

### Claim at position 1

1-17. (canceled)

### Claim 18

A method of generating random keys for security applications, the method comprising:
obtaining information associated with a key exchange session with a first group member;
generating from the obtained information a set of keys for use by the first group member and additional pseudo-random information not for use by the first group member; and
combining the additional pseudo-random information with a fresh random secret to stretch the fresh random secret to enable additional random keys to be generated from the fresh random secret.

### Claim 19 (depends on 18)

The method of claim 18, comprising generating additional random keys from the fresh random secret.

### Claim 20 (depends on 19)

The method of claim 19, comprising using the additional random keys to secure communications in a communication network.

### Claim 21 (depends on 20)

The method of claim 20, wherein using the additional random keys to secure communications in a communication network comprises using the additional random keys to encrypt information for transmission between network elements of the communication network.

### Claim 22 (depends on 18)

The method of claim 18, comprising generating the fresh random secret.

### Claim 23 (depends on 18)

The method of claim 18, wherein generating the fresh random secret comprises using a physical entropy source to generate the fresh random secret.

### Claim 24 (depends on 18)

The method of claim 18, wherein:
obtaining information associated with the key exchange session with the first group member comprises exchanging nonces and Diffie-Hellman values with the first group member; and
generating from the obtained information a set of keys for use by the first group member and additional pseudo-random information not for use by the first group member comprises:
generating a seed key from at least the exchanged nonces and Diffie-Hellman values; and
using the seed key to generate the set of keys for use by the first group member and the additional pseudo-random information not for use by the first group member.

### Claim 25 (depends on 24)

The method of claim 24, wherein using the seed key to generate the set of keys for use by the first group member and the additional pseudo-random information not for use by the first group member comprises:
applying a first pseudo-random function to the seed key to generate a stream of pseudo-random information;
using a first portion of the stream of random information to form the set of keys for use by the first group member; and
using a second portion of the stream of random information to form the additional pseudo-random information.

### Claim 26

A method of generating random keys for security applications in a network, the method comprising:
exchanging key information between a first network element and a second network element;
based on at least some of the key information exchanged between the first network element and the second network element, generating a set of keys for use by the first network element and additional pseudo-random information not for use by the first network element; and
combining the additional pseudo-random information with a fresh random secret to generate additional random keys.

### Claim 27 (depends on 26)

The method of claim 26, wherein exchanging first key information between the first network element and the second network element comprises exchanging nonces and Diffie-Hellman values between the first network element and the second network element.

### Claim 28 (depends on 27)

The method of claim 27, wherein generating the additional pseudo-random information not for use by the first network element comprises:
generating a seed key from the exchanged nonces and the exchanged Diffie-Hellman values; and
generating the additional pseudo-random information from the seed key and the exchanged nonces.

### Claim 29 (depends on 28)

The method of claim 28, wherein generating the additional pseudo-random information from the seed key and the exchanged nonces comprises generating the additional pseudo-random information from the seed key, the exchanged nonces and at least one security parameter associated with a security association.

### Claim 30 (depends on 28)

The method of claim 28, wherein generating the set of keys for use by the first network element comprises generating the set of keys from the seed key and the exchanged nonces.

### Claim 31 (depends on 30)

The method of claim 30, wherein generating the set of keys for use by the first network element from the seed key and the exchanged nonces comprises generating the set of keys from the seed key, the exchanged nonces and at least one security parameter associated with a security association.

### Claim 32 (depends on 26)

The method of claim 26, wherein generating a set of keys for use by the first network element and additional pseudo-random information not for use by the first network element comprises generating the set of keys and the additional pseudo-random information by:
applying a first pseudo-random function to at least some of the exchanged key information to generate a seed key; and
applying a second pseudo-random function to the seed key and at least some of the exchanged key information to generate the additional pseudo-random information.

### Claim 33 (depends on 32)

The method of claim 32, wherein combining the additional pseudo-random information with the fresh random secret to generate additional random keys comprises applying a third pseudo-random function to the additional pseudo-random information and the fresh random secret to generate the additional random keys.

### Claim 34 (depends on 26)

The method of claim 26, further comprising:
exchanging key information between a third network element and the second network element; and
based on at least some of the key information exchanged between the third network element and the second network element, generating a set of keys for use by the third network element and additional pseudo-random information not for use by the third network element;
wherein combining the additional pseudo-random information with a fresh random secret to generate additional random keys comprises combining the additional pseudo-random information generated based on at least some of the key information exchanged between the first network element and the second network element with the pseudo-random information generated based on at least some of the key information exchanged between the third network element and the second network element and with the fresh random secret to generate the additional random keys.

### Claim 35 (depends on 34)

The method of claim 34, wherein the second network element is a key server adapted to generate keys for use by other network elements of the network.

### Claim 36 (depends on 26)

The method of claim 26, comprising using the additional random keys to secure communications in a communication network.

### Claim 37 (depends on 36)

The method of claim 36, wherein using the additional random keys to secure communications in a communication network comprises using the additional random keys to encrypt information for transmission between network elements of the communication network.

### Claim 38 (depends on 26)

The method of claim 26, comprising generating the fresh random secret.

### Claim 39 (depends on 26)

The method of claim 26, wherein generating the fresh random secret comprises using a physical entropy source to generate the fresh random secret.
