Also: stunningly bad exposition on "salt" values. A salt is a public nonce. Each password hash should have a different salt. An attacker shouldn't be able to construct a "your-salt" rainbow table to crack all the passwords on your machine; she should have to constrct N rainbow tables, for each of the passwords.