16-09-2008, 12:32 AM
Petite piste de reflexion
Routine d'analyse des connexions
Routine d'analyse de suspicion
C'est du pseudo code, mais ca peut donner une idee ou une piste pour traquer les multicomptes.
Routine d'analyse des connexions
Code :
(Start at) [inc]
(Get log1) log.txt (On) pseudos[inc]
(Get log2) log.txt (On) pseudos[inc+1]
(Compare) ConnexionIP (Of) log1 && log2
(If Matches)
(Compare) DSLAM (Of) log1 && log2
(If Matches)
(Add Suspicion[]) {one:pseudos[inc], two:pseudos[inc+1]}
(Do) inc++
(GoTo) |Start|
Routine d'analyse de suspicion
Code :
(Start at) [inc]
(Get player1) Suspicion[inc].one
(Get player2) Suspicion[inc].two
(Get ListOfTransaction)(Between) player1.id && player2.id
(For each ListOfTransaction)(As transaction)
(If getSuspectTransaction(transaction) != 0)
(Add suspected_transaction[]) transaction
(End For each)
(Get ConnexionTimePlayer1) player1.getConnexionTime()
(Get ConnexionTimePlayer2) player2.getConnexionTime()
(Compare each ConnexionTimePlayer1)(With ConnexionTimePlayer2)
(If Matches && ( ConnexionTimePlayer1.getIpAtConnexion() == ConnexionTimePlayer2.getIpAtConnexio()))
(Add suspected_connexion_time[]) true
(End Compare each)
(Get NumberOfMessage)(Between) player1.id && player2.id
(If NumberOfMessage < 5)
(Add suspected_cheater[]) {one: player, two:player2}
(If suspected_transaction.length > 2 && suspected_connexion_time.length > 2 && suspected_cheater.length > 2)
(Get AlreadyWarned1) player1.getIsWarned()
(get AlreadyWarned2) player2.getIsWarned()
(If AlreadyWarned1) player1.setBan(true, mktime(date('w',1));
(Else) player1.setIsWarned(true);
(If AlreadyWarned2) player2.setBan(true, mktime(date('w',1));
(Else) player2.setIsWarned(true);
C'est du pseudo code, mais ca peut donner une idee ou une piste pour traquer les multicomptes.