• Welcome to Valhalla Legends Archive.
 

CDKey and Password Hashing

Started by RealityRipple, September 16, 2006, 03:55 AM

Previous topic - Next topic

Joe[x86]

Someone's written a CheckRevision function in Visual Basic and got it to work. It CheckRevisioned StarCraft in 20 seconds. WarCraft III takes notably longer, I believe around three times as long, using C code. So, it'd be impractical to do it in VB in a bot you actually use (bragging rights, of course, are worth going for).
Quote from: brew on April 25, 2007, 07:33 PM
that made me feel like a total idiot. this entire thing was useless.

RealityRipple

O.O... that's insanely long. What kind of processor was that recorded on?

Joe[x86]

Ah, come to think of it, I can't say I know. My computer is personally a 2.8GHz single-core P4 and I notice slowdowns with VB math-intensive things. Nothing near 20 seconds with the CheckRevision work I did, but it never even neared completion, so whatever.

Your best bet if you are hell-bent on being non-dependant on a library would be to download and extract ver-IX86-X.dll and run it, but be prepared for memory leaks (apparently around 24MB each run, ow) and some hard work. BNFTP is pretty easy -- I implemented automatic download and display of PCX ads in JBBE (lost the code, unfortunately), but MPQ seems to be quite complicated, perhaps moreso than running the DLL itself.
Quote from: brew on April 25, 2007, 07:33 PM
that made me feel like a total idiot. this entire thing was useless.

RealityRipple

I already do that to run CheckRevision. But I was looking for how to do cdkey and password hashing in vb. If it's really that bad, though, I'll keep using BNCSutil instead (with the checkrevision through BNLib).

Hero

Quote from: Joex86] link=topic=15718.msg158371#msg158371 date=1158583973]
Someone's written a CheckRevision function in Visual Basic and got it to work.
Who?

Joe[x86]

#20
I don't know. Hdx, maybe, l2k-Shadow. Both are pretty good programmers and I'm sure they'd have optimised it reasonably.

RealityRipple, how well can you read Java? For XSHA1 you should port this (dependant on this and this, and expanded for double-hashing by this), and for CDKey hashing use this, which is also expanded for 16-char alpha keys and WarCraft III keys. Also, iago's implementation of CheckRevision, but with the new version string formats it always reverts to it's slower checking (at least, when they don't by chance send the formula in A B C order, about a one of nine chance). Also, it's not updated for the new file padding.

EDIT -
I forgot to mention that CheckRevision's slowness was from VB's poor handling of I/O, apparently, and not math, so CD-Keys and hashing should be much faster (note, faster, not fast :P).
Quote from: brew on April 25, 2007, 07:33 PM
that made me feel like a total idiot. this entire thing was useless.

Hdx

Quote from: Joex86] link=topic=15718.msg158477#msg158477 date=1158708096]
I don't know. Hdx, maybe, l2k-Shadow. Both are pretty good programmers and I'm sure they'd have optimised it reasonably.
* HdxBmx27 raises hand.
It sucked horrably, I deleted it after i finished it.
also http://jbls.org/CheckRevision.java
Supports the new format, w/o reverting to the Slower CRev.

Andy, what you COULD do is stop useing VB. And learn a better language.
~-~(HDX)~-~

Proud host of the JBLS server www.JBLS.org.
JBLS.org Status:
JBLS/BNLS Server Status

l2k-Shadow

I wrote a CheckRevision class in VB 6 about a year ago but it worked rougly 50% of the time due to the lovely limitation of no unsigned variables in VB, it was also very very slow, I ended up trashing it with much enthusiasm.
Quote from: replaced on November 04, 2006, 11:54 AM
I dunno wat it means, someone tell me whats ix86 and pmac?
Can someone send me a working bot source (with bnls support) to my email?  Then help me copy and paste it to my bot? ;D
Já jsem byl určenej abych tady žil,
Dával si ovar, křen a k tomu pivo pil.
Tam by ses povídaj jak prase v žitě měl,
Já nechci před nikym sednout si na prdel.

Já nejsem z USA, já nejsem z USA, já vážně nejsem z USA... a snad se proto na mě nezloběj.

Joe[x86]

Quote from: l2k-Shadow on September 19, 2006, 10:42 PM
I wrote a CheckRevision class in VB 6 about a year ago but it worked rougly 50% of the time due to the lovely limitation of no unsigned variables in VB, it was also very very slow, I ended up trashing it with much enthusiasm.

A mess of strings, copymemory, and an array of longs should solve all your problems. :)
Quote from: brew on April 25, 2007, 07:33 PM
that made me feel like a total idiot. this entire thing was useless.

RealityRipple

:( stop insulting vb so much. I've learned or tried many other languages, and te BASIC series is just the one I'm comfortable with. It feels like it's my native language. I'm not switching (though I may move to REALbasic some day). I'll continue to use BNCSutil because it's good, fast, and easy.

l2k-Shadow

#25
Quote from: Joex86] link=topic=15718.msg158502#msg158502 date=1158753164]
Quote from: l2k-Shadow on September 19, 2006, 10:42 PM
I wrote a CheckRevision class in VB 6 about a year ago but it worked rougly 50% of the time due to the lovely limitation of no unsigned variables in VB, it was also very very slow, I ended up trashing it with much enthusiasm.

A mess of strings, copymemory, and an array of longs should solve all your problems. :)
ya and have fun doing all that work especially for the fact that the values are now 64bit.

Quote from: RealityRipple on September 20, 2006, 07:43 AM
:( stop insulting vb so much. I've learned or tried many other languages, and te BASIC series is just the one I'm comfortable with. It feels like it's my native language. I'm not switching (though I may move to REALbasic some day). I'll continue to use BNCSutil because it's good, fast, and easy.

VB is an amazing language, the problem with it is that the limitations just aren't worth it that much.. there are certain things that you just sometimes need in your projects that are extremely difficult in VB or just not at all possible, BUT if you can manage to write .dlls in other languages to surpass those limitations than yeah, you get rid of the limitation problem... Now all you have to deal with is slowness, and unless you're coding like an engine or something intensive as such, yay for VB :D
Quote from: replaced on November 04, 2006, 11:54 AM
I dunno wat it means, someone tell me whats ix86 and pmac?
Can someone send me a working bot source (with bnls support) to my email?  Then help me copy and paste it to my bot? ;D
Já jsem byl určenej abych tady žil,
Dával si ovar, křen a k tomu pivo pil.
Tam by ses povídaj jak prase v žitě měl,
Já nechci před nikym sednout si na prdel.

Já nejsem z USA, já nejsem z USA, já vážně nejsem z USA... a snad se proto na mě nezloběj.