# US 11,907,683 B2 · Method for generating a random number, random number generation circuit and computer program

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

- Number: US 11,907,683 B2
- Document ID: US11907683B2
- Status: Granted
- Kind: B2
- Application number: 16/661,026
- Filed: 2019-10-23
- Published: 2020-05-28
- Granted: 2024-02-20
- Earliest claimed: 2018-11-13
- Assignees: Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
- Applicants: Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
- Inventors: Haya Shulman; Michael Waidner
- Web page: https://patentgrep.com/patent/US11907683B2

## CPC

- G06F 7/582: {Pseudo-random number generators}
- G06F 7/588: {Random number generators, i.e. based on natural stochastic processes}
- H04L 9/0869: {involving random numbers or seeds}
- H04L 9/30: Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L 63/06: {for supporting key management in a packet data network (cryptographic mechanisms or cryptographic arrangements for key management H04L9/08)}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method for generating a random number comprises selecting a group of at least two servers within a network; receiving a server specific string from at least two servers of the group; and using the server specific strings to generate the random number.

## Claims

### Claim 1

A method for generating a random number, comprising:
selecting a group of at least two servers within a network;
receiving at least two server specific strings from at least two servers of the group;
generating a server specific secret for each of the at least two servers of the group based on the server specific string received from each of the at least two servers of the group such that at least two server specific secrets are generated for the at least two servers of the group;
combining the at least two server specific secrets or the at least two server specific strings to generate a seed value for a random number generator; and
generating a random number using the seed value,
wherein selecting the group of servers comprises choosing the servers such that network routes to the servers within the group do not intersect.

### Claim 2 (depends on 1)

The method of claim 1, wherein receiving a server specific string from a server comprises:
negotiating a secure connection with the server.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
receiving a server specific public key from the server as the server specific string.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
transmitting a local public key to the server; and
combining the local public key and the server specific public key to generate the server specific secret.

### Claim 5 (depends on 4)

The method of claim 4, further comprising:
generating a XOR combination of the server specific secrets to generate the seed value.

### Claim 6 (depends on 1)

The method of claim 1, wherein selecting the group of servers comprises choosing the servers such that they are located in different operator networks.

### Claim 7 (depends on 1)

The method of claim 1, wherein using the server specific strings comprises generating a XOR combination of server specific strings.

### Claim 8 (depends on 1)

A non-transitory computer-readable medium including program code for, when executed by a programmable processor, performing a method of claim 1.

### Claim 9

A random number generation circuit, comprising:
a communication interface configured to receive at least two server specific strings from at least two servers of a group of at least two servers within a network; and
a combination circuit configured to generate a server specific secret for each of the at least two servers of the group based on the server specific string received from each of the at least two servers of the group such that at least two server specific secrets are generated for the at least two servers of the group, combine the at least two server specific secrets or server specific strings to generate a seed value for a random number generator, and generate a random number using the seed value,
wherein the group of servers are selected such that network routes to the servers within the group do not intersect.

### Claim 10 (depends on 9)

The random number generation circuit of claim 9, further comprising:
a secure communication circuit configured to negotiate a secure connection with the at least two servers.

### Claim 11 (depends on 10)

The random number generation circuit of claim 10, wherein the secure communication circuit is configured to receive a server specific public key from a server as the server specific string.

### Claim 12 (depends on 11)

The random number generation circuit of claim 11, wherein the secure communication circuit is configured to transmit a local public key to the server; and to combine the local public key and the server specific public key to generate the server specific secret.

### Claim 13 (depends on 12)

The random number generation circuit of claim 12, wherein the combination circuit is configured to generate a XOR combination of server specific secrets to generate the seed value; and to use the seed value as a seed for calculating the random number.
