Patent Description:
The foundations of current cybersecurity solutions are challenged by forthcoming quantum computers. Quantum computers are expected to break, or at least weaken, the most important existing cryptographic protocols.

There are two general approaches to mitigate the risk of quantum computers breaching security of a communication system: quantum cryptography based on physical security and post-quantum cryptography based on improved algorithmic approach.

Quantum cryptography offers physical-level security. It uses quantum properties of light to transmit encryption keys and is based on the impossibility to measure the properties without inescapable change of the properties, so that any eavesdropping can be detected and further communication prevented. When the encryption keys are then used for one-time-pad (OTP) encryption, the entire scheme offers information-theoretic security which is a synonym to unconditional security. This led to development of a technology for quantum cryptography, called Quantum Key Distribution (QKD). There are several types of QKD devices already commercially available, albeit at a high cost and at highly complicated deployment scenarios requiring direct fiber optic or satellite communication. As a consequence, the development of a system based on quantum cryptography is slow and heavily relies on public funding, such as the European Quantum Communication Infrastructure (EuroQCI project).

Post-Quantum Cryptography (PQC) offers algorithmic-level security, in the same way as classical cryptography does. PQC algorithms are assumed to be secure against an attack by a quantum computer. These algorithms are based on different mathematical foundations, which in theory, should result in a stronger resistance to cryptoanalytical attacks. Among many, the most popular foundation is offered by the theory of multidimensional lattices to form what is known as lattice-based cryptography. Post-Quantum cryptography is now officially recommended by organizations like the US National Institute of Standards and Technology (NIST) as the best way to mitigate the risks caused by quantum computers. However, as there is no hard proof of PQC security and as some of the algorithms which were meant as additional candidates in NIST July <NUM> recommendation were broken by modest computational resources, it is still unclear which kind of cryptography should be used for protection of critical infrastructure.

There are known software QKD emulators, such as the project called "<NPL>). It does not offer compliance with the ETSI standards, but allows for understanding of quantum optical features of the QKD communication. Another project, called <NPL>), offers simulation of QKD network under network simulator NS-<NUM>. The is also known a project developed at Politecnico di Torino, called QKD-SIM, which offers ability to work with simulated qubits - models for quantum bearers of information and operates according to ETSI <NUM> and ETSI <NUM> protocols.

There is a need to provide an improved communication system that would require less specialized hardware for implementation, but at the same time provide increased security as compared to current standard communication systems.

The object of the invention is a device for communicating with another device of the same type via an emulated quantum channel, the device comprising: a central processing unit; a memory; a hardware quantum random number generator; a network interface for communicating via the emulated quantum channel; wherein the central processing unit is configured to provide quantum key distribution keys to the other device, by: generating, by means of the quantum random number generator, at least one QKD key; generating, by means of the quantum random number generator, a token; sending the token, via the network interface, to the other device; receiving, from the other device, an encrypted token; decrypting the encrypted token with the public key of the other device; comparing the decrypted token with the generated token; upon determining that the decrypted token corresponds to the generated token, encrypting the at least one QKD key with the public key of the other device and sending, via the network interface, the encrypted at least one QKD key to the other device.

The central processing unit can be further configured to receive quantum key distribution keys from the key providing device by: receiving, via the network interface, the token from the QKD providing device; encrypting the token with the private key of the device; sending, via the network interface, the encrypted token to the QKD providing device; receiving, via the network interface, at least one encrypted QKD key; decrypting the at least one encrypted QKD key with the private key of the device.

The device may further comprise a secure application entity (210A, 210B) configured to receive the at least one QKD key.

The device may further comprise an interface to a secure application entity of another device, the interface configured to communicate the at least one QKD key.

The network interface can be one of the following interfaces: Ethernet interface, fiber optics interface, cellular network interface.

The invention also relates to a communication system comprising a plurality of devices as described herein, wherein the devices are configured to communicate with each other based on quantum keys exchanged via the emulated quantum channel.

