QCrypt in Toulouse: Key Distribution

These are notes for the third session of the Quantum Cryptography Workgroup in Toulouse. More info can be found here.

In the previous two sessions we have introduced the fundamental ideas underlying (quantum) cryptography and developed helpful mathematical tools. We now want to distribute actual keys. First classically, then quantumly.

Definition. A key distribution protocol is a protocol that lets Alice and Bob agree on an mm-bit key K{0,1}mK \in \{0, 1\}^m. It is

Such a protocol may work only under specific assumptions on the communication channels that Bob and Alice have access to. Generally, we will distinguish between the following types of communication channels.

  1. Classical channel
  2. Classical authenticated channel
  3. Classical secret channel
  4. Classical secret and authenticated channel
  5. Quantum channel

A classical toy protocol

As a warmup, let us consider a purely classical protocol in a toy model. We assume that Alice and Bob have access to a classical authenticated channel (CAC) and want to establish a key over a classical channel to which Eve has limited access in the following sense. If Alice sends a bit bb over the channel,

The induced channel Alice \to Eve is also called the binary symmetric channel BSC(q)\operatorname{BSC}(q) in the information theory literature.

Recall the definition of an ε\varepsilon-strong seeded extractor.

Definition. A (k,ε)(k, \varepsilon)-strong seeded extractor is a function Ext:{0,1}n×{0,1}m{0,1}k\operatorname{Ext}: \{0, 1\}^n \times \{0, 1\}^m \to \{0, 1\}^k such that for any qc state with Hmin(XE)kH_{\text{min}}(X \mid E) \geq k, D(ρExt(X,Y)YE,I2mρYE)ε. D(\rho_{\operatorname{Ext}(X, Y)YE}, \frac{I}{2^m} \otimes \rho_{YE}) \leq \varepsilon.

Now consider the following protocol.

Protocol 1Key distribution over a special channel.

  1. Alice chooses x=x1xn{0,1}nx = x_1 \dots x_n \in \{0, 1\}^n uniformly at random and sends the bits xix_i over the channel.
  2. Alice picks random seed r{0,1}mr \in \{0, 1\}^m and applies an (c,ε)(c, \varepsilon)-strong seeded extractor to xx, computing k=Ext(x,r){0,1}k = \operatorname{Ext}(x, r) \in \{0, 1\}^\ell.
  3. Alice sends rr over the CAC.
  4. Bob computes k=Ext(x,r)k = \operatorname{Ext}(x, r).

Clearly the protocol is ε\varepsilon-correct, as there are no errors in the communication between Bob and Alice, and they compute the same function to obtain the key kk.

It is also not hard to see that the protocol is ε\varepsilon-secure. Recall that we introduced randomness extractors as a way to “purify” some shared kk-bits of entropy between Alice and Bob. Sending bits over a channel to which Eve has only limited access is simply a way of establishing these initial kk bits of entropy. The fact that Eve has some knowledge about the seed is unimportant since we use a strong seeded extractor.

We can determine what the constants cc and \ell have to be: From Eve’s perspective the cq state of the key shared by Alice and Bob is

ρK=i=1nqxixi+(1q)1xi1xi \rho_K = \bigotimes_{i = 1}^n q \ket{x_i}\bra{x_i} + (1-q) \ket{1 - x_i} \bra{1 - x_i}

Assuming q1/2q \leq 1/2, this state has min entropy

Hmin(K)=logmaxpx=log(1q)n=nlog(1q),H_{\text{min}}(K) = - \log \max p_x = - \log (1-q)^n = -n \log (1-q),

so we must choose c=nlog(1q)c = -n \log (1-q). Selecting Ext(,r)\operatorname{Ext}(-, r) among a 2-universal family of hash functions, we can choose \ell as large as nlog(1q)2log(1/ε)1-n \log (1-q) - 2\log(1/\varepsilon) - 1, as seen in the last session.

Remark. Of course the same protocol works for other restrictions on the channel, for example if Eve receives all sent bits correctly but only has limited memory.

The CAC assumption

