# Patent

## Title
Quantum cryptography with multi-party randomness

## Abstract

A method and system for performing a quantum key distribution process in a quantum cryptographic system (200, 400) is provided. A first endpoint (405a) contributes a first set of random values to a quantum key distribution process. A second endpoint (405b) contributes a second set of random values to the quantum key distribution process. The first and the second endpoints (405a, 405b) derive a key based on at least some of the first set of random values and at least some of the second set of random values. In some implementations, the first endpoint (405a) may send each of the first set of random values using a basis (act 702, act 902) and the second endpoint (405b) may send an indication of received pulses and a basis for each of the received pulses (act 704, act 904).

## Background
GOVERNMENT CONTRACT
The U.S. Government has a paid-up license in this invention and the right in limited circumstances to require the patent owner to license others on reasonable terms as provided for by the terms of Contract No. F30602-01-C-0170, awarded by the Defense Advanced Research Project Agency (DARPA).


TECHNICAL FIELD
The present invention relates generally to quantum cryptographic systems and, more particularly, to systems and methods for permitting multiple parties to contribute randomness in a quantum key distribution process.
BACKGROUND OF THE INVENTION
Within the field of cryptography, it is well recognized that the strength of any cryptographic system depends, among other things, on the key distribution technique employed. For conventional encryption to be effective, such as a symmetric key system, two communicating parties must share the same key and that key must be protected from access by others. The key must, therefore, be distributed to each of the parties.
FIG. 1 shows one form of a conventional existing key distribution process. As shown in FIG. 1, for a party, Bob, to decrypt ciphertext encrypted by a party, Alice, Alice or a third party must share a copy of the key with Bob. This distribution process can be implemented using a number of known methods including the following: 1) Alice can select a key and physically deliver the key to Bob; 2) a third party can select a key and physically deliver the key to Bob; 3) if Alice and Bob both have an encrypted connection to a third party, the third party can deliver a key on the encrypted links to Alice and Bob; 4) if Alice and Bob have previously used an old key, Alice can transmit a new key to Bob by encrypting the new key with the old; and 5) Alice and Bob may agree on a shared key via a one-way mathematical algorithm, such as Diffie-Hellman key agreement.
All of these distribution methods are vulnerable to interception of the distributed key by an eavesdropper, Eve, or by Eve “cracking” the supposedly one-way algorithm. Eve can eavesdrop and intercept or copy a distributed key and then subsequently decrypt any intercepted ciphertext that is sent between Bob and Alice. In existing cryptographic systems, this eavesdropping may go undetected, with the result being that any ciphertext sent between Bob and Alice is compromised.
To combat these inherent deficiencies in the key distribution process, researchers have developed a key distribution technique called quantum cryptography. Quantum cryptography employs quantum systems and applicable fundamental principles of physics to ensure the security of distributed keys. Heisenberg's uncertainty principle mandates that any attempt to observe the state of a quantum system will necessarily induce a change in the state of the quantum system. Thus, when very low levels of matter or energy, such as individual photons, are used to distribute keys, the techniques of quantum cryptography permit the key distributor and receiver to determine whether any eavesdropping has occurred during the key distribution. Quantum cryptography, therefore, prevents an eavesdropper, like Eve, from copying or intercepting a key that has been distributed from Alice to Bob without a significant probability of Bob's or Alice's discovery of the eavesdropping.
An existing quantum key distribution (QKD) scheme involves a quantum channel, through which Alice and Bob send keys using polarized or phase encoded photons, and a public channel, through which Alice and Bob send ordinary messages. Since these polarized or phase encoded photons are employed for QKD, they are often termed QKD photons. The quantum channel is a path, such as through air or an optical fiber, that attempts to minimize the QKD photons' interaction with the environment. The public channel may comprise a channel on any type of communication network, such as a Public Switched Telephone network, the Internet, or a wireless network.
An eavesdropper, Eve, may attempt to measure the photons on the quantum channel. Such eavesdropping, however, will induce a measurable disturbance in the photons in accordance with the Heisenberg uncertainty principle. Alice and Bob use the public channel to discuss and compare the photons sent through the quantum channel. If, through their discussion and comparison, they determine that there is no evidence of eavesdropping, then the key material distributed via the quantum channel can be considered completely secret.
FIGS. 2 and 3 illustrate an existing scheme 200 for quantum key distribution in which the polarization of each photon is used for encoding cryptographic values. To begin the quantum key distribution process, Alice generates random bit values and bases 205 and then encodes the bits as polarization states (e.g., 0°, 45°, 90°, 135°) in sequences of photons sent via the quantum channel 210 (see row 1 of FIG. 3). Alice does not tell anyone the polarization of the photons she has transmitted. Bob receives the photons and measures their polarization along either a rectilinear or diagonal basis that is randomly selected with substantially equal probability. Bob records his chosen basis (see row 2 of FIG. 3) and his measurement results (see row 3 of FIG. 3).
Bob and Alice discuss 215, via the public channel 220, which basis he has chosen to measure each photon. Bob, however, does not inform Alice of the result of his measurements. Alice tells Bob, via the public channel, whether he has made the measurement along the correct basis (see row 4 of FIG. 3). In a process called “sifting” 225, both Alice and Bob then discard all cases in which Bob has made the measurement along the wrong basis and keep only the ones in which Bob has made the measurement along the correct basis (see row 5 of FIG. 3).
Alice and Bob then estimate 230 whether Eve has eavesdropped upon the key distribution. To do this, Alice and Bob must agree upon a maximum tolerable error rate. Errors can occur due to the intrinsic noise of the quantum channel and eavesdropping attack by a third party. Alice and Bob choose randomly a subset of photons m from the sequence of photons that have been transmitted and measured on the same basis. For each of the m photons, Bob announces publicly his measurement result. Alice informs Bob whether his result is the same as what she had originally sent. They both then compute the error rate of the m photons and, since the measurement results of the m photons have been discussed publicly, the polarization data of the m photons are discarded. If the computed error rate is higher than the agreed upon tolerable error rate (typically no more than about 15%), Alice and Bob infer that substantial eavesdropping has occurred. They then discard the current polarization data and start over with a new sequence of photons. If the error rate is acceptably small, Alice and Bob adopt the remaining polarizations, or some algebraic combination of their values, as secret bits of a shared secret key 235, interpreting horizontal or 45 degree polarized photons as binary 0's and vertical or 135 degree photons as binary 1's (see row 6 of FIG. 3).
Alice and Bob may also implement an additional privacy amplification process 240 that reduces the key to a small set of derived bits to reduce Eve's knowledge of the key. If, subsequent to discussion 215 and sifting 225, Alice and Bob adopt n bits as secret bits, the n bits can be compressed using, for example, a hash function. Alice and Bob agree upon a publicly chosen hash function ƒ and take K=ƒ(n bits) as the shared r-bit length key K. The hash function randomly redistributes the n bits such that a small change in bits produces a large change in the hash value. Thus, even if Eve determines a number of bits of the transmitted key through eavesdropping, and also knows the hash function ƒ, she still will be left with very little knowledge regarding the content of the hashed r-bit key K. Alice and Bob may further authenticate the public channel transmissions to prevent a “man-in-the-middle” attack in which Eve masquerades as either Bob or Alice.
Sifting is described in the paper, “Quantum Cryptography: Public Key Distribution and Coin Tossing,” by Charles H. Bennett and Giles Brassard, International Conference on Computers, Systems & Signal Processing, December 1984. A known variation on sifting, called the Geneva protocol, provides protection against an eavesdropping attack, called a photon-number splitting attack. The Geneva protocol is described in, “Quantum Cryptography Protocols Robust Against Photon Number Splitting Attacks,” by V. Scarani, A. Acin, G. Ribordy, N. Ribordy and N. Gisin, ERATO Conference on Quantum Information Science 2003, Sep. 4-6, 2003, Niijima-kaikan, Kyoto Japan. In existing sifting protocols, both parties select a ‘basis’ for each light pulse, but only one of the parties contributes a ‘value.’ For example, in the sifting protocols discussed above, a one-way system is described. In one-way systems and plug and play systems, one party may contribute the ‘value.’ In a typical quantum system based on entanglement, a source of entangled photons contributes the ‘value’ (automatically by the physical process that produces entangled pairs).
To ensure that the party contributing the ‘value’ does so in a random fashion, the contributing party must continually monitor its random sequences to check for bias. If bias is found, the contributing party either compensates for any observed bias or, when the bias is too severe for compensation, the contributing party may shut down the system. The bias monitoring, in general, is rather crude and it is quite possible that a party's random number generator may exhibit patterns of bias that are not detected by any checking procedure. Such patterns will degrade the quality of the cryptographic key produced by the system because any pattern to the randomness decreases the entropy of the key material. Furthermore, low-quality cryptographic key material may be produced for some time before subtle patterns of bias are detected.
Existing, non-quantum cryptographic systems perform a bias check. In addition, however, these non-quantum systems often obtain randomness by combining random number inputs from two different parties under the assumption that if one or both parties' random number generators are biased, in general, these problems will not be correlated. For example, in an existing Diffey-Hellman key agreement technique, each party (Alice and Bob) independently formulates a random number. A distributed calculation uses the two random numbers to determine a shared key. Thus, proper combination of two generators may lead to randomness of a higher quality than use of a single random number generator alone.
A quantum cryptographic system that allows multiple parties to contribute random values for the quantum key distribution process is needed in order to decrease the probability of generating biased cryptographic keys.
SUMMARY OF THE INVENTION
A quantum cryptographic system and a method are provided for permitting multiple parties to contribute randomness to a quantum key distribution process.
In a first aspect of the invention, a method for performing quantum key distribution in a quantum cryptographic system is provided. A first endpoint contributes a first set of random values to a quantum key distribution process. A second endpoint contributes a second set of random values to the quantum key distribution process. The first and the second endpoints derive a key based on at least some of the first set of random values and at least some of the second set of random values.
In a second aspect of the invention, a quantum cryptographic system is provided. The quantum cryptographic system includes a first quantum key distribution endpoint and a second quantum key distribution endpoint, both of which are configured to communicate via a quantum channel. The first and the second quantum key distribution endpoints are further configured to contribute a first set of random values and a second set of random values, respectively, to a quantum key distribution process. The first and the second quantum key distribution endpoints are further configured to derive a key based on at least some of the first set of random values and at least some of the second set of random values.
In a third aspect of the invention, a quantum key distribution endpoint is provided. The quantum key distribution endpoint includes a bus, a transceiver coupled to the bus, a memory coupled to the bus, and a processing unit coupled to the bus. The memory includes a group of instructions for the processing unit, such that when the quantum key distribution endpoint is configured as a first quantum key distribution endpoint, the processing unit is configured to: contribute a first set of random values to a quantum key distribution process with a second quantum key distribution endpoint, receive a second set of random values from the second quantum key distribution endpoint, and derive a key based on at least some of the first set of random values and at least some of the second set of random values.
In a fourth aspect of the invention, a quantum key distribution endpoint is provided. The quantum key distribution endpoint includes means for contributing a first set of random values to a quantum key distribution process with a second quantum key distribution endpoint, means for receiving a second set of random values from a second quantum key distribution endpoint, and means for deriving a key based on at least some of the first set of random values and at least some of the second set of random values.



BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate an embodiment of the invention and, together with the description, explain the invention. In the drawings,
FIG. 1 illustrates a conventional key distribution process;
FIG. 2 illustrates an existing quantum cryptographic key distribution (QKD) process;
FIG. 3 provides an example of a quantum cryptographic sifting process;
FIG. 4 illustrates an exemplary network in which systems and methods, consistent with the present invention, may be implemented;
FIG. 5 is a detailed block diagram of an exemplary quantum key distribution endpoint;
FIG. 6 is a detailed block diagram of an exemplary quantum transceiver;
FIG. 7 is a flowchart that illustrates an exemplary sifting process consistent with principles of the invention;
FIG. 8 is an example of sifting using the process of FIG. 7;
FIG. 9 is a flowchart that illustrates another exemplary sifting process consistent with the principles of the invention; and
FIG. 10 is an example of sifting using the process of FIG. 9.



DETAILED DESCRIPTION
The following detailed description of the invention refers to the accompanying drawings. The same reference numbers in different drawings may identify the same or similar elements. Also, the following detailed description does not limit the invention. Instead, the scope of the invention is defined by the appended claims
Exemplary Network
FIG. 4 illustrates an exemplary network 400 in which systems and methods, consistent with the present invention, that distribute encryption keys via quantum cryptographic mechanisms can be implemented. Network 400 may include QKD endpoints 405a and 405b connected via a network 410 and an optical link/network 415. QKD endpoints 405a and 405b may each include a host or a server. QKD endpoints 405a and 405b may further connect to local area networks (LANs) 420 or 425. LANs 420 and 425 may further connect with hosts 430a-430c and 435a-435c, respectively.
Network 410 can include one or more networks of any type, including a Public Land Mobile Network (PLMN), Public Switched Telephone Network (PSTN), LAN, metropolitan area network (MAN), wide area network (WAN), Internet, or Intranet. Network 410 may also include a dedicated fiber link or a dedicated freespace optical or radio link. If implemented as a PLMN, network 440 may further include packet-switched sub-networks, such as, for example, General Packet Radio Service (GPRS), Cellular Digital Packet Data (CDPD), and Mobile IF sub-networks.
Optical link/network 415 may include a link that may carry light throughout the electromagnetic spectrum, including light in the human visible spectrum and light beyond the human-visible spectrum, such as, for example, infrared or ultraviolet light. The link may include, for example, a conventional optical fiber. Alternatively, the link may include a free-space optical path, such as, for example, through the atmosphere or outer space, or even through water or other transparent media. As another alternative, the link may include a hollow optical fiber that may be lined with photonic band-gap material.
QKD endpoints 405 may distribute Quantum Cryptographic keys via optical link/network 415. Subsequent to quantum key distribution via optical link/network 415, QKD endpoint 405a and QKD endpoint 405b may encrypt traffic using the distributed key(s) and transmit the traffic via network 410.
It will be appreciated that the number of components illustrated in FIG. 4 are provided for explanatory purposes only. A typical network may include more or fewer components than are illustrated in FIG. 4.
Exemplary QKD Endpoint
FIG. 5 illustrates exemplary components of a QKD endpoint 405 consistent with the present invention. QKD endpoint 405 may include a processing unit 505, a memory 510, an input device 515, an output device 520, a quantum cryptographic transceiver 525, an interface(s) 530 and a bus 535. Processing unit 505 may perform all data processing functions for inputting, outputting, and processing of QKD endpoint data. Memory 510 may include Random Access Memory (RAM) that provides temporary working storage of data and instructions for use by processing unit 505 in performing processing functions. Memory 510 may additionally include Read Only Memory (ROM) that provides permanent or semi-permanent storage of data and instructions for use by processing unit 505. Memory 510 can also include large-capacity storage devices, such as a magnetic and/or optical recording medium and its corresponding drive.
Input device 515 permits entry of data into QKD endpoint 405 and may include a user interface (not shown). Output device 520 permits the output of data in video, audio, and/or hard copy format. Quantum cryptographic transceiver 525 may include mechanisms for transmitting and receiving encryption keys using quantum cryptographic techniques. Interface(s) 530 may interconnect QKD endpoint 405 with link/network 415. Bus 535 interconnects the various components of QKD endpoint 405 to permit the components to communicate with one another.
Exemplary Quantum Cryptographic Transceiver
FIG. 6 illustrates exemplary components of quantum cryptographic transceiver 525 of QKD endpoint 405 consistent with the present invention. Quantum cryptographic transceiver 525 may include a QKD transmitter 605 and a QKD receiver 610. QKD transmitter 605 may include a photon source 615 and a phase/polarization/energy modulator 620. Photon source 615 can include, for example, a conventional laser. Photon source 615 may produce photons according to instructions provided by processing unit 505. Photon source 615 may produce photons of light with wavelengths throughout the electromagnetic spectrum, including light in the human visible spectrum and light beyond the human-visible spectrum, such as, for example, infrared or ultraviolet light. Phase/polarization/energy modulator 620 can include, for example, conventional Mach-Zehnder interferometers. Phase/polarization/energy modulator 620 may encode outgoing photons from the photon source according to commands received from processing unit 505 for transmission across an optical link, such as link 415.
QKD receiver 610 may include a photon detector 625 and a photon evaluator 630. Photon detector 625 can include, for example, conventional avalanche photo detectors (APDs) or conventional photo-multiplier tubes (PMTs). Photon detector 625 can also include cryogenically cooled detectors that sense energy via changes in detector temperature or electrical resistivity as photons strike the detector apparatus. Photon detector 625 can detect photons received across the optical link. Photon evaluator 630 can include conventional circuitry for processing and evaluating output signals from photon detector 625 in accordance with quantum cryptographic techniques.
Although this exemplary description is based on a “one way” quantum cryptographic system in which one device contains a laser source and the other contains detectors, the transceivers may also be based on so-called “plug and play” (round trip) technology in which one device contains both a source and detectors, and the other device contains an attenuator and Faraday mirror or other retroreflector. Implementations of this invention may use the various forms of quantum cryptographic links.
Exemplary Sifting Process
FIG. 7 is a flowchart that illustrates an exemplary sifting process that may be implemented in QKD endpoint 405 consistent with the principles of the invention. FIG. 3 illustrates a classical sifting process. The exemplary process illustrated in FIG. 7 is an augmented classical sifting process. FIG. 8 is a sifting example that is used to help explain the process of FIG. 7.
Processing unit 505 of QKD endpoint 405a may begin by causing transceiver 525 to send pulses or photons with a random basis (for example, polarity) and value (act 702). As can be seen in row 1 of FIG. 8, going from left to right, Alice (“A”) sends the first two pulses using a rectilinear basis. “A” sends the next three pulses using a diagonal basis. “A” then sends a sixth pulse using a rectilinear basis and a seventh pulse using a diagonal basis.
Next, processing unit 505 of QKD endpoint 405b causes transceiver 525 to measure the received photons using a random basis. QKD endpoint 405b may respond to “A” with a basis and a random bit value (0 or 1) for each received pulse (act 704). The random bit values may be sent to “A” unencrypted over network 410. As shown in row 2 of FIG. 8, from left to right, Bob, (“B”) responds, indicating that the first two pulses were measured using a rectilinear basis, the third pulse was measured using a diagonal basis, the fourth and fifth pulses were measured using a rectilinear basis, and the sixth and seventh pulses were measured using a diagonal basis. “B” may also include random bits, 0, 1, 1, 0, 1, 0, 0 with the response.
QKD endpoint 405a receives the response from “B”. Processor 505 of QKD endpoint 405a evaluates the response, determines which responses from “B” are correct, and causes QKD endpoint 405a to transmit to “B” an indication of which pulses “A” and “B” agree on the basis (act 706). As can be seen in row 3 of FIG. 8, “A” indicates to “B” that they agree on the basis of the first three pulses and the seventh pulse.
QKD endpoint 405b receives the indication from “A”. At this point, both sides, “A” and “B”, know the pulses upon which there is basis agreement and the random bits sent by “B,” as indicated by row 2 of FIG. 8. Corresponding processors 505 of QKD endpoints 404a and 405b retrieve the values of the agreed-upon pulses and exclusive-or each of the values with the corresponding random bit sent by “B” (act 708). QKD endpoints 405a and 405b may have previously stored the values and the random bits generated by “B” in respective memories 510. As can be seen in row 4 of FIG. 8, the agreed-upon pulses are the first three pulses and the seventh pulses, with respective values 1, 0, 1, and 0. Exclusive or'ing the values 1, 0, 1, and 0 with the random bit values 0, 1, 1, 0, respectively, results in 1, 1, 0, and 0, which may then be used as a cryptographic key or may be input to privacy amplification 240, which may generate a cryptographic key from 1, 1, 0, and 0 based on a hash function. The above process is an improvement over the process, illustrated in FIG. 3, in that multiple parties, A and B contribute randomness to the sifting process, thereby decreasing the possibility of generating a biased cryptographic key
FIG. 9 is a flowchart that illustrates a second exemplary sifting process that may be implemented in QKD endpoint 405 consistent with the principles of the invention. FIG. 10 is a sifting example that is used to help explain the process of FIG. 9.
Processing unit 505 of QKD endpoint 405a may begin by causing transceiver 525 to send pulses or photons with a random basis and value (act 902). As can be seen in row 1 of FIG. 10, going from left to right, “A” sends the first two pulses using a rectilinear basis. “A” sends the next three pulses using a diagonal basis. “A” then sends a sixth pulse using a rectilinear basis and a seventh pulse using a diagonal basis.
Next, processing unit 505 of QKD endpoint 405b causes transceiver 525 to measure the received pulses or photons using a random basis and QKD endpoint 405b may respond to “A” with a basis, which may be randomly selected, for each received pulse (act 904). QKD endpoint 405b may send the response unencrypted over network 410. As shown in row 2 of FIG. 10, from left to right, “B” responds indicating that the first two pulses were measured using the rectilinear basis, the third pulse was measured using the diagonal basis, the fourth and fifth pulses were measured using the rectilinear basis, and the sixth and seventh pulses were measured using the diagonal basis.
QKD endpoint 405a receives the response from “B”. Processor 505 of QKD endpoint 405a evaluates the received response, determines which responses from “B” are correct, and transmits to “B” an indication of which pulses “A” and “B” agree on a basis (act 906). As can be seen in row 3 of FIG. 10, “A” indicates to “B” that they agree on the basis of the first three pulses and the seventh pulse.
QKD endpoint 405b receives the indication from “A”. At this point, both sides, “A” and “B”, know the pulses upon which there is a basis agreement. Processor 505 of QKD endpoint 405b may generate a random bit (0 or 1) corresponding to each pulse in which there is agreement with “A” and processor 505 may cause QKD endpoint 405b to send agreed-upon pulse numbers with the corresponding random bit value for each agreed-upon pulse number (act 908). The random bit values may be sent to “A” unencrypted over network 410. As shown in row 4 of FIG. 10, the first agreed-upon pulse has a value of 1 and a corresponding random bit value of 0 (the first number in parentheses is a pulse value and the second number is a random bit value generated by “B”). The second pulse has a value of 0 and a corresponding random bit value of 1. The third pulse has a value of 1 and a corresponding random bit value of 1. The last pulse has a value of 0 and a corresponding random bit value of 1.
QKD endpoint 405a receives the pulse numbers and random bits from “B” and processor 505 of QKD endpoint 405a may store the random bit values in memory 510. Corresponding processors 505 of QKD endpoints 404a and 405b may retrieve the values of the agreed-upon pulses and the corresponding random bits values from “B” and may exclusive-or each of the values of the agreed-upon pulses with the corresponding random bit values (act 910). The corresponding random bit values generated by “B” are 0, 1, 1, and 0, as can be seen in row 4 of FIG. 10. Exclusive or'ing the pulse values 1, 0, 1, and 0 with the random bit values 0, 1, 1, 0, respectively, results in 1, 1, 0, and 0, which may then be used as a cryptographic key (row 5 of FIG. 10) or may be input to privacy amplification 240, which may generate a cryptographic key from 1, 1, 0, and 0 based on a hash function.
Variations
The above processes and examples in FIGS. 8-10 are exemplary and are not limiting. Many other implementations consistent with the principles of the invention may also be used. For example, the newer “Geneva” protocol can be augmented using techniques, as described above, such that both parties, “A” and “B” contribute random values to the sifting process.
As an alternative to one of the user's (“B”) sending explicit random bits for each of the agreed-upon pulses, the user may, from time to time, send a group of random bits to the other user (“A”). The group of random bits may be used as a seed for a pseudo-random number generator that may expand the group of random bits to a series of pseudo-random values. These pseudo-random values may then be used during the sifting process instead of the random values provided by “B”. Although, the examples provided above include multi-party randomness in a quantum sifting process, the invention is not limited to only the sifting process. Alternative implementations may include numerous ways in which multi-party randomness may be included. For example, second-party randomness may also be incorporated during an error detection and correction process by a number of different techniques. As one example, random values may be included by the second party alongside indications of bit ranges in which errors are being detected or corrected, and/or alongside parity information for bit fields. As another example, random values may be included alongside forward-error correction information such as cyclic redundancy checks, checksums, Reed-Solomon codes, BCH codes, or other forms of error detection and correction information. Both “A” and “B” may derive a key by performing an operation, such as, for example, an exclusive-or'ing operation, of properly received and measured random bits sent from “A” to “B” and the random bits contributed by “B”. Alternatively, the group of random bits provided by “B” may be used as a seed for a pseudo-random number generator, as discussed above. As may be apparent to those skilled in the art, such injections of second-party randomness may be readily included in both interactive and one-way forms of error detection and correction processes.
Implementations consistent with the principles of the invention may be adopted for use with one-way systems, plug and play (round trip) quantum systems, and systems based on entanglement.
CONCLUSION
Systems and methods consistent with the present invention, therefore, provide mechanisms for performing a sifting process in a quantum cryptographic system, such that both parties contribute to the randomness of the cryptographic key.
The foregoing description of exemplary embodiments of the present invention provides illustration and description, but is not intended to be exhaustive or to limit the invention to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the invention. For example, while certain components of the invention have been described as implemented in hardware and others in software, other configurations may be possible.
While series of acts have been described with regard to FIGS. 7 and 9, the order of the acts is not critical. No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items. Where only one item is intended, the term “one” or similar language is used. The scope of the invention is defined by the following claims and their equivalents.

