C>S 0x42 SID_CDKEY3

Transport Layer: Transmission Control Protocol (TCP)
Application Layer: Battle.net v1 TCP Messages (SID)
Message Id: 0x42
Message Name: SID_CDKEY3
Direction: Client to Server
Options:
In Research
Used By:
Diablo IIDiablo II Lord of Destruction
Message Format:
(does not include protocol header)
(UINT32)     Unknown 1
(UINT32)     Unknown 2
(UINT32)     Unknown 3
(UINT32)     Unknown 4
(UINT32)     Unknown 5
(UINT32)     Unknown 6
(UINT32)     Unknown 7
 (UINT8)[20] Hashed Key Data
(STRING)     Key owner name

Remarks

Not much is known about this packet, its structure and its documentation was taken from PvPGN.

The collected information can be found here and below:

/******************************************************/
/*
From Diablo II 1.08?
FF 42 43 00 AB 4C A4 3B            .BC..L.;
01 00 00 00 00 00 00 00   10 00 00 00 06 00 00 00    ................
XX 60 12 00 00 00 00 00   5D 82 82 C4 F4 8F D0 91    X`......].......
E1 5B AB 95 D9 EE EF 18   44 3E F1 C9 XX XX XX XX    .[......D>..XXXX
XX XX XX XX XX XX XX XX   XX XX 00                   XXXXXXXXXX.

FF 42 44 00 17 78 42 77   01 00 00 00 00 00 00 00    .BD..xBw........
10 00 00 00 06 00 00 00   XX F3 10 00 00 00 00 00    ........X.......
A8 29 8B C4 41 BD 33 AB   74 4C 1F 1E 5C XX CA 83    .)..A.3.tL..\X..
7F E5 36 14 XX XX XX XX   XX XX XX XX XX XX XX XX    ..6.XXXXXXXXXXXX
XX XX XX 00                                          XXX.

FF 42 44 00 C6 25 A1 3B   01 00 00 00 00 00 00 00    .BD..%.;........
10 00 00 00 06 00 00 00   XX F3 10 00 00 00 00 00    ........X.......
C4 3F FB 05 94 0C AC D4   3B 63 B1 90 E4 XX 53 B9    .?......;c...XS.
70 C3 6F 2E XX XX XX XX   XX XX XX XX XX XX XX XX    p.o.XXXXXXXXXXXX
XX XX XX 00                                          XXX.
*/
#define CLIENT_CDKEY3 0x42ff
typedef struct
{
    t_bnet_header h;
    bn_int        unknown1; /* FIXME: some kind of salt? */
    bn_int        unknown2; /* 01 00 00 00 */
    bn_int        unknown3; /* 00 00 00 00 */
    bn_int        unknown4; /* 10 00 00 00 */
    bn_int        unknown5; /* 06 00 00 00 */
    bn_int        unknown6; /* FIXME: value1? */
    bn_int        unknown7; /* 00 00 00 00 */
    bn_int        key_hash[5];
    /* owner name */
} PACKED_ATTR() t_client_cdkey3;
#define CLIENT_CDKEY3_UNKNOWN1  0xffffffff
#define CLIENT_CDKEY3_UNKNOWN2  0x00000001
#define CLIENT_CDKEY3_UNKNOWN3  0x00000000
#define CLIENT_CDKEY3_UNKNOWN4  0x00000010
#define CLIENT_CDKEY3_UNKNOWN5  0x00000006
#define CLIENT_CDKEY3_UNKNOWN6  0x00123456
#define CLIENT_CDKEY3_UNKNOWN7  0x00000000
/******************************************************/

/******************************************************/
/*
                          FF 42 09 00 00 00 00 00            .B......
                          00

                          FF 42 09 00 00 00 00 00   00                         .B.......
                          */
#define SERVER_CDKEYREPLY3 0x42ff
typedef struct
{
    t_bnet_header h;
    bn_int        message;
    /* owner name */ /* FIXME: or error message, or ... */
} PACKED_ATTR() t_server_cdkeyreply3;
#define SERVER_CDKEYREPLY3_MESSAGE_OK       0x00000000
🔖diablo-iidiablo-ii-lord-of-destruction
| Edited: xboi209

Comments

no one has commented yet.