# US 10,430,160 B2 · Method and system for generating a random bit sample

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

- Number: US 10,430,160 B2
- Document ID: US10430160B2
- Status: Granted
- Kind: B2
- Application number: 16/150,010
- Filed: 2018-10-02
- Published: 2019-07-18
- Granted: 2019-10-01
- Earliest claimed: 2018-01-15
- Assignees: Quantum Numbers Corp.
- Applicants: Quantum Numbers Corp.
- Inventors: Bertrand Reulet; Jean-Charles Phaneuf
- Web page: https://patentgrep.com/patent/US10430160B2

## CPC

- G06F 7/588: {Random number generators, i.e. based on natural stochastic processes}
- G09C 1/00: Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system (cryptographic typewriters G09C3/00)
- H03K 3/84: Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G09C: CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- H03K: PULSE TECHNIQUE (measuring pulse characteristics G01R; modulating sinusoidal oscillations with pulses H03C; transmission of digital information H04L; discriminator circuits detecting phase difference between two signals by counting or integrating cycles of oscillation H03D3/04; automatic control, starting, synchronisation or stabilisation of generators of electronic oscillations or pulses where the type of generator is irrelevant or unspecified H03L; coding, decoding or code conversion, in general H03M)

## Abstract

The method for generating a random bit sample involves a quantum tunneling barrier. The method generally has: generating a current of charges tunneling across said quantum tunneling barrier, the current of the tunneled charges having an instantaneous level varying randomly due to quantum tunneling fluctuations and forming a raw signal; from said raw signal, obtaining a raw bit sample having a first bit number n, the first bit number n being an integer; extracting the randomness out of the raw bit sample into the random bit sample, the random bit sample having a second bit number m being smaller than the first bit number n, said extracting being based on calibration data comprising at least a quantum contribution value of said quantum tunneling fluctuations in said raw bit sample; and on an external contribution value in said raw bit sample.

## Claims

### Claim 1

A method for generating a random bit sample using a quantum tunneling barrier comprising an insulator sandwiched between two conductors, the method comprising:
generating a current of charges tunneling from a first one of the two conductors to a second one of the two conductors and across the insulator, the current of the tunneled charges having an instantaneous level varying randomly due to quantum tunneling fluctuations and forming a raw signal;
from said raw signal, obtaining a raw bit sample having a first bit number n, the first bit number n being an integer; and
extracting the randomness out of the raw bit sample into the random bit sample, the random bit sample having a second bit number m being smaller than the first bit number n, said extracting being based on calibration data comprising at least
a quantum contribution value of said quantum tunneling fluctuations in said raw bit sample; and
an external noise contribution value in said raw bit sample;
wherein said calibration data are received from an accessible memory system.

### Claim 2 (depends on 1)

The method of claim 1 wherein said second bit number m is based on a number of bits to keep per raw bit sample, the second bit number m being determined based on a min-entropy of said quantum tunneling fluctuations, said min-entropy of said quantum tunneling fluctuations depending on said quantum contribution value and said external noise contribution value.

### Claim 3 (depends on 1)

The method of claim 1 wherein said extracting comprises determining said calibration data from variance data indicative of a variance of raw bit samples obtained from said quantum tunneling barrier as function of a voltage at which the quantum tunneling barrier is operated.

### Claim 4 (depends on 3)

The method of claim 3 wherein said variance data is given by a relation equivalent to the following relation:
σ2=A(SJ+Sext),
wherein σ2 denotes said variance data, A denotes an effective gain of said obtaining, SJ denotes said quantum contribution value of the quantum tunneling fluctuations in the raw bit sample, and Sext denotes an external noise contribution value in the raw bit sample.

### Claim 5 (depends on 4)

The method of claim 4 wherein said quantum contribution value SJ is given by a relation equivalent to the following relation:
S
j
=
2
⁢
⁢
e
⁢
⁢
V
R
·
coth
⁡
(
e
⁢
⁢
V
2
⁢
k
B
⁢
T
)
,
wherein e denotes the electron charge, R denotes a resistance of the quantum tunneling barrier, V denotes a voltage at which the quantum tunneling barrier is operated, kB denotes the Boltzmann constant, and T denotes a temperature at which the quantum tunneling barrier is operated.

### Claim 6 (depends on 4)

