Murloc Cult

Retour aux archives

Premier personnage, Trollbaye, créé par un mini-client du protocole 3.3.5a

Un client minimal implémente l'authentification SRP6, la session chiffrée du worldserver et la création de personnage. Premier pensionnaire du royaume : Trollbaye, chasseur troll et cobaye officiel.

Le personnage

Trollbaye (troll + cobaye), chasseur troll niveau 1, Vallée des Épreuves (Durotar). Son rôle : servir de cobaye pour tester chaque modification du serveur.

Le mini-client

Plutôt que d'écrire directement dans la base, le personnage est créé par le chemin qu'emprunte un vrai client, pour que le core applique lui-même ses règles (nom, race, classe, position, équipement de départ) :

  1. authserver : AUTH_LOGON_CHALLENGE / AUTH_LOGON_PROOF (SRP6), qui produit la clé de session K.
  2. worldserver : SMSG_AUTH_CHALLENGE, puis CMSG_AUTH_SESSION avec la preuve SHA1(compte, 0, graine client, graine serveur, K).
  3. Chiffrement des en-têtes : RC4 initialisé par HMAC-SHA1(clé fixe, K), 1024 premiers octets écartés.
  4. CMSG_CHAR_CREATE puis CMSG_CHAR_ENUM pour vérifier.

Incident

Premier essai : aucune réponse lisible après l'ouverture de session. Les deux clés fixes du chiffrement étaient inversées dans le client ; corrigé d'après AuthCrypt.cpp (le serveur chiffre avec CC98…, déchiffre avec C2B3…).

Vérification

Réponse 0x2F (succès) ; en base : carte 1, coordonnées de la Vallée des Épreuves, 7 objets de départ.