Before we introduce a key distribution algorithm that works without additional restrictions on potential eavesdroppers, we need to address the assumption that Alice and Bob have access to a classical authenticated channel.

There are generally two approaches to implementing an authenticated channel: Message Authentication Codes (MACs) and Digital Signatures. However, both approaches have drawbacks in a quantum key distribution context. MACs use private key cryptography — so Alice and Bob already need to have a shared private key in advance! Digital Signatures, on the other hand, do not require an established private key, but make use of computational assumptions that generally no longer hold in the quantum era.

Does this mean that the CAC assumption is too strong? The answer is nuanced. Let us take a look at both approaches individually.

MACs

The idea behind message authentication codes is that based on a shared private key, Alice generates a tag for her message. With the same key, Bob can verify the validity of the tag for a given message. Formally, a message authentication code is a pair of functions

Both functions are required to run in polynomial time.

A MAC is correct if Ver(m,k,Tag(m,k))=1. \operatorname{Ver}(m, k, \operatorname{Tag}(m, k)) = 1.

It is secure if, informally speaking, it is impossible for an adversary to generate a new pair of a message and a corresponding valid tag, even if he has access to arbitrarily many valid (message, tag) pairs (except with negligible probability).

Example. An example of a one-time MAC1 can be constructed using a 2-universal family of hash functions. Given such a family F={fi ⁣:{0,1}n{0,1}iI}\mathcal{F} = \{f_i \colon \{0, 1\}^n \to \{0, 1\}^\ell \mid i \in I \},

Obviously this scheme is correct. Moreover it is secure by the 2-universality of F\mathcal{F}: Suppose an adversary is given a single valid pair (m,τ)(m, \tau). Since F\mathcal{F} is in particular 11-universal, the value of τ=f(k,m)\tau = f(k, m) does not tell them anything about kk. Hence the only way to generate a new valid pair (m,τ)(m', \tau') is to guess kk, which is successful with probability

