• Welcome to Valhalla Legends Archive.
 

CD KEY GENERATOR

Started by vonLandenhausen, October 07, 2004, 06:04 AM

Previous topic - Next topic

vonLandenhausen

please do not remove... ::)

hi,
i found a quite intresting pdf file about how blizzard checks cd keys.

5
To log on to the Battle.net service and access Battle.net mode, the game initiates a
authentication sequence or "secret handshake" between the game and Battle.net server. First, the
game and Battle.net server exchange random numbers (one provided by the game and one provided
by the server). The game then takes the random numbers, as well as information from the CD Key,
and calculates an encrypted alphanumeric sequence which is sent to the Battle.net server. The game
performs this encryption to prevent individuals from stealing the game's CD Key when it is transmitted
over the Internet to a Battle.net server. The Battle.net server receives the alphanumeric sequence sent
by the game, along with other information sent by the game, and uses this data to determine whether
the CD Key information sent by the game is valid. If the CD Key information is valid, the Battle.net
server will determine whether the same CD Key is already being used by another game that is currently
logged on to that Battle.net server gateway.2 If the CD Key is both valid and not currently being used
by other players on the same Battle.net gateway, the Battle.net server sends a signal to the game that
allows the game to enter the Battle.net mode and use the Battle.net gaming services. The Blizzard
game waits for this signal before entering Battle.net mode. Battle.net uses an encryption algorithm
for this process based on a common encryption algorithm.

you can find the whole text at: http://www.freedom-to-tinker.com/doc/2004/bnetd_30sep.pdf

so, is it possible to make a 100% working SC working and if yes... how?

vonLandenhausen

by the way: its the court decision blizz vs bnetd  :'(

iago

Quoteand uses this data to determine whether the CD Key information sent by the game is valid.

That's the important part, and it doesn't really say much.

The rest, about generating the random seed values and such, is a pretty standard encryptoin method.
This'll make an interesting test for broken AV:
QuoteX5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*


Kp

Quote from: vonLandenhausen on October 07, 2004, 06:04 AMso, is it possible to make a 100% working SC working and if yes... how?

Yes, it is possible.  All you need to do is restrict your output to the set of keys for which secret_value == SecretFromID(id), where id is the number sent in the clear and secret_value is the number which is not sent in the clear.  The only difficulty is that nobody outside Blizzard has (and admits to having) the source or executable code for SecretFromID.  Thus, it's a little bit hard to make since any given user has access to only a very small number of (id,secret) pairs, and you'd need to determine the relation (which could be linear, quadratic, exponential, or something else entirely), and the constants used therein, in order to implement it.  So, it's possible to do in the same way that breaking a 1024-bit RSA encryption is possible: it can be done, but the effort expended to do it is horribly prohibitive, and you're not likely to gain much from it. :)

Quote from: iago on October 07, 2004, 07:23 AMThe rest, about generating the random seed values and such, is a pretty standard encryptoin method.

Also, it's worth noting that it's not a particularly good idea to rely on court decisions for technical information.  Among other things, that decision discusses "Starcraft: Brood of War".  There were other parts (including misspelling of a case citation) that gave me the impression that this document was not well read before release.
[19:20:23] (BotNet) <[vL]Kp> Any idiot can make a bot with CSB, and many do!

Joe[x86]

Or just make keys, attempt to use them with a CSB or something, and then see if they work.
Quote from: brew on April 25, 2007, 07:33 PM
that made me feel like a total idiot. this entire thing was useless.

muert0

It seems battle.net would have some form of protection for this. Like an IP ban if you use a certain number of bad keys. But I may be wrong.
To lazy for slackware.

UserLoser.

Quote from: muert0 on October 15, 2004, 12:19 PM
It seems battle.net would have some form of protection for this. Like an IP ban if you use a certain number of bad keys. But I may be wrong.

Using one bad CDkey results in an IPban of usually around 60 minutes long

Soul Taker

It'd make sense to only try cd-keys which are not totally invalid, though.

muert0

But what would you define as totally invalid there are so many combinations that could seem valid but are not.
To lazy for slackware.

iago

Well, ones that decode to sane products and decoded values would be a step in the right direction.
This'll make an interesting test for broken AV:
QuoteX5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*