Acest proiect reprezintă un Manager de Parole dezvoltat ca o aplicație desktop Windows Forms (WinForms) în C# pe platforma .NET.
Obiectivul principal al aplicației este de a stoca în siguranță credențialele utilizatorului, utilizând o bază de date locală SQLite pentru persistență și implementând mecanisme robuste de securitate și arhitectură modulară.
- Interfață Grafică (GUI): Oferă o interfață simplă pentru autentificare (
Login), managementul parolelor (Manager) și schimbarea parolei principale (ChangePass). - Securitate: Utilizează o bibliotecă dedicată pentru hashing-ul parolelor principale, asigurând că datele sensibile nu sunt stocate în format lizibil.
- Operațiuni CRUD: Permite adăugarea, vizualizarea, modificarea și ștergerea înregistrărilor de parole.
Proiectul este structurat pe principii de design avansat pentru a separa logica de business de interfața utilizator și de accesul la date:
- Command Pattern: Operațiunile de manipulare a datelor (adăugare, ștergere, actualizare parole) sunt implementate folosind Command Pattern (e.g.,
AddPasswordCommand,RemovePasswordCommand,UpdatePasswordCommand), asigurând o decuplare mare și facilitând extinderea și testarea. - Repository Pattern: Accesul la baza de date este abstractizat prin intermediul unui Repository dedicat (
PasswordRepository), care gestionează obiecte de tipPasswordEntry. - Module de Biblioteci: Funcționalitățile principale sunt împărțite în biblioteci DLL separate, cum ar fi
DatabaseLibrary,HasherLibraryșiPasswordExceptionLibrary.
| Tehnologie | Versiune/Scop |
|---|---|
| Limbaj | C# |
| Platformă | .NET 8.0 (Target: net8.0-windows) |
| Interfață | Windows Forms (WinForms) |
| Bază de Date | SQLite (pentru stocare locală) |
| ORM | Entity Framework 6 (EF6) |
| Interfață Comandă | CommandInterface.dll |
Proiectul a fost dezvoltat în mediul Microsoft Visual Studio.
- IDE: Microsoft Visual Studio (versiunea 2022 sau mai nouă).
- SDK: .NET 8.0 SDK instalat.
- Clonare: Clonați repository-ul pe mașina locală.
git clone [https://github.com/yourusername/Csharp-PasswordManager-OOP-SQLite.git](https://github.com/yourusername/Csharp-PasswordManager-OOP-SQLite.git)
- Deschidere Soluție: Deschideți fișierul soluție
ManagerParole.slnîn Visual Studio. - Restaurare NuGet: Vizual Studio ar trebui să restaureze automat pachetele NuGet necesare (SQLite, EF6) la deschidere. Dacă nu, faceți clic dreapta pe soluție și selectați Restore NuGet Packages.
- Asigurați-vă că proiectul ManagerParole este setat ca Proiect de Pornire (Startup Project).
- Construiți soluția (
Build Solution). - Rulați aplicația (tasta
F5sau butonulStart). - La prima pornire, aplicația ar trebui să solicite crearea unei parole principale, care va fi hashe-uită și stocată în baza de date locală
passwords.db.
Fișierul binar passwords.db va fi creat în directorul de output (e.g., ManagerParole/bin/Debug/net8.0-windows/) și conține datele securizate ale parolelor și hash-ul parolei principale.