## Claims

1. A method for performing quantum key distribution in a quantum cryptographic system, the method comprising:
contributing a first set of random values, from a first endpoint, to a quantum key distribution process;
contributing a second set of random values, from a second endpoint, to the quantum key distribution process, where the second contributing act comprises:
sending, from the second endpoint to the first endpoint, a plurality of random bits,
using, by the first endpoint, the plurality of random bits as a seed for a pseudo-random number generator, and
expanding, by the pseudo-random number generator, the seed to a series of pseudo-random values; and

deriving, at the first and the second endpoints, a key based on at least some of the first set of random values and one of at least some of the second set of random values or at least some of the pseudo-random values.

2. The method of claim 1, where:
the second contributing act is performed during a sifting process.

3. The method of claim 1, where:
the second contributing act is performed during an error detection and correction process.

4. The method of claim 1, where:
the first contributing act comprises:
sending each one of the first set of random values using a randomly generated basis.

5. The method of claim 4, where the basis includes a type of polarization.

6. The method of claim 4, where the basis includes a phase modulation.

7. The method of claim 4, where:
the second contributing act comprises:
sending an indication of received pulses and a basis for each of the received pulses.

8. The method of claim 7, where the deriving comprises:
sending, from the first endpoint, an indication of the pulses upon which the first and the second endpoints agree, and
using ones of the second set of random values, provided by the second endpoint, to perform an operation with ones of the first set of random values corresponding to the pulses upon which the first and the second endpoints, the key being based on a result of the operation.

