Quantum key distribution method and apparatus

A quantum key distribution (QKD) method involves the sending of random data from a QKD transmitter to a QKD receiver over a quantum signal channel, and the QKD transmitter and receiver respectively processing the data transmitted and received over the quantum signal channel in order to seek to derive a common random data set. This processing is effected with the aid of messages exchanged between QKD transmitter and receiver over an insecure classical communication channel. The processing concludes with a check, effected by an exchange of authenticated messages over the classical communication channel, that the QKD transmitter and receiver have derived the same random data set. At least some of the other messages exchanged during processing are exchanged without authentication and integrity checking. A QKD transmitter and QKD receiver are also disclosed.

FOREIGN APPLICATION PRIORITY DATA

This application claims benefit of priority of Foreign Patent Application No. GB 0512229.6, filed in the Great Britain on Jun. 16, 2005, which is incorporated herein by reference.

FIELD OF THE INVENTION

The present invention relates to a quantum key distribution (QKD) method and apparatus.

BACKGROUND TO THE INVENTION

QKD methods and systems have been developed which enable two parties to share random data in a way that has a very high probability of detecting any eavesdroppers. This means that if no eavesdroppers are detected, the parties can have a high degree of confidence that the shared random data is secret. QKD methods and systems are described, for example, in U.S. Pat. No. 5,515,438 and U.S. Pat. No. 5,999,285. In known QKD systems, randomly polarized photons are sent from a transmitting apparatus to a receiving apparatus either through a fiber-optic cable or free space.

Whatever particular QKD protocol is used, QKD methods typically involve sending a random data set from a QKD transmitter to a QKD receiver over a quantum signal channel, the QKD transmitter and receiver then respectively processing the data transmitted and received via the quantum signal channel with the aid of messages exchanged between them over an insecure classical communication channel thereby to derive a common subset of the random data set. The processing includes an error correction phase during which a substantial number of messages are exchanged over the classical communication channel.

The classical communication channel is insecure in that it is not required to be confidential. However, in order to prevent a “man in the middle” type of attack, message authentication and integrity checking are still needed and are usually carried out for every message sent over the classical communication channel leading to a considerable processing overhead.

SUMMARY OF THE INVENTION

According to one aspect of the present invention, there is provided a quantum key distribution (QKD) method comprising:sending random data from a QKD transmitter to a QKD receiver over a quantum signal channel, andthe QKD transmitter and receiver respectively processing the data transmitted and received over the quantum signal channel with the aid of messages exchanged between them over an insecure classical communication channel in order to seek to derive a common random data set,
said processing concluding with a check, effected by an exchange of authenticated messages over the classical communication channel, that the QKD transmitter and receiver have derived the same said random data set, and at least some of the messages exchanged during said processing being exchanged without authentication and integrity checking.

According to another aspect of the present invention, there is provided a quantum key distribution (QKD) transmitter comprising:a quantum signal transmitter for transmitting random data to a QKD receiver;an insecure classical communication transceiver; anda processing subsystem for processing the random data transmitted by the quantum signal transmitter, with the aid of messages exchanged with the QKD receiver via the classical communication transceiver, in order to seek to derive a common random data set, the processing subsystem being arranged to conclude said processing with a check, effected by an exchange of authenticated messages with the QKD receiver via the classical communication transceiver, that the QKD transmitter and receiver have derived the same said random data set,the QKD transmitter being so arranged that at least some of the messages exchanged during said processing are exchanged without authentication and integrity checking.

According to a further aspect of the present invention, there is provided a quantum key distribution (QKD) receiver comprising:a quantum signal receiver for receiving random data from a QKD transmitter;an insecure classical communication transceiver; anda processing subsystem for processing the random data received by the quantum signal receiver, with the aid of messages exchanged with the QKD transmitter via the classical communication transceiver, in order to seek to derive a common random data set, the processing subsystem being arranged to conclude said processing with a check, effected by an exchange of authenticated messages with the QKD transmitter via the classical communication transceiver, that the QKD transmitter and receiver have derived the same said random data set,the QKD receiver being so arranged that at least some of the messages exchanged during said processing are exchanged without authentication and integrity checking.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring toFIG. 1of the accompanying drawings there is shown a quantum-key-distribution (QKD) system comprising a QKD transmitting apparatus2arranged to inter-work with complimentary QKD receiving apparatus4of the transaction terminal5. The device1comprises, in addition to the QKD transmitting apparatus4,:a control processor9(with associated program and data memories, not separately shown) for controlling the overall operation of the device,a classical communications channel transceiver12(that is, one not relying on quantum technology) such as an Infrared Data (IrDA) transceiver, a BLUETOOTH (Trade Mark) transceiver, the normal wireless communication transceiver of a mobile phone where the device1takes this form, or even an interface for a wired connection; anda user interface47such as a keypad and display.

