Comunicazione SSL tra un server C # e un'applicazione client Android

1

Sto usando un server C # e un esempio di client tcp C # che ho estratto da MSDN e ho creato un certificato autofirmato usando makecert.exe. Ho avuto questo per comunicare tra loro e sembra che stia funzionando bene. Allo stesso modo voglio costruire un client tcp Android che comunichi con il server C #. Devo creare un certificato per il cliente o qualcosa del genere? Se faccio come faccio a importarlo in Android?

    
posta Mr.Noob 25.02.2015 - 15:49
fonte

1 risposta

1

Se non si intende eseguire l'autenticazione del client tramite SASL o simili, è necessario un certificato solo per il server. Basta incorporare la chiave pubblica che hai generato nell'app e utilizzarla per il blocco dei certificati.

Se il certificato viene firmato da una CA nell'archivio trust di Android, è possibile utilizzare le utilità Android TLS senza alcun passaggio aggiuntivo, poiché la verifica verrà gestita automaticamente. In ogni caso, il blocco sembra essere l'opzione più sicura per un'app distribuita attraverso il Play Store, che probabilmente comunicherà con pochi host selezionati e conosciuti. In effetti, rende MITM molto più difficile: avere un certificato valido per il tuo dominio non è più sufficiente, devono ottenere la tua chiave.

    
risposta data 25.02.2015 - 16:18
fonte

Leggi altre domande sui tag