Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Decodes a password from HeidiSQL. HeidiSQL passwords can be found in the registry. Use File -> Export Settings to dump all settings. Great for if you forget a password.
function heidiDecode(hex) {
var str = '';
var shift = parseInt(hex.substr(-1));
hex = hex.substr(0, hex.length - 1);
for (var i = 0; i < hex.length; i += 2)
str += String.fromCharCode(parseInt(hex.substr(i, 2), 16) - shift);
return str;
}
document.write(heidiDecode('755A5A585C3D8141786B3C385E3A393'));
@vuhanguyen
Copy link

vuhanguyen commented May 16, 2018

Thank you so much, it saved my day

@joeyhub
Copy link

joeyhub commented Aug 23, 2018

PHP Decode:

php -r '$p=$argv[1];$s=substr($p,-1); echo implode(array_map(function($c)use($s){return chr($c - $s);},unpack("C*",hex2bin(substr($p,0,-1)))));' 303132333435363738390

Note that PHP's chr wraps negative numbers properly. Not all languages will do this. You may need ($c+256-$s)%256. To test for that you should see if whatever you're using for chr produces the same for 0 - s as 256 - s.

If you're encoding your own password (generating conf)...

php -r 'echo bin2hex("Sweet as a corn that'\''s not yet born."), 0;'

There's no point to bother shifting it. Shifting and hex encoding is so weak it might as well be plain text.

@joeyhub
Copy link

joeyhub commented Aug 23, 2018

@wendyliga Do you have everyone's password now :D?

@Gicheha
Copy link

Gicheha commented Oct 10, 2018

you are a lifesaver

@DRSDavidSoft
Copy link

DRSDavidSoft commented Dec 25, 2018

Thank you!

@yani
Copy link

yani commented Jan 2, 2019

Thanks

@cpereiraweb
Copy link

cpereiraweb commented Jan 31, 2019

THANKS A LOT!!!!

@meysam-mo
Copy link

meysam-mo commented Feb 24, 2019

Wow !! tnx

@rudikom
Copy link

rudikom commented Nov 5, 2019

thank you,,

@Godtooro
Copy link

Godtooro commented Mar 31, 2020

Hi!
Awesome! Thank u! We owe you one.
All the best.

@IsraelIglesiasBIT
Copy link

IsraelIglesiasBIT commented Apr 3, 2020

And how encode a password?

I need to generate a settings file for Heidi with php for my all databases connections?

@jordihernandez
Copy link

jordihernandez commented Jun 30, 2020

Thank you!

@Pes8
Copy link

Pes8 commented Aug 2, 2021

Thank You all :)

@erickcomp
Copy link

erickcomp commented Apr 25, 2022

Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment