10k tests per parameter) reveals some surprising re-
sults for the B92 protocol. While PDG maintains ap-
proximately the same performance for a given BER
regardless of the initial packet size, the performance
of the B92 protocol suffers drastically as the size of
the packets increases for all BERs greater that 2%.
Selecting typical use cases of a BER of 1%, 3% and
7%, it is easily seen that the PDG code outperforms
the B92 protocol on almost all of the test cases per-
formed. Given that the PDG performance is equiva-
lent regardless of the packet size (and to allow B92
to perform its best), a packet size of 1,000 bits can
be compared. For the 1% case, PDG returns a total
of 252,095 bits more than B92, a 3.1% improvement.
For the 3% case, PDG returns a total of 200,443 bits
more than B92 for a 2.8% improvement. For the 7%
case, PDG returns a total of 2,466,405 bits, an 83.9%
improvement. From these cases, it is clear that PDG
provides a more efficient coding solution than B92 for
extracting bits in a QKD scheme. For the grand total
of 1,000,000 tests run to compare how PDG performs
against B92, PDG was able to outperform B92 more
than 50% of the time on 99 of the 100 parameters and
missed a perfect record by a mere 4% on the test pa-
rameter in question.
Table 3 shows a typical use case where Alice and
Bob would exchange 2,000 bits. Each row of the ta-
ble shows the results of running 10k tests with the
selected BER and 2k packet size. The column for
“% Int” is the percentage of results that were deemed
interesting, i.e. where PDG successfully returns bits
and either B92 does not return as many bits or B92
does not remove all the bit errors. The columns “PDG
Bad” and “B92 Bad” indicate the number of test cases
where PDG and B92 did not remove all the errors, re-
spectively. The column of “Bit diff” shows the total
number of bits that PDG leaves in excess of those left
by B92 when both PDG and B92 were able to elimi-
nate all errors in the packet.
Table 3: Comparing PDG to B92.
BER % Int PDG Bad B92 bad Bit diff
10 84.01 1,370 8,856 6,634,518
9 85.15 1,240 8,864 7,446,470
8 90.12 304 8,868 8,777,072
7 89.04 310 8,750 9,509,198
6 68.19 1,679 8,125 7,700,175
5 58.40 2,130 6,044 5,315,023
4 70.81 2,417 3,050 1,110,910
3 93.06 421 822 873,984
2 99.17 37 110 419,612
1 100.0 0 10 304,615
PDG returns a successful result at least 75% of
the time and quite often more than 85% of the time.
When you divide the total number of PDG bits by the
number of test cases run (10000), you can see that the
average number of bits for each test would leave
an adequate key length regardless of which standard
cryptosystem was employed by Alice and Bob for
their communication (at 10% BER, an average of 759
bits per case and at 1%, an average of 1685 bits per
case). It is interesting to note that PDG leaves more
bits than the B92 in all cases, particularly when the
BER is high. At a high BER, B92 can rarely correct
all errors in Bob’s bitstream. As the physical distance
between Alice and Bob increases, so does the BER
on the quantum channel. These results indicate that
PDG would permit a greater physical distance to ex-
ist between Alice and Bob than could be tolerated by
B92.
3.2 PDG vs. Winnow
Winnow is capable of distilling a key so long as the
BER on the quantum channel is below 13.22% (But-
tler et al., 2003). However, PDG is capable of return-
ing keys for error rates up to 47%. PDG effectively
has some double-error detecting and correcting capa-
bility that Winnow does not; as such, PDG is capa-
ble of distilling at least some key between Alice and
Bob when Winnow cannot. As one would expect,
the probability of successfully distilling a key and the
length of the distilled key become arbitrarily low as
the BER increases and the size of the initial packet
decreases. Table 4 shows the effectiveness of PDG
at a 47% error rate when the initial packet size varies
from 10000 bits down to 1000 bits. In this table, the
“% Int” column shows the number of times PDG was
able to correct all errors in the packet and “PDG Bad”
is the number of cases where PDG could not success-
fully remove all errors in the string; “Ave. bits” is the
average number of bits left when PDG successfully
removed all errors.
Table 4: PDG performance at 47% BER.
BER Size % Int PDG Bad Ave. bits
47 10000 99.39 61 204
47 9000 99.25 75 183
47 8000 99.01 99 162
47 7000 98.34 166 141
47 6000 97.79 221 120
47 5000 97.12 288 99
47 4000 95.18 482 79
47 3000 92.91 709 58
47 2000 89.43 1,057 38
47 1000 80.60 1,940 19
Since PDG is capable of consistently correcting
all errors even at high error rates, it can be used to
quickly distill a secret key between Alice and Bob. As
the sample table indicates, the performance at a 47%
BER is roughly linear with a 1k bit packet returning
an average of 19 bits per case (1.9% of the bits make
SECRYPT 2017 - 14th International Conference on Security and Cryptography
442