VB/VB.Net Envoie Packet 4

  • Auteur de la discussion Anonymous
  • Date de début
A

Anonymous

Invité
#1
Bonjour,
Je viens à nouveau vous demander de l'aide car je suis bloquer sur le paquet 4.
J'ai décompiler les sources et trouver le fichier IdentificationMessage mais je n'arrive pas trop à le comprendre.
Alors j'ai fait pareil pour le HelloConnectMessage, dans Deserialize
Il y a Un ReadUTF, ReadUnsignedShort et un ReadByte
Et d'après ce que je sais il y a un salt et un key à récupérer pour envoyer le paquet 4.
Comme vous le voyez surement je patauge un peu.
Voici mon code pour la case 3:
Code:
                    Dim salt As String = reader.ReadUTF()
                    Dim key As Byte = reader.ReadByte()
                    Dim EncryptedPassword As List(Of Integer) = RSAManager.Encrypt(salt & form.compte_pass, key)
'Après j'ai abandonner
Erreur:
Erreur 1 'ReadUTF' n'est pas un membre de 'IllimityBot.DataReader'.
Erreur 2 Impossible de convertir une valeur de type 'Byte' en 'System.Collections.Generic.List(Of Integer)'.

Donc si vous pouviez m’éclairer sur la méthode pour comprendre les sources et le fonctionnement des paquets.

Mes questions :
- Quel type attribuer à UTF ? c'est pas un encodage ?
- Comment est constituer le paquet 4 ?
- Comment le comprendre à partir des sources du jeu ?


Je cherche une solution à mon problème mais aussi à comprendre pour pouvoir continuer sans poser de question toute les 30 secondes.
Merci d'avance
Totolef
 

ToOnS

Membre Actif
Inscrit
8 Avril 2009
Messages
974
Reactions
0
#2
erreur 1 , heu ... tu as pas .ReadUTF dans ta class DataReader
voila un reader avec tout ce qu'il faut (il faut changer le namespace par IllimityBot) :
Code:
Namespace D0fus
    Public Class D0fusReader
        Inherits IO.BinaryReader

        Sub New(ByVal input As IO.Stream)
            MyBase.New(input)
        End Sub

        Sub New(ByVal input As IO.Stream, ByVal encoding As System.Text.Encoding)
            MyBase.New(input, encoding)
        End Sub
        Public Function readUnsignedByte()
            Return ReadByte()
        End Function
        Public Overrides Function ReadByte() As Byte
            Return MyBase.ReadByte()
        End Function

        Public Function ReadUnSignedshort()
            Return ReadUInt16()
        End Function

        Public Overrides Function ReadUInt16() As UShort
            Return (CUShort(ReadByte()) << 8) + ReadByte()
        End Function

        Public Overrides Function ReadBoolean() As Boolean
            Return ReadByte() = 1
        End Function

        Public Function ReadShort()
            Return ReadInt16()
        End Function

        Public Overrides Function ReadInt16() As Short
            Dim Value As UShort = ReadUInt16()
            If Value > Short.MaxValue Then
                Dim Value2 As Short = -(UShort.MaxValue - Value) - 1
                Return Value2
            End If
            Return Value
        End Function

        Public Function ReadInt()
            Return ReadInt32()
        End Function

        Public Overrides Function ReadInt32() As Integer
            Dim Value As UInteger = ReadUInt32()
            If Value > Integer.MaxValue Then
                Dim Value2 As Integer = -(UInteger.MaxValue - Value) - 1
                Return Value2
            End If
            Return Value
        End Function

        Public Overrides Function ReadUInt32() As UInteger
            Return (CUInt(ReadByte()) << 24) + (CUInt(ReadByte()) << 16) + (CUInt(ReadByte()) << 8) + ReadByte()
        End Function

        Public Overrides Function ReadDouble() As Double
            Try
                Dim Bytes() As Byte = ReadBytes(8)
                Array.Reverse(Bytes)
                Return BitConverter.ToDouble(Bytes, 0)
            Catch ex As Exception
                Console.WriteLine(ex.Message)
            End Try
          
        End Function

        Public Function ReadUTF()
            Return ReadString()
        End Function

        Public Overrides Function ReadString() As String
            Dim ByteArray() As Byte = MyBase.ReadBytes(ReadUInt16())
            Return System.Text.Encoding.UTF8.GetString(ByteArray)
        End Function

    End Class
