Autre HASH_FUNCTION ,c'est quoi cette daube?

zahid98

Membre Actif
Inscrit
13 Decembre 2014
Messages
352
Reactions
2
#21
Ah , merci , et qu'est ce qui le rend dûr à gérer , données dynamiques ? oO
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#22
Oui voila, ce qui est problématique c'est que beaucoup de valeurs changent d'un RawDataMessage à l'autre et on ne peut pas appliquer un modèle simple pour les récupérer.
De plus le serveur valide automatiquement le CheckIntegrityMessage, il n'est pas vérifié immédiatement et constamment donc on ne peut pas non plus savoir si on passe réellement la sécurité.
Fais attention à cela Asyade.
 

asyade

Membre Actif
Inscrit
26 Avril 2013
Messages
368
Reactions
1
#23
Merci du conseil effectivement c'est pas si bidon que sa car a première vue sa fonctionne mais je suis pas certains de la fiabilité de la chose (surtout que des bug bizarre surviennent de temps a autres )
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#24
Ah et j'ai oublié de préciser que le CheckIntegrityMessage et le Hash dépendent du ticket du client.
 

asyade

Membre Actif
Inscrit
26 Avril 2013
Messages
368
Reactions
1
#25
C'est plus tot frustrant, quant j'envoie le GameMapMouvementRequest crypter tout se passe bien mais pour le GameActionCastRequest le server me déconnecte :o pourtant tout parait correcte :(
 

zahid98

Membre Actif
Inscrit
13 Decembre 2014
Messages
352
Reactions
2
#26
J'ai entendu dire que le RawData a changé , ne serait-ce ici ton problème ?
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#27
asyade a dit:
C'est plus tot frustrant, quant j'envoie le GameMapMouvementRequest crypter tout se passe bien mais pour le GameActionCastRequest le server me déconnecte :o pourtant tout parait correcte :(
Si ton premier Hash est mauvais le serveur va quand même l'accepter, cependant a partir du second il te déconnecte.
 

asyade

Membre Actif
Inscrit
26 Avril 2013
Messages
368
Reactions
1
#28
Pourtant j'ais effectuer plusieurs deplacement o_O
 

asyade

Membre Actif
Inscrit
26 Avril 2013
Messages
368
Reactions
1
#29
Et puis si le hash n'est pas bon comment le serveur peut t'il determiner l'endroit ou je veut me deplacer? logiquement mauvais cryptage = decryptage impossible
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#30
Le hash commence d'abord par un simple hash en md5 des bytes du paquet, c'est censé logiquement ne jamais planter à cette étape et cela contient toutes les infos du paquet.

La probabilité la plus forte qu'il y ai eu un problème quelque part c'est quand on utilise l'algorithme de Rijndael pour encrypter la hashkey, les data et la clé IV.
C'est la partie la plus complexe du hash qui utilise parfois des fonctions et constantes inexistantes en .Net.

Si la première partie a planté, tu seras automatiquement déconnecté, cependant si c'est la seconde partie qui pose problème le serveur peut quand même lire les informations du paquet.
D'ou l’exécution du premier paquet qui a un cryptage incorrect.
 

asyade

Membre Actif
Inscrit
26 Avril 2013
Messages
368
Reactions
1
#31
Merci pour toutes ces presisions j'aurais bien galére avant de m'en rendre compte ^^' et les fonctions qui n'existe pas en .net je les est refait en .net sans trop de difficulté reste a savoire si tout est correcte :/
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#32
Et pour la quantité de mémoire utilisé par flash, tu l'as traduit comment dans ton code ?
 

asyade

Membre Actif
Inscrit
26 Avril 2013
Messages
368
Reactions
1
#33
Convert.ToUInt32(((int)loc1<< (int)loc2) | (loc1>> (int)(32 - loc2)));
mais je suis pas sur d'avoir compris ce que tu me demande (sachan que je ne m'occupe que du hash vue que je suis en mitm
 

Labo

Membre Actif
Inscrit
16 Aout 2013
Messages
799
Reactions
15
#34
Justement tu es obligé de t'occuper du hash ! C'est le principal problème des MITM !
Tu ne peux plus envoyer certains paquets sans te faire parfois kik à cause du hash !
 

asyade

Membre Actif
Inscrit
26 Avril 2013
Messages
368
Reactions
1
#35
Ba oui c'est ce que je dit je m'en occupe ^^'
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#36
Mais je ne comprends pas bien comment tu as procédé pour ton hash, on dirait que tu ne t'occupes pas de toutes les variables systèmes.
 

asyade

Membre Actif
Inscrit
26 Avril 2013
Messages
368
Reactions
1
#37
hum je vois pas bien mais ce que je t'ais montrée la ce n'est pas tout hein c'est juste la base apres je l'utilise comme sa par example
rol(param2 + param1 + param4 + param6, param5) + param3;
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#38
Je te parle plutôt de ce genre de fonction:

Code:
public function autoSeed():void {
            var b:ByteArray = new ByteArray;
            b.writeUnsignedInt(System.totalMemory);
            b.writeUTF(Capabilities.serverString);
            b.writeUnsignedInt(getTimer());
            b.writeUnsignedInt((new Date).getTime());
            var a:Array = Font.enumerateFonts(true);
            for each (var f:Font in a) {
                b.writeUTF(f.fontName);
                b.writeUTF(f.fontStyle);
                b.writeUTF(f.fontType);
            }
            b.position=0;
            while (b.bytesAvailable>=4) {
                seed(b.readUnsignedInt());
            }
        }
ou encore ceci

Code:
public function seed(x:int = 0):void {
            if (x==0) {
                x = new Date().getTime();
            }
            pool[pptr++] ^= x & 255;
            pool[pptr++] ^= (x>>8)&255;
            pool[pptr++] ^= (x>>16)&255;
            pool[pptr++] ^= (x>>24)&255;
            pptr %= psize;
            seeded = true;
        }
 
Dernière édition:

asyade

Membre Actif
Inscrit
26 Avril 2013
Messages
368
Reactions
1
#39
Je n'est pas du tout fait cette fonctions :o je crois que j'ais manquer quelques chose, mais tes sur que sa me concerne en mitm ?
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#40
C'est le hash_function donc oui évidemment.
 
Haut Bas