The present invention is based on the assumption that it is quantum cryptography that offers better protection, but to avoid high deployment costs and complications of building direct fiber optic or deploying satellite communication, it is possible to emulate QKD technology in hardware devices. The possibility of such emulation is guaranteed by the fact of QKD technology being well standardized on the interface level by European Telecommunications Standards Institute (ETSI) which developed standards that enable interoperability of the quantum communication networks, such as : ETSI GS QKD <NUM> V2. <NUM> and ETSI GS QKD <NUM> V1. <NUM>, which define the interfaces the other elements of secure communication infrastructure can use for key exchange.

It is known as well in the art document <NPL>,.

The solution according to the present invention offers compatibility with quantum cryptography solutions at the protocol level, but does not require high-cost fiber optic communication infrastructure, while ensuring the security level not less than that of post-quantum cryptography. The hardware used in the present invention comprises quantum random number generators and two physically independent networks: one for emulation of a quantum channel and another one for emulation of a classical channel of a QKD system.

The invention assumes that the Post-Quantum Cryptography can be implemented as a software in a CPU, or that the hardware can include fast dedicated FPGA processor to provide the post-quantum encryption.

The encryptor according to the present invention has a form of an independent electronic device that solves the problem of ensuring the exchange of cryptographic keys based on the protocols appropriate for QKD solutions, compliant with requirements of the aforementioned ETSI standards related to QKD. However, the encryptor does not need to communicate using quantum optical devices and special fiber optic connections. Therefore, the encryptor enables the construction of a security infrastructure of a high security based on the QKD model without the need to invest in typical QKD devices requiring optical communication infrastructure. Although the ensuing security level is below that offered by standard QKD devices, it is higher than the current non-quantum solutions, and can be as high as existing solutions based on post-quantum cryptography recommended by standardization organizations such as the National Institute of Standards and Technology (NIST).

The invention can accelerate the development of highly secured QKD networks at a much lower initial cost. Therefore, it paves the path to quantum cryptography adoption starting from existing infrastructure and facilitates faster and easier upgrade to real QKD networks in the future. The invention offers the ability to emulate QKD devices that represent high level of security in the area of data transfer. It does so in a way that is compatible with hardware of any QKD devices, as long as the devices use standard protocols as established by ETSI. What is more, without modifying the hardware parts of the invention, other standards (when available) can also be implemented. This allows the following benefits as compared to the prior art: lowering the cost of initial deployment of quantum cryptography, while providing data transfer security on the recommended level (by standards organizations like NIST) and while enabling its users to use it as a network encryptor or high-entropy random data source.

The present invention is shown by means of example embodiments on a drawing, wherein:.

As shown in <FIG>, the communication device <NUM> according to the invention comprises a central processing unit (CPU) <NUM>, a memory <NUM>, a quantum random number generator <NUM> and two parallel network interfaces <NUM>, <NUM>, which communicate with each other via one or more data buses <NUM> (for clarity, a single common data bus is shown, but the individual components may also communicate via dedicated data buses). The quantum random number generator (QRNG) <NUM> is a hardware module installed on the device board, in other words - embedded in the electronics of the device. Optionally, the communication device may further comprise a hardware post-quantum cryptography (PQC) module <NUM>, preferably a field programmable gate array (FPGA) circuit, for handling PQC encryption and decryption functionality (for example, to be used in modules 226A, 231A, 232B, 225B as shown in <FIG> or <FIG>).

The device is controlled by the CPU <NUM> configured to operate according to processor-executable instructions (software) and data stored in the memory <NUM>, to provide the functionality of modules described in details with reference to <FIG>. In a specific embodiment, the CPU <NUM> can operate a generic Unix-type operating system, such as Linux or a specialized limited version stripped of all unnecessary functions other than emulation of ETSI interfaces, cryptographic functions and administrative functions.

The device <NUM> may operate in one of three modes, namely:.

In general, in the QKD emulation mode, the device may operate in a QKD network architecture as defined by ETSI GS QKD <NUM> V2. <NUM> or ETSI GS QKD <NUM> V1. <NUM>, which is shown for reference in <FIG>. Two devices: 100A and 100B are configured to communicate with each other. Each device 100A, 100B has an interface to at least one Secure Application Entity (SAE) 210A, 210B, namely an application that needs to communicate in a secure manner with the SAE 210A, 210B of the other device 100A, 100B via a first network interface <NUM>. The SAEs 210A, 210B may communicate using cryptographic algorithms based on secure keys generated and exchanged by means of Key Management Entity (KME) 230A, 230B via a second network interface <NUM>.

