È possibile utilizzare Perfect Forward Secrecy (PFS) per dimostrare che un determinato file è stato trasmesso o ricevuto in un determinato momento? Se é cosi, come? Mantenendo i record dell'intero flusso TLS?
PFS potrebbe essere utilizzato per garantire che un determinato set di pacchetti (ad esempio contenente un file) appartenga a una determinata sessione, utilizzando il seguente "protocollo":
Client C (gestione delle richieste dell'utente U1) e Server S stabiliscono una sessione TLS con una chiave k_i. L'intera sessione viene catturata e memorizzata utilizzando meccanismi antimanomissione.
C scarica un file da S.
Su richiesta di una terza parte con accesso alla cattura del pacchetto (ad esempio un tribunale), C o S rivela k_i. La terza parte accede al contenuto dell'acquisizione dei pacchetti e usa k_i per decrittografarlo, mostrando in tal modo se quel gruppo di pacchetti apparteneva a quella sessione.
Si noti, tuttavia, che questo meccanismo non può provare che U1 non ha ricevuto il file prima di quella sessione, come:
1) lo stesso testo in chiaro crittografato con chiavi diverse può - e normalmente lo fa - produrre diversi testi cifrati. Senza conoscere le chiavi di tutte le sessioni precedenti con quel server (dal momento che il primo, che avrebbe potuto essere anni prima), questo problema è inevitabile; e
2) U1 avrebbe potuto ottenere lo stesso file in precedenza e "fuori banda" in molti modi diversi, ad esempio da un altro server, avendo U2 scaricato il file usando il suo account e copiando il file localmente (o per quello, rubare le credenziali degli U2), e così via.
Leggi altre domande sui tag tls data-validation perfect-forward-secrecy