Systems and methods for quantum position-based key exchange
A method may include: a first verifier receiving a request for a claimed position verification from a prover; the first verifier randomly generating a first bitstring and a second bitstring; the first verifier sending the first bitstring and the second bitstring to a second verifier; the first verifier preparing a quantum system and sending the quantum system to the prover; the first verifier sending the first bitstring to the prover; the second verifier sending the second bitstring to the prover such that the first bitstring and the second bitstring arrive at the claimed position at the same time; the first verifier validating a response received from the prover; and the first verifier confirming that the response was received within an expected time window.
1 . A method, comprising:
receiving, by a first verifier electronic device, a request for position verification comprising a claimed position from a prover electronic device;
randomly generating, by the first verifier electronic device, a first bitstring and a second bitstring;
sending, by the first verifier electronic device, the first bitstring and the second bitstring to a second verifier electronic device;
preparing, by the first verifier electronic device, a quantum system using a computed basis from an evaluation function, the first bitstring, and the second bitstring;
sending, by the first verifier electronic device, the quantum system to the prover electronic device;
sending, by the first verifier electronic device, the first bitstring to the prover electronic device, wherein the second verifier electronic device is configured to send the second bitstring to the prover electronic device such that the first bitstring and the second bitstring are sent to arrive at the claimed position at the same time;
validating, by the first verifier electronic device, a response received from the prover electronic device;
confirming, by the first verifier electronic device, that the response was received within an expected time window, wherein the expected time window is based on the claimed position of the prover electronic device;
wherein the first verifier electronic device rejects the request in response to the response being not valid or the response being received outside of the expected time window.
2 . The method of claim 1 , further comprising:
performing, by the first verifier electronic device and with the second verifier electronic device, parameter estimation, wherein the parameter estimation comprises estimating an error rate and a loss.
3 . The method of claim 1 , further comprising:
generating, by the first verifier electronic device, a first verifier raw key;
generating, by the prover electronic device, a prover raw key;
performing, by the first verifier electronic device and the prover electronic device, one-way error correction based on the first verifier raw key and the prover raw key;
obtaining, by the first verifier electronic device, a first verifier secret key and a first verifier acknowledgement key from the first verifier raw key; and
obtaining, by the prover electronic device, a prover secret key and a prover acknowledgement key from the prover raw key.
4 . The method of claim 3 , further comprising:
sending, by the prover electronic device, the prover acknowledgement key to the first verifier electronic device; and
forming, by the first verifier electronic device and the prover electronic device, a key pair from the first verifier secret key and the prover secret key in response to the prover acknowledgement key matching the first verifier acknowledgement key.
5 . The method of claim 1 , wherein the prover electronic device measures the quantum system in a basis computed from the first bitstring and the second bitstring using the evaluation function and sends the measurement outcome to the first verifier electronic device and the second verifier electronic device.
6 . The method of claim 1 , wherein the quantum system further comprises a phase-randomized BB84 state with no correlation between different photon numbers.
7 . The method of claim 1 , further comprising:
randomly generating, by the first verifier electronic device, a random bit value, wherein the random bit value is used to prepare the quantum system.
8 . A method, comprising:
receiving, by a third party electronic device, a request for position verification comprising a claimed position from a prover electronic device;
randomly generating, by the third party electronic device, a first bitstring and a second bitstring;
sending, the third party electronic device, the first bitstring and the second bitstring to a first verifier electronic device and a second verifier electronic device;
preparing, by the third party electronic device, a quantum system using a computed basis from an evaluation function, the first bitstring, and the second bitstring;
sending, by the third party electronic device, the quantum system to the prover electronic device;
sending, by the first verifier electronic device, the first bitstring to the prover electronic device;
sending, by the second verifier electronic device, the second bitstring to the prover electronic device, wherein the first bitstring and the second bitstring are sent to arrive at the claimed position at the same time;
validating, by the first verifier electronic device and the second verifier electronic device, a response received from the prover electronic device; and
confirming, by the first verifier electronic device with the second verifier electronic device, that the response was received within an expected time window, wherein the expected time window is based on the claimed position of the prover electronic device;
wherein the first verifier electronic device rejects the request in response to the response being invalid or the response being received outside of the expected time window.
9 . The method of claim 8 , further comprising:
determining, by the third party electronic device, that an error rate is within a tolerance value.
10 . The method of claim 8 , further comprising:
generating, by the third party electronic device, a third party raw key;
generating, by the prover electronic device, a prover raw key;
performing, by the third party electronic device and the prover electronic device, one-way error correction based on the third party raw key and the prover raw key;
obtaining, by third party electronic device, a third party secret key and a third party acknowledgement key from the third party raw key; and
obtaining, by the prover electronic device, a prover secret key and a prover acknowledgement key from the prover raw key.
11 . The method of claim 10 , further comprising:
sending, by the prover electronic device, the prover acknowledgement key to the third party electronic device; and
forming, by the third party electronic device and the prover electronic device, a key pair from the third party secret key and the prover secret key in response to the prover acknowledgement key matching the third party acknowledgement key.
12 . The method of claim 8 , wherein the prover electronic device measures the quantum system in a basis computed from the first bitstring and the second bitstring using the evaluation function and sends the measurement outcome to the first verifier electronic device and the second verifier electronic device.
13 . The method of claim 8 , further comprising:
randomly generating, by the third party electronic device, a random bit value, wherein the random bit value is used to prepare the quantum system.
14 . A system, comprising:
a first verifier electronic device executing a first verifier computer program;
a second verifier electronic device executing a second verifier computer program; and
a prover electronic device executing a prover computer program;
wherein:
the first verifier computer program is configured to receive a request for position verification comprising a claimed position from the prover computer program;
the first verifier computer program is configured to randomly generate a first bitstring and a second bitstring;
the first verifier computer program is configured to send the first bitstring and the second bitstring to the second verifier computer program;
the first verifier computer program is configured to prepare a quantum system using a computed basis from an evaluation function, the first bitstring, and the second bitstring;
the first verifier computer program is configured to send the quantum system to the prover computer program;
the first verifier computer program is configured to send the first bitstring to the prover computer program;
the second verifier computer program is configured to send the second bitstring to the prover computer program, wherein the first bitstring and the second bitstring are sent to arrive at the claimed position at the same time;
the first verifier computer program and the second verifier computer program are configured to validate a response received from the prover computer program; and
the first verifier computer program and the second verifier computer program are configured to verify that the response was received within an expected time window;
wherein the first verifier computer program or the second verifier computer program is configured to reject the request in response to the response being not valid or the response being received outside of the expected time window.
15 . The system of claim 14 , wherein the first verifier computer program and the second verifier computer program are configured to perform parameter estimation, wherein the parameter estimation comprises estimating an error rate and a loss.
16 . The system of claim 14 , wherein:
the first verifier computer program is configured to generate a first verifier raw key;
the prover computer program is configured to generate a prover raw key;
the first verifier computer program and the prover computer program are configured to perform one-way error correction based on the first verifier raw key and the prover raw key;
the first verifier computer program is configured to obtain a first verifier secret key and a first verifier acknowledgement key from the first verifier raw key; and
the prover computer program is configured to obtain a prover secret key and a prover acknowledgement key from the prover raw key.
17 . The system of claim 16 , wherein:
the prover computer program is configured to send the prover acknowledgement key to the first verifier computer program; and
the first verifier computer program and the prover computer program are configured to form a key pair from the first verifier secret key and the prover secret key in response to the prover acknowledgement key matching the first verifier acknowledgement key.
18 . The system of claim 14 , wherein:
the prover computer program is configured to measure the quantum system in a basis computed from the first bitstring and the second bitstring using the evaluation function; and
the prover computer program is configured to send the measurement outcome to the first verifier computer program and the second verifier computer program.
19 . The system of claim 14 , wherein the first verifier computer program is configured to randomly generate a random bit value, wherein the random bit value is used to prepare the quantum system.
20 . The system of claim 14 , wherein the quantum system further comprises a phase-randomized BB84 state with no correlation between different photon numbers.