QNC Security Simulator - Animated Version (Real Post-Quantum Crypto)
====================================================================

CONTENTS
- qnc_simulator_animated.py
- README.txt

WHAT IT DOES
This tool visually contrasts how a quantum adversary (Shor's algorithm) defeats
classical RSA/ECC versus how it fails against QNC's NIST post-quantum lattice
cryptography. Unlike a purely cosmetic demo, this version runs REAL cryptographic
operations underneath the animation:

  RSA/ECC mode:
    - Builds a genuine RSA key pair (small parameters)
    - Actually factors the public modulus and recovers the private key
    - Proves the break by decrypting a ciphertext with the stolen key
    - This is the exact structural weakness Shor's algorithm exploits at scale

  QNC mode:
    - Generates a real CRYSTALS-Dilithium (ML-DSA-65, FIPS 204) key pair
    - Signs a real institutional message
    - Demonstrates the signature CANNOT be forged (bit-flip fails)
    - Demonstrates it CANNOT be replayed on a fraudulent amount
    - Shows the Module-LWE lattice has no period for Shor to attack
    - Establishes a real CRYSTALS-Kyber (ML-KEM-768, FIPS 203) shared secret

INSTALL (for the real cryptographic operations)
    pip install dilithium-py kyber-py

If those libraries are missing, the tool still runs in a clearly-labelled
simulation mode.

HOW TO RUN ON WINDOWS
1. Extract the ZIP.
2. Open the extracted folder.
3. Click the folder path bar, type:  cmd   and press Enter.
4. (Optional, for real crypto)  pip install dilithium-py kyber-py
5. In the terminal type:

   py qnc_simulator_animated.py

   or:

   python qnc_simulator_animated.py

HOW TO RUN ON MAC / LINUX
1. Extract the ZIP.
2. Open a terminal in the folder.
3. (Optional, for real crypto)  pip3 install dilithium-py kyber-py
4. Type:

   python3 qnc_simulator_animated.py

IMPORTANT NOTE
This is a visual simulation for pitch/demo purposes. It does not represent an
actual break of a production 2048-bit RSA key (that requires a large-scale
quantum computer). What IS real:
  - the RSA key really is built and really is factored (at small size)
  - the Dilithium signatures really are generated, verified, and proven unforgeable
  - the Kyber key exchange really is performed
So the cryptographic behavior shown on screen is genuine and independently
checkable, only the parameter sizes are reduced so the classical "break" can be
demonstrated live.
