39
III CRYPTOLOGIE futuriste

III CRYPTOLOGIE futuriste Sommaire 1.Fondements 2.Cryptographie quantique 3.Cryptanalyse quantique

Embed Size (px)

Citation preview

IIICRYPTOLOGIE

futuriste

IIICRYPTOLOGIE

futuriste

Sommaire

1. Fondements

2. Cryptographie quantique

3. Cryptanalyse quantique

1. Fondements

1.1 L ’impasse épistémologique

1.2 La théorie de quanta

1.3 Les fondateurs

1.4 Citations

1.5 Bibliographie

1.1 L’impasse épistémologique

« La physique est définitivement constituée dans ses concepts fondamentaux. Tout ce qu’elle peut désormais apporter, c’est la détermination précise de quelques décimales supplémentaires. Il y a bien deux petits problèmes : celui du résultat négatif de l’expérience de Michelson et Morley et celui du corps noir, mais ils seront rapidement résolus et n’altèrent en rien notre confiance. »

Lord Kelvin 1892

William Thomson Lord Kelvin

(1824-1907)

Théorie de la relativité

• Expérience de Michelson et Morley– Le vent d’éther n’existe pas (le Vième élément) la mécanique de Newton : additivité des vitesses

est incompatible avec la propagation des ondes électromagnétiques de Maxwell : constance de la vitesse de la lumière

théorie de la relativité : Einstein abandon des repères absolus d’espace et de temps

pour décrire les lois physiques seules restent invariantes les constantes

cosmologiques

Physique quantique

• Rayonnement du corps noir – L’énergie émise est discontinue théorie des «quanta» aucune grandeur physique n’a de mesure

continue toute mesure apporte une quantité d’information

bornée l’état d’un système ne peut être connu que par

sa mesurececi constitue « l’interprétation de Copenhague »

1.3 Les fondateurs

Thomas Young(1773-1829)

Heinrich Rudolf Hertz(1857-1894)

Max Planck(1858-1947)

Paul Langevin(1872-1946)

Albert Einstein(1879-1955)

Niels Bohr(1885-1962)

Edwing Schrödinger(1887-1961)

Holly Compton(1892-1962)

Wolfgang Pauli(1900-1958)

Enrico Fermi(1901-1954)

Werner Heisenberg(1901-1976)

Paul Dirac(1902-1984)

Louis de Broglie(1892-1987)

Richard Feynman(1918-1988)

1.4 Citations

« Le but de la physique n'est pas de découvrir ce qu'est la nature, mais ce qu'on peut dire sur elle »

Niels Bohr

« Quiconque peut contempler la mécanique quantique sans avoir le vertige, n’y a rien compris »

Niels Bohr

« Si quelqu’un prétend avoir compris la théorie quantique, c’est la preuve qu’il n’y a rien compris »

Richard Feynman

Niels Bohr(1885-1962)

Richard Feynman(1918-1988)

1.5 Bibliographie

• Initiation à la mécanique quantique - Elie Belorizky - Dunod - Avril 2000

• Introduction à la mécanique quantique - Jean Hladik, Michel Chrysos - Dunod - Avril 2000

• Alice au pays des quanta - Robert Gilmore - Le Pommier - Mai 2000

• Introduction a l'information quantique - Michel Le Bellac - Belin - Sept. 2005

• Leçons sur l'informatique - Richard Feynman - Odile Jacob - Sept. 2006

• Mes premiers pas en mécanique quantique - Christos Gougoussis, Nicolas Poilvert - Ellipse - Janvier 2007

• Leçons sur la physique - Richard Feynman - Odile Jacob - Oct. 2007

• Vous voulez rire, Monsieur Feynmann ! - Odile Jacob - Oct. 2007

• Vous y comprenez quelque chose Monsieur Feynmann ? - Odile Jacob - Oct. 2007

2. Cryptographie quantique

2.1 Une expérience surprenante

2.2 Le protocole BB84

2.3 La cryptanalyse

2.1 Une expérience surprenante

Explication

L’état de la polarisation est défini par un vecteur dans un espace à 2 dimensions

|> = a|x> + b|y> notation de Dirac

x et y sont les vecteurs de base

si est l’angle de polarisation

a = cos b = sin

a2 + b2 = 1

x

y

a

b

Propriétés quantiques

Un photon de polarisation rencontrant un filtre d’angle 0 dans le repère <x, y>est transmis avec la probabilité p = cos2est absorbé avec la probabilité q = sin2

soit pour = 0 p = 1 = π/2 p = 0 = π/4 p = 1/2

ET si p > 0 il ressort du filtre avec la polarisation … 0 ! On ne peut donc pas savoir quelle était la polarisation du

photon avant son passage dans le filtre !

Exemples

2.2 Le protocole BB84

Gilles Brassard (1955)

PrincipeAlice code un message par des photons polarisésen utilisant aléatoirement l’un des jeux de filtres

ou

Exemple :0 codé ou 1 codé ou

Bob décode le message en utilisant aléatoirement un filtreou

Charles Bennett (1943)

Transmission de clef

1. Alice envoie à Bob un message codé selon le principe précédent

2. Bob décode le message en posant aléatoirement des filtres et

3. Alice transmet à Bob ses choix de filtres en clair

4. Bob transmet à Alice ses bons choix en clair Alice et Bob considèrent la suite de bits correctement

décodés par Bob comme clef La clef peut être utilisée comme choix de jeux de filtres

entre Alice et Bob : par exemple 0 = 1 =

Notations simplifiées

• FiltresDans ce qui suit + et représenteront

pour Alice les jeux

pour Bob les filtres

• Polarisations

seront utilisées pour

Exemple

message 1 0 1 1 0 0 1 1 0 0 1 1polarisation + + + + + + émission

filtres + + + + + + réception 1 0 0 1 0 0 1 1 0 0 0 1

validation + + + + + +

confirmation V F F V V V F V V V F V clef transmise

Ali

ceB

obA

lice

Bob

1

3

4

Remarques

• Les phases 3 et 4 peuvent être intervertiesdans ce cas Bob indique ses choix de filtres à Alice qui valide les

bons choix (ceux qu’elle a fait)

• Les transmissions des phases 3 et 4 peuvent se faire sur un canal non quantique ou sur le même canal en convenant à l’avance d’un jeu de polarisation : + ou

Caractéristiques physiques

• Le comportement quantique des photons nécessite – une très faible quantité de photons par bit transmis donc

– une très faible énergie donc

– un faible rapport signal/bruit donc

– une forte sensibilité aux pertes et erreurs de transmission

Nécessité d’un codage redondant (ex : CRC)– détecteur / correcteur d’erreurs

Ajout de redondance

La redondance ne peut porter sur tout le message transmis par Alice mais uniquement sur les bits validés en commun

Elle doit donc être fabriquée et transmise après la phase de validation

Elle va s’avérer inefficace en cas d’interception du message par Eve

Elle doit être transmise en clair et va donc apporter de l’information à Eve !

Mesure quantique

• La mesure destructive de la polarisation a pour conséquences – l’impossibilité de répéteurs, routeurs, commutateurs

transmission de point à point uniquement

– la modification du message transmis en cas d’interception : en moyenne 1/4 des bits seront altérés (50% de mauvais choix de

filtres par Eve et 50% de mauvaises mesures par ces filtres) l’introduction de la redondance est inefficace pour la détection

d’intrusion

2.3 Cryptanalyse

• Il n’y a pas de cryptanalyse passive ! toute intrusion pour capter un message le modifie ! cette modification est aléatoire et ne peut donc être utilisée pour :

falsifier un messageeffectuer une attaque « man in the middle »

la seule parade possible est de procéder à une détection d’intrusion et de recommencer tout le protocole la transmission peut être éternellement compromise si l’intrusion est permanente

Détection d’intrusion

• Protocole simple – Alice et Bob vont tester une partie aléatoire des bits du

message validé en transmettant en clair leur position et leur valeur sur un canal non nécessairement quantique

– s’il y a concordance • ces bits sont retirés du message transmis car Eve a pu en

prendre connaissance• le message ainsi amputé est validé

– sinon • Alice et Bob supputent une intrusion• ils abandonnent le message transmis

Conjectures

• Impossibilité de « cloner » un photon– Eve pourrait prendre une copie du message transmis puis appliquer

ensuite les bons filtres transmis par Alice et Bob

• Impossibilité de « capter » une partie des photons – Chaque bit est en fait émis par plusieurs photons de même

polarisation

– Eve pourrait alors en capter certains et laisser passer les autres donc avoir une copie du message

– Cette impossibilité est assurée par le fait qu’Eve ne possède pas de détecteur plus sensible que celui de Bob

3. Cryptanalyse quantique

3.1 L’ordinateur quantique

3.2 Les algorithmes quantiques

3.3 La complexité quantique

3.1 L’ordinateur quantique

• Le bit quantique ou q-bit– tout élément physique quantique décrit par une fonction

dans un espace à 2 dimensions

|> = a|0> + b|1>où 0 et 1 sont les vecteurs de baseet a2 + b2 = 1

• a2 est la probabilité d’observer |> = |0> • b2 est la probabilité d’observer |> = |1>

– tant que l’élément n’est pas observé, a et b sont inconnus

Interprétations

• la méconnaissance de |> peut être interprétée comme– un état aléatoire avec la distribution p|0> = a2 et p|1> = b2

– une « superposition » de 2 états observables contenant l’état |0> dans la proportion a2 et l’état |1> dans la proportion b2

– un ensemble de 2 univers où l’état est déterminé pour chacun d’eux : dans l’univers 1 |> = |0> et dans l’univers 2 |> = |1>