The functionality of the modules will be explained based on an example scenario, wherein the SAE 210A connected to the first device 100A needs to communicate securely with the SAE 210B connected to the second device 100B. This procedure involves three steps, explained with reference to <FIG>, in accordance with a scenario described in ETSI GS QKD <NUM> V1. In step <NUM>, SAE 210A of the first device 100A calls a key delivery method "Get key" with the identifier of the SAE 210B to get keys from the KME 230A. The KME 230A delivers to the SAE 210A key materials with the associated key IDs that are to be shared with the KME 230B. The request can be for multiple keys and it can specify how long the returned keys shall be. In step <NUM>, the SAE 210A notifies the SAE 210B of the key IDs, via a first channel <NUM>, called a service channel, and handled by the first network interfaces <NUM> of each device 100A, 100B. Depending on the choice of the actual ETSI standard the request can be sent as a typical stateful TCP request (in ETSI <NUM>), or as HTTPS request (in ETSI <NUM>). In step <NUM>, the SAE 210B calls the key delivery method "Get key with key IDs" with the SAE 210A identifier and the notified key IDs information to get the identical keys from the KME 230B, and KME 230B delivers to SAE 210B the identical key materials with the identical associated key IDs that are shared with KME 230A, wherein the key materials are communicated between KME 230A and KME 230B via a second channel, herein called an emulated quantum channel, and handled by the second network interface <NUM> of each device 100A, 100B.

The functional modules of one embodiment of the device that enable its operation in the QKD emulation mode are shown in <FIG>. These modules can be implemented as software stored in memory <NUM>, operable by the CPU <NUM>. In <FIG>, there is a first device 100A configured to request secure communication and a second device 100B configured to respond to the request. Both devices 100A, 100B may have implemented the same modules and configured to initiate a requester/responder modules according to the function they need to perform.

In this mode, the KMEs 230A, 230B of the devices 100A, 100B communicate with each other via the second channel, while the SAEs 210A, 210B communicate with each other via the first channel. For example, both channels can be of a standard Ethernet type. However, in specific embodiments, the second channel used to emulate the QKD quantum channel can be of a different type, for example a fiber optics connection or a cellular network interface, such as a one realized via a GSM SIM card.

The security of the data communication via the second network interface <NUM>, which does not have to be an optic fiber interface as in standard QKD systems, is provided by the sub-modules of the KMEs 230A, 230B shown in details in <FIG>. In <FIG>, for the first device 100A there are shown modules used for the process of generating the keys, while for the second device 100B there are shown modules used for the process of receiving the keys. It is to be noted that each device may contain both types of modules in order to function as both provider and recipient of the secure keys.

The example scenario and operation of individual modules of <FIG> is shown with reference to <FIG>. First, in step <NUM> the SAE 210A at the first device 100A calls for delivery of one or more QKD keys. The keys are generated in step <NUM> by the quantum random number generator 103A and sent back to SAE 210A, as well as to the encryptor 231A. In step <NUM> the quantum random number generator 103A of the first device 100A generates a token, i.e. a random number used for additional security protection. The token is sent to the second device 100B, wherein in step <NUM> it is encrypted by a token encryptor 225B with the private key of device B (stored in a private key register 224B) and sent back in the encrypted form to the first device 100A, wherein in step <NUM> it is decrypted by a token decryptor 226A with the public key of device B (as known from a database of public keys 222A stored at the first device 100A). In step <NUM> a token comparator checks the original token (generated in step <NUM>) and the decrypted token for identity. If the tokens are identical, this means that the second device 100B is a trusted device according to the private-public key pair for that device and can be trusted for the purpose of further communication by the first device 100A. Therefore, in step <NUM> the first device 100A, using a QKD key encryptor 231A, encrypts the QKD key with the public key of the second device 100B and sends the encrypted QKD key to the second device 100B, wherein in step <NUM> it is decrypted by a QKD decryptor 232B with the private key of the second device 100B. The decrypted QKD key can then be sent in step <NUM> to the SAE 210B at the second device 100B for further use.