End Namespace
ca doit donner : Dim salt As String = IllimityBot.D0fusReader.ReadUTF()


erreur 2 RSAManager.Encrypt(salt & form.compte_pass, key) renvoie une liste de bytes , tu veux la mettre dans As List(Of Integer)

UTF c'est bien en type string
le paquet 4 est constitué comme dans le serialize (c'est de l'envoie donc serialize)
et pour le comprendre c'est pareil que pour recevoir, y'a pas de formule magique mais c'est pas compliqué , c'est toujours pareil.
 

4R7Y

Contributeur
Inscrit
6 Mars 2011
Messages
213
Reactions
0
#3
Hello :) je reviens après quelque temps et je vois que la connexion a bien changé !
Code:
  Case 3
                ID_Message = New Network.Messages.Connection.HelloConnectMessage
                ID_Message.Unpack(PacketData)
                Dim key As List(Of Integer) = ID_Message.key
                Dim salt As String = ID_Message.salt
                Dim Account As String = Me._nomDecompte
                Dim Password As String = Me._motDePasse
                Dim EncryptedPassword As List(Of Integer) = RSAManager.Encrypt(salt & Password, key)
                Dim Version_ As New Types.Version.Version
                Version_.initVersion(2, 6, 4, 58765, 1, 0)
               ' Dim Certificates As New List(Of Network.Types.Secure.TrustCertificate)
                Dim Message As New Network.Messages.Connection.IdentificationMessage
                Message.initIdentificationMessage(Version_, "fr", Account, EncryptedPassword, 24, _form.CKB_FASTCO.Checked, True, True)
                Message.pack(_socket_Connexion)
Mais le serveur me renvoie un IdentificationFailedMessage J'ai peut être oublié quelque chose, ou mal configurer ma connexion. Si vous pouvez m'éclairer ce serait avec plaisir !

L'encryptage se fait avec celui de Maxou


Je me permet d'éditer : Avant l'IdentificationFailedMessage, je reçois ce message : CredentialsAcknowledgementMessage
A quoi correspond-t-il ?


Enfin, pour répondre à ToOnS :
Code:
    Public Shared Function Encrypt(ByVal text As String, ByVal key As List(Of Integer)) As List(Of Integer)

        Dim array As Byte() = New Byte(key.Count - 1) {}
        For i As Integer = 0 To key.Count - 1
            array(i) = CByte(key(i))
        Next

        Dim rsa As RSACryptoServiceProvider = DecodeX509PublicKey(array)

        If rsa Is Nothing Then
            Return Nothing
        End If

        Dim result As Byte() = rsa.Encrypt(Encoding.UTF8.GetBytes(text), False)

        Dim intArray As New List(Of Integer)
        For Each b As Byte In result
            intArray.Add(b)
        Next

        Return intArray
