Valhalla Legends Forums Archive | Battle.net Bot Development | CDKey connection.

AuthorMessageTime
Luxer
I am lost. After succsessfully creating a chat bot that uses the caht gateway (acsii 3)
I start wondering how to connect with a CDKey. I looked into BNLS. No thanks. I don't want to deal with bg3. What kind of encription does a cdkey use when connecting to battle.net? :-\ :-[
June 29, 2004, 10:51 PM
BaDDBLooD
I am not really sure on what your asking, because i am not very Familiar with Local hashing myself. There is a Public CDKey Decode/Encrypt for starcraft/broodwar Warcraft II/Diablo2. Unfortunately Warcraft III is still quite in it's Infancy. I am sure you can either Find them by Searching google, or just searching these forums.
June 29, 2004, 11:50 PM
Zakath
The hashing algorithm used for all pre-War3 encryption operations is a pseudo-SHA1 method that is particular to Blizzard's software. You can find a freely available implementation written by Yobguls floating around in various places, although from what I understand it isn't especially optimized.
June 30, 2004, 2:49 AM
GoSuGaMING
[quote author=Zakath link=board=17;threadid=7502;start=0#msg67867 date=1088563784]
The hashing algorithm used for all pre-War3 encryption operations is a pseudo-SHA1 method that is particular to Blizzard's software. You can find a freely available implementation written by Yobguls floating around in various places, although from what I understand it isn't especially optimized.
[/quote]

pseudo-SHA1 ?

its standard SHA-1 :X
June 30, 2004, 2:51 AM
Myndfyr
[quote author=GoSuGaMING link=board=17;threadid=7502;start=0#msg67868 date=1088563904]
[quote author=Zakath link=board=17;threadid=7502;start=0#msg67867 date=1088563784]
The hashing algorithm used for all pre-War3 encryption operations is a pseudo-SHA1 method that is particular to Blizzard's software. You can find a freely available implementation written by Yobguls floating around in various places, although from what I understand it isn't especially optimized.
[/quote]

pseudo-SHA1 ?

its standard SHA-1 :X
[/quote]

No, I believe it's called Broken SHA-1, because it uses SHA-1, then prepends the server key and appends the client key, then calculates the SHA-1 again. That is not exactly standard SHA-1, but rather a variant of it, hence "pseudo."
June 30, 2004, 2:56 AM
Zakath
The accepted term for the SHA1 hash used by Blizzard's games has been "pseudo-SHA1" for much longer than you've been active in the bot-making community, Gosu. I suggest you do your research before criticizing me like that.
June 30, 2004, 2:58 AM
Luxer
nevermind. I wonuld not understand anyway. Thanks!
June 30, 2004, 2:58 AM
GoSuGaMING
[quote author=Zakath link=board=17;threadid=7502;start=0#msg67870 date=1088564301]
The accepted term for the SHA1 hash used by Blizzard's games has been "pseudo-SHA1" for much longer than you've been active in the bot-making community, Gosu. I suggest you do your research before criticizing me like that.
[/quote]

i'm sorry im a ass! *YAY*
June 30, 2004, 3:19 AM
kamakazie
[quote author=Myndfyre link=board=17;threadid=7502;start=0#msg67869 date=1088564195]
No, I believe it's called Broken SHA-1, because it uses SHA-1, then prepends the server key and appends the client key, then calculates the SHA-1 again. That is not exactly standard SHA-1, but rather a variant of it, hence "pseudo."
[/quote]

That's not the reason it is called "Broken SHA-1." SHA-1 is a secure hash algorithm (SHA), not a method of hashing using a salt as you described. The reason it is called "Broken SHA-1" is Blizzard's implementation of SHA doesn't adhere to the NIST standard, it's broken. This has been discussed before as referenced in the Bot Dev Reference Forum.
June 30, 2004, 7:01 AM
hismajesty
[quote author=BaDDBLooD link=board=17;threadid=7502;start=0#msg67843 date=1088553037]
I am not really sure on what your asking, because i am not very Familiar with Local hashing myself. There is a Public CDKey Decode/Encrypt for starcraft/broodwar Warcraft II/Diablo2. Unfortunately Warcraft III is still quite in it's Infancy. I am sure you can either Find them by Searching google, or just searching these forums.
[/quote]

Assuming he's programming in vb, the bnetauth.dll source is available and it's not too hard to convert the cd-key functions to vb.
July 1, 2004, 12:10 AM
The-Rabid-Lord
http://www.dark-wire.net/exile/members/tutorials.php?view=15 This might be of help.
July 1, 2004, 4:16 PM
LoRd
[quote author=The-Rabid-Lord link=board=17;threadid=7502;start=0#msg68083 date=1088698574]
http://www.dark-wire.net/exile/members/tutorials.php?view=15 This might be of help.
[/quote]
A tutorial without explanations of what's going on isn't a helpful tutorial, not to mention that is one of the most horrid connection classes I've ever seen.
July 1, 2004, 9:42 PM
Quarantine
I agree any tutorial that just spits out code is no good.
July 1, 2004, 9:55 PM
hismajesty
[quote author=LoRd[nK] link=board=17;threadid=7502;start=0#msg68129 date=1088718135]
[quote author=The-Rabid-Lord link=board=17;threadid=7502;start=0#msg68083 date=1088698574]
http://www.dark-wire.net/exile/members/tutorials.php?view=15 This might be of help.
[/quote]
A tutorial without explanations of what's going on isn't a helpful tutorial, not to mention that is one of the most horrid connection classes I've ever seen.
[/quote]

Most of it is public code, which may be why?
July 1, 2004, 10:09 PM
ChR0NiC
Keep in mind that not only do you need to "encrypt" the cd key, but you must do the same with the password as well. So you're way better off learning the language and then trying to figure out how to use this Standard Hash Algorithm method used.
July 7, 2004, 6:45 AM
Luxer
OK, how am I supposed to use SHA-1 in RealBASIC? Does anyone have an object?
July 11, 2004, 1:14 PM
tA-Kane
SHA-1 specially ported to Mac endian:

http://www.cubedivision.org/phpBB2/viewtopic.php?t=72

Note that BNCSHashData() is the SHA-1 algorithm you're looking for.

Give me a while and I'll be able to dig up a REALbasic port as well...

Edit 2: Correction, that link does NOT have my CDKeyDecode() in C ... oh well

Edit: Blah... my HashData() in REALbasic doesn't work correctly... and I'm too lazy to correctly port it.

If you can compile that code into a library, you can link the library into REALbasic.

Alternately, if you know how to create a REALbasic plugin, you could do that. But note that you'll need to have some middle-man function(s) to convert the data to and from REALbasic's crazy objects and types to the normal types. If you're interested, I can give you my plugin's middle-men functions...
July 13, 2004, 12:38 AM

Search