
The Offline NT Password Editor

(c) 1997-2000 Petter Nordahl-Hagen

See COPYING for copyright & credits.
See INSTALL for compile/installation instructions.

Revision history 
(chntpw utility only, see website for info on bootdisk revisions)

* v 0.98.1 000607

 - Discovered that when a key has lots of subkeys (typically about
   300 or more?) its hashtable is split and accessed through an
   indirect ('ri') table, almost as some filesystems do with
   datablock lists on large files. This caused an error "Not 'nk' node"
   and sometimes a crash in earlier versions. In SAM this happens in
   \SAM\Domains\Account\Users when the number of users are large
   (which often is the case on domain controllers).
   See source code for technical details on this. (WinReg.txt not updated)

* v 0.98 000401

 - Disabling syskey on Win2000 corrupts the SAM somehow, makes it
   unable to reenable + leaves it in a partial mode 1 syskey.
   Also corrupts the Domain Trust password, making it impossible
   to join og leave a domain.
   Delete HKLM\SECURITY\Policy\Secrets\$MACHINE.ACC (the trust key,
   may need to change ACLs to get to it) to leave the domain and make it
   possible to rejoin.
 - Added support for changing passwords without disabling or
   changing syskey, simply by inserting old type password hash
   into the sam. It gets converted to syskey-hash on next boot.
   Why I didn't discover this before is beyond me.
 - A few smaller bugfixes.

* v 0.98 000215

 - Can now write, too, but only existing values, & same datalength.
 - Internals rewritten, registry manipulation functions
   now in separate "library".
 - Added ability to check for and disable syskey. (see syskey.txt
   & sourcecode for details)
 - "Command line"-type registry-editor improved a bit.
 - Possible to load and edit several hives at once
 - Several minor changes.
 - Since a lot has been rewritten, there's probably more bugs.

* v 0.90 990307

Major updates:

 - Full registry parse/read/viever. Can follow the tree like a filesystem.
   No write-support yet.
 - 3.51 & 4.0 support. Seems to be working on NT5 betas, too.
 - 100% sure to find usernames/passwords.
 - Support for localized admin-names (will automatically find it)
 - Several minor bugs from earlier versions fixed.
 - Sorry, but still no syskey support. (but since full registry
   read capabilities exsist, it's now easier to make it)

* PRE-1 970611
 - Got reports on "Netlogon service not started"
   (and then it was impossible to logon)
   if attempt to change blank password into something else. 
   This was because if the password is set blank (from NT), the NT-logon
   hash (md4) is not stored in SAM at all (the LANmanager hash seems to be
   there..) However, chntpw didn't know about this, and happily(?) wrote away
   and corrupted the SAM file, causing Netlogon to fail.
   This version will flag accounts with blank passwords, and refuse to change it.

 - The -i (interactive) option now loops. Will ask for a new name repeatedly,
   until '!' is entered. This enables you to change multiple passwords in
   one run.
 
 - No support for syskey, yet.

* PRE-1 970528:
 - First public release