intArray (comme son nom l'indique) est bien une liste d'integer et non une liste de byte (même si cette liste d'integer n'est composée que de byte :ugeek: )


RE-EDIT : (Oui je cherche ! :p)
La liste d'integer que retourne RSAManager a TOUJOURS un count de 256. L'erreur ne vient donc pas du cryptage.
Fait amusant ( je ne sais pas si chez vous c'est pareil) : Quand je change dans cette ligne
Code:
Message.initIdentificationMessage(Version_, "fr", Account, EncryptedPassword, 24, _form.CKB_FASTCO.Checked, True, True)
Un des "true" par un "false", il n'y a aucun retour du serveur ankama (donc une déconnection pour mauvais envoi) Or, Les trois boolean ne sont relié que par leur writer : BooleanByteWriter. Peut être une erreur dans celui-ci ?

Lecture du packet 20 :
Reason = 2
=>
Public WRONG_CREDENTIALS As uinteger = 2

Avec un sniffage, j'envoie un packet de taille 281 , avec le bot aussi.

La différence apparaît lors de l'écriture du 23e byte.
 
A

Anonymous

Invité
#4
Merci ToOnS pour ta réponse.
En faite je mélangeai les traductions des class et l'interprétation des sources car je suivais ce tuto : -débuter-dans-le-développement-socket-d2-(complet).162/]viewtopic.php?f=6&t=394 , qui à l'air de ne plus être à jour. Je vais donc m'orienter vers une traduction des class mais je n'ai pas trouver de tutoriels pour le faire et celle que je trouve dans certaines sources n'ont pas l'air d'être à jour.
Il n'y pas de le salt dans les class HelloConnectMessage
Donc je suis un peu perdu.
 

4R7Y

Contributeur
Inscrit
6 Mars 2011
Messages
213
Reactions
0
#5
Voici mes logs de l'ID 4 ainsi que les interprétations et analyse que j'en fait


Quand je parle du 23e byte, c'est évidement avec le compte que j'essaie de connecter. la position du décalage dépend de la longueur du nom de compte
 
A

Anonymous

Invité
#6
Salut,
Je vois que 4R7Y on patauge au même endroit.
Comme les class que je trouvait n'avait pas l'air de marcher je les ai réécrites ça donne :
Code:
Namespace Messages.Connection
    Public Class HelloConnectMessage
        Private _isInitialized As Boolean = False
        Public ConnectionType As UInteger = 0
        Public Salt As String = String.Empty
        Public Key As String = String.Empty
        Public ProtocolId As UInteger = 3
        Public Function HelloConnectMessage()
            Return Me
        End Function
        Public Function get_isInitialized() As Boolean

            Return Me._isInitialized
        End Function
        Public Function getMessageId() As UInteger

            Return ProtocolId
        End Function
        Public Function initHelloConnectMessage(ByVal Param1 As String, ByVal Param2 As String)
            Me.Salt = Param1
            Me.Key = Param2
            Me._isInitialized = True

            Return Me
        End Function
        Public Function reset()
            Me.connectionType = 1
            Me.key = ""
            Me._isInitialized = False

            Return Me
        End Function
        'public function pack(ByVal param1 As Client.Dofus.dofuswriter)       
        '    dim _loc_2 as * = new ByteArray()
        '    Me.serialize(_loc_2)
        '    writePacket(param1, Me.getMessageId(), _loc_2)

        '    Return Me
        'End Function
        Public Function unpack(ByVal param1 As DataReader)
            Me.deserialize(param1)

            Return Me
        End Function
        Public Function serialize(ByVal param1 As DataWriter)
            Me.serializeAs_HelloConnectMessage(param1)

            Return Me
        End Function
        Public Function serializeAs_HelloConnectMessage(ByVal param1 As DataWriter)
            param1.WriteByte(ConnectionType)

            param1.WriteUTF(Key)


            Return Me
        End Function
        Public Function deserialize(ByVal param1 As DataReader)
            Me.deserializeAs_HelloConnectMessage(param1)

            Return Me
        End Function
        Public Function deserializeAs_HelloConnectMessage(ByVal param1 As DataReader)
            Dim loc3 As Integer = 0
            Me.Salt = param1.ReadUTF()
            Dim loc1 As Integer = param1.ReadUnSignedshort()
            Dim loc2 As Integer = 0
            While loc2 < loc1
                loc3 = param1.ReadByte
                Me.Key += loc3
                loc2 += 1
            End While
            Return Me
        End Function
    End Class
End Namespace
Code:
Public Class IdentificationMessage
    Private _isInitialized As Boolean = False
    Public version As Version
    Public lang As String
    Public login As String = ""
    Public password As String
    Public serverid As Integer
    Public autoconnect As Boolean = False
    Public protocolId As UInteger = 4
    Public usecertificate As Boolean = False
    Public useLoginToken As Boolean = False
    Public Function IdentificationMessage()
        Me.version = New Version()

        Return Me
    End Function
    Public Function get_isInitialized() As Boolean

        Return Me._isInitialized
    End Function
    Public Function getMessageId() As UInteger

        Return protocolId
    End Function
    Public Function initIdentificationMessage(ByVal param1 As Version, ByVal param2 As String, ByVal param3 As String, ByVal param4 As String, ByVal param5 As Integer, ByVal param6 As Boolean, ByVal param7 As Boolean, ByVal param8 As Boolean) As IdentificationMessage
        Me.version = param1
        Me.lang = param2
        Me.login = param3
        Me.password = param4
        Me.serverid = param5
        Me.autoconnect = param6
        Me.usecertificate = param7
        Me.useLoginToken = param8
        Me._isInitialized = True
        Return Me
    End Function
    Public Function reset()
        Me.version = New Version()
        Me.password = ""
        Me.autoconnect = False
        Me._isInitialized = False

        Return Me
    End Function
    Public Function pack()
        Dim _loc_2 As New DataWriter
        Me.serialize(_loc_2)
        Return Me
    End Function

    Public Function unpack(ByVal param1 As DataReader)
        Me.deserialize(param1)

        Return Me
    End Function
    Public Function serialize(ByVal param1 As DataWriter)
        Me.serializeAs_IdentificationMessage(param1)
        Return Me
    End Function
    Public Function serializeAs_IdentificationMessage(ByVal param1 As DataWriter)
        Me.version.serializeAs_Version(param1)
        param1.WriteUTF(Me.lang)
        param1.WriteUTF(Me.login)
        param1.WriteShort(Me.password.length)
        Dim _loc_2 As UInteger = 0
        While _loc_2 < Me.password.Length
            param1.WriteByte(AscW(password(_loc_2)))
            _loc_2 += 1
        End While
        param1.WriteShort(serverid)
        Return Me
    End Function
    Public Function deserialize(ByVal param1 As DataReader)
        Me.deserializeAs_IdentificationMessage(param1)

        Return Me
    End Function
    Public Function deserializeAs_IdentificationMessage(ByVal param1 As DataReader)
        Me.version = New Version()
        Me.version.deserialize(param1)
        Me.login = param1.ReadUTF()
        Me.password = param1.ReadUTF()
        Me.autoconnect = param1.ReadBoolean()

        Return Me
    End Function

    Private Function Sock() As Object
        Throw New NotImplementedException
    End Function

End Class
Pourriez vous me dire si à ce niveau il y a déjà un problème ?
Je pense avoir compris le fonctionnement de la traduction mais je n'en suis pas sûr.
Ensuite dans mon traitement de paquet j'ai :
Code:
                Case 3
                    Dim ID_Message As New Messages.Connection.HelloConnectMessage
                    ID_Message.unpack(reader) 'ici le programma atteint le point d'arret
                    Dim key As String = ID_Message.Key 'si je met un point d'arret ici, le programme ne l'atteint pas
                    Dim salt As String = ID_Message.Salt
                    Dim Account As String = form.compte_name
                    Dim Password As String = form.compte_pass
                    Dim EncryptedPassword As String = RSAManager.Encrypt(salt & Password, key)
                    Dim Version_ As New Version
                    Version_.initVersion(2, 6, 4, 58765, 1, 0)
                    Dim Certificates As New List(Of TrustCertificate)
                    Dim Message As New IdentificationMessage
                    Message.initIdentificationMessage(Version_, "fr", Account, EncryptedPassword, 0, True, True, True)
                    Message.pack()
                    Connexion._socket.Send(Message)
Je ne pense pas que ça soit bon.
Je viens de faire des étapes par point d'arret et je viens de me rendre compte que mon code bloque à
Code:
ID_Message.unpack(reader)
Le reste de la case 3 n'est pas éxécuté. Je vais chercher pourquoi
 

4R7Y

Contributeur
Inscrit
6 Mars 2011
Messages
213
Reactions
0
#7
Tiens, voilà les deux classes traduites avec mon traducteur automatique (des broutilles à modifier)
Code:
Namespace com.ankamagames.dofus.network.messages.connection

    imports __AS3__.vec
    imports com.ankamagames.jerakine.network
    imports flash.utils

    Public Class HelloConnectMessage
        Inherits NetworkMessage

        Private _isInitialized As Boolean = False
        Public salt As String = ""
        Public key As New List(Of Integer)
        Public protocolId As UInteger = 3

        Public Function HelloConnectMessage()

            Me.key = New List(Of Integer)
            Return Me
        End Function

        Public Overrides Function get_isInitialized() As Boolean

            Return Me._isInitialized
        End Function

        Public Overrides Function getMessageId() As UInteger

            Return 3
        End Function

        public function initHelloConnectMessage(param1 As String = "", param2 As New List(Of integer) = nothing)  As  HelloConnectMessage

            Me.salt = param1
            Me.key = param2
            Me._isInitialized = True
            Return Me
        End Function

        Public Overrides Function reset()

            Me.salt = ""
            Me.key = New List(Of Integer)
            Me._isInitialized = False
            Return Me
        End Function

        Public Function pack(ByVal Sock As System.Net.Sockets.Socket)
            Dim writer As New Dofuswriter(Sock)
            Me.serialise(writer)
            Dofuswriter.send(protocolId)
            Return Me
        End Function

        Public Overrides Function unpack(ByVal param1 As DofusStream.DofusReader, ByVal param2 As UInteger)

            Me.deserialize(param1)
            Return Me
        End Function

        Public Function serialize(ByVal param1 As DofusStream.DofusWriter)

            Me.serializeAs_HelloConnectMessage(param1)
            Return Me
        End Function

        Public Function serializeAs_HelloConnectMessage(ByVal param1 As DofusStream.DofusWriter)

            param1.writeUTF(Me.salt)
            param1.writeShort(Me.key.count)
            Dim _loc_2 As UInteger = 0
            While (_loc_2 < Me.key.count)


                param1.writeByte(Me.key(_loc_2))
                _loc_2 = _loc_2 + 1
            }
                Return Me
        End Function

        Public Function deserialize(ByVal param1 As DofusStream.DofusReader)

            Me.deserializeAs_HelloConnectMessage(param1)
            Return Me
        End Function

        Public Function deserializeAs_HelloConnectMessage(ByVal param1 As DofusStream.DofusReader)

            Dim _loc_4 As Integer = 0
            Me.salt = param1.readUTF()
            Dim _loc_2 As UShort = param1.readUnsignedShort()
            Dim _loc_3 As UInteger = 0
            While (_loc_3 < _loc_2)


                _loc_4 = param1.readByte()
                Me.key.add(_loc_4)
                _loc_3 = _loc_3 + 1
            }
                Return Me
        End Function

    End Class
