Discussione dubbio firma digitale - hash + crittografia asimmetrica

Stato
Discussione chiusa ad ulteriori risposte.

Sauron9

Utente Silver
10 Agosto 2016
91
9
30
56
Conosco come funziona la crittografia asimmetrica e l'hashing e sto studiando la firma digitale composta da hashing + crittografia asimmetrica. Vedendo come funziona, utile è lo schemino che sta su wikipedia, noto come alice CRIPTA il messaggio da mandare a bob con la sua chiave PRIVATA. Sbaglio o la crittografia asimmetrica si cripta con la chiave pubblica del ricevente e si DECRIPTA con quella PRIVATA? Non capisco dove sto sbagliando. Ho letto più volte con attenzione la teoria e da fonti diverse trovo sempre lo stesso problema.
 
Sbaglio o la crittografia asimmetrica si cripta con la chiave pubblica del ricevente e si DECRIPTA con quella PRIVATA?
Questo è ciò che si fa per cifrare (i.e., prendere un messaggio e nasconderlo). Per firmare (i.e., prendere un messaggio e associargli la mia identità, come per dire "questo messaggio proviene da me") si fa il contrario. L'idea è che per cifrare io voglio inviare un messaggio solo a te, quindi lo cifro con la tua chiave pubblica per assicurarmi che solo tu (con la tua chiave privata) sei in grado di decifrarlo; quando firmo, tutti possono leggere il mio messaggio, tutti possono assicurarsi che quel messaggio l'ho scritto io, però solo io posso attribuirgli la mia identità (per questo faccio uso della mia chiave privata).

Ti lascio un link alla mia guida su RSA dove, tra le altre cose, spiego come usare RSA per firmare. Dal tuo post intuisco che tu stai studiando la firma digitale con appendice, mentre nel thread che ti ho linkato spiego quella con recupero di messaggio; le due modalità sono molto simili: con recupero del messaggio firmi il messaggio, mentre con appendice firmi l'hash. Non ho discusso in dettaglio la firma con appendice per il semplice fatto che volevo che la guida fosse self-contained (non parlo di cose non spiegate nella guida stessa in modo tale che chiunque, anche se parte da zero, possa comprenderla), ma se sai cos'è una funzione di hash crittografica non dovresti aver problemi a capire come si passa da recupero di messaggio ad appendice. Se dopo aver letto la guida ti resta qualche dubbio, possiamo discuterne.
Ti ricordo di leggere bene la parte precedente all'introduzione, altrimenti il resto della guida ti risulterà illeggibile.
 
Quindi, vediamo se ho capito. Il discorso di cui abbiamo parlato, spiegato in questo video(ignora la certificazione digitale), che è la firma con appendice, avviene grazie alla crittografia asimmetrica e ad altre cose che non andrò a sottolineare. La crittografia asimmetrica riesce a fare ciò, perchè non importa se la chiave è pubblica o privata, con entrambe si può o criptare o decriptare un'informazione e la seconda chiave, di conseguenza, può effettuare l'operazione opposta(complementare). Se non mi sbaglio, quindi, ho risolto. Semplicemente nello studio della crittografia asimmetrica, perchè viene sempre fatto lo stesso esempio, mi ero ingannato che solo la chiave pubblica potesse criptare e quella privata decriptare, mentre ciò non è vero e può avvenire anche il contrario. Giusto?
 
La crittografia asimmetrica riesce a fare ciò, perchè non importa se la chiave è pubblica o privata, con entrambe si può o criptare o decriptare un'informazione e la seconda chiave, di conseguenza, può effettuare l'operazione opposta(complementare)
Esatto. Con la chiave pubblica tutti possono cifrare e solo uno può decifrare, mentre con la chiave privata solo uno può cifrare e tutti possono decifrare. Se vuoi inviarmi un messaggio segreto, devi cifrarlo con la mia chiave pubblica così che solo io che possiedo la mia chiave privata posso decifrarlo. Se voglio firmare un messaggio, devo cifrarlo con la mia chiave privata così che chiunque possa decifrarlo (e.g., il destinatario del messaggio, ma anche le autorità legali, senza chiedere il permesso a nessuno). Chiunque può decifrare un messaggio firmato da me, ma solo usando la mia chiave pubblica il messaggio sarà decifrato correttamente ed è per questa ragione avviene la verifica di identità: se usi la chiave pubblica di qualcun altro otterrai spazzatura, perché il messaggio non gli appartiene.

Ovviamente non è una cosa scontata e non è detto che funzioni per ogni algoritmo di crittografia asimmetrico, è qualcosa che dev'essere dimostrato. Con RSA e con ElGamal questa cosa funziona e la dimostrazione per RSA la trovi nella guida che ti ho linkato, ma in alcuni casi può darsi che questa dualità non sia presente o non sia altrettanto sicura.
 
  • Mi piace
Reazioni: Sauron9
Ok, ricevuto, inizierò a smanettare per capire praticamente con rsa, tenendo in mente che prima di usare un cryptosystem devo vedere se supporta le azioni che intendo fare. Grazie. Chiudo.
 
Stato
Discussione chiusa ad ulteriori risposte.