User model with secure password implementation