End Namespace
Code:
Namespace com.ankamagames.dofus.network.messages.connection

    imports __AS3__.vec
    imports com.ankamagames.dofus.network.types.version
    imports com.ankamagames.jerakine.network
    imports com.ankamagames.jerakine.network.utils
    imports flash.utils

    Public Class IdentificationMessage
        Inherits NetworkMessage

        Private _isInitialized As Boolean = False
        Public version As Version
        Public lang As String = ""
        Public login As String = ""
        Public credentials As New List(Of Integer)
        Public serverId As Integer = 0
        Public autoconnect As Boolean = False
        Public useCertificate As Boolean = False
        Public useLoginToken As Boolean = False
        Public protocolId As UInteger = 4

        Public Function IdentificationMessage()

            Me.version = New Version()
            Me.credentials = New List(Of Integer)
            Return Me
        End Function

        Public Overrides Function get_isInitialized() As Boolean

            Return Me._isInitialized
        End Function

        Public Overrides Function getMessageId() As UInteger

            Return 4
        End Function

        public function initIdentificationMessage(param1 As Version = nothing, param2 As String = "", param3 As String = "", param4 As New List(Of integer) = nothing, param5 As integer = 0, param6 As Boolean = false, param7 As Boolean = false, param8 As Boolean = false)  As  IdentificationMessage

            Me.version = param1
            Me.lang = param2
            Me.login = param3
            Me.credentials = param4
            Me.serverId = param5
            Me.autoconnect = param6
            Me.useCertificate = param7
            Me.useLoginToken = param8
            Me._isInitialized = True
            Return Me
        End Function

        Public Overrides Function reset()

            Me.version = New Version()
            Me.login = ""
            Me.credentials = New List(Of Integer)
            Me.serverId = 0
            Me.autoconnect = False
            Me.useCertificate = False
            Me.useLoginToken = False
            Me._isInitialized = False
            Return Me
        End Function

        Public Function pack(ByVal Sock As System.Net.Sockets.Socket)
            Dim writer As New Dofuswriter(Sock)
            Me.serialise(writer)
            Dofuswriter.send(protocolId)
            Return Me
        End Function

        Public Overrides Function unpack(ByVal param1 As DofusStream.DofusReader, ByVal param2 As UInteger)

            Me.deserialize(param1)
            Return Me
        End Function

        Public Function serialize(ByVal param1 As DofusStream.DofusWriter)

            Me.serializeAs_IdentificationMessage(param1)
            Return Me
        End Function

        Public Function serializeAs_IdentificationMessage(ByVal param1 As DofusStream.DofusWriter)

            Dim _loc_2 As UInteger = 0
            _loc_2 = BooleanByteWrapper.setFlag(_loc_2, 0, Me.autoconnect)
            _loc_2 = BooleanByteWrapper.setFlag(_loc_2, 1, Me.useCertificate)
            _loc_2 = BooleanByteWrapper.setFlag(_loc_2, 2, Me.useLoginToken)
            param1.writeByte(_loc_2)
            Me.version.serializeAs_Version(param1)
            param1.writeUTF(Me.lang)
            param1.writeUTF(Me.login)
            param1.writeShort(Me.credentials.count)
            Dim _loc_3 As UInteger = 0
            While (_loc_3 < Me.credentials.count)


                param1.writeByte(Me.credentials(_loc_3))
                _loc_3 = _loc_3 + 1
            }
                param1.writeShort(Me.serverId)
                Return Me
        End Function

        Public Function deserialize(ByVal param1 As DofusStream.DofusReader)

            Me.deserializeAs_IdentificationMessage(param1)
            Return Me
        End Function

        Public Function deserializeAs_IdentificationMessage(ByVal param1 As DofusStream.DofusReader)

            Dim _loc_5 As Integer = 0
            Dim _loc_2 As * = param1.readByte()
            Me.autoconnect = BooleanByteWrapper.getFlag(_loc_2, 0)
            Me.useCertificate = BooleanByteWrapper.getFlag(_loc_2, 1)
            Me.useLoginToken = BooleanByteWrapper.getFlag(_loc_2, 2)
            Me.version = New Version()
            Me.version.deserialize(param1)
            Me.lang = param1.readUTF()
            Me.login = param1.readUTF()
            Dim _loc_3 As UShort = param1.readUnsignedShort()
            Dim _loc_4 As UInteger = 0
            While (_loc_4 < _loc_3)


                _loc_5 = param1.readByte()
                Me.credentials.add(_loc_5)
                _loc_4 = _loc_4 + 1
            }
                Me.serverId = param1.readShort()
                Return Me
        End Function

    End Class
