Device-Independent Quantum Key Distribution: Difference between revisions

From Quantum Protocol Zoo
Jump to navigation Jump to search
No edit summary
 
(15 intermediate revisions by 4 users not shown)
Line 1: Line 1:
This [https://arxiv.org/abs/1811.07983 example protocol] implements the task of [[Quantum Key Distribution]] (QKD) without relying on any particular description of the underlying hardware system. The protocol enables two parties to establish a classical secret key by distributing an entangled quantum state and checking for the violation of a [[Bell inequality]] in order to certify the security. The output of the protocol is a classical secret key which is completely unknown to any third party, namely an eavesdropper.


A device-independent quantum key distribution protocol implements the task of [[Quantum Key Distribution]] (QKD) without relying on any particular description of the underlying system. The protocol enables two parties, Alice and Bob, to establish a classical secret key by distributing an entangled quantum state and checking for the violation of a [[Bell inequality]] in order to certify the security. The output of the protocol is a classical secret key which is completely unknown to any third party, namely an eavesdropper.
'''Tags:''' [[:Category:Two Party Protocols|Two Party]], [[:Category:Quantum Enhanced Classical Functionality|Quantum Enhanced Classical Functionality]], [[:Category:Specific Task|Specific Task]],[[Quantum Key Distribution]], [[BB84 Quantum Key Distribution|BB84 QKD]], [[Category:Multi Party Protocols]] [[Category:Quantum Enhanced Classical Functionality]][[Category:Specific Task]][[Category:Entanglement Distribution Network stage]]
 
'''Tags:''' [[:Category:Two Party Protocols|Two Party]], [[:Category:Quantum Enhanced Classical Functionality|Quantum Enhanced Classical Functionality]], [[:Category:Specific Task|Specific Task]],[[Quantum Key Distribution]], [[BB84 Quantum Key Distribution|BB84 QKD]], [[Category:Multi Party Protocols]] [[Category:Quantum Enhanced Classical Functionality]][[Category:Specific Task]][[Category:Entanglement Distribution Network Stage]]
==Assumptions==
==Assumptions==
* '''Network:''' we assume the existence of an authenticated public classical channel between Alice and Bob.
* '''Network:''' we assume the existence of an authenticated public classical channel between Alice and Bob.
Line 16: Line 15:
* In the final phase, Alice and Bob perform [[privacy amplification]], where the not fully secure <math>n</math>-bit strings are mapped into smaller strings <math>K_A</math> and <math>K_B</math>, which represents the final keys of Alice and Bob respectively.
* In the final phase, Alice and Bob perform [[privacy amplification]], where the not fully secure <math>n</math>-bit strings are mapped into smaller strings <math>K_A</math> and <math>K_B</math>, which represents the final keys of Alice and Bob respectively.


==Hardware Requirements ==
==Requirements ==
*'''Network Stage:''' [[:Category: Entanglement Distribution Network Stage|Entanglement Distribution]]
*'''Network Stage:''' [[:Category:Entanglement Distribution Network stage| Entanglement Distribution]][[Category:Entanglement Distribution Network stage]]
*'''Relevant Network Parameters:''' transmission error <math>\epsilon_T</math>, measurement error <math>\epsilon_M</math> (see [[:Category: Entanglement Distribution Network Stage|Entanglement Distribution]]).
*'''Relevant Network Parameters:''' transmission error <math>\epsilon_T</math>, measurement error <math>\epsilon_M</math> (see [[:Category:Entanglement Distribution Network stage| Entanglement Distribution]]).
*'''Benchmark values:'''
*'''Benchmark values:'''
** Minimum number of rounds ranging from <math>\mathcal{O}(10^6)</math> to <math>\mathcal{O}(10^{12})</math> depending on the network parameters<math>\epsilon_T,\epsilon_M</math>, for commonly used security parameters.
** Minimum number of rounds ranging from <math>\mathcal{O}(10^6)</math> to <math>\mathcal{O}(10^{12})</math> depending on the network parameters<math>\epsilon_T,\epsilon_M</math>, for commonly used security parameters.
Line 24: Line 23:
* Distribution of Bell pairs, and measurement in three different bases (two basis on Alice's side and three basis on Bob's side).
* Distribution of Bell pairs, and measurement in three different bases (two basis on Alice's side and three basis on Bob's side).
* Requires [[random number generator]].
* Requires [[random number generator]].
==Knowledge Graph==
{{graph}}


==Notation==
==Notation==
* <math>n</math> expected number of rounds
* <math>n</math> expected number of rounds
* The total number of rounds <math>n</math> is divided in to <math>m</math> blocks of size upper-bounded by <math>s_{\max}</math>, the maximum length of a block of rounds.
* The total number of rounds <math>n</math> is divided in to <math>m</math> blocks of size upper-bounded by <math>s_{\max}</math>.
* <math>l</math> final key length  
* <math>l</math> final key length  
* <math>\gamma</math> fraction of test rounds  
* <math>\gamma</math> fraction of test rounds  
Line 41: Line 44:
* <math>\epsilon_{PA}</math> error probability of the privacy amplification protocol  
* <math>\epsilon_{PA}</math> error probability of the privacy amplification protocol  
* <math>\mbox{leak}_{EC}</math> leakage in the error correction protocol
* <math>\mbox{leak}_{EC}</math> leakage in the error correction protocol
* For any registers <math>(Z_i)_{i \in \mathbb{N}}</math>, we use <math>Z_j^k,\ (j\leqj)</math> is
* For any registers <math>(Z_i)_{i \in \mathbb{N}}</math>, we use <math>Z_j^k,\ (j\leq k)</math> as a shorthand notation for the string <math>Z_j,\ldots,Z_k</math>.
a shorthand notation for the string <math>Z_j,\ldots,Z_k</math>.


==Properties==
==Properties==
Line 61: Line 63:
*<math>\nu_1=2 \Big(\log 7 +\left\lceil\frac{|h'(\omega_{exp}+\delta_{est})|}{1-(1-\gamma)^{s_{\max}}}\right\rceil\Big)\sqrt{1-2\log\epsilon_s}</math>
*<math>\nu_1=2 \Big(\log 7 +\left\lceil\frac{|h'(\omega_{exp}+\delta_{est})|}{1-(1-\gamma)^{s_{\max}}}\right\rceil\Big)\sqrt{1-2\log\epsilon_s}</math>


==Pseudocode==
==Protocol Description==
*'''Input: '''<math> n, \delta</math></br>
*'''Input: '''<math> n, \delta</math></br>
*'''Output: '''<math> K_A, K_B</math></br>
*'''Output: '''<math> K_A, K_B</math></br>
Line 88: Line 90:
##'''If''' <math>T_i=1</math>  and <math>A_i\oplus B_i\neq X_i\cdot Y_i</math> '''then''' <math>C_i=0</math>
##'''If''' <math>T_i=1</math>  and <math>A_i\oplus B_i\neq X_i\cdot Y_i</math> '''then''' <math>C_i=0</math>
## '''If''' <math>T_i=0</math>  '''then''' <math>C_i=\bot</math>
## '''If''' <math>T_i=0</math>  '''then''' <math>C_i=\bot</math>
# He aborts '''If''' <math>\sum_j C_{j}<m\times (\omega_{exp}-\delta_{est})(1-(1-\gamma)^{s_{\max}})</math>, i.e., if they do not achieve the expected violation.  
# Bob aborts '''If''' <math>\sum_j C_{j}<m\times (\omega_{exp}-\delta_{est})(1-(1-\gamma)^{s_{\max}})</math>, i.e., if they do not achieve the expected violation.  
''For the summation in 3.2 we use the convention that <math>\forall x\in \{0,1,\bot\},\ x+\bot=\bot+x=x</math>, that is <math>\bot</math> acts as <math>0</math> with respect to the addition.''
''For the summation in 3.2 we use the convention that <math>\forall x\in \{0,1,\bot\},\ x+\bot=\bot+x=x</math>, that is <math>\bot</math> acts as <math>0</math> with respect to the addition.''


Line 105: Line 107:
#[https://doi.org/10.1007/3-540-48285-7_35 Secret-Key Reconciliation by Public Discussion]
#[https://doi.org/10.1007/3-540-48285-7_35 Secret-Key Reconciliation by Public Discussion]
#[https://arxiv.org/abs/quant-ph/0512258 Security of Quantum Key Distribution]
#[https://arxiv.org/abs/quant-ph/0512258 Security of Quantum Key Distribution]
#[https://arxiv.org/pdf/1811.07983.pdf Towards a realization of device-independent quantum key distribution]
#[https://arxiv.org/abs/1811.07983.pdf Towards a realization of device-independent quantum key distribution]


<div style='text-align: right;'>''contributed by Gláucia Murta''</div>
<div style='text-align: right;'>''contributed by Gláucia Murta''</div>

Latest revision as of 16:36, 4 November 2019

This example protocol implements the task of Quantum Key Distribution (QKD) without relying on any particular description of the underlying hardware system. The protocol enables two parties to establish a classical secret key by distributing an entangled quantum state and checking for the violation of a Bell inequality in order to certify the security. The output of the protocol is a classical secret key which is completely unknown to any third party, namely an eavesdropper.

Tags: Two Party, Quantum Enhanced Classical Functionality, Specific Task,Quantum Key Distribution, BB84 QKD,

Assumptions[edit]

  • Network: we assume the existence of an authenticated public classical channel between Alice and Bob.
  • Timing: we assume that the network is synchronous.
  • Adversarial model: coherent attacks.

Outline[edit]

A DIQKD protocol is composed by the following steps:

  • The first phase of the protocol is called distribution. For each round of this phase:
    • Alice uses the source to prepare a maximally entangled state and send half of the state to Bob.
    • Upon receiving the state, Bob announces that he received it, and they both use their respective devices to measure the quantum systems. They record their output in a string of bits.
  • The second phase is when Alice and Bob publicly exchange classical information in order to perform error correction, where they correct their strings generating the raw keys, and parameter estimation, where they estimate the parameters of interest. At the end of this phase Alice and Bob are supposed to share the same -bit string and have an estimate of how much knowledge an eavesdropper might have about their raw key.
  • In the final phase, Alice and Bob perform privacy amplification, where the not fully secure -bit strings are mapped into smaller strings and , which represents the final keys of Alice and Bob respectively.

Requirements[edit]

  • Network Stage: Entanglement Distribution
  • Relevant Network Parameters: transmission error , measurement error (see Entanglement Distribution).
  • Benchmark values:
    • Minimum number of rounds ranging from to depending on the network parameters, for commonly used security parameters.
    • , taking a depolarizing model as benchmark. Parameters satisfying are sufficient to asymptotically get positive secret key rate.
  • Distribution of Bell pairs, and measurement in three different bases (two basis on Alice's side and three basis on Bob's side).
  • Requires random number generator.

Knowledge Graph[edit]

Notation[edit]

  • expected number of rounds
  • The total number of rounds is divided in to blocks of size upper-bounded by .
  • final key length
  • fraction of test rounds
  • quantum bit error rate
  • CHSH violation
  • expected winning probability on the CHSH game in an honest implementation
  • width of the statistical interval for the Bell test
  • confidence interval for the Bell test
  • smoothing parameter
  • error probabilities of the error correction protocol
  • error probability of Bell violation estimation.
  • error probability of Bell violation estimation.
  • error probability of the privacy amplification protocol
  • leakage in the error correction protocol
  • For any registers , we use as a shorthand notation for the string .

Properties[edit]

Either the protocol (see Pseudocode) aborts with probability higher than , or it generates a
-correct-and-secret key of length [7]

where is the leakage due to error correction step and the functions , , and are specified below. The security parameters of the error correction protocol, and , mean that if the error correction step of the protocol (see below) does not abort, then with probability at least Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle 1-\epsilon_{EC}} , and for an honest implementation, the error correction protocol aborts with probability at most .

Protocol Description[edit]

  • Input:
  • Output:

1. Distribution and measurement

  1. For every block
    1. Set and .
    2. While
      1. Set
      2. Alice and Bob choose a random bit such that .
      3. If then Alice and Bob choose inputs .
      4. Else they choose .
      5. Alice and Bob use their devices with the respective inputs and record their outputs, and respectively.
      6. If they set .

At this point Alice holds strings and Bob , all of length .

2. Error Correction

Alice and Bob apply the error correction protocol (see [5]) , communicating script in the process.

  1. If aborts, they abort the protocol
  2. Else they obtain raw keys and .

3. Parameter estimation

  1. Using and , Bob sets
    1. If and then
    2. If and then
    3. If then
  2. Bob aborts If , i.e., if they do not achieve the expected violation.

For the summation in 3.2 we use the convention that , that is acts as with respect to the addition.

4. Privacy amplification

is a privacy amplification subroutine (see [6])

  1. Alice and Bob run and obtain secret keys ;

Further Information[edit]

  1. Acín et al. (2007) gives the first security proof of device-independent QKD against collective attacks.
  2. Vazirani and Vidick (2014) gives the first security proof of device-independent QKD against coherent attacks.
  3. Arnon-Friedman et al. (2018) & Arnon-Friedman et al. (2019) simplify and tighten security proofs of device-independent QKD against coherent attacks.
  4. Tan et al. (2019) shows that post-processing of the key using 2-way classical communication, denoted advantage distillation, can increase the QBER tolerance up to .
  5. Secret-Key Reconciliation by Public Discussion
  6. Security of Quantum Key Distribution
  7. Towards a realization of device-independent quantum key distribution
contributed by Gláucia Murta