Quantum Computing and PQC - Post Quantum Crypto
This repo contains the resources for the lectures and labs in Quantum Crypto field within ISM - IT | Cybersecurity Master Program - www.ism.ase.ro
https://drive.google.com/file/d/10uutxiZWXoMY4xmXECkRTv6zLZ3C6OAo/view?usp=sharing
https://drive.google.com/file/d/1lD0sybjuSujYaNs_AY1sd55yST7ZWymA/view?usp=sharing
https://drive.google.com/file/d/1V2aFQeEntXUNRq3n2v-4zlDcc9j1h_h0/view?usp=sharing
This repo has modifications for the compilation & run command line (adapted to run with Java OpenJDK 17 and Open JavaFX 17 for MacOS/Linux on both Intel/AMD and ARM CPUs) and some modified samples from the Quantum Java repo - author Johan Vos and Quantum Assembly - Open QASM with references to Qiskit.
https://github.com/johanvos/quantumjava
This repo is cloned under BSD-3 license from the author Johan Vos who is author of the book: 'Quantum Computing in Action' @ https://www.manning.com/books/quantum-computing-in-action
Strange is a Java Open Source implementation for a Quantum Computing Simulator - main author Johan Vos: https://github.com/redfx-quantum/strange
StrangeFX is a Java Open Source with GUI implementation for a Quantum Computing Simulator - main author Johan Vos: https://github.com/redfx-quantum/strangefx
- 'Quantum Computing in Action' by Johan Vos, Manning Publishing, January 2022, ISBN 9781617296321
@ https://www.manning.com/books/quantum-computing-in-action | https://github.com/johanvos/quantumjava
- 'Programming Quantum Computers: Essential Algorithms and Code Samples' by Eric R. Johnston, Nic Harrigan, Mercedes Gimeno-Segovia, O'Reilly Publishing, July 2019, ISBN-13: 978-1492039686 | ISBN-10: 1492039683
@ https://learning.oreilly.com/library/view/programming-quantum-computers/9781492039679/ | https://oreilly-qc.github.io/?p=2-4# | https://github.com/oreilly-qc/oreilly-qc.github.io | https://github.com/oreilly-qc/oreilly-qc.github.io/tree/master/samples | https://oreilly-qc.github.io/samples/Qiskit/
In addition for the mathematics, quantum mechanics and some additional coding please take into account the following:
-
'Dancing with Qubits' by Robert S. Sutor, Packt, November 2021, ISBN 9781838827366 @ https://www.packtpub.com/product/dancing-with-qubits/9781838827366
-
'Quantum Computing for Everyone' by Chris Bernhardt, MIT Press, March 2019/September 2020, ISBN: 9780262039253 | ISBN: 9780262539531 @ https://mitpress.mit.edu/books/quantum-computing-everyone
-
'Quantum Computing: An Applied Approach' 2nd Edition by Jack D. Hidary, Springer Link, 2021, ISBN: 978-3-030-83274-2 | ISBN: 978-3-030-83273-5 @ https://link.springer.com/book/10.1007/978-3-030-83274-2
-
Vladimir Silva, "Practical Quantum Computing for Developers: Programming Quantum Rigs in the Cloud, Quantum Assembly Language and IBM QExperience", Publisher: Apress, Release Date: December 2018, ISBN: 9781484242186
More math recap:
- 'Quantum Computing Fundamentals' by Dr. Chuck Easttom, Addison-Wesley Pearson Education, 2021, ISBN-13: 978-0136793816 | ISBN-10: 0136793819
https://pq-crystals.org/kyber/index.shtml
Reference implementation: https://github.com/pq-crystals/kyber
Java: https://github.com/fisherstevenk/kyberJCE
js: https://github.com/antontutoveanu/crystals-kyber-javascript
Java Card:
JC XMSS (Extended Merkle Signature Scheme): https://www.mnm-team.org/pub/Diplomarbeiten/kage20/PDF-Version/kage20.pdf
JC XMSS: https://github.com/joostrijneveld/javacard-xmss
JC Infineon Kyber implementation: https://blogs.oracle.com/java/post/java-card-at-javaone-2022-in-las-vegas
These repos are included in this repo and they are used for visualisation of the qubit(s) and quantum gates representation in Bloch sphere - author Casey Duckering: