La tua domanda è un po 'come questa (con scuse a Tom Stoppard ): " perché posso mescolare la marmellata nel mio budino di riso, ma non mescolarlo di nuovo? "
Alcune operazioni matematiche sono facili da fare all'indietro come in avanti. Ad esempio è possibile aggiungere 100 a un numero con la stessa facilità con cui sottrarre 100. Tuttavia, alcuni sono più difficili da invertire. Ad esempio, se prendo x
e trovo g(x) = a(x^5)+b(x^4)+c(x^3)+d(x^2)+ex+f
, devo semplicemente moltiplicare e aggiungere semplicemente. Ma tornare da g(x)
a x
è difficile (in maniera algebrica) come non esiste una soluzione algebrica generale a un quintic equazione . Non è immediatamente ovvio perché dovrebbe essere così (al contrario di un'equazione quadratica), ma lo è. Per un esempio più appropriato, se ti dicessi che 34129 e 105319 erano entrambi primi (quali sono), potresti rapidamente scoprire che il loro prodotto era 3594432151. Tuttavia, se ti chiedessi di trovare i due fattori primi di 3594432151 probabilmente lo troverai piuttosto difficile.
La crittografia a chiave pubblica prende una coppia di chiavi. In generale, la chiave privata fornisce ai parametri un algoritmo difficile da decifrare che va in una direzione (ad esempio testo semplice in testo cifrato), e la chiave pubblica fornisce i parametri per un algoritmo difficile da decifrare nell'altro.
Quindi, la ragione per cui non si può lavorare all'indietro è semplicemente perché l'algoritmo è stato progettato per renderlo difficile.