BB84 Key Distribution Protocol you own this product

basics of Python or C#, linear algebra, probability theory, and quantum computing concepts
skills learned
designing and writing simple Q# code • running simulations of quantum code using a full state quantum simulator • writing classical code in C# or Python that calls quantum code
Mariia Mykhailova
1 week · 4-6 hours per week · BEGINNER

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!


5, 10 or 20 seats+ for your team - learn more

Look inside

In this liveProject, you’ll take on the role of a cryptography expert evaluating quantum computing for the purpose of key distribution. Key distribution generates a random secret key which is then shared between only two parties, and is a crucial part of many cryptographic algorithms. You’ll work to implement the common BB84 key distribution, simulate using the BB84 protocol to generate a shared key, and then visualize the steps of the BB84 protocol.

This project is designed for learning purposes and is not a complete, production-ready application or solution.

project author

Mariia Mykhailova
Mariia Mykhailova is a senior software engineer at Microsoft Quantum, where she focuses on education and developer outreach. Mariia is the author and maintainer of the Quantum Katas project, an open-source collection of hands-on tutorials and exercises for learning quantum computing using the Microsoft Quantum Development Kit. She is the lead organizer of the Q# Coding Contests series, and is also a part-time lecturer at Northeastern University Seattle, teaching the class "Introduction to Quantum Computing." She hosted quantum computing workshops and presented her work in quantum computing education at multiple events and conferences.


This liveProject is for software engineers interested in exploring hands-on quantum computing. To begin this liveProject you will need to be familiar with the following:

  • Basics of Python or C#
  • Basics of linear algebra
  • Basics of probability theory
  • Basics of quantum computing concepts


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.

choose your plan


only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • BB84 Key Distribution Protocol project for free