The transaction terminal5comprises, in addition to the QKD receiving apparatus4,:a transaction processor9;a classical communications channel transceiver50arranged to inter-communicate with the transceiver12of the device2; anda user interface66.

In the course of inter-working of the QKD transmitting apparatus2and QKD receiving apparatus4two channels are established between the transmitting apparatus2and the receiving apparatus4. The first channel6is a classical communication channel (that is, one not relying on quantum technology). The second channel8is a quantum channel provided by the sending of a quantum signal from the QKD transmitting apparatus2to the QKD receiving apparatus.

A quantum signal, in the present context, is a signal capable of conveying sufficient data to enable a quantum cryptographic transaction with another entity. Thus, for example, in one embodiment, a source and transmitter are required which are capable of preparing and transmitting the quantum state which it is desired to send to a requisite degree of accuracy.

A requirement for the successful transmission of the quantum signal in the quantum channel8is that the quantum signal is correctly aligned with a quantum signal detector of the receiving apparatus4, both directionally and such that the polarization directions of the transmitting and receiving apparatus2,4have the same orientation. This can be achieved by using a mounting cradle or similar physical structure (not shown) configured to seat the device1in a particular orientation. With the cradle appropriately fixed in position in front of the receiving apparatus4(the cradle can, for example be manufactured as an integral part of the structure of the receiving apparatus4), when the device1is correctly seated in the cradle the desired alignment between the QKD transmitting and receiving apparatus2and4is achieved. Alternatively, an active alignment system can be provided that uses an alignment channel between the transmitting and receiving apparatus to generate alignment adjustment signals for use in aligning the transmitting apparatus2and the receiving apparatus4. It will be assumed hereinafter that appropriate measures have been taken to ensure that the quantum signal output by the transmitting apparatus2is correctly aligned with the quantum signal detector of the receiving apparatus4.

Referring toFIG. 2of the accompanying drawings, the QKD transmitting apparatus2comprises:a quantum channel emitter14;a processor46;a memory48for storing both data and control programs for controlling operation of the processor46to operate the transmitting apparatus2in the manner described below;a classical channel transceiver12to provide a data communication channel between the QKD transmitting apparatus2and the QKD receiving apparatus4; anda user interface47.

The quantum channel emitter14comprises an array of light emitting diodes (LEDs)20,22,24and26. In front of each LED20,22,24and26is a respective polarising filter28,30,32,34. Filter28polarises the photons emitted from LED20vertically, filter30polarises the photons emitted from LED22horizontally, filter32polarises the photons emitted from LED24diagonally and filter34polarises the photons emitted from LED26anti-diagonally (the directions of polarisation are stated relative to an intended orientation of the apparatus2when in use). Thus, after passing through the filters28,30,32,34, the photons are polarised in four directions, each at 45° to another thus providing two pairs of orthogonal polarisations. The LEDs20,22,24,26are narrow frequency emitters such as those available from Agilent Technologies, Inc. of 395 Page Mill Rd, Palo Alto, Calif. 94306, United States e.g., one of the Sunpower series, emitting at 590 nm or 615 nm.

A fibre optic light guide36is provided to convey the polarised photons to an attenuation filter37and narrow band pass frequency filter38. The purpose of the attenuation filter37is to reduce the number of photons emitted and the frequency filter38is to restrict the emitted photons to a narrow frequency range (typically plus or minus 1 nm). Without the attenuation filter37in place the number of photons emitted per LED pulse would be of the order of one million. With the filter in place, the average emission rate is 1 photon per 100 pulses. Importantly this means that more than one photon is rarely emitted per pulse. The attenuation filter37and frequency filter38can be combined in a single device if preferred. A spatial filter is provided to limit light leakage outside the channel.