9. The method of claim 7, where the second contributing act further comprises:
sending the second set of random values with the indication of received pulses, each one of the second set of random values corresponding to a different one of the received pulses.

10. The method of claim 7, where the second contributing act further comprises:
sending the second set of random variables in response to receiving, from the first endpoint, an indication of the pulses upon which the first and the second endpoints agree, each one of the second set of random variables corresponding to a different one of the pulses upon which the first and the second endpoints agree.

11. The method of claim 1, where the quantum cryptographic system is a one-way type quantum system.

12. The method of claim 1, where the quantum cryptographic system is a plug and play type quantum system.

13. The method of claim 1, where the quantum cryptographic system is based on entanglement.

14. The method of claim 1, where:
the first endpoint performs the quantum key distribution process via a freespace optical link.

15. The method of claim 1, where:
the first endpoint performs the quantum key distribution process via a link including fiber.

16. The method of claim 1, where the deriving comprises:
performing an exclusive-or operation on at least some of the first random values and at least some of the second random values, the key being based on a result of the exclusive- or operation.

17. The method of claim 1, where the second contributing act comprises:
sending the second set of random values unencrypted to the first endpoint.

18. A quantum cryptographic system comprising:
a first quantum key distribution endpoint; and
a second quantum key distribution endpoint, where the second quantum key distribution endpoint:
contributes a second set of random values to a quantum key distribution process, and
sends a plurality of random bits, including the second set of random values, to the first quantum key distribution endpoint,

