Ho creato un'applicazione utilizzando UDP per trasmettere e ricevere informazioni. Il problema che sto incontrando è la sicurezza. In questo momento sto usando l'IP/socketid nel determinare quali dati appartengono a chi.Protezione UDP e identificazione dei dati in entrata
Tuttavia, ho letto su come le persone potrebbero semplicemente falsificare il loro IP, quindi semplicemente inviare dati come un IP specifico. Quindi questo sembra essere il modo sbagliato di farlo (insicuro). Quindi, in quale altro modo dovrei identificare quali dati appartengono a quali utenti? Ad esempio, hai 10 utenti connessi, tutti hanno dati specifici. Il server dovrebbe abbinare i dati dell'utente a questi dati che abbiamo ricevuto.
L'unico modo che posso vedere per fare ciò è utilizzare una sorta di sistema di chiavi client/server e crittografare i dati. Sono curioso di sapere come altre applicazioni (o giochi, dato che è questa l'applicazione) assicurano che i loro dati siano autentici. Inoltre, il processo di crittografia richiede molto più tempo rispetto a quello non criptato. Anche se non sono sicuro di quanto influirà sulle prestazioni.
Qualsiasi informazione sarebbe apprezzata. Grazie.
Si potrebbe voler considerare una sorta di tunneling come SSH o IPSEC. L'unico modo per affermare chi è chi è per mezzo dell'autenticazione. – jathanism
@jathanism Che dire di Lag? E cosa è sbagliato ssl/tls/dtls? – rook
Non c'è niente di sbagliato con SSL/TLS/DTLS, stavo solo offrendo alternative. In particolare, SSL richiede certificati firmati, a meno che non si utilizzino certificati autofirmati, quindi in realtà non si compra molto se non per la crittografia. – jathanism