• ou selon l’interprétation de Copenhague– une incertitude due à l’absence d’observation

– cette incertitude peut être évaluée par la mesure de Shannon • I (|> ) = - a2 log2 a2 - b2 log2 b2

• elle a comme valeur maximum pour a2 = b2 = 1/2 … 1 bit !

Les composants « classiques »

– on sait que toute fonction booléenne peut être réalisée à l’aide du seul composant (NAND) défini par

(0,0) = (0,1) = (1,0) = 1 et (1,1) = 0

– par exemple a = (a,1) ab = ( (a,b)) ab = (a, b)

– mais il ne peut être utilisé comme composant quantique• il n’agit pas sur des q-bits

• une fonction quantique doit être mathématiquement réversible c’est à dire que f (f (x)) = x

Les composants quantiques

• CNOT Controlled Notcnot (a, b) = (a, ab)

réversible car cnot (a, ab) = (a, b)

– propriété : cnot (a, 0) = (a, a) cnot (a, 1) = (a, a)

• Toffoli tof (a, b, c) = (a, b, c(ab))

réversible car tof (a, b, c(ab)) = (a, b, c)

– propriété : tof (a, b, 1) = (a, b, (a,b))

Tomasso Toffoli(1943)

La transformation de Hadamard

• Permet la « mise en état quantique »

H |0> = 2-2 (|0> + |1>)

H |1> = 2-2 (|0> - |1>)

– Propriétéla mesure de |> = H |0> donne

|0> avec la probabilité 1/2

|1> avec la probabilité 1/2

Jacques SalomonHadamard

(1865-1963)

3.2 Les algorithmes quantiques

• Parallélisme – une fonction f sur un q-bit (ou un ensemble de q-bits) agit sur

l’état |> donc sur |0> en même temps que sur |1> donc • a priori, pour un problème donné, le calcul de f sera plus rapide par

un algorithme quantique que par un algorithme classique mais

• il n’est possible d’observer le résultat de f que pour un et un état d’un q-bit

• le parallélisme du calcul ne permet donc pas d’observer les résultats de f pour plusieurs valeurs des données

– peu de problèmes admettent donc des algorithmes quantiques

Algorithme de Deutsch

• Calcul de f(0) = f(1)– algorithme classique complexité 2*C

• calcul de f (0) complexité C

• calcul de f (1) complexité C

• calcul de f (0) = f(1)

– algorithme quantique complexité C• calcul de f (|> = 2-2 |0> + 2-2 |1>)

• mesure de f(0) = f(1)

il n’y a pas à mesurer f(|0>) ET f(|1>)

David Deutsch(1953)

Algorithme de Grover

• Recherche d’un élément dans un tableaux tel que y = T(x) T: tableau [1:N]

– algorithme classique• parcours du tableau T complexité N/2 en

moyenne

– algorithme quantique • utilisation d’un registre de n q-bits pour stocker T

• construction de f(x) de domaine {0, 1, … 2n-1} telle que

f(x) = 0 si x≠ y et f(x) = 1 si x = y

complexité N1/2

Lov Kumar Grover(1961)

Factorisation de n = p q

– algorithmes classiques• complexité inconnue NP

• algorithmes exponentiels

on sait que si a < n et pgcd (a,n) = 1

f : x ax mod n est périodique de période r et

p = pgcd (ar/2 - 1, n) q = pgcd (ar/2 + 1, n)

en effet ar - 1 = (ar/2 - 1) (ar/2 + 1) mod n = 0 si r = (n)

calculer p et q revient donc à trouver la période de x ax mod n

Algorithme de Shor

– recherche la période r d’une fonction f : x ax

la mesure de r nécessite le calcul de f mais pas la mesure du résultat de ce calcul (cf. algorithme de Deutsch)

r peut être calculé en temps polynomial par des fonctions quantiques

Donc la factorisation de n = p q est de complexité P sur un ordinateur quantique

Peter Shor(1959)

3.3 la complexité quantique

• Constatations– le calcul quantique est plus rapide que le calcul classique à cause

du parallélisme mais

– la mesure des résultats d’une fonction quantique ne permet pas d’obtenir toutes les valeurs de cette fonction

– il existe des algorithmes quantiques polynomiaux pour résoudre des problèmes dont on ne connaît pas d’algorithme classique polynomial (factorisation)

– on ne connaît aucun problème NP admettant un algorithme quantique polynomial

l’algorithmique quantique ne donne actuellement aucune information sur la conjecture P = NP

Conjecture

• BQP : Bounded error, Quantum Polynomial time– classe des problèmes quantiques polynomiaux

• BPP : Bounded error, Probabilistic Polynomial time– classe des problèmes probabilistes polynomiaux

• P : Polynomial time– classe des problèmes polynomiaux

• NP : Non deterministic Polynomial time– classe des problèmes non deterministes polynomiaux

on sait que P BPP NP

et que P BPP BQP

mais BQP ? NP