where the first quantum key distribution endpoint:
contributes a first set of random values to the quantum key distribution process, and
uses the plurality of random bits as a seed for a pseudo-random number generator, such that the pseudo-random number generator expands the seed to a series of pseudo-random values, and

where the first and second key distribution endpoints:
communicate via a quantum channel therebetween, and
derive a key based on at least some of the first set of random values and one of at least some of the second set of random values or at least some of the pseudo-random values.

19. The quantum cryptographic system of claim 18, where:
the second quantum key distribution endpoint is configured to contribute the second set of random values during a sifting process.

20. The quantum cryptographic system of claim 18, where:
the second quantum key distribution endpoint is configured to contribute the second set of random values during an error detection and correction process.

21. The quantum cryptographic system of claim 18, where:
the at least some of the first set of random values are ones of the first set of random values that are correctly received and measured by the second quantum key distribution endpoint, and
each of the at least some of the second set of random values corresponds to a different one of the at least some of the first set of random values.

22. The quantum cryptographic system of claim 21, where:
the first and the second endpoints are further configured to derive the key based on a result of performing an exclusive-or operation on each one of the at least some of the second set of random values with corresponding ones of the at least some of the first set of random values.

23. The quantum cryptographic system of claim 18, where:
the first quantum key distribution endpoint is configured to:
send each one of the first set of random values using a basis, and