The QKD receiving apparatus4is further explained with reference toFIG. 3of the accompanying drawings. The receiving apparatus4comprises:a quantum signal receiver52for receiving the quantum signal output from the QKD transmitting apparatus2;a processor68;a memory70for storing both data and control programs for controlling operation of the processor68to operate the QKD receiving apparatus4in the manner described below; anda classical channel transceiver12to provide a data communication channel between the QKD receiving apparatus2and the QKD transmitting apparatus2; and a user interface66

The quantum signal receiver53comprises a lens54, a quad-detector arrangement85, and a fibre optic light guide for conveying photons received through the lens to the quad-detector arrangement85. The end of the light guide57nearest the lens54is fixed on the optical axis of the lens55. The quad-detector arrangement85comprises a beam splitter56, a first paired-detector unit80, and a second paired-detector unit81. The first paired-detector unit80comprises a beam splitter82, polarizers58,59, and detectors60,61. The second paired-detector unit81comprises a beam splitter83, polarizers62,63, and detectors64,65. The polarizers58,59of the first paired-detector unit80have their directions of polarization orthogonal to each other; similarly, the polarizers58,59of the second paired-detector unit81also have their directions of polarization orthogonal to each other. The polarization directions of the polarizers of the first paired-detector unit80are at 45° to the polarization directions of the polarizers of the second paired-detector unit81. The beam splitters56,82and83are depicted inFIG. 3as half-silvered mirrors but can be of other forms such as diffraction gratings.

Dotted line86depicts the paths of photons passing through the lens54to the detectors60,61,64and65of the quad-detector arrangement85.

Use of the device1in operating the transaction terminal5will now be described with reference toFIGS. 4A and B of the accompanying drawings.

The convention is followed that the transmitting side for the quantum signal is referred to as Alice and the receiving side as Bob. InFIGS. 4A and 4B, the appearance of the name of Alice and/or Bob in block capitals in relation to a particular step indicates the active involvement of Alice and/or Bob, as the case may be, in that step.

When a user activates the QKD transmitting apparatus2in step100(FIG. 4A) via the user interface47, Alice will initiate a dialog with Bob using the classical communication channel set up via the transceivers12and50. Alice tells Bob who she is and Bob responds by telling Alice who he is. According to the present embodiment, this is done using a cache of shared secrets possessed by Alice and Bob and either generated by previous interactions between them or downloaded from a trusted source Where the transaction terminal5is part of a network of such terminals, there may either be a unique set of shared secrets associated with Alice and the particular terminal (Bob) currently being used by Alice (in which case, each terminal will typically itself store the respective set of shared secrets it has in common with Alice), or the terminals may all use the same set of shared secrets for working with Alice (in which case the shared secrets are typically centrally stored for access by all terminals as required). Typically, the shared secrets will be of the order of 100 kbits to 10 Mbits long. The shared secrets can be considered as composed of: a∥b∥c∥rest_of_secrets where a, b and c are, for example, each 64 bits (the symbol ∥ representing string concatenation).

In step102, Alice transmits (a) XOR (b) to Bob where XOR is the exclusive function. In step104, Bob searches through his set of shared secrets looking for a match. Once the match is found, in step106Bob transmits (a) XOR (c) back to Alice. In step108, Alice checks that this is the correct response. Both Alice and Bob then, in step110, delete a, b and c from their set of shared secrets. i.e. shared secrets=rest_of_secrets.

When the QKD transmitting apparatus2and the QKD receiving apparatus4are optically aligned, the quantum signal emitted by the emitter14will pass through the lens54and be guided by optical fibre57to the quad-detector arrangement85, and the polarization directions of the signal will align with those of the quad-detection arrangement85.

Once the quantum channel has been established, a quantum key transfer can be made. The transfer of information based on quantum cryptography is carried out using a variant of the BB84 quantum coding scheme. The specific algorithm according to the preferred embodiment will now be described.

Alice and Bob have a predetermined agreement as to the length of a time slot in which a unit of data will be emitted. To achieve initial synchronisation, Alice in step124(seeFIG. 4A) overdrives the alignment emitter40to produce a “START” synchronisation signal. Alternatively, the quantum signal channel can be used for synchronisation.

