Jump to content
Sign in to follow this  
Dracil

Generating a serial?

Recommended Posts

Dracil

Im using _Crypt_HashData($code,$CALG_MD5) to generate a hash code, but how do i make sepcific algorym, or i mean add some extra letters so the hash dont end up all like everyone else who uses crypt hashdata on autoit =)

Edited by Dracil

Share this post


Link to post
Share on other sites
KaFu

In SMF I use this to create a UUID (Universally Unique Identifier) :D...

#include <WinApi.au3>
MsgBox(0,"",_UuidCreat())

; http://www.autoitscript.com/forum/index.php?showtopic=92844&view=findpost&p=715421
; Smashly
; http://msdn.microsoft.com/en-us/library/aa379205%28VS.85%29.aspx

Func _UuidCreat()
    Local $tGUID, $pGUID
    $tGUID = DllStructCreate($tagGUID)
    $pGUID = DllStructGetPtr($tGUID)
    DllCall("rpcrt4.dll", "int", "UuidCreate", "ptr", $pGUID)
    If Not @error Then Return _WinAPI_StringFromGUID($pGUID)
EndFunc   ;==>_UuidCreat

Share this post


Link to post
Share on other sites
KaFu

md5 hashing is a one-way encryption, you can't decrypt the result anymore. Using the same $code will always produce the same hash... my example above just generates a different results on each call. I use it by checking if a serial has been set in an ini file and if not then generate one. This way each client gets it's unique id.

If that doesn't solve you problem, explain in more detail what you want to achieve exactly...

Edited by KaFu

Share this post


Link to post
Share on other sites
jchd

Im using _Crypt_HashData($code,$CALG_MD5) to generate a hash code, but how do i make sepcific algorym, or i mean add some extra letters so the hash dont end up all like everyone else who uses crypt hashdata on autoit =)

Do _not_ try to invent a new hash algorithm by yourself! This would be the worst move you could do.

Now if you want a standard, proven algorithm to produce an essentially unique hash on a given block of data, just add "salt".

The idea is, like you suggested, prefix your data with some "secret" custom value. Don't forget either that your AutoIt executable can be reverse-engineered quite easily, so there is little point in using a very sophisticated solution as it can't be hidden completely (NTW, nothing can be!).

Don't listen to the reports than MD5 is "broken" because one can produce collisions. This is for specialists only and MD5 is still a decently robust solution to hash for most uses except crypto-level.


This wonderful site allows debugging and testing regular expressions (many flavors available). An absolute must have in your bookmarks.
Another excellent RegExp tutorial. Don't forget downloading your copy of up-to-date pcretest.exe and pcregrep.exe here
RegExp tutorial: enough to get started
PCRE v8.33 regexp documentation latest available release and currently implemented in AutoIt beta.

SQLitespeed is another feature-rich premier SQLite manager (includes import/export). Well worth a try.
SQLite Expert (freeware Personal Edition or payware Pro version) is a very useful SQLite database manager.
An excellent eBook covering almost every aspect of SQLite3: a must-read for anyone doing serious work.
SQL tutorial (covers "generic" SQL, but most of it applies to SQLite as well)
A work-in-progress SQLite3 tutorial. Don't miss other LxyzTHW pages!
SQLite official website with full documentation (may be newer than the SQLite library that comes standard with AutoIt)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.