The method of claim 4 wherein said external noise contribution value Sext is determined at least from one of a value of said variance data σ2 at a null voltage given by a relation equivalent to the following relation:
σ
2
⁡
(
0
)
=
A
⁡
(
S
ext
+
4
⁢
k
B
⁢
T
R
)
,
and a value of said variance data σ2 at a voltage Vi being greater than a given voltage threshold Vthres can be given by a relation equivalent to the following relation:
σ
2
⁡
(
V
i
)
=
A
⁡
(
S
ext
+
2
⁢
e
⁢
⁢
V
i
R
)
;
wherein e denotes the electron charge, R denotes a resistance of the quantum tunneling barrier, Vi denotes a voltage at which the quantum tunneling barrier is operated, kB denotes the Boltzmann constant, and T denotes a temperature at which the quantum tunneling barrier is operated.

### Claim 7 (depends on 3)

The method of claim 3 further comprising determining said variance data by varying the voltage at which the quantum tunneling barrier is operated and measuring a variance of the raw bit sample as said voltage is varied.

### Claim 8 (depends on 3)

The method of claim 3 wherein said variance data are received from an accessible memory system.

### Claim 9 (depends on 1)

The method of claim 1 wherein said extracting comprises:
comparing prior calibration data indicative of the calibration data at a prior moment in time to later calibration data indicative of the calibration data at a later moment in time, and
generating an alert when the prior calibration data differ from the later calibration data by more than a tolerance value.

### Claim 10 (depends on 9)

The method of claim 9 wherein said comparing comprises
determining current calibration data from current variance data obtained by varying a voltage at which the quantum tunneling barrier is operated while measuring a variance of the raw bit sample, said current calibration data corresponding to said later calibration data.

### Claim 11 (depends on 1)

The method of claim 1 wherein said obtaining includes obtaining a plurality of source bit samples and concatenating the plurality of source bit samples into the raw bit sample.

### Claim 12 (depends on 11)

The method of claim 11, further comprising determining a number of bits to keep per source bit sample based on a min-entropy of said quantum tunneling fluctuations, the raw bit sample including a given number of concatenated source bit samples, said given number being determined so that, when multiplied by said number of bits to keep, yields an integer.

### Claim 13 (depends on 1)

The method of claim 1 wherein said extracting includes multiplying the raw bit sample to a random matrix generated using an initial seed bit sample to obtain said random bit sample.

### Claim 14 (depends on 13)

The method of claim 13, wherein said raw bit sample is a first raw bit sample and said random bit sample is a first random bit sample, the method further comprising repeating said obtaining to obtain a second raw bit sample, generating another random matrix using at least part of said first random bit sample as the initial seed bit sample, and repeating said extracting on the second raw bit sample using said other random matrix.

### Claim 15 (depends on 1)

The method of claim 1 further comprising repeating said obtaining to obtain a plurality of successive raw bit samples and repeating said extracting on each successive one of said raw bit samples thereby producing a random bit stream.

### Claim 16 (depends on 1)

The method of claim 1 wherein said obtaining includes sampling the raw signal, including attributing a value to the instantaneous level of the current.

### Claim 17 (depends on 16)

The method of claim 16 wherein the raw bit sample corresponds to the value of the instantaneous level of the current.

### Claim 18 (depends on 16)

The method of claim 16 wherein said obtaining includes obtaining a source bit sample from said attributing, the source bit sample corresponding to the value of the instantaneous level of the current, further comprising repeating said sampling to obtain a plurality of source bit samples, and concatenating the plurality of source bit samples into the raw bit sample.

### Claim 19 (depends on 1)

The method of claim 1 wherein said obtaining includes identifying crossings of the instantaneous level of the current across a given value as the instantaneous level of the current varies and determining a period of time elapsed between two successive crossings, including attributing a value to said period of time elapsed.

### Claim 20 (depends on 19)

The method of claim 19 wherein said obtaining includes obtaining a source bit sample from said attributing, the source bit sample corresponding to said period of time elapsed, further comprising repeating said identifying and said determining to obtain a plurality of source bit samples, and concatenating the plurality of source bit samples into the raw bit sample.

### Claim 21 (depends on 1)

The method of claim 1 further comprising amplifying said raw signal.