In step126, Alice randomly generates a multiplicity of pairs of bits, typically of the order of 108pairs. Each pair of bits consists of a message bit and a basis bit, the latter indicating the pair of polarization directions to be used for sending the message bit, be it vertical/horizontal or diagonal/anti-diagonal. A horizontally or diagonally polarised photon indicates a binary 1, while a vertically or anti-diagonally polarised photon indicates a binary 0. The message bit of each pair is thus sent over the quantum signal channel encoded according to the pair of polarization directions indicated by the basis bit of the same pair. Randomness in generating the pairs of bits can be achieved by a hardware random number generator such as a quantum-based arrangement in which a half-silvered mirror is used to pass/deflect photons to detectors to correspondingly generate a “0”/“1” with a 50:50 chance; an alternative form of random number generator can be constructed based around overdriving a resistor or diode to take advantage of the electron noise to trigger a random event.

When receiving the quantum signal from Alice, Bob randomly chooses which basis (pair of polarization directions) it will use to detect the quantum signal during each time slot and records the results.

The sending of the message bits of the randomly-generated pairs of bits is the only communication that need occur using the quantum channel. The remainder of the algorithm is carried out using the classical channel.

In step128, Bob informs Alice of the time slots in which a signal was received and the basis (i.e. pair of polarization directions) thereof.

In step130, Alice sends to Bob confirmation of which of those bases is correct. Alice and Bob then use the bits corresponding to the time slots where they used the same bases, as the initial new shared secret data. However, there may well be discrepancies (errors) between the versions of the new shared secret data held by Alice and Bob due, for example, to noise in the quad detector arrangement85.

In step132, error rate checking is carried out by Alice and Bob comparing their versions of a selected subset of the initial new shared secret data. The higher the error rate, the greater the probability is that the quantum signal has been intercepted. Error rates above about 12% are generally unacceptable and, preferably, an upper threshold of 8% is set since above this figure the number of bits available after error correction and privacy amplification is too low.

If the error rate is found to be greater than the 8% threshold, the session is abandoned and the new shared secret data is discarded (step134).

If the error rate is below the 8% threshold, error correction is then carried out on the initial new shared secret data (after the latter have been reduced by discarding the subsets used for error rate determination).

Error correction is effected using a version of the CASCADE algorithm in which two basic steps136,138(seeFIG. 4B) are repeated until a stable condition is reached (typically after six or seven iterations); alternatively, and as indicated by step140inFIG. 6B, the number of iterations can be fixed. The two basic steps are:(1) A preliminary step136in which Alice and Bob effect the same random permutation of their respective versions of the new shared secret data. This is done as follows. Alice and Bob use the same subset of bits (typically 64 bits) of their new shared secret data as a seed for a deterministic pseudo random number generator. This pseudo random number generator is used to permute the data. This way both Alice and Bob will permute their data in the same way. The shared secret is then reduced by the subset used as the seed for the random number generator. This permutation step is designed to do two things—it uniformly redistributes the bits in error and also make life difficult for external observers (who do not know how the bits are being redistributed).The remaining new shared secret data is then treated as if divided into blocks of a size chosen such that for the measured error rate each block has, on average, one error.(2) An error elimination step138in which Alice and Bob process each block of their respective versions of the shared secret data as follows. Both Alice and Bob determine the parity of the block and Bob sends its parity value to Alice. If Alice finds that Bob's parity value is the same value as Alice has determined for her block, that block is accepted as error free (although it could have any even number of errors); if Alice finds that her parity value differs from Bob's, the block is assumed to have one error (though it could have any odd number of errors); in this case, a binary search process is followed to track down the error. This search process involves the steps of halving the block in error, and determining which half contains the error by Bob sending Alice the parity of one of the half blocks which Alice compares with her parity value for the corresponding half block in her possession; if the parity values differ, the errored half block is the one being processed whereas if the parity values are the same, the errored half block is the one not being processed. The foregoing steps are then repeated for the errored half block and so on until the errored bit is identified). The errored bit is then either discarded or Bob flips the value of his version of the bit.

The above-described error correction process will generally achieve an error level of 1:106or better which is sufficient for present purposes.