End Namespace
 
A

Anonymous

Invité
#8
Merci =)
 
A

Anonymous

Invité
#9
Mais il y a pas mal d'erreur dans tes class. Des whiles qui se finissent avec des balises "}" etc...
 

4R7Y

Contributeur
Inscrit
6 Mars 2011
Messages
213
Reactions
0
#10
C'est pas moi qui les ai traduite mais mon traducteur donc j'ai pas été les remodifier après, c'était juste pour te donner un coup de main (comme j'aurais pu te donner tout simplement les sources AS)
 
A

Anonymous

Invité
#11
Bon j'ai fait pas de recherche par point d'arret et c'est vraiment étrange. Dans mon IdentificationMessage j'ai :
Code:
Public Function serializeAs_IdentificationMessage(ByVal param1 As DataWriter)
        Me.version.serializeAs_Version(param1)
        param1.WriteUTF(Me.lang)
        param1.WriteUTF(Me.login)
        param1.WriteShort(Me.password.Length)
        Dim _loc_2 As Integer = 0
        While _loc_2 <= Me.password.Length
            param1.WriteByte(Val(password(_loc_2)))
            _loc_2 = _loc_2 + 1
        End While
        param1.WriteShort(Me.serverid)
        Return Me
    End Function
La boucle se fait complètement.
Mais dès que je met un point d’arrêt sur
Code:
param1.WriteShort(Me.serverid)
La programme n'atteint jamais cette fonction ...
 

