Autenticazione basata su token server multiutente

0

Ho sentito parlare dell'autenticazione basata su token, ma il problema è che la maggior parte richiede affidabilità nel server. Quello di cui ho bisogno è qualcos'altro.

Alice, con il mio gioco, vuole connettersi al server di Bob, che è progettato per il mio gioco. Alice può ottenere un token dal mio server ufficiale (fidato). Ha anche bisogno di autenticarsi sul server di Bob per dimostrare che lei è davvero Alice. Ma se invia direttamente il token a Bob, Bob può sfruttare il suo token.

Quindi, qual è il modo in cui Alice mostra al server di Bob che è registrata come Alice sul mio server senza perdite di dati sfruttabili? La connessione è UDP non crittografata (se sai come crittografare correttamente UDP, che dirmi), non https o addirittura http.

Modifica: da un commento che parlava di PKI e una risposta che citava i certificati di canto, ho deciso che avrei usato qualcosa come i certificati RSA e RSA per l'autenticazione.

    
posta JohnGmdv 13.05.2016 - 17:03
fonte

1 risposta

0

The connection is unencrypted UDP (if you know how to properly encrypt UDP, than tell me)

DTLS (Datagram Transport Layer Protocol) . DTLS funziona in modo molto simile a TLS, ma è invece progettato per essere utilizzato in UDP e preserva la semantica UDP (non ordinata, nessun riordino / rinvio automatico, bassa latenza). DTLS è ampiamente utilizzato per proteggere UDP, ad esempio in WebRTC, Cisco AnyConnect VPN. Le librerie SSL ampiamente utilizzate OpenSSL implementa DTLS.

Alice, with my game, wants to connect to Bob's server, which is designed for my game. Alice can get a token from my official (trusted) server. She also needs to authenticate on Bob's server to prove she is really Alice. But if she sends the token to Bob directly, Bob can exploit her token.

Alice deve creare un certificato client e la firma della chiave pubblica del client da parte del server trusted (che funge da CA / autorità di certificazione). Alice presenta quindi questo certificato durante l'handshake DTLS a Bob per autenticarsi come Alice. Bob si fida di questo certificato poiché il certificato è firmato dal server trusted e Alice è stata in grado di dimostrare di possedere la chiave privata corrispondente completando l'handshake. Bob non può utilizzare il certificato di Alice per impersonare Alice perché un Bob non ha la chiave privata di Alice.

    
risposta data 13.05.2016 - 17:53
fonte

Leggi altre domande sui tag