SID_CDKEY2
| Protocol | BNCS |
|---|---|
| Directions | Client → Server and Server → Client |
| Used by | |
| Status | Historical. |
Sends a hashed CD key in the older logon. Warcraft II uses it.
Client → Server
After SID_REPORTVERSION passes.
| Type | Field | Notes | Confidence |
|---|---|---|---|
UINT32 |
Spawn | ✅ Verified | |
UINT32 |
Key length | ✅ Verified | |
UINT32 |
Product value | Decoded from the key. | ✅ Verified |
UINT32 |
Public value | Decoded from the key. | ✅ Verified |
UINT32 |
Server token | From SID_LOGONCHALLENGEEX. |
✅ Verified |
UINT32 |
Client token | ✅ Verified | |
VOID |
Key hash (20 bytes) | Mixed with both tokens, so it changes every session. | ✅ Verified |
STRING |
Key owner | ✅ Verified |
Server → Client
| Type | Field | Notes | Confidence |
|---|---|---|---|
UINT32 |
Result | ✅ Verified | |
STRING |
Key owner | ✅ Verified |
Results
| Value | Meaning | Confidence |
|---|---|---|
0x01 | Accepted. | ✅ Verified |
0x02 | Key not valid. | ✅ Verified |
0x03 | Key is for a different game. | ✅ Verified |
0x04 | Key banned. | ✅ Verified |
0x05 | Key in use. | ✅ Verified |
Remarks
Token order. In this message the server token comes before the client token, the opposite of the order in SID_LOGONRESPONSE and SID_LOGONRESPONSE2.
Appears in
Sources and credits
- BNETDocs Atlas server (MIT): message handler used to cross-check the layout
- BNETDocs, Battle.net Chat Server Protocol Overview: written by Kyro, and edited 11 times since.
- BNETDocs, SID_CDKEY2 (client to server): documented by the original BNETDocs contributors, and edited 1 times since.
- BNETDocs, SID_CDKEY2 (server to client): documented by the original BNETDocs contributors, and edited 1 times since.
This page is written in our own words. BNETDocs is credited for its research; none of its text is copied. See Credits.