Trasporta in modo sicuro un token segreto in modo che non possa essere utilizzato anche se ficcato in snoop?

0

Stiamo lavorando a un progetto scolastico che gestisce le informazioni sensibili (un gestore di password) che transitano tra un client che crittografa i dati e un server che non sa nulla dei dati. Per ottenere i dati, il client deve autenticarsi tramite un nome utente / password e ottenere un token generato casualmente.

Sarà un'app ospitata autonomamente e il nostro obiettivo è avere qualcosa di sicuro anche se l'utente non si preoccupa di usare HTTPS. Quindi vogliamo essere sicuri che se qualcuno ha spiato il token, non sarebbe in grado di usarlo.

Pensavamo di poter utilizzare un messaggio firmato tramite OpenPGP, ma questo significa che ogni messaggio deve essere diverso e che i dati meno recenti devono essere archiviati sul lato server in modo che l'attacco di riproduzione non possa essere utilizzato.

Questa idea non è chiaramente la migliore. Qualcuno ne ha uno migliore?

    
posta Nathan J 19.02.2018 - 10:21
fonte

2 risposte

1

TLS è progettato per proteggere i dati durante il trasporto. Ti consiglierei di usarlo, dal momento che è improbabile che tu possa trovare un'alternativa migliore da solo. Imponi a tutti gli utenti (utenti finali e self hoster) di utilizzare TLS e non consentire mai ad es. semplice HTTP.

Come regola generale, non devi mai provare a implementare "comunicazione sicura senza TLS". Molti hanno provato, pochi ci sono riusciti.

    
risposta data 05.03.2018 - 16:11
fonte
0

Per fare ciò, puoi usare un algoritmo che usa anche l'indirizzo MAC del tuo computer per creare il token, quindi se qualcuno scopre il metodo per spezzare il tuo token, avrà anche bisogno del tuo indirizzo MAC.

    
risposta data 05.03.2018 - 15:58
fonte

Leggi altre domande sui tag