All communication between the first device 100A and the second device 100B between steps <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM> is effected via the emulated quantum channel <NUM>.

After the QKD keys are used by the SAEs, they shall be permanently discarded from the memory of the devices.

For example, the QKD key(s) can be used to encrypt the payload to be transferred between the SAEs of two units over the service channel. The encryption algorithm can be the OTP (One-Time-Pad) or AES (Advanced Encryption Standard). While the OTP algorithm is theoretically unbreakable, the resulting bandwidth may be low, as it requires keys of the same length as the message payload. The safe choice is to use the AES algorithm with long keys (for example, much longer then <NUM>), because the AES algorithm has been shown to offer security even against the attack of quantum computer.

In particular, the secure exchange of QKD keys allows both devices 100A, 100B to communicate securely using standard communication protocols such as a virtual private network (VPN).

Apart from use as a secure communication device, the device can be used to provide entropy generation services without any network connection to the second device od the pair. It can be possible through the implementation of additional, specific interface which is of REST Web API type call. This interface can be reached via the network interface that emulates the service channel and can deliver random numbers with high speed and in various formats.

A second embodiment of the devices is shown in <FIG>. In the first embodiment presented in <FIG>, both devices 100A, 100B contained SAEs 210A, 210B. The second embodiment of <FIG> differs in that the devices 100A, 100B do not contain the SAEs, but instead an interface 211A, 211B to SAEs implemented in other devices, wherein the interfaces 211A, 211B are used to transmit the QKD keys securely exchanged by the KMEs 230A, 230B. In that case, the devices 100A, 100B do not need to include the first network interface <NUM> for handling the first channel <NUM>, as this channel can be handled by the other devices that implement the functionality of the SAEs.

Examples of practical applications of the devices according to the invention are discussed below.

Using the devices according to the invention one can obtain a device that exhibits features of the real QKD devices. The external interfaces of the model are compliant with the interfaces of the QKD devices. This allows any organization which plans QKD deployment to start the integration work using the devices according to the invention, to prepare all the elements of their infrastructure and to acquire the real QKD only when the organization is ready for it, both technically and financially.

This embodiment relies on the highly secured key exchange mechanism which is based on post-quantum key exchange algorithms. As such it can be used for all network security applications, which can work with symmetric keys. The list of applications include systems like Virtual Private Networks (VPN), shared-key Secured Socket Layer (SSL) or end-to-end encryption devices. An important feature of this embodiment is the use of algorithms that are approved by organizations such as NIST for the key exchange. Also, the presence of a hardware QRNG in the device according to the invention in important, as it allows for high entropy keys to be generated.

This embodiment relies on both post-quantum key exchange algorithms, QRNG and out-of-band key exchange as integral part of the device. An important feature is also the possibility of integrating the network transfer security in the encryptor mode. The device can encrypt the network traffic on the level of wired Ethernet protocol, or when the other types of network interfaces are used, also on the optical level. In this embodiment the invention leads to integrated products that deliver network security on the level of currently recommended post-quantum algorithms, while it does not require expensive point-to-point fiber optics connections.

Claim 1:
A device for communicating with another device of the same type via an emulated quantum channel (<NUM>), the device comprising:
- a central processing unit (<NUM>);
- a memory (<NUM>);
- a hardware quantum random number generator (<NUM>);
- a network interface (<NUM>) for communicating via the emulated quantum channel (<NUM>);
- wherein the central processing unit (<NUM>) is configured to provide (100A) quantum key distribution (QKD) keys to the other device, by:
- generating (<NUM>), by means of the quantum random number generator (<NUM>), at least one QKD key;
- generating (<NUM>), by means of the quantum random number generator (<NUM>), a token;
- sending the token, via the network interface (<NUM>), to the other device;
- receiving, from the other device, an encrypted token;
- decrypting (<NUM>) the encrypted token with the public key of the other device;
- comparing (<NUM>) the decrypted token with the generated token;
- upon determining that the decrypted token corresponds to the generated token, encrypting (<NUM>) the at least one QKD key with the public key of the other device and sending, via the network interface (<NUM>), the encrypted at least one QKD key to the other device.