Una firma digitale viene verificata utilizzando un algoritmo che accetta tre input: il messaggio, la firma digitale (messaggio crittografato con chiave privata) * e la chiave pubblica. Se la chiave pubblica viene utilizzata per verificare il messaggio originale alla firma, allora logicamente l'algoritmo deve contenere un metodo per trasformare la chiave pubblica nella chiave privata, in modo che possa avvenire la verifica. Ciò implicherebbe un metodo per ottenere la chiave privata dalla chiave pubblica, che sconfigge lo scopo .
Qualcuno può spiegarmi come viene implementato l'algoritmo per evitare questo problema?
* come spiegato da Mike sotto, la firma è in realtà un riassunto del messaggio crittografato con la chiave privata
Modifica
Penso che "logicamente" fosse una scelta scadente di parole. Intendevo dire che sembrava "intuitivo" che l'unico modo per decifrare la firma fosse convertire la chiave pubblica nella chiave privata. Ovviamente ciò comprometterebbe la riservatezza della chiave privata e "vanificherà lo scopo". Alla luce di ciò, stavo cercando di capire in che modo la chiave pubblica verifica la firma senza conversione in chiave privata. Ho bisogno di aiuto con la matematica perché l'asimmetria non è intuitiva.
Le firme digitali non sono le stesse dello scambio di chiavi. Per quanto ne so, in senso lato, il primo usa la chiave pubblica per "decodificare / verificare" il messaggio, mentre il secondo usa la chiave privata per "decodificare" la chiave simmetrica scambiata (che era "crittografata" usando il chiave pubblica associata).