# Správce hesel v17

Jednoduchý lokální správce hesel pro Windows napsaný v Pythonu. Aplikace ukládá hesla do šifrovaného trezoru v uživatelském profilu, používá hlavní heslo, podporuje generování hesel, import z CSV exportu prohlížeče Chrome a umožňuje změnu barevného schématu.

## Funkce

- Lokální šifrovaný trezor hesel.
- Vytvoření a odemknutí trezoru hlavním heslem.
- Změna hlavního hesla s přešifrováním trezoru.
- Přidávání, úprava a mazání záznamů.
- Vyhledávání v uložených záznamech.
- Generování silného hesla.
- Kopírování hesla do schránky s automatickým vymazáním po 20 sekundách.
- Automatické uzamčení aplikace po 5 minutách nečinnosti.
- Import hesel z CSV exportu prohlížeče Chrome.
- Barevná schémata: Petrolejová, Malinová, Lesní a Noční modrá.

## Instalace

Vyžadován je Python a knihovny `cryptography`, `ttkbootstrap` a `pyperclip`.

```bash
py -m pip install --upgrade cryptography ttkbootstrap pyperclip
```

## Spuštění

```bash
py password_manager_v17.py
```

Pokud není dostupný příkaz `py`, použijte podle instalace Pythonu například:

```bash
python password_manager_v17.py
```

## Import hesel z Chrome

1. V prohlížeči Chrome otevřete správce hesel.
2. Exportujte hesla do CSV souboru.
3. V aplikaci klikněte na `Import Chrome`.
4. Vyberte exportovaný CSV soubor.
5. Aplikace načte záznamy se sloupci jako `name`, `url`, `username` a `password`.

Import přeskočí záznamy bez URL nebo hesla a také přesné duplicity.

## Ukládání dat

Aplikace ukládá data do složky:

```text
%USERPROFILE%\.simple_password_manager
```

Hlavní soubory:

- `vault.dat` - šifrovaný trezor hesel.
- `salt.bin` - sůl pro odvození šifrovacího klíče.
- `settings.json` - nastavení aplikace, například barevné schéma.

## Bezpečnost

Trezor je šifrovaný pomocí `Fernet` z knihovny `cryptography`. Klíč je odvozen z hlavního hesla pomocí `Argon2id`. Hlavní heslo se neukládá.

Důležité:

- Bez hlavního hesla není možné trezor běžně obnovit.
- Zálohujte si `vault.dat` i `salt.bin` společně.
- CSV export z Chrome obsahuje hesla v čitelné podobě. Po importu ho bezpečně smažte.

## GitHub Pages

Součástí projektu je soubor `index.html`, který lze použít jako jednoduchou prezentační stránku pro GitHub Pages.

## Licence

Projekt zatím nemá přidanou licenci. Pokud ho chcete zveřejnit, doporučuje se doplnit soubor `LICENSE`.
