Se ti capita di avere messaggi cifrati casuali che non sono stati crittografati con la tua chiave pubblica (e quindi non puoi decifrare il messaggio), allora la risposta è no. Le firme devono essere contenute all'interno del blob dei dati crittografati altrimenti non è possibile verificare nulla di credibile. Ecco perché.
(Innanzitutto, assicuriamoci di essere sulla stessa pagina: crittografate un messaggio usando una chiave pubblica e firmate con una chiave privata. Non avrete mai (!) le chiavi private di qualcun altro perché altrimenti l'intero meccanismo di protezione cade a parte).
La crittografia è protezione da intercettazioni. La firma è la non-ripudio del mittente, il che significa che il mittente non può dire di non averlo inviato.
Per verificare il mittente di un messaggio firmato e crittografato (l'ordine conta qui), è necessario prima decifrare il messaggio perché la firma è parte del messaggio crittografato. Decifrare il messaggio non ti dirà nulla riguardo al mittente dato che chiunque può criptare un messaggio con la tua chiave pubblica.
Una volta decodificato il messaggio, puoi estrarre la firma e verificarla utilizzando le chiavi pubbliche che hai per quei possibili mittenti.
Tuttavia, ciò che non è possibile determinare è se la stessa persona HA EFFETTIVAMENTE firmato e crittografato il messaggio in virtù del fatto che una parte del processo (crittografia) utilizza informazioni interamente pubbliche senza informazioni specifiche sul mittente.
Se la chiave privata del mittente è caduta in mani sbagliate, tutte le puntate sono disattivate.