However, it will be appreciated that the error correction process involves the exchange of considerable amounts of parity information between Bob and Alice which is potentially of use to an eavesdropper. It is also to be noted that although the error-rate-based intercept check carried out in step132will detect interception of any substantial portion of the quantum signal transmission, an eavesdropper may still be able to successfully intercept a small number of bits of the quantum signal as there will be a finite (though very small) probability that more than one photon is sent during a time slot over the quantum channel thereby leaving open the possibility that an eavesdropper with a beam splitter can capture one photon while allowing Bob to receive the other photon. Accordingly, a privacy amplification step142is next performed. In this step both Alice and Bob reduce the size of their respective versions of the new shared secret data using a deterministic randomizing permutation, the reduction in size being dependent on the amount of parity information exchanged and the level of security required.

A detailed discussion of privacy amplification can be found, for example, in the paper “Generalized Privacy Amplification”, C. H. Bennett, G. Brassard, C. Crepeau, and U. M. Maurer; IEEE transactions on Information Theory, IT-41 (6), p 1915-1923. In general terms, it can be said that if the new shared secret x has a length of n bit after error correction, and the eavesdropper has at most k deterministic bits of information about the new shared secret, then if an appropriate class of hash function h( ) is applied to the secret random data:
{0,1}n→{0,1}n-k-s
where s is a safety parameter 0<s<n−k, the eavesdroppers expected information on h(x) is no more than (2−s/ln 2) bits. Thus varying the value of (n−k−s) gives different levels of security for the result of the hash of x; in particular, increasing s increases the level of security.

After the error correction and privacy amplification, Alice and Bob are very likely to have the same result. However, in step144Alice and Bob seek to re-assure themselves that this is the case by exchanging a hash of their new shared secret data; to protect and authenticate the transmitted hash, it is XORed with bits popped from the store of shared secrets. If the hashes differ (checked in step145), the newly shared data is discarded (step146) together with the bits used from the store of shared secrets.

On the assumption that Alice and Bob have the same new data, they merge the new data in with the existing shared secret. This merging involves the use of a hash function to ensure that the external observer has no knowledge of the final shared secret.

Data from this new shared secret random data can then be used, for example, to generate a session key (for example, a 128 bit session key) for encrypting an exchange of application data between the transmitting apparatus and receiving apparatus over the classical channel, the data used for creating the session key being discarded from the shared secret.

It may be noted that it is not necessary to integrity check or authenticate the messages exchanged in the error correction phase (steps136-140) because any interference with these messages by an eavesdropper will result in the check carried out in steps144and145being failed; all that is required is that the messages exchanged in step144are authenticated and integrity checked. Because of the processing overhead associated with authentication and integrity checking, the messages exchanged at least during the error correction phase are therefore not authenticated and integrity checked. In the above described QKD method, the authentication carried out on the messages exchanged in step144is effected by the XORing the hashes of the new shared secret data with elements of the previously-stored shared secret, it being assumed that Alice and Bob know the identity of the party holding the matching shared secret at least in the sense that it is the party with which they intend to share new secret random data. However, it is also possible to use any other suitable authentication method such as one based on public/private key pairs and public key certificates issued by a trusted authority and made available using a public key infrastructure.

It will be appreciated that many variations are possible to the above-described embodiment of the invention. Thus, for example, although in the above described method the newly generated and shared secret random data has been combined with a stored shared secret to form new secret shared random data for use in securing a classical communication channel between the device1and terminal5, it is also possible to use the newly generated and shared secret random data directly as new secret shared random data for securing the classical communication channel, that is, without combining it with a stored secret. Indeed, the use of a stored shared secret can be dispensed with entirely though in this case some other way must be provided to authenticate the user to the transaction terminal5(and vice versa), for example, public/private key pairs can be used along with public key certificates issued by a trusted authority and made available using a public key infrastructure.

The initial party identification and authentication (steps102-110) can be omitted or carried out using a different authentication method; however, it is preferred to include these steps as it prevents unnecessary usage of bits from the stored shared secret where Alice or Bob is communicating with an unintended party.

Although in the above described embodiment, error correction has been effected on the basis that Alice holds the reference data set, it would alternatively be possible to treat the data set held by Bob as the reference data set or to converge the data sets of Alice and Bob on some other basis.