Secure Password Management System in .NET
Design and implement a production-grade password management system in .NET that follows modern security standards. The solution must securely store and verify user credentials using cryptographic hashing, unique salts, and industry-recommended best practices to protect against common attack vectors.
Key Requirements
- Implement password hashing using a strong algorithm (e.g., PBKDF2, BCrypt, or Argon2)
- Generate and store unique salts per user
- Enforce secure password policies (length, complexity, reuse prevention)
- Provide safe password verification logic
- Prevent timing attacks and brute-force attempts
- Follow OWASP password storage guidelines
- Ensure the solution is scalable and maintainable
Technical Stack
- .NET / ASP.NET Core
- Entity Framework Core (optional for persistence)
- Cryptography APIs from
System.Security.Cryptography
Expected Outcome
A reusable, secure authentication component that can be integrated into real-world .NET applications, demonstrating strong knowledge of application security and defensive coding practices.
Skill Level
Intermediate to Advanced .NET Developers
