Java Keystore - Где хранить "Мастер-пароль"?

Я разрабатываю приложение Java Swing, которое должно хранить пароли на удаленных серверах. Я решил использовать KeyStore для этого.

Я сохраняю каждый пароль под псевдонимом/Главным паролем и извлекаю их с помощью одного и того же пароля/пароля.

Мой вопрос:

Где должен храниться главный пароль?

Это не дешевая попытка парадокса, но серьезный вопрос, и мне интересно узнать, как эта проблема может быть решена.

У меня нет никакого реального опыта в этой области, и любая помощь будет оценена по достоинству.

2 ответа

Я сохраняю каждый пароль под псевдонимом/Главным паролем и извлекаю их с помощью одного и того же пароля/пароля.

Здесь есть недоразумение. Хранилище ключей представляет собой контейнер для ваших личных учетных данных и доверенных сертификатов, а не только некоторую общую базу данных/хэш-таблицу для хранения паролей.

Лучший подход - сохранить хэш пароля в базе данных.

Где должен храниться главный пароль?

Это очень распространенная проблема, которая возникает очень часто. Просто сохраните его в своем исходном коде, который, да, можно декомпилировать, но делегируйте ответственность перед пользователем, чтобы его учетная запись была приватной, чтобы эти файлы не были украдены/проверены, например, через декомпилятор


Главный пароль должен либо:

  • быть предоставленным онлайн пользователем
  • или храниться в зашифрованном виде с помощью пароля пользователя. Этот последний должен быть проинформирован пользователем пользователем.

licensed under cc by-sa 3.0 with attribution.