La cryptographie quantique
Et encore des protocoles. Vous n'en n'avez pas marre ?
Protocole COW
COW pour Coherent One Way la vache !
Il s'agit d'un encodage dans le temps, quelque part une sorte de modification de BB84.
Alice envoie des impulsions cohérentes qui sont soit vides, soit remplies avec un nombre moyen de photon µ < 1 (typiquement µ=0.5). On affecte la valeur "bit0" à "µ-0" (plein puis vide dans le temps), et la valeur "bit1" à un couple "0-µ", mais on peut aussi envoyer du decoy "µ-µ".

Le montage est le suivant :

Bob va détecter l'heure d'arrivée sur DB. Suivant que la détection est sur un slot pair ou impair, ce sera un bit0 ou un bit1.
Bob vérifiera au hasard avec l'interféromètre la cohérence de deux impulsions successives pleines avec DM1 et DM2 donc du "µ-µ" (decoy) ou une succession "0-µ" "µ-0" (donc un bit1 suivi d'un bit0 dans le temps). Si la longueur d'onde du laser et la phase de l'interféromètre sont correctement alignés, alors on fera une détection sur DM1 et aucune sur DM2. Une perte de cohérence révèle la présence d'Eve et alors on jette les bits.
C'est un système extrêmement simple ! Toute l'optique est passive côté Bob. Le protocole est le suivant :
- Alice génère des doubles pulses pleins avec une certaine probabilité, et 50/50 sur le restant pour les plein-vide et vide-plein.
- Bob mesure l'heure d'arrivée (numéro de slot), ce qui lui donne le code secret (slot pair ou impair) et l'heure des clicks sur DM2.
- Bob envoie sur canal classique le numéro de bit et l'heure des clicks sur les détecteurs de cohérence
- Alice vérifie à partir des heures si c'est cohérent avec les "decoy" ou "bit1-bit0". Si Eve est là, elle cassera la cohérence entre deux µ successifs et ça se verra.
- Alice dit à Bob si c'était un "decoy" pour les retirer
Une variante a aussi été proposée sans les "decoy".
Protocole DPS
DPS differential phase shift, DPS-QKD de son petit nom.
Le codage va se faire entre deux impulsions séquentielles dont on aura provoqué une différence de phase -comme son nom l'indique. Encoder sur la phase un signal n'a rien de nouveau, ici cela a été appliqué dans le cadre quantique.

C'est aussi un encodage qui utilise le "time-bin", des impulsions consécutives dont on détecte les interférences avec une ligne à retard qui est exactement l'espacement entre deux impulsions (évidemment).
- Alice envoie un train d'impulsions, avec une phase qui vaut 0 ou π aléatoire. Un atténuateur permet d'obtenir moins d'un photon par impulsion.
- Bob décode à la réception : il va utiliser les impulsions par paire et assignera un "0" ou "1" suivant la différence de phase.
- Bob envoie la date de "click" des détecteurs (mais pas lequel) à Alice.
- Alice en déduit la valeur car elle a noté ce qu'elle a envoyé avec son modulateur de phase.
Évidemment, tout cela est très sensible au jitter, il faudra alors réduire le débit en conséquence.
On a aussi commencé à jouer avec le retard de la ligne à retard, pour faire interférer diverses impulsions avec un certain écart :

Avec divers raffinements, vu que c'est la porte ouverte à un tas de variantes (ci-dessus, c'est 7 impulsions, mais bon, on se doute qu'on peut faire ce qu'on veut) :
- RRDPS round-robin differential-phase-shift : Bob peut choisir aléatoirement sa paire d'impulsions
- SNRDPS small-number-random DPS
- DPTS differential phase time shift
- (et peut-être d'autres encore…)
Protocole DPTS
DPTS differential phase time shift

Cette fois on a 4 états, suivant que c'est le premier ou second créneau qui est impliqué. C'est évidemment plus robuste aux attaques.
Tous ces protocoles commencent sérieusement à me courir, il y a en a pléthore.
Je vais m'arrêter là, vous avez à présent une petite idée de ce qu'on peut faire, et manifestement il y a beaucoup de place pour l'innovation.