Uno schema di firma digitale è un metodo crittografico che consente a un mittente di dimostrare che un messaggio, un file o un pacchetto software provenga davvero da lui e non sia stato alterato durante il transito. Utilizza una chiave privata per creare una firma e una chiave pubblica per verificarla. Se i dati cambiano, la verifica fallisce. Questo rende le firme un controllo fondamentale per gli aggiornamenti software, i flussi di lavoro dei documenti, la messaggistica sicura e la firma del codice.
Nella sicurezza informatica, le firme digitali aiutano i difensori a rilevare manomissioni e a rifiutare contenuti falsificati, ma sono anche un bersaglio per gli attaccanti. Gli avversari possono cercare di rubare le chiavi di firma, abusare di algoritmi deboli o sfruttare difetti nella matematica o nell'implementazione di uno schema per produrre firme apparentemente valide. Per questo i nuovi progetti, compresi i candidati post-quantistici, sono sottoposti a un'ampia revisione prima dell'adozione. Uno schema in fase di standardizzazione è ancora provvisorio: qualsiasi debolezza può influire sulla fiducia, sulle scelte dei parametri o sul fatto che l'algoritmo debba essere usato affatto. Schemi di firma robusti supportano sia l'autenticità sia l'integrità, ma solo quando le chiavi sono protette e l'algoritmo rimane valido.


