Che cosa è un buon modo per incorporare la crittografia rsa in un'app di messaggistica

0

Sto imparando la crittografia e mi sono bloccato con un problema. Supponiamo di avere un'app di chat che utilizza socket. Prima che il massaggio venga inviato è codificato con l'algoritmo RSA; quali sono alcune buone strategie per passare in sicurezza quella chiave pubblica a chiunque abbia un utente con cui chat?

La mia seconda domanda è quanto spesso un pubblico & le coppie di chiavi private devono essere aggiornate.

La mia ipotesi è che le chiavi dovrebbero essere generate ogni volta che un utente sceglie qualcuno a cui inviare un messaggio, in questo modo tutti i dialoghi verranno crittografati separatamente, tuttavia non ho alcuna conoscenza delle chiavi: dovrebbero essere generate su un server o client

    
posta Ivan Prizov 31.03.2018 - 17:01
fonte

1 risposta

2

Ovviamente dovresti generare le chiavi localmente sul dispositivo. Altrimenti, un server compromesso potrebbe perdere ogni singola chiave.

Inoltre, perché usare una coppia di chiavi per conversazione? Ciò significa molte chiavi. Uno dei sistemi crittografici a chiave pubblica è che si dispone di una chiave pubblica e privata. La chiave pubblica viene utilizzata per la crittografia e privata per la decrittografia. Quindi una chiave pubblica per cliente sarebbe sufficiente.

Non è necessario mantenere segrete le chiavi pubbliche. Mandali all'altra parte nella conversazione. Ovviamente hai bisogno di controllarne l'integrità.

Dovresti anche esaminare argomenti come la segretezza futura e come ottenere ciò.

In breve: non implementarlo da solo. vorrà fanculo. Utilizzare una libreria di crittografia e protocolli consolidati, come Signal (per la messaggistica istantanea), PGP o simili. Eviterete molte insidie usando algoritmi e protocolli ben testati.

    
risposta data 31.03.2018 - 22:46
fonte

Leggi altre domande sui tag