PriI[fi(m)=τfi(m)=τ]=PriI[fi(m)=τfi(m)=τ]PriI[fi(m)=τ]=222=2. \Pr_{i \in I} [f_i(m') = \tau' \mid f_i(m) = \tau] = \frac{\Pr_{i \in I}[f_i(m') = \tau' \land f_i(m) = \tau]}{\Pr_{i \in I}[f_i(m) = \tau]} = \frac{2^{-2\ell}}{2^{-\ell}} = 2^{-\ell}.

For maximal security, one would choose \ell to be as large as possible, i.e. =n\ell = n. Note, however, that any 11-universal family of hash functions {0,1}n{0,1}\{0,1\}^n \to \{0, 1\}^\ell needs to have at least 22^\ell elements, so the key needs to have length logF=n\log |\mathcal{F}| = n, that is, be just as long as the message.

Under the assumption that one-way functions exist2, one can find secure MACs that use shorter keys or allow reusing a key arbitrarily many times.

In the context of key distribution algorithms, however, the conceptual problem that Alice and Bob need to already share a private key remains.

Digital Signatures

As opposed to MACs, digital signatures make use of public-key cryptography. The idea is that Alice generates a pair (kpub,kpriv)K×K(k_{pub}, k_{priv}) \in \mathcal{K} \times \mathcal{K}' of a public and a private key. Alice keeps her private key secret and shares her public key. A digital signature scheme is then a pair of functions

Both functions are required to run in polynomial time, Sign\operatorname{Sign} may be probabilistic.

The scheme is correct if Pr[Ver(m,kpub,Sign(m,kpriv)=1]=1. \operatorname{Pr} [\operatorname{Ver}(m, k_{pub}, \operatorname{Sign}(m, k_{priv}) = 1] = 1.

Security is defined similarly as for MACs.

Example. A common digital signature scheme3 is based on RSA. Here we choose two large primes p,qp, q and let N=pqN = pq. We then choose a positive integer ee and compute a dd such that ed1modφ(N)ed \equiv 1 \mod \varphi(N). The public key is (N,e)(N, e), the private key is dd. We then let

Sign(m,d)η(m)d \operatorname{Sign}(m, d) \coloneqq \eta(m)^d Ver(m,(N,e),σ)[σeη(m)modN], \operatorname{Ver}(m, (N, e), \sigma) \coloneqq [\sigma^e \equiv \eta(m) \mod N],

where η\eta is an embedding of the message space into Z\mathbb{Z}.

Of course, the above algorithm is no longer secure in a post-quantum setting. An obvious idea is to base the signature scheme on a post-quantum cryptographic algorithm like LWE instead. However, these types of algorithms are exactly what quantum key distribution is supposed to replace!

A slightly more convincing argument for digital signatures is that keys generated by a quantum key distribution protocol enjoy everlasting security, even if the authentication scheme underlying the CAC is broken afterwards. It suffices for the CAC to remain authenticated for the duration of the protocol, which is at most on the order of seconds. The signature scheme used to implement it may hence not necessarily need to be provably secure as long as it is “strong enough”.

The BB-84 quantum key distribution protocol

As an example of an actual quantum key distribution protocol, we look at the well-known BB84 protocol, proposed by Bennett and Brassard in 1984.

Protocol 2BB-84.

  1. Fix a large integer nn and let N=4nN = 4n.
  2. Alice chooses strings x=x1xN{0,1}Nx = x_1 \dots x_N \in \{0, 1\}^N and θ=θ1θN{0,1}N\theta = \theta_1 \dots \theta_N \in \{0, 1\}^N uniformly at random. She sends Bob each bit xix_i by encoding as a quantum state according to θi\theta_i as HθixiH^{\theta_i} \ket{x_i}.
  3. Bob chooses a string θ~=θ~1θ~N{0,1}N\tilde{\theta} = \tilde{\theta}_1 \dots \tilde{\theta}_N \in \{0, 1\}^N uniformly at random, and measures the iith received qubit in the basis corresponding to θ~i\tilde{\theta}_i. This yields a string x~=x~1x~N\tilde{x} = \tilde{x}_1 \dots \tilde{x}_N.
  4. Bob tells Alice over the CAC that he has received and measured all the qubits.
  5. Alice and Bob exchange their basis strings θ,θ~\theta, \tilde{\theta} over the CAC.
  6. Alice and Bob discard all bits ii of xx and x~\tilde{x} respectively where θiθ~i\theta_i \neq \tilde{\theta}_i, yielding strings xx' and x~\tilde{x}'
  7. Alice and Bob check for eavesdroppers:
    1. Alice picks a random subset T{i[N]θi=θ~i}T \subseteq \{i \in [N] \mid \theta_i = \tilde{\theta}_i\} and tells Bob TT over the CAC.
    2. Alice and Bob exchange xTx_T and x~T\tilde{x}_T over the CAC. They compute the number of errors W={iTxix~i}W = |\{i \in T \mid x_i \neq \tilde{x}_i \}|.
    3. If W>0W > 0, Alice and Bob abort the protocol. Otherwise they proceed with the strings x=xSTx'' = x'_{S \setminus T} and x~=x~ST\tilde{x}'' = \tilde{x}'_{S \setminus T}.
  8. Alice and Bob perform privacy amplification: Alice picks a random seed rr and computes k=Ext(x,r)k = \operatorname{Ext}(x'', r). She then sends rr to Bob, who computes k=Ext(x~,r)k = \operatorname{Ext}(\tilde{x}'', r).

Consider the following example run of the protocol.

xx 0 1 1 0 1 0 0 1
θ\theta ++ ++ ×\times ++ ×\times ×\times ×\times ++
Sent \uparrow \rightarrow \searrow \uparrow \searrow \nearrow \nearrow \rightarrow
θ~\tilde{\theta} ++ ×\times ×\times ×\times ++ ×\times ++ ++
Measured \uparrow \searrow \searrow \nearrow \rightarrow \nearrow \uparrow \rightarrow
x=x~x' = \tilde{x}' 0 1 0 1

It is not hard to see that the protocol is correct. Clearly, when θi\theta_i and θ~i\tilde{\theta}_i agree then so will xix_i and x~i\tilde{x}_i. It follows that x=x~x'' = \tilde{x''} and hence Ext(x,r)=Ext(x~,r)\operatorname{Ext}(x'', r) = \operatorname{Ext}(\tilde{x}'', r).

Security of BB-84

The security of BB-84 is intuitively clear: If Eve tries to measure Alice’s qubit in a basis that does not agree with the one that Alice used for the encoding, she will introduce an error in Bob’s measurement with probability 1/21/2. The requirement that the error rate be 00 on a random subset of qubits of size N/4\approx N/4 then lower-bounds the min-entropy Hmin(XE)H_{\text{min}}(X'' \mid E). A round of privacy amplification then extracts a key that Eve is ignorant about.

In this sense, the general idea mirrors our toy protocol.

Formalising this idea is more involved, in particular because Eve might apply more involved attacks like entangling her system with the sent qubits. In fact it is so difficult that it took more than 20 years to give a proof that does not only work asymptotically. We will show security asymptotically in a restricted case.

To simplify the analysis, we first adapt the protocol somewhat. We assume that Alice and Bob share an EPR pair, and Alice measures her part of the state in some choice of basis to obtain the random string xx. We also allow a non-zero error rate in step 7.

Protocol 3Purified BB-84

  1. Fix a large integer nn and let N=4nN = 4n
  2. Alice prepares NN EPR pairs and sends the second qubit to Bob respectively.
  3. Alice chooses a string θ=θ1θN{0,1}N\theta = \theta_1 \dots \theta_N \in \{0, 1\}^N uniformly at random. She then measures the first qubit of the iith EPR pair in the ZZ or XX basis depending on θi\theta_i to obtain a random string x=x1xN{0,1}Nx = x_1 \dots x_N \in \{0, 1\}^N.
  4. Bob chooses a string θ~=θ~1θ~N{0,1}N\tilde{\theta} = \tilde{\theta}_1 \dots \tilde{\theta}_N \in \{0, 1\}^N uniformly at random, and measures the second qubit of the iith EPR pair in the basis corresponding to θ~i\tilde{\theta}_i. This yields a string x~=x~1x~N\tilde{x} = \tilde{x}_1 \dots \tilde{x}_N.
  5. Bob tells Alice over the CAC that he has measured all the qubits.
  6. Alice and Bob exchange their basis strings θ,θ~\theta, \tilde{\theta} over the CAC.
  7. Alice and Bob discard all bits ii of xx and x~\tilde{x} respectively where θiθ~i\theta_i \neq \tilde{\theta}_i, yielding strings xx' and x~\tilde{x}'
  8. Alice and Bob check for eavesdroppers:
    1. Alice picks a random subset T{i[N]θi=θ~i}T \subseteq \{i \in [N] \mid \theta_i = \tilde{\theta}_i\} and tells Bob TT over the CAC.
    2. Alice and Bob exchange xTx_T and x~T\tilde{x}_T over the CAC. They compute the error rate δ=W/T\delta = W/|T|, where W={iTxix~i}W = |\{i \in T \mid x_i \neq \tilde{x}_i \}|.
    3. If δ\delta is too large, Alice and Bob abort the protocol.
  9. Alice and Bob perform privacy amplification on the remaining bits.

Note that the use of entangled states is equivalent to the original approach. Moreover, the weakened requirements on the error rate make Protocol 3 generally less secure than Protocol 2. If we can prove security for this modified protocol, then the original protocol must also be secure.

Next, we significantly increase the power of an eavesdropper. We assume that it is Eve who initially prepares a state ρABE\rho_{ABE}, whose AA and BB systems consist of nn qubits respectively, that she distributes to Alice and Bob. Alice and Bob then proceed as usual with the measurements on their respective qubits.

If ρABE=Ψ+Ψ+NρE\rho_{ABE} = \ket{\Psi^+}\bra{\Psi^+}^{\otimes N} \otimes \rho_E we just recover Protocol 3.

Any possible attack (excluding side-channel attacks) can be modeled as Eve simply distributing a specific ρABE\rho_{ABE}. On the other hand, not every state ρABE\rho_{ABE} can be achieved by only interacting with the qubits sent over the channel. Eve’s power has strictly increased.

We will show that despite this additional power given to Eve, the protocol is still secure, assuming ρABE\rho_{ABE} is not entangled between rounds. When there are no restrictions on ρABE\rho_{ABE} the protocol is still secure, but the analysis becomes too complicated to cover here.

To show that Protocol 3 is secure, it suffices to show that it is able to detect whether ρABE\rho_{ABE} is close enough to Ψ+Ψ+NρE\ket{\Psi^+}\bra{\Psi^+}^{\otimes N} \otimes \rho_E. The obvious way Alice and Bob could verify this is to add an initial step to the protocol as follows:

  1. After receiving ρABE\rho_{ABE} from Eve, Alice and Bob jointly measure their qubit pairs using the POVM {Ψ+Ψ+,IΨ+Ψ+}\{\ket{\Psi^+}\bra{\Psi^+}, I - \ket{\Psi^+} \bra{\Psi^+}\}. If for some δ1\delta \ll 1 more than δn\delta n of the pairs are found not to be in state Ψ+\ket{\Psi^+}, Alice and Bob abort the protocol.

Such a step would also make step 7 of Protocol 3 redundant. Of course this hypothetical step 0 is impossible to implement, because Alice and Bob can only perform local measurements on their respective systems. We argue that step 7 is essentially equivalent to step 0.

Lemma 1. Let ρABE\rho_{ABE} be a tripartite state, where AA and BB are systems of a single qubit. Then the probability that respective measurements of systems AA and BB in the computational basis result in matching outcomes is exactly Tr(Π1ρAB)\operatorname{Tr} (\Pi_1 \rho_{AB}), where Π1=Ψ+Ψ++ΨΨ. \Pi_1 = \ket{\Psi^+}\bra{\Psi^+} + \ket{\Psi^-}\bra{\Psi^-}. Similarly, the probability that the outcomes match when measuring in the Hadamard basis is Tr(Π2ρAB)\operatorname{Tr} (\Pi_2\rho_{AB}), where Π2=Ψ+Ψ++Φ+Φ+. \Pi_2 = \ket{\Psi^+}\bra{\Psi^+} + \ket{\Phi^+}\bra{\Phi^+}.

Proof. The probability of matching measurement outcomes in the computational basis is given by Pmatch=00ρAB00+11ρAB11=Tr((0000+1111)ρAB) P_{\text{match}} = \braket{00 | \rho_{AB} | 00} + \braket{11 | \rho_{AB} | 11} = \operatorname{Tr} ((\ket{00}\bra{00} + \ket{11}\bra{11})\rho_{AB}) and we have Ψ+Ψ++ΨΨ \ket{\Psi^+}\bra{\Psi^+} + \ket{\Psi^-}\bra{\Psi^-} =12(0000+0011+1100+1111+000000111100+1111) = \frac{1}{2}(\ket{00}\bra{00} + \ket{00}\bra{11} + \ket{11}\bra{00} + \ket{11}\bra{11} + \ket{00}\bra{00} - \ket{00}\bra{11} - \ket{11}\bra{00} + \ket{11}\bra{11}) =0000+1111. = \ket{00}\bra{00} + \ket{11}\bra{11}. Completely analogous, in the Hadamard basis we have Pmatch=Tr((+++++)ρAB) P_{\text{match}} = \operatorname{Tr}((\ket{++}\bra{++} + \ket{--}\bra{--})\rho_{AB}) and Ψ+Ψ++Φ+Φ+=+++++. \ket{\Psi^+}\bra{\Psi^+} + \ket{\Phi^+}\bra{\Phi^+} = \ket{++}\bra{++} + \ket{--}\bra{--}.

Now consider an arbitrary ρABE\rho_{ABE} that we assume to be of the form iρAiBiEi\bigotimes_i \rho_{A_iB_iE_i}. Expressing the ABAB-marginal of a single round in the Bell basis yields

ρAiBi=q00Ψ+Ψ++q01ΨΨ+q10Φ+Φ++q11ΦΦ+c. t. \rho_{A_iB_i} = q_{00}\ket{\Psi^+}\bra{\Psi^+} + q_{01}\ket{\Psi^-}\bra{\Psi^-} + q_{10}\ket{\Phi^+}\bra{\Phi^+} + q_{11}\ket{\Phi^-}\bra{\Phi^-} + \text{c. t.}

The probability that the POVM in step 0 measures Ψ+\ket{\Psi^+} is q00q_{00}, while by Lemma 1 the probability pip_i of succeeding in step 7 of Protocol 3 is given by

pi=12+14(Tr(Π1ρAiBi)+Tr(Π2ρAiBi))=12+12q00+14(q01+q10)12q00+1. p_i = \frac{1}{2} + \frac{1}{4}(\operatorname{Tr}(\Pi_1 \rho_{A_iB_i}) + \operatorname{Tr}(\Pi_2 \rho_{A_iB_i})) = \frac{1}{2} + \frac{1}{2}q_{00} + \frac{1}{4}(q_{01} + q_{10}) \leq \frac{1}{2}q_{00} + 1.

In other words q002pi1q_{00} \geq 2p_i - 1, so if the probability of success in step 7 is close to one, say 1δ1-\delta, then the overlap with Ψ+Ψ+\ket{\Psi^+}\bra{\Psi^+} is correspondingly large, q0012δq_{00} \geq 1 - 2\delta. Of course the converse holds trivially.

However, this does not yet prove that step 0 and step 7 are essentially equivalent. This is because step 7 only tests a subset TT of the qubits. Intuitively however, since TT is chosen randomly, this testing step should upper bound the number of errors on the remaining qubits as well. We can make this precise through a Hoeffding-type inequality.

Lemma 2 (Tomamichel & Leverrier). Let m=k+m = k + \ell and consider binary random variables Z1,,ZmZ_1, \dots, Z_m. Let TT be a uniformly random subset of {1,,m}\{1, \dots, m\} of size kk. Then for any δ,ν>0\delta, \nu > 0, it holds that Pr[jTZjδkj[m]TZj(δ+ν)n]exp(2ν2k2(k+)(k+1)). \Pr \left[\sum_{j \in T} Z_j \leq \delta k \land \sum_{j \in [m] \setminus T} Z_j \geq (\delta + \nu)n \right] \geq \exp\left(-2 \nu^2 \frac{k^2 \ell}{(k + \ell)(k + 1)}\right).

We will let ZiZ_i denote the indicator random variable such that Zi=1Z_i = 1 if xix~ix'_i \neq \tilde{x}'_i in step 7 of Protocol 3. We then let m=2nm = 2n, k==nk = \ell = n and ν=δ=δc\nu = \delta = \delta_c where δc\delta_c is the largest tolerated error rate in step 7c. In the asymptotic limit, we may assume that the TT chosen in step 7a has size exactly 2n/22n/2, hence Lemma 2 applies. We thus get the bound

Pr[¬ABORT[2n]TZj2δcn]=Pr[jTZjδcn[2n]TZj2δcn]exp(δc2n2n+1)exp(δcn), \Pr \left[\neg \text{ABORT} \land \sum_{[2n] \setminus T} Z_j \geq 2\delta_c n \right] = \Pr \left[\sum_{j \in T} Z_j \leq \delta_c n \land \sum_{[2n] \setminus T} Z_j \geq 2 \delta_c n \right] \leq \exp (-\delta_c^2 \frac{n^2}{n+1}) \leq \exp(-\delta_c n),

which vanishes as nn \to \infty.

It follows that step 7 implies that the error rate on the whole qubit string is sufficiently low, which by our previous observations implies that the overlap of ρAB\rho_{AB} with Ψ+Ψ+N\ket{\Psi^+}\bra{\Psi^+}^{\otimes N} is sufficiently high. This completes the asymptotic security proof of Protocol 3 in the restricted threat model. Since Protocol 3 is less secure than Protocol 2, we can conclude the security of BB-84.

Information Reconciliation

Until now, we assumed that all communication is error-free. Of course this is not the case, in particular not in the quantum case. Do our protocols break in the presence of errors?

The answer is no, because we can perform error correction. In fact, since we distribute classical bitstrings, we may view the quantum protocol as a lossy classical channel and simply do classical error correction afterwards. There are many performant classical error correction codes.

The general idea is that Alice sends a message xAx_A to Bob through a lossy channel, who receives it as xB=xA+sx_B = x_A + s, where ss is a string of errors. They then exchange some additional information over the channel that allows Bob to make an estimate x^A\hat{x}_A of xAx_A based on xBx_B.

Definition. An information reconciliation protocol for xAx_A, xBx_B lets Bob recover an estimate x^A\hat{x}_A of xAx_A given xBx_B.

In the context of key distribution it is important to limit the number of bits a protocol leaks. This is because any leaked bits reduce the min-entropy of the key. Concretely, we have

Hmin(XEC)Hmin(XE)C, H_{\text{min}}(X \mid EC) \geq H_{\text{min}}(X \mid E) - |C|,

so if we leak kk bits, we can still be sure to have lost at most kk bits of min-entropy.

An important class of information reconciliation protocols are built on linear codes.

Definition. An (n,k)(n, k) qq-ary linear code is a kk dimensional subspace of Fqn\mathbb{F}_q^n.

A linear code CC is also induced by a parity-check matrix HFqm×nH \in \mathbb{F}_q^{m \times n} by letting C=kerHC = \operatorname{ker} H. The syndrome of a message vFqnv \in \mathbb{F}_q^n is then given by HvHv.

Protocol 4Information Reconciliation through Linear Codes.

Let HH be a parity-check matrix. Assume Alice has sent a string xA{0,1}nF2nx_A \in \{0, 1\}^n \cong \mathbb{F}_2^n that Bob received as xB=xA+sx_B = x_A + s.

  1. Alice sends cA=HxAc_A = Hx_A over the public channel.
  2. Bob computes cB=HxBc_B = Hx_B and the syndrome cs=Hs=cA+cBc_s = Hs = c_A + c_B of ss.
  3. Based on the syndrome csc_s and the parity-check matrix HH, Bob determines an estimate s^\hat{s} of ss.
  4. Bob computes x^A=xB+s^\hat{x}_A = x_B + \hat{s}.

If HF2m×nH \in \mathbb{F}_2^{m \times n} induces an (n,k)(n, k) binary linear code, then Protocol 4 leaks mm bits, where mm can be chosen as low as nkn - k. Of course, the larger our code and hence the smaller the syndrome, the harder the error-estimation becomes.

The correctness completely depends on the chosen code.

Example.

Consider the (3,2)(3, 2) binary linear code given by the parity-check matrix

H=(110011), H = \begin{pmatrix} 1 & 1 & 0 \\ 0 & 1 & 1 \end{pmatrix},

where Bob’s error-estimation is based on the following table.

Syndrome Error Estimate
00 000
01 001
10 100
11 010

Then Bob can correct any error of at most one bit-flip. Consequently, the code leaks 22 bits and is ε\varepsilon-correct for ε=Pr[# errors1]=(1p)3+3p(1p)2, \varepsilon = \Pr[\text{\# errors} \leq 1] = (1-p)^3 + 3 p(1-p)^2, where pp is the probability of a single bit-flip occurring (assuming uncorrelated errors).

There is a theoretical minimum to the number of bits leaked for optimal information reconciliation. Suppose xAx_A and xBx_B are sampled bitwise from some joint probability distribution PXAXBP_{X_AX_B}. Then the theoretical minimum number of bits that have to be leaked is

nH(XAXB). n H(X_A \mid X_B).

The efficiency of information reconciliation protocols is usually given in terms of a constant ξ>1\xi > 1 which says that the protocol leaks approximately

ξnH(XAXB) \xi \cdot nH(X_A \mid X_B)

bits.

Examples of codes that are widely in use are LDPC codes, for which ξ\xi is between 1.03\approx 1.03 and 1.1\approx 1.1.


  1. A one-time MAC is only secure if the key does not get reused between rounds. ↩︎

  2. Which is generally believed, even when taking quantum algorithms into account. ↩︎

  3. The actual signature scheme involves an additional hashing of the message. As described here, it is vulnerable to Existential Forgery. ↩︎