Okay, this is weird. The kindletool source code writes the kindle serial number to a temp file WITH NEWLINE (which varies between linux and Windows boxen):
PHP Code:
fprintf(temp, "%s\n", serial_no) ...
if(md5_sum(temp, md5) ...
But that makes me wonder how the md5 could EVER be correct, if it always includes a '\n' newline (either LF, or CR/LF, depending on OS). It seems "more better" to just calc md5 of the string instead of a file (especially with that newline)...
EDIT: Or for a quick-and-dirty fix, just leave out the newline? For example, fprintf(temp, "%s", serial_no) ...