La crittografia ha un costo termodinamico intrinseco?


19

Il calcolo reversibile è un modello computazionale che consente solo operazioni termodinamicamente reversibili. Secondo il principio di Landauer, che afferma che la cancellazione di un po 'di informazioni rilascia joule di calore, questo esclude le funzioni di transizione che non sono one-to-one (ad esempio, gli operatori booleani AND e OR). È noto che il calcolo quantistico è intrinsecamente reversibile perché le operazioni consentite nel calcolo quantistico sono rappresentate da matrici unitarie.kTln(2)

Questa domanda riguarda la crittografia. Informalmente, la nozione di "reversibilità" sembra un anatema agli obiettivi fondamentali della crittografia, suggerendo così la domanda: "La crittografia ha un costo termodinamico intrinseco?"

Credo che questa sia una domanda diversa rispetto a "Si può fare tutto in quantistica?"

Nei suoi appunti , il Dr. Preskill afferma: "Esiste una strategia generale per simulare un calcolo irreversibile su un computer reversibile. Ogni cancello irreversibile può essere simulato da un cancello di Toffoli fissando gli input e ignorando gli output. Accumuliamo e salviamo tutti i rifiuti" "bit di output necessari per invertire i passaggi del calcolo."

Ciò suggerisce che queste simulazioni quantistiche reversibili di operazioni irreversibili prendono un input e anche uno spazio "scratch". Quindi, l'operazione genera output insieme ad alcuni bit scratch "sporchi". Le operazioni sono tutte reversibili rispetto all'output più bit di immondizia, ma a un certo punto, i bit di immondizia vengono "eliminati" e non considerati ulteriormente.

Poiché la crittografia dipende dall'esistenza di funzioni unidirezionali della botola, un'affermazione alternativa della domanda potrebbe essere: "Esistono funzioni unidirezionali della botola che possono essere implementate usando solo operazioni logiche reversibili, senza ulteriore spazio di memoria?" In tal caso, è anche possibile calcolare una funzione unidirezionale di botola unidirezionale usando solo operazioni reversibili (e senza spazio di lavoro)?


2
una domanda interessante.
Suresh Venkat,

4
Presumibilmente questa domanda si applica solo alla crittografia a chiave pubblica. I cryptosystems simmetrici (come DES) non possono essere resi completamente reversibili?
Peter Shor,

1
Accidenti, ho scritto l'ultimo commento troppo tardi la sera, e ho fatto un casino. Quello che avrei dovuto dire è che il costo termodinamico è indipendente dalla dimensione dello spazio scratch per i sistemi a chiave sia pubblica che privata, poiché puoi semplicemente eseguire il calcolo reversibile, copiando i bit di output (ma non lo spazio scratch) in un ancilla registrarsi e quindi invertire il calcolo originale (decomprimendo tutto nello spazio scratch).
Joe Fitzsimons,

Risposte:


14

Come ho accennato nel mio commento sopra, e come alludi nella domanda, ogni calcolo può essere reso reversibile e, semplicemente mantenendo i bit extra, non vi è alcun costo termodinamico inerente.

Ogni circuito generato utilizzando porte e ancille Toffoli per sostituire cancelli irreversibili diventa tanto efficace da invertire quanto da calcolare, supponendo che abbiate accesso a tutti i bit di uscita. Questo non è chiaramente il caso delle funzioni considerate nella crittografia, poiché molte ancille vengono utilizzate e scartate. È mantenendo segreti questi bit extra che rendono difficile il calcolo al contrario.

Tuttavia, calcolando la funzione in modo reversibile, facendo una copia del sottoinsieme di bit corrispondente all'uscita, e quindi invertendo la funzione il costo totale dell'energia per il calcolo e invertendo la funzione sarà zero, mentre l'unico costo sostenuto sarà nel fare il copia dei bit di uscita, che dipende solo dal numero di bit di uscita e non dalla funzione calcolata. Questo è chiaramente il meglio che puoi fare, dal momento che costa la stessa energia della semplice scrittura della stringa di output in un registro vuoto.

Passando alla tua domanda rinnovata:

"Esistono funzioni unidirezionali della botola che possono essere implementate utilizzando solo operazioni logiche reversibili, senza spazio di memoria aggiuntivo?"

La risposta è banalmente no. Se si applica l'inverso di ciascuna porta in ordine inverso, si calcola l'inverso della funzione. Supponendo un modello in cui le porte agiscono su un numero fisso di qubit alla volta, allora l'inverso di ciascuna porta elementare reversibile può essere applicato in tempo costante. Quindi una tale funzione è tanto facile da invertire quanto da calcolare (fino a una costante moltiplicativa), e quindi non è una funzione botola.


1
ff

4
f

@mikero: hai bisogno di energia per inizializzare tutti i bit ancilla ad uno stato iniziale noto, ma poiché alla fine del calcolo tutti i bit ancilla sono tornati allo stesso stato iniziale noto, puoi recuperare quell'energia.
Antonio Valerio Miceli-Barone,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.