Quantum Cryptography and Post-Quantum Cryptography