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) :
- authserver :
AUTH_LOGON_CHALLENGE/AUTH_LOGON_PROOF(SRP6), qui produit la clé de session K. - worldserver :
SMSG_AUTH_CHALLENGE, puisCMSG_AUTH_SESSIONavec la preuveSHA1(compte, 0, graine client, graine serveur, K). - Chiffrement des en-têtes : RC4 initialisé par HMAC-SHA1(clé fixe, K), 1024 premiers octets écartés.
CMSG_CHAR_CREATEpuisCMSG_CHAR_ENUMpour 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.