First Quantum Internet programming competition has ended!

The first Quantum Internet Programming competition has ended! This competition was held as part of edX QuCryptoX this year, in which all students were asked to implement a simplified form of BB84 over a bit less than one month. The competition, however, placed no limits on how far to take this assignment or what to implement in the first place.

We are excited to now announce the winning submission –  QChat – by Matthew Skrzypczyk, which implements a chat program secured using QKD! Below you can find Matthew’s description as well as a link to his submission.


QChat (Matthew Skrzypczyk)

“QChat is a simple distributed encrypted chat platform built on Simulaqron that enables users to derive shared keys with their peers using the purified BB84 protocol in the presence of an unauthenticated classical channel. The key derivation protocol includes error correction utilizing Golay linear codes and privacy amplification built on keyless fuzzy extractors. The derived keys are used to encrypt messages between two users using AES-GCM to guarantee authenticity and integrity. The unauthenticated classical channel is solutioned using a registry server that maintains RSA public information for users in the network, allowing peers to authenticate un-encrypted messages necessary for the key establishment process.”

QChat-submission (zip-file)


It was pretty tough to identify the winner amongst many nice submissions. Some of our favorites included the submission by Adam Reid, who implemented an attack for Eve on BB84 QKD that applies if it would take longer to prepare/measure in one basis than in the other! While this situation does not occur in general implementations, we found it very insightful and a good reminder to consider the practical implementation aspects for the security of QKD 🙂 We also very much enjoyed the nice software framework for quantum secure communications by Bernhard Raml, that allow a choice of several QKD protocols in software. Finally, there was also a very fun submission transferring images using superdense coding by Stephen Diadamo.

Thanks to everyone who participated!

Did you miss the competition? Stay tuned 🙂 We are planning to run a much longer and general competition this fall in which you can again win an internship at QuTech. The competition will go online on 19th of July!


Get the code. Report bugs. Contribute!

The full code can be freely accessed on GitHub. Here you can also report bugs, make feature requests or even contribute with your own code.