the second quantum key distribution endpoint is configured to:
receive at least a portion of the first set of random values and measure each one of the at least a portion of the first set of random values using a separately selected basis, and
send an indication for each of the at least a portion of the first set of random values and an indication of the separately selected basis for the each of the at least a portion of the first set of random values to the first quantum key distribution endpoint.

24. The quantum cryptographic system of claim 23, where:
each of the bases includes a type of polarization.

25. The quantum cryptographic system of claim 23, where:
each of the bases includes a phase modulation.

26. The quantum cryptographic system of claim 23, where:
each of the bases is randomly selected.

27. The quantum cryptographic system of claim 23, where:
the first quantum key distribution endpoint is further configured to:
send an indication of ones of the first set of random values, in which the first and the second quantum key distribution endpoints are in agreement on the basis, to the second quantum key distribution endpoint.

28. The quantum cryptographic system of claim 23, where:
when the second quantum key distribution endpoint sends the at least a portion of the first set of random values to the first quantum key distribution endpoint, the second quantum key distribution endpoint includes a second set of random values, each of the second set of random values corresponding to a different one of the at least a portion of the first set of random values.

29. The quantum cryptographic system of claim 27, where:
when the second quantum key distribution endpoint receives the indication of ones of the first set of random values, in which the first and the second quantum key distribution endpoints are in agreement on the basis, the second quantum key distribution endpoint is configured to send, to the first quantum key distribution endpoint, the second set of random values.

