Rileva account multipli tramite i cookie
Domanda
Voglio rilevare gli account multipli in un browser game: Se un utente ha più di un conto, voglio sapere questo
.Per vari motivi, non voglio per rilevare i conti multipli confrontando più indirizzi IP. Gli utenti possono condividere gli IP e IP sono facili da cambiare. Quindi questo non è un buon metodo.
Invece, voglio rilevare i conti con i cookie. Pensi che questa è una buona soluzione?
<?php
$uniqueHash = md5($_SERVER['REMOTE_ADDR'].mt_rand(1, 100000)); // identify a single user
if (isset($_COOKIE['uniqueHash'])) {
// UPDATE dbTable SET uniqueHash = '".$_COOKIE['uniqueHash']."' WHERE id = x
}
else {
setcookie('uniqueHash', $uniqueHash, time()+3600*24*30, '/', '.domain.com', FALSE, TRUE)
}
?>
Dopo di che, posso selezionare tutti gli utenti che hanno lo stesso valore di uniqueHash dalla tabella del database.
E 'questo migliorabile? O un totalmente cattiva soluzione?
Che dire di cookie flash? Sono meglio, giusto? Ma non posso usare quando non ho il flash sul mio sito, posso?
Grazie in anticipo!
Soluzione
Se si crea log contenente la data per il login, ip, hash e UserID - si potrebbe essere in grado di avere un'idea se un utente è un account a più o meno. Rilevarlo automaticamente sarà quasi impossibile, se im visitare un mio amico, potrei effettuare il login sul suo computer per controllare il mio account?
Quindi registrare tutti i dati, quindi avere un "Multihunter" -human esaminare se lo stesso giocatore oppure no.
Altri suggerimenti
Memorizzazione valori in cookie è anche peggio di confronto tra imho IP. I cookie sono molto facili da modificare / cancellare mentre si cambia il tuo IP è molto più difficile.
Credo che tu abbia colpo migliore è quello di avere qualche soluzione AI base che le bandiere conti sospetti. Così login multipli con lo stesso IP, allo stesso tempo (potrebbero essere condivisione IP o browser multipli allo stesso tempo) è qualcosa che l'AI dovrebbe prendere. Anche guardare logout e login dallo stesso IP con diversi account in un breve preavviso. Prova di ricercare nomi di host e l'uso che pure poiché DHCP del provider di servizi Internet a volte offre ai clienti un nuovo IP, ma il nome host rimane lo stesso.
Il punto è che non esiste una soluzione che si basa su un pezzo di informazione.
A proposito, un'altra soluzione che viene in mente è quello di consentire agli utenti di confermare il proprio account inviando uno SMS di lasciarli pagare una piccola quantità (come $ 1), in quel caso non è attraente per registrare molti conti.