1. Instalare

În v0.6.0, metoda recomandată pentru instalare nouă este să deschizi /install. Installerul verifică cerințele serverului, scrie config/config.php, generează APP_SECRET_KEY, importă schema SQL și creează contul administrator.

În v0.9.0, aplicația include modul Release Check, manifest de integritate a fișierelor și checklist manual pentru testarea finală înainte de versiunea 1.0. În v0.8.0 au fost adăugate logo-ul DPX Vault, rate limiting pentru login/2FA, audit cu nivel de risc și notificări opționale pentru evenimente critice.

Instalarea manuală rămâne posibilă: importă schema din database/schema.sql, configurează conexiunea în config/config.php și setează APP_SECRET_KEY cu o valoare hex de 64 caractere.

php -r "echo bin2hex(random_bytes(32)), PHP_EOL;"

După crearea primului cont admin, în producție este recomandat să setezi ALLOW_SELF_REGISTRATION=false.

2. Vault

Vault-ul se deblochează local cu parola master. Serverul nu primește parola master și nu poate decripta elementele salvate.

Pentru fiecare element poți salva titlu, URL, username, parolă/secret, folder, taguri, status 2FA pentru contul salvat, secret TOTP opțional, sensibilitate, favorite, arhivat, note și atașamente criptate.

La copierea unei parole, clipboard-ul este curățat automat după intervalul setat în preferințe.

3. Foldere, taguri, favorite

Folderele, tagurile și marcajul de favorite sunt stocate în interiorul payload-ului criptat al fiecărui element. Ele nu sunt vizibile serverului.

În pagina Vault există filtre pentru tip, folder, tag, 2FA, favorite, arhivate și Trash, plus sortare după recent, titlu, vechime parolă și criticitate.

4. Trash și arhivare

Ștergerea unui element îl mută în Trash. Din filtrul Trash poți restaura elementul sau îl poți șterge definitiv.

Arhivarea este utilă pentru conturi vechi, licențe expirate sau accesări păstrate doar istoric, fără să le ștergi.

5. Security Health Dashboard

Pagina Health cere parola master și analizează local vault-ul. Scorul este orientativ și ține cont de parole slabe, duplicate, vechi, conturi fără 2FA marcat, elemente fără folder/tag și eventuale erori de decriptare.

6. 2FA și recovery codes

Din pagina Cont se poate activa 2FA/TOTP. După confirmare, aplicația afișează 10 coduri de recuperare. Acestea sunt afișate o singură dată și trebuie salvate offline.

Recovery codes sunt stocate în baza de date doar hash-uit și fiecare cod poate fi folosit o singură dată la login.

7. TOTP și atașamente criptate

Un element de tip parolă poate avea un secret TOTP opțional. Codul de 6 cifre este calculat local în browser și se reîmprospătează automat. Secretul TOTP este salvat în payload-ul criptat al elementului.

Pentru fiecare element salvat poți adăuga atașamente criptate: certificate, fișiere .ovpn, PDF-uri de licență sau alte documente mici. Fișierul este criptat local înainte de upload; serverul stochează doar ciphertext.

Din motive de securitate operațională, pentru conturi foarte critice poți alege să păstrezi TOTP-ul într-o aplicație separată, nu în același vault cu parola.

8. Backup, restore și import CSV

Pagina Backup permite exportul unui backup criptat local cu o parolă separată de backup. Backup-ul include elementele active și atașamentele asociate. Restore-ul decriptează fișierul în browser și recriptează elementele cu cheia vault-ului curent înainte de salvare.

Importul CSV se face local în browser. Datele sunt trimise serverului doar după criptare. Coloanele TOTP/OTP sunt importate în câmpul TOTP criptat al elementului.

9. Politici și preferințe

Administratorul poate seta politici globale: forțare 2FA, timp sesiune, auto-lock vault, clipboard clear, export JSON, import CSV, backup criptat, atașamente criptate, stocare TOTP în vault, limită dimensiune atașament, lungime minimă parolă master și lockout login.

Fiecare utilizator poate seta preferințe personale: temă, limbă, număr elemente afișate, interval clipboard, auto-lock și afișare compactă.

10. Audit și raport

Pagina Audit permite filtrarea evenimentelor după utilizator, tip eveniment și perioadă. Sunt jurnalizate login-uri, 2FA, export/import, backup/restore, copiere/vizualizare parole și acțiuni administrative.

Pagina Raport generează un raport HTML imprimabil. Partea de analiză a parolelor se calculează local după deblocarea vault-ului.

11. Hardening și System Check

Hardening verifică HTTPS, cookie-uri Secure, APP_SECRET_KEY, APP_DEBUG, display_errors, expose_php, headere de securitate și extensii PHP.

System / Upgrade Check verifică tabelele aplicației, versiunea, PHP și migrațiile aplicate.

12. Release Check v0.9.0

Release Check este pagina de testare finală pentru administrator. Include verificări automate pentru versiune, migrații, cont admin, HTTPS, APP_SECRET_KEY, installer protejat, rate limiting, audit cu risc, politici critice și integritatea fișierelor core.

Pagina include și un checklist manual pentru instalare nouă, upgrade, 2FA, recovery codes, backup/restore, import CSV, atașamente criptate, schimbare parolă master, sesiuni active și testare multi-browser.

Înainte de v1.0, recomandarea este să nu mai fie adăugate funcții noi; se notează doar bug-uri, probleme de UX, ajustări de documentație și fix-uri de stabilitate.

Instalare, upgrade și mentenanță

  1. Pentru instalare nouă, deschide /install și completează datele bazei de date și contul administrator.
  2. După instalare, verifică pagina System / Upgrade Check și protejează directorul /install.
  3. Pentru upgrade, folosește System / Upgrade Check → Upgrade Manager sau rulează manual fișierul SQL al versiunii.
  4. Modul de mentenanță se activează din System și blochează accesul userilor, dar permite administrarea.
  5. SMTP se configurează din SMTP; parola serverului SMTP este criptată cu APP_SECRET_KEY.