Sto cercando un elenco di errori tipici che qualcuno può fare quando implementa le firme digitali per un software. E naturalmente perché sono errori e in che modo un utente malintenzionato potrebbe trarne vantaggio.
Io non significa implementare la cripto stessa ma applicare / utilizzare una libreria (come GPG o qualcosa di simile) nel tuo progetto.
Cosa ho pensato finora:
- Utilizzo di algoritmi deboli per crittografia e / o hashing. - > L'attaccante potrebbe falsificare una firma valida perché è in grado di trovare collisioni.
- Gestione errata delle chiavi pubbliche (ad esempio un'applicazione scarica semplicemente una chiave pubblica necessaria per la verifica di una firma sconosciuta). - > Gli attaccanti di Man in the Middle potrebbero sostituire la chiave pubblica scaricata con le proprie e l'applicazione dovrebbe verificare i file dell'attaccante.
- Le firme non sono verificate correttamente (ad esempio il software verifica solo se c'è una firma, non se è valida.) - > L'attaccante potrebbe usare le firme "false".
Sono questi i possibili errori da fare? Le implicazioni sono corrette?
Per favore, dammi le tue idee sull'argomento.
Grazie in anticipo!
Modifica Questo è per un compito in una classe di sicurezza. Quindi voglio solo raccogliere alcune idee. Non devono adattarsi a un sistema, protocollo o software specifico. Solo alcuni errori che potresti fare in pratica.