[LinkedIn post] Distribuzione quantistica di chiavi (QKD)
Sono entusiasta di condividere il mio progetto che simula i protocolli di Distribuzione Quantistica di Chiavi (QKD) in Python!
Sebbene la crittografia One-Time Pad (OTP) offra una sicurezza teorica perfetta, la sfida consiste nello scambiare la chiave segreta in modo sicuro.
Le mie simulazioni esplorano come la meccanica quantistica fornisca delle soluzioni:
- Nessun Protocollo: dimostra la vulnerabilità dello scambio di chiavi di base: una persona che spia (Eve) può silenziosamente impossessarsi della chiave.
- Protocollo BB84: simula il classico approccio “prepara e misura”. Alice invia qubit; Bob li misura. Riconciliano pubblicamente le basi utilizzate e scartano quelle discordanti. Confrontano un sottoinsieme dei bit rimanenti per verificare il tasso di errore (Quantum Bit Error Rate - QBER). Un QBER elevato indica la presenza di Eve, spingendoli a scartare la chiave.
- Protocollo E91: Sfrutta la correlazione quantistica. Una sorgente distribuisce coppie di qubit correlati. Alice e Bob misurano indipendentemente con impostazioni scelte a caso. Utilizzano risultati ad angoli specifici per eseguire un test di Bell (disuguaglianza CHSH). La violazione della disuguaglianza conferma le correlazioni quantistiche e la sicurezza; il fallimento indica intercettazione. La chiave è derivata dai risultati ottenuti con basi compatibili.
La differenza fondamentale sta in come la chiave viene scambiata e in come l’intercettazione viene rilevata usando principi quantistici – tramite errori introdotti (BB84) o correlazioni disturbate (E91).
Potete esplorare il codice Python e le simulazioni su GitHub qui e i dettagli matematici sul mio sito web qui.
Puoi accedere al post originale su LinkedIn qui.