4R7Y

Contributeur
Inscrit
6 Mars 2011
Messages
213
Reactions
0
#12
Cest le RSa qui déconne, faut pas chercher plus loin.
 
A

Anonymous

Invité
#13
J'ai pourtant réparer mon RSA. J'avais fait la boulette de vouloir mettre mon password en String alors que c'est une list de Integer. Mais là j'ai modifier et ça ne change rien ...
Code:
   Public Function serializeAs_IdentificationMessage(ByVal param1 As DataWriter)
        Me.version.serializeAs_Version(param1)
        param1.WriteUTF(Me.lang)
        param1.WriteUTF(Me.login)
        param1.WriteShort(Me.password.Count)
        Dim _loc_2 As Integer = 0
        While _loc_2 <= Me.password.Count
            param1.WriteByte(password(_loc_2))
            _loc_2 = _loc_2 + 1
        End While
        param1.WriteShort(Me.serverid)
        Return Me
    End Function
 

4R7Y

Contributeur
Inscrit
6 Mars 2011
Messages
213
Reactions
0
#14
non mais le RSA en lui même, le cryptage quoi
 
A

Anonymous

Invité
#15
Mais pourquoi tu dis ça ? Il te ressors rien ? Moi j'ai bien une list de Integer. Elle change à chaque fois mais ça doit venir du salt qui change aussi.
 

4R7Y

Contributeur
Inscrit
6 Mars 2011
Messages
213
Reactions
0
#16
Tout simplement car l'erreur vient du credential (le serveur me le dit lui même)
 
A

Anonymous

Invité
#17
Et la solution c'est quoi ?
 

4R7Y

Contributeur
Inscrit
6 Mars 2011
Messages
213
Reactions
0
#18
Ton cerveau, ou bien celui d'un autre qui a déjà résolu le problème et qui veut bien expliquer, peut être retraduire les sources du cryptage d'ankama, en tout cas ça ne viendra pas tout seul :/
 

ToOnS

Membre Actif
Inscrit
8 Avril 2009
Messages
974
Reactions
0
#19
c'est bien les MITM quand meme :mrgreen: (ca vient tout seul sans aucun cerveau)
 

4R7Y

Contributeur
Inscrit
6 Mars 2011
Messages
213
Reactions
0
#20
Fourbe dodu gros lapin ! Moi aussi je te narguerai un jour !
 
Haut Bas