I would suggest changing "without breaking all the password hashes" to "therefore not breaking the password hashes" to read better