30. The quantum cryptographic system of claim 18, where:
the first and the second endpoints are further configured to derive the key based on a result of performing an exclusive-or operation on at least some of the second set of random values with corresponding ones of at least some of the first set of random values.

31. The quantum cryptographic system of claim 18, where:
the quantum cryptographic system is a one-way type quantum system.

32. The quantum cryptographic system of claim 18, where:
the quantum cryptographic system is a plug and play type quantum system.

33. The quantum cryptographic system of claim 18, where:
the quantum cryptographic system is based on entanglement.

34. The quantum cryptographic system of claim 18, where:
the second quantum key distribution endpoint is configured to send, unencrypted, the second set of random values to the first quantum key distribution endpoint.

35. A quantum key distribution endpoint comprising:
a bus;
a transceiver coupled to the bus;
a memory coupled to the bus; and
a processing unit coupled to the bus, wherein:
the memory includes a plurality of instructions for the processing unit, such that when the quantum key distribution endpoint is configured as a first quantum key distribution endpoint, the processing unit is configured to:
contribute a first set of random values to a quantum key distribution process with a second quantum key distribution endpoint,
receive a second set of random values from the second quantum key distribution endpoint,
receive a plurality of random bits, including the second set of random values, from the first quantum key distribution endpoint,
use the plurality of random bits as a seed for a pseudo-random number generator, such that the pseudo-random number generator is configured to expand the seed to a series of pseudo-random number values, and
derive a key based on at least some of the first set of random values and one of at least some of the second set of random values or at least some of the pseudo-random number values.

36. The quantum key distribution endpoint of claim 35, where:
when the quantum key distribution endpoint is a second quantum key distribution endpoint, the processing unit is further configured to:
contribute the second set of random values during a sifting process.

