KeePass: użyć pliku klucza lub zwykłego hasła?

17

Konfiguruję bazę danych KeePass i oferuje ona możliwość korzystania z pliku klucza, który, jak mówi, jest bezpieczniejszy, ponieważ może używać dłuższego i bardziej złożonego hasła, ale łatwiej go złamać, ponieważ potrzebujesz tylko pliku klucza, aby otworzyć Baza danych. Będę używać pliku klucza tylko na 2 komputerach (jeden komputer stacjonarny i jeden laptop), co jest najlepszą opcją?

Zauważ, że zdecydowanie korzystniejsze jest dla mnie użycie pliku klucza, ponieważ trudno mi zapamiętać coś zbliżonego do losowego hasła.

RCIX
źródło

Odpowiedzi:

17

Jeśli chodzi o możliwość używania key files” z KeePass .

W celu wygenerowania 256-bitowego klucza dla szyfrów blokowych używany jest Bezpieczny algorytm mieszania SHA-256. Algorytm ten kompresuje klucz użytkownika dostarczony przez użytkownika (składający się z hasła i / lub pliku klucza) do klucza o stałej wielkości 256 bitów. Ta transformacja jest jednokierunkowa, tzn. Nie jest możliwe obliczeniowo odwrócenie funkcji skrótu lub znalezienie drugiego komunikatu, który kompresuje się do tego samego skrótu.

Niedawno wykryty atak na SHA-1 nie wpływa na bezpieczeństwo SHA-256. SHA-256 jest nadal uważany za bardzo bezpieczny .

(istnieje kolejna najnowsza aktualizacja , ale myślę, że takie wiadomości nie są tutaj istotne ).
Do punktu, w zasięgu ręki ,

Wyprowadzanie klucza :
jeśli używane jest tylko hasło (tzn. Nie ma pliku klucza), hasło plus 128-bitowa losowa sól są mieszane przy użyciu SHA-256 w celu utworzenia końcowego klucza (ale należy pamiętać, że istnieje pewne wstępne przetwarzanie: Ochrona przed atakami słownikowymi). Losowa sól zapobiega atakom opartym na wstępnie obliczonych hashach.

Podczas używania zarówno hasła, jak i pliku klucza, ostateczny klucz jest uzyskiwany w następujący sposób: SHA-256 (SHA-256 (hasło), zawartość pliku klucza), tzn. Skrót hasła głównego jest łączony z bajtami pliku klucza i bajtem wynikowym ciąg jest ponownie mieszany za pomocą SHA-256 . Jeśli plik kluczy nie zawiera dokładnie 32 bajtów (256 bitów), są one również mieszane za pomocą SHA-256, aby utworzyć klucz 256-bitowy. Powyższa formuła następnie zmienia się na: SHA-256 (SHA-256 (hasło), SHA-256 (zawartość pliku klucza)).

Jeśli uważasz, że hasło będzie nieco słabszy (i lepiej dla pamięci), plik klucza jest dobry drugi czynnik . Więc użyj obu (razem).

nik
źródło
Rzuciłbym
jasonh
@jasonh, Wow! głosujesz za odrzuceniem dwuskładnikowego bezpieczeństwa, z Gibsonreferencją do wywiadu wziętą z jego własnej strony (tak, słyszałem wcześniej Leo, w porządku). Dodaj swoje punkty tutaj jako nową odpowiedź, aby ludzie mogli skorzystać.
nik
7
Tak. Rozumiem, że mam drugi czynnik, ale tutaj jest bezużyteczny. Plik klucza byłby przechowywany praktycznie z samą bazą danych haseł, jeśli jesteś użytkownikiem mobilnym. Jeśli stracisz kontrolę nad bazą danych, prawdopodobnie straciłeś także kontrolę nad plikiem klucza. Jak zauważa Steve Gibson, plik klucza nie zapewnia większego bezpieczeństwa, jeśli w ogóle.
jasonh
2
Drugi czynnik jest przydatny w przykładzie futbolu PayPal. W takim przypadku masz urządzenie fizyczne i hasło. Jeśli hasło zostanie naruszone, domyślnie nie ma powodu, aby sądzić, że brakuje Twojego futbolu. Dla porównania, gdy towary są bazą danych haseł, a mechanizm zabezpieczający jest po prostu innym plikiem znajdującym się obok samej bazy danych, co to za dobro? Żaden.
jasonh
2
+1 za użycie pliku klucza i hasła głównego. Więc nawet jeśli dostaną plik db i klucz, musisz tylko pamiętać 1 długie hasło. Nie potrafią jeszcze włamać się do mózgu, więc zamiast tego weź udział w treningu odporności na tortury.
Piotr Kula,
5

Chodzi o to, aby twoje hasła były bezpieczne, więc jest to oczywiste: hasło. Jeśli użyjesz pliku klucza i stracisz kontrolę nad bazą danych haseł, wszystkie hasła zostaną ujawnione.

Jason
źródło
4
Zawsze będziesz narażony na ryzyko, jeśli gdzieś przechowujesz swoje „hasło” (na karteczce lub w pliku klucza). Tak długo, jak trzymasz hasło w głowie (i jest ono wystarczająco złożone), powinieneś być lepiej.
Sam
1
Przy użyciu zarówno hasło i plik klucza , ostateczny klucz wyprowadza się następująco: SHA-256(SHA-256(password), key file contents). Sam dostęp do pliku jest bezużyteczny. Ale znajomość hasła bez zawartości pliku utrudnia jego złamanie. Plik dodaje także silne salthasło do hasła.
nik
1

Użyj obu. Trzymaj plik klucza na dysku flash i zabierz go ze sobą. Ale nigdzie na pulpicie (to samo, co pisanie hasła na karteczkach). Korzystam z tej metody na zaszyfrowanej partycji dysku twardego (z truecrypt). Jeśli więc ktoś nadal dostanie twoje hasło, potrzebuje też pliku klucza.

Pawka
źródło
1
Po prostu upewnij się, że masz kopię zapasową pliku klucza, a także samej bazy danych haseł. Jeśli którykolwiek z nich zostanie uszkodzony, będziesz potrzebować nowej kopii zapasowej.
Torbjørn
0

Dla początkujących w zarządzaniu hasłem:
tylko hasło
Dlaczego?
Zmniejsza o połowę problemy związane z zarządzaniem plikami i ogranicza je do jednego pliku.
Db KeepassX .kdbx można zabezpieczyć mieszanym 64-znakowym hasłem. To duży zakres, aby stworzyć długie, bezpieczne hasło.
Pomaga to podkreślić, że (silne) hasło (w twojej głowie) jest twoim głównym celem (nie tam, gdzie trzymałeś plik klucza itp.).
Jeśli masz problemy z zapamiętywaniem haseł (oczywiście wszyscy to robimy), użyj menedżera haseł (takiego jak KeepassX), a będziesz musiał pamiętać tylko jedno dobre, silne hasło.

dotnetspec
źródło
1
To nie odpowiada na (bardzo szczegółowe) zadane pytanie.
Mokubai
-1

Wybrałem użycie pliku klucza. Mam również utworzone konto e-mail służące do przechowywania mojego pliku klucza (nie lubię spędzać czasu z pamięcią flash USB za każdym razem, gdy chcę uzyskać dostęp do mojego konta bankowości elektronicznej).

Jeśli komputer, którego używam, nie jest moim osobistym, po prostu loguję się na to konto e-mail na komputerze, na którym chciałbym użyć pliku klucza, a następnie loguję się na inne konto e-mail, które ma najnowszą wersję mojego .kdbx plik.

Na koniec pobieram KeePass i instaluję go na komputerze, używam klucza i .kdbx wraz z hasłem do bazy danych i to wszystko!

Oczywiście usuwam zarówno plik .kdbx, jak i plik klucza na używanym komputerze.

Roger Johnson
źródło
10
Rozważałbym tę złą praktykę bezpieczeństwa na wielu poziomach.
kluka
1
Tak, całkiem bezużyteczne i najbardziej niebezpieczne; zwłaszcza część dotycząca po prostu otwarcia pliku hasła na komputerze, który „nie jest moim osobistym”. Do licha. Złe złe, ponieważ nie potrafię wyrazić, jak bardzo zła jest ta praktyka. Mam laptopa do pracy, który jest wszędzie ze mną, a jednocześnie jest wygodny, ponieważ inni ludzie (jak w dziale IT) „utrzymują” go, nawet nie ufam, że przechowuję, a nawet otwieram swoje osobiste hasło db na.
nanker
@nanker, jak zatem używasz swojego osobistego hasła db na swoim laptopie służbowym? Czy masz klucz i bazę danych na kluczu USB?
RED_
2
@RED_ Nigdy nie otwieram osobistej bazy danych keepass na moim laptopie roboczym, bez względu na to, jak wygodne może się to czasami wydawać. Laptop jest dość obciążony codziennymi czynnościami i chociaż wcześniej próbowałem ustalić, jakie są wszystkie usługi działające na laptopie, nie byłem jeszcze w stanie ich wszystkich dopracować. Więc nie mogę i nie ufam wystarczająco, aby otworzyć moją bazę danych keepass. Nazwij mnie paranoikiem, ale wydaje mi się, że jestem w świadomym, szczęśliwym miejscu, jeśli chodzi o bezpieczeństwo mojego hasła.
nanker