### Claim 22 (depends on 1)

The method of claim 1 wherein said calibration data are previously determined and are stored on the accessible memory system.

### Claim 23

A system for generating a random bit sample, the system comprising:
a quantum tunneling barrier circuit having a quantum tunneling barrier incorporating an insulator sandwiched between two conductors, a current of charges tunneling from a first one of the two conductors to a second one of the two conductors and across the insulator, the current of the tunneled charges having an instantaneous level varying randomly due to quantum tunneling fluctuations and forming a raw signal;
a monitoror configured to received said raw signal and to, from said raw signal, obtain a raw bit sample having a first bit number n, the first bit number n being an integer; and
a randomness extractor configured to extract the randomness out of the raw bit sample into the random bit sample, the random bit sample having a second bit number m being smaller than the first bit number n, said extracting being based on calibration data comprising at least a quantum contribution value of said quantum tunneling fluctuations in said raw bit sample; and an external noise contribution value in said raw bit sample;
wherein said calibration data are received from an accessible memory system.

### Claim 24 (depends on 23)

The system of claim 23 wherein said second bit number m is based on a number of bits to keep per raw bit sample, the second bit number m being determined based on a min-entropy of said quantum tunneling fluctuations, said min-entropy of said quantum tunneling fluctuations depending on said quantum contribution value and said external noise contribution value.

### Claim 25 (depends on 23)

The system of claim 23 wherein said extracting comprises determining said calibration data from variance data indicative of a variance of raw bit samples obtained from said quantum tunneling barrier as function of a voltage at which the quantum tunneling barrier is operated.

### Claim 26 (depends on 25)

The system of claim 25 wherein said variance data is given by a relation equivalent to the following relation:
σ2=A(SJ+Sext),
wherein σ2 denotes said variance data, A denotes an effective gain of said obtaining, SJ denotes said quantum contribution value of the quantum tunneling fluctuations in the raw bit sample, and Sext denotes an external noise contribution value in the raw bit sample.

### Claim 27 (depends on 26)

The system of claim 26 wherein said quantum contribution value SJ is given by a relation equivalent to the following relation:
S
j
=
2
⁢
⁢
e
⁢
⁢
V
R
·
coth
⁡
(
e
⁢
⁢
V
2
⁢
k
B
⁢
T
)
,
wherein e denotes the electron charge, R denotes a resistance of the quantum tunneling barrier, V denotes a voltage at which the quantum tunneling barrier is operated, kB denotes the Boltzmann constant, and T denotes a temperature at which the quantum tunneling barrier is operated.

### Claim 28 (depends on 26)

The system of claim 26 wherein said external noise contribution value Sext is determined at least from one of a value of said variance data σ2 at a null voltage given by a relation equivalent to the following relation:
σ
2
⁡
(
0
)
=
A
⁡
(
S
ext
+
4
⁢
k
B
⁢
T
R
)
,
and a value of said variance data σ2 at a voltage Vi being greater than a given voltage threshold Vthres can be given by a relation equivalent to the following relation:
σ
2
⁡
(
V
i
)
=
A
⁡
(
S
ext
+
2
⁢
e
⁢
⁢
V
i
R
)
;
wherein e denotes the electron charge, R denotes a resistance of the quantum tunneling barrier, Vi denotes a voltage at which the quantum tunneling barrier is operated, kB denotes the Boltzmann constant, and T denotes a temperature at which the quantum tunneling barrier is operated.

### Claim 29 (depends on 25)

The system of claim 25 further comprising determining said variance data by varying the voltage at which the quantum tunneling barrier is operated and measuring a variance of the raw bit sample as said voltage is varied.

### Claim 30 (depends on 23)

The system of claim 23 further comprising an amplifier configured to amplify said raw signal.

### Claim 31

A method for generating a random bit sample using a quantum tunneling barrier comprising an insulator sandwiched between two conductors, the method comprising:
generating a current of charges tunneling from a first one of the two conductors to a second one of the two conductors and across the insulator, the current of the tunneled charges having an instantaneous level varying randomly due to quantum tunneling fluctuations and forming a raw signal;
from said raw signal, obtaining a raw bit sample having a first bit number n, the first bit number n being an integer; and
extracting the randomness out of the raw bit sample into the random bit sample, the random bit sample having a second bit number m being smaller than the first bit number n, said extracting being based on calibration data comprising at least
a quantum contribution value of said quantum tunneling fluctuations in said raw bit sample; and
an external contribution value in said raw bit sample;
wherein said extracting comprises:
comparing prior calibration data indicative of the calibration data at a prior moment in time to later calibration data indicative of the calibration data at a later moment in time, and
generating an alert when the prior calibration data differ from the later calibration data by more than a tolerance value.

### Claim 32 (depends on 31)

The method of claim 31 wherein said comparing comprises:
determining current calibration data from current variance data obtained by varying a voltage at which the quantum tunneling barrier is operated while measuring a variance of the raw bit sample, said current calibration data corresponding to said later calibration data.

### Claim 33

A method for generating a random bit sample using a quantum tunneling barrier comprising an insulator sandwiched between two conductors, the method comprising:
generating a current of charges tunneling from a first one of the two conductors to a second one of the two conductors and across the insulator, the current of the tunneled charges having an instantaneous level varying randomly due to quantum tunneling fluctuations and forming a raw signal;
from said raw signal, obtaining a raw bit sample having a first bit number n, the first bit number n being an integer;
extracting the randomness out of the raw bit sample into the random bit sample, the random bit sample having a second bit number m being smaller than the first bit number n, said extracting being based on calibration data comprising at least
a quantum contribution value of said quantum tunneling fluctuations in said raw bit sample; and
an external contribution value in said raw bit sample;
wherein said obtaining includes obtaining a plurality of source bit samples and concatenating the plurality of source bit samples into the raw bit sample; and
determining a number of bits to keep per source bit sample based on a min-entropy of said quantum tunneling fluctuations, the raw bit sample including a given number of concatenated source bit samples, said given number being determined so that, when multiplied by said number of bits to keep, yields an integer.

### Claim 34

A method for generating a random bit sample using a quantum tunneling barrier comprising an insulator sandwiched between two conductors, the method comprising:
generating a current of charges tunneling from a first one of the two conductors to a second one of the two conductors and across the insulator, the current of the tunneled charges having an instantaneous level varying randomly due to quantum tunneling fluctuations and forming a raw signal;
from said raw signal, obtaining a raw bit sample having a first bit number n, the first bit number n being an integer; and
extracting the randomness out of the raw bit sample into the random bit sample, the random bit sample having a second bit number m being smaller than the first bit number n, said extracting being based on calibration data comprising at least
a quantum contribution value of said quantum tunneling fluctuations in said raw bit sample; and
an external contribution value in said raw bit sample;
wherein said extracting includes multiplying the raw bit sample to a random matrix generated using an initial seed bit sample to obtain said random bit sample; and
wherein said raw bit sample is a first raw bit sample and said random bit sample is a first random bit sample, the method further comprising repeating said obtaining to obtain a second raw bit sample, generating another random matrix using at least part of said first random bit sample as the initial seed bit sample, and repeating said extracting on the second raw bit sample using said other random matrix.

### Claim 35

A method for generating a random bit sample using a quantum tunneling barrier comprising an insulator sandwiched between two conductors, the method comprising:
generating a current of charges tunneling from a first one of the two conductors to a second one of the two conductors and across the insulator, the current of the tunneled charges having an instantaneous level varying randomly due to quantum tunneling fluctuations and forming a raw signal;
from said raw signal, obtaining a raw bit sample having a first bit number n, the first bit number n being an integer; and
extracting the randomness out of the raw bit sample into the random bit sample, the random bit sample having a second bit number m being smaller than the first bit number n, said extracting being based on calibration data comprising at least
a quantum contribution value of said quantum tunneling fluctuations in said raw bit sample; and
an external contribution value in said raw bit sample;
wherein said obtaining includes identifying crossings of the instantaneous level of the current across a given value as the instantaneous level of the current varies and determining a period of time elapsed between two successive crossings, including attributing a value to said period of time elapsed.

### Claim 36 (depends on 35)

The method of claim 35 wherein said obtaining includes obtaining a source bit sample from said attributing, the source bit sample corresponding to said period of time elapsed, further comprising repeating said identifying and said determining to obtain a plurality of source bit samples, and concatenating the plurality of source bit samples into the raw bit sample.