37. The quantum key distribution endpoint of claim 35, where:
when the quantum key distribution endpoint is a second quantum key distribution endpoint, the processing unit is further configured to:
contribute the second set of random values during an error detection and correction process.

38. The quantum key distribution endpoint of claim 35, where:
the processing unit is further configured to:
use a basis when sending each of the first set of random values.

39. The quantum key distribution endpoint of claim 38, where:
the basis is a type of polarization, the polarization being one of diagonal and rectilinear.

40. The quantum key distribution endpoint of claim 38, where:
the basis includes a phase modulation.

41. The quantum key distribution endpoint of claim 38, where:
each one of the bases is randomly selected.

42. The quantum key distribution endpoint of claim 35, where:
when the quantum key distribution endpoint is a second quantum key distribution endpoint, the processing unit is further configured to:
send an indication of received ones of the first set of random values and a selected basis for each of the received ones of the first set of random values.

43. The quantum key distribution endpoint of claim 35, where:
when the quantum key distribution endpoint is a first quantum key distribution endpoint, the processing unit is further configured to:
receive an indication of received ones of the first set of random values and a basis from a second quantum key distribution endpoint, and
send an indication, to the second quantum key distribution endpoint, of which ones of the first set of random values the first and the second quantum key distribution endpoints agree.

44. The quantum key distribution endpoint of claim 35, where:
when the quantum key distribution endpoint is a second quantum key distribution endpoint, the processing unit is further configured to:
send, to a first quantum key distribution endpoint, an indication of received ones of the first set of random values and the second set of random values, each one of the second set of random values corresponds to a received one of the first set of random values.

45. The quantum key distribution endpoint of claim 35, where:
the processing unit is further configured to:
derive the key based on a result of performing an exclusive-or operation on the at least some of the first set of random variables and the at least some of the second set of random variables.

46. The quantum key distribution endpoint of claim 35, where:
when the quantum key distribution endpoint is a second quantum key distribution endpoint, the processing unit is further configured to:
send a plurality of random bits, including the second set of random values, to a first quantum key distribution endpoint.

47. The quantum key distribution endpoint of claim 35, where:
the processing unit is further configured to derive the key based on a result of performing an exclusive-or operation on at least some of the series of pseudo-random values with corresponding ones of the at least some of the first set of random values.

48. The quantum key distribution endpoint of claim 35, where:
the quantum key distribution endpoint is configured to operate in a one-way type quantum system.

49. The quantum key distribution endpoint of claim 35, where:
the quantum key distribution endpoint is configured to operate in a plug and play type quantum system.

50. The quantum key distribution endpoint of claim 35, where:
the quantum key distribution endpoint is configured to operate in system based on entanglement.

51. The quantum key distribution endpoint of claim 35, where when the quantum key distribution endpoint is a second quantum key distribution endpoint, the processing unit is further configured to:
send the second set of random values unencrypted to a first quantum key distribution endpoint.

52. A machine-readable medium having a plurality of instructions recorded therein, such that when the plurality of instructions are executed by a processor of a quantum key distribution endpoint, the processor is configured to:
contribute a first set of random values to a quantum key distribution process,
receive a second set of random values, for the quantum key distribution process, from a second endpoint,
receive a plurality of random bits, including the second set of random values, from the second endpoint,
use the plurality of random bits as a seed to a pseudo-random number generator,
expand, via the pseudo-random number generator, the seed to a series of pseudo-random values, and
derive a key based on at least some of the first set of random values and one of at least some of the second set of random values or at least some of the pseudo-random values.

53. The machine-readable medium of claim 52, where the processor is further configured to:
send each one of the first set of random values, to another quantum key distribution endpoint, using a basis.

54. The machine-readable medium of claim 53, where each of the bases includes a type of polarization.

55. The machine-readable medium of claim 53, where each of the bases is a phase modulation.

56. The machine-readable medium of claim 53, where each of the bases is randomly selected.

57. The machine-readable medium of claim 52, where processor is further configured to:
receive an indication of received ones of a plurality of pulses and a plurality of selected bases from the second endpoint, each one of the received ones of the pulses corresponding to one of at least some of the first set of random values, and
send an indication of the pulses upon which the quantum key distribution endpoint agrees with the second endpoint.

58. The machine-readable medium of claim 57, where:
the processor is further configured to:
receive at least some of the second set of random values with the indication of the received ones of the pulses and the plurality of selected bases from the second endpoint.

59. The machine-readable medium of claim 57, where:
the processor is further configured to:
receive at least some of the second set of random values from the second endpoint after sending the indication of the pulses upon which the quantum key distribution endpoint agrees with the second endpoint.

60. The machine-readable medium of claim 52, where:
the operation includes an exclusive-or operation.