Обсуждение: приложение Encryption for Password Keeper для Android - PullRequest
1 голос
/ 17 октября 2011

На днях Google уведомил меня о том, что моя учетная запись Gmail может быть взломана, так как к ней обращались два IP-адреса из необычных мест. Поскольку я обычно (и глупо) использую один и тот же пароль для каждого сайта, я решил изменить положение вещей и использовать разные пароли.

Будучи разработчиком Android, я решил начать разработку приложения для хранения паролей, для которого я могу хранить свои имена пользователей и пароли, так как сложно запомнить разные пароли. Я не хочу идти по простому маршруту и ​​загрузить существующее стороннее приложение для хранения паролей.

Это заставило меня задуматься, как лучше защитить имена пользователей и пароли в моем приложении? В настоящее время мне требуется пароль для просмотра списка учетных записей, которые могут быть добавлены. Я также храню имена пользователей и пароли в базе данных. Однако, похоже, что Android не может зашифровать базу данных. Я мог бы зашифровать значения, которые я храню в базе данных, но если кто-то заполучит мой телефон, он может узнать шифрование, если действительно захочет. Или я мог бы использовать сервер для шифрования / дешифрования, но тогда у вас есть сервер, который необходимо обслуживать и который может быть взломан.

Я хотел бы получить некоторые мнения по этой теме. Несмотря на то, что я знаю, что совершенства невозможно достичь, какой метод лучше всего реализовать для моего приложения для Android?

Ответы [ 2 ]

2 голосов
/ 17 октября 2011

взгляните на приложение 1password это, вероятно, лучшее приложение для хранения паролей на рынке.Их философия заключается в том, что они хранят все ваши пароли за 128-битным шифрованием, где вы используете свой пароль 1password. Кроме того, все пароли веб-сайтов представляют собой случайно сгенерированные буквенно-цифровые строки.Так что на самом деле шансов на столкновение нет, и вы в безопасности, где бы вы ни находились.

Вы не должны использовать сервер, который просто означает, что люди могут предполагать, что их пароли где-то сидят, и если вы хороший разработчик приложений, пароли на сервере будут такими же безопасными, как если бы вы хранили их на стороне клиента..

Что касается выяснения шифрования, если они «действительно хотят», то это действительно зависит от пользователя, выбирающего один пароль, которым они вводят всю свою информацию.Да, можно взломать шифрование с помощью грубой силы, но если пользователь выберет буквенно-цифровую строку, не входящую в словарь, вероятность проникновения почти невозможна.Кроме того, если вы все правильно шифруете, они не могут просто «сломать» шифрование.

Последнее только потому, что я могу

To anyone who understands information theory and security and is in an infuriating argument with someone who does not (possibly involving mixed case), I sincerely apologize.

Кредиты XKCD

2 голосов
/ 17 октября 2011

Вы, безусловно, будете требовать, чтобы пользователь предоставлял PIN-код или пароль каждый раз, когда он хочет добавить / просмотреть список паролей, верно?Почему бы не использовать его в качестве ключа шифрования, что означает, что если кто-то получит ваш телефон, он все равно не сможет получить доступ или расшифровать пароли, не зная пользовательский ключ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...