- Password Store
- Password store android настройка
- Password store android настройка
- Используем passwordstore.org — менеджер паролей в стиле KISS
- Что это такое и как оно работает
- Создание секретного ключа
- Генерация мастер-пароля
- Интеграция gpg, git и github
- Интеграция gpg и git (linux)
- Интеграция gpg и git (Windows)
- Настройка git
- Бэкап секретного ключа
- Использование (go)pass
- Интеграция с браузером
- TOTP-ключи
- Интеграция с Android
- Заключение
Password Store
Password Store — Простой, но в то же время весьма гибкий и удобный менеджер паролей, использующий надёжный и стойкий алгоритм шифрования.
Особенности:
- Синхронизация паролей с GIT-репозиторием, к примеру — GitHub;
- Теперь, наконец-то, можно воспользоваться генератором паролей, тыкнув на поле для ввода пароля в каком-то приложении и после генерации этот пароль будет уже сохранен;
- Встроенный гибкий генератор паролей;
- Добавлен генератор Xkpasswd с поддержкой «вордлистов»;
- Встроенный генератор пары ключей SSH (алгоритмы шифрования RSA/ECDSA/ED25519);
- Биометрическая аутентификация (если имеется сканер отпечатка пальца);
- Папки можно использовать как категории (1-й скриншот в верхнем спойлере);
- Возможность настроить таймер очистки буфера обмена после копирования расшифрованного пароля;
- По идее, можно хранить не только пароли, но и любую другую текстовую информацию;
- Возможность экспорта паролей для переноса;
- Совместим с проектом «pass» для *nix-систем ( ссылка );
- Интеграция в «Специальные возможности»;
- Открытый исходный код(!).
Для тех, у кого ещё нет Openkeychain
Разработчик: Harsh Shandilya
Платформа: Android 6.0 и выше
Язык интерфейса: Русский (RUS)
Состояние: Free (Бесплатно)
Root: Не нужен
Источник
Password store android настройка
Краткое описание:
Менеджер паролей, использующий технологию шифрования OpenPGP.
-> Описание стандарта тут
Описание:
Простой, но в то же время весьма гибкий и удобный менеджер паролей, использующий надёжный и стойкий алгоритм шифрования.
Плюсы и возможности:
- Синхронизация паролей с GIT-репозиторием, к примеру — GitHub;
- Теперь, наконец-то, можно воспользоваться генератором паролей, тыкнув на поле для ввода пароля в каком-то приложении и после генерации этот пароль будет уже сохранен;
- Встроенный гибкий генератор паролей;
- Добавлен генератор Xkpasswd с поддержкой «вордлистов»;
- Встроенный генератор пары ключей SSH (алгоритмы шифрования RSA/ECDSA/ED25519);
- Биометрическая аутентификация (если имеется сканер отпечатка пальца);
- Папки можно использовать как категории (1-й скриншот в верхнем спойлере);
- Возможность настроить таймер очистки буфера обмена после копирования расшифрованного пароля;
- По идее, можно хранить не только пароли, но и любую другую текстовую информацию;
- Возможность экспорта паролей для переноса;
- Совместим с проектом «pass» для *nix-систем (ссылка);
- Интеграция в «Специальные возможности»;
- Открытый исходный код(!).
Требуется Android: 4.1 и выше
Русский интерфейс: есть
Разработчик: Zeapo Productivity, Harsh Shandilya
Контакты: [email protected] | [email protected]
Веб-сайт: GitHub
История изменений: GitHub
Google Play: ссылка
Google Play (legacy): удалён, больше не публикуется
F-Droid: ссылка
:secret: Экспорт:
Перенос базы из KeePass в PasswordStore описаны в этом и в этом посте.
:victory: Скачать 1.13.5: GooglePlay
Для тех, у кого ещё нет Openkeychain Обязательно ознакомиться перед использованием!
Следующая информация может быть полезна/интересна таким людям, которые очень опасаются за утечку данных, но не могут до конца разобраться, как это все работает и при каких случаях действительно нужно «нервничать», а при каких — проходить мимо.
Приложение хоть и использует одну из надежных технологий защиты информации, однако расслабляться не стоит. Ниже приведу некоторые примеры, которые заметил сам, а некоторые носят лишь предостерегающий характер.
- Не оставляйте Password Store в памяти.
Меню недавних приложений всем знакомо. Дело в том, что после того, как Вы разблокировали и скопировали пароль — процесс остается работать и даже после того, как Вы уже очистите пароль из шторки (OpenKeychain) — откройте меню недавних приложений и выберите Password Store. И. пароль виден. Конечно же, остальные пароли уже не будут видны, но все равно 1, да виден.
-> Решение: после успешного копирования и вставки пароля -> меню недавних приложений — уберите Password Store или добавьте это приложение в список исключений (завершать при закрытии или что-то типа того).
UPD: на телефонах Xiaomi есть функция «Рабочий стол -> Размывать миниатюры». Отметьте там галочку напротив Password Store и в меню недавних приложений больше не будет видно содержимого окна.
Измените значение таймера очистки буфера обмена.
По умолчанию стоит значение 45, т.е., через 45 секунд после копирования пароля в буфер обмена он будет оттуда «вычищен» (и то на старых версиях андроида это не всегда работает, например, на телефонах LG с их «мульти-буфером обмена»). В целях безопасности рекомендую установить таймер на значение ≈15-20 секунд. Этого времени вполне предостаточно, чтобы вы открыли нужное приложение, затем вставили этот пароль в поле и продолжили свои дела (или ввели вручную), а к тому времени в буфере его уже не будет. Начиная с версии 1.3.3 функция в специальных возможностях «автозаполнение» работает уже гораздо стабильнее. Поэтому лучше воспользоваться специальными возможностями, чем вручную все копировать и закрывать.
Не оставляйте расшифрованный ключ в памяти надолго.
Пользователи, использующие OpenKeychain знают, что при разблокировке ключа можно поставить эдакий таймер, который через определённое кол-во времени этот ключ сбросит. Ленивые ставят пункт «до очистки», чего ооооочень не советую делать. Если Вам требуется лишь скопировать пароль один-два, то пункта «до выключения экрана» вам хватит вполне.
Делайте бекап своего ключа (в OpenKeychain) и паролей (в PasswordStore) (!)
За отсутствие бекапов надо платить.
Понятное дело, что люди, которые записывают свои пароли в какие-нибудь хранилища или базы — попросту заносят туда все пароли, от чего у них только есть (почта, соц сети и т.д.). Соответственно, если Вы потеряете телефон/перепрошьете его/обнулите и при этом не имеете никакого бекапа ключей и/или паролей — ждите беды. Чтобы этого избежать — в OpenKeychain сделайте резервную копию своего ключа, с помощью которого и шифровали пароли. Потеряете ключ — останетесь без паролей. Совсем.
В приложении предусмотрено 2 варианта «бекапа» паролей — локальный и отправка на git-репозиторий.
И пробежимся немного по очевидным вопросам, которые могут возникнуть.
Может ли кто украсть мои пароли прямо с телефона?
Технически — да, практически — нет.
Даже если ваш телефон будет заражен каким-нибудь вирусом, который (не факт!) будет отгружать эти пароли на какой-нибудь сервер, человек, получивший ваши записи их попросту не откроет.
Настоятельно рекомендуется использовать клавиатуру без(!) буфера обмена, например, Hacker’s Keyboard.
Источник
Password store android настройка
Краткое описание:
Менеджер паролей, использующий технологию шифрования OpenPGP.
-> Описание стандарта тут
Описание:
Простой, но в то же время весьма гибкий и удобный менеджер паролей, использующий надёжный и стойкий алгоритм шифрования.
Плюсы и возможности:
- Синхронизация паролей с GIT-репозиторием, к примеру — GitHub;
- Теперь, наконец-то, можно воспользоваться генератором паролей, тыкнув на поле для ввода пароля в каком-то приложении и после генерации этот пароль будет уже сохранен;
- Встроенный гибкий генератор паролей;
- Добавлен генератор Xkpasswd с поддержкой «вордлистов»;
- Встроенный генератор пары ключей SSH (алгоритмы шифрования RSA/ECDSA/ED25519);
- Биометрическая аутентификация (если имеется сканер отпечатка пальца);
- Папки можно использовать как категории (1-й скриншот в верхнем спойлере);
- Возможность настроить таймер очистки буфера обмена после копирования расшифрованного пароля;
- По идее, можно хранить не только пароли, но и любую другую текстовую информацию;
- Возможность экспорта паролей для переноса;
- Совместим с проектом «pass» для *nix-систем (ссылка);
- Интеграция в «Специальные возможности»;
- Открытый исходный код(!).
Требуется Android: 4.1 и выше
Русский интерфейс: есть
Разработчик: Zeapo Productivity, Harsh Shandilya
Контакты: [email protected] | [email protected]
Веб-сайт: GitHub
История изменений: GitHub
Google Play: ссылка
Google Play (legacy): удалён, больше не публикуется
F-Droid: ссылка
:secret: Экспорт:
Перенос базы из KeePass в PasswordStore описаны в этом и в этом посте.
:victory: Скачать 1.13.5: GooglePlay
Для тех, у кого ещё нет Openkeychain Обязательно ознакомиться перед использованием!
Следующая информация может быть полезна/интересна таким людям, которые очень опасаются за утечку данных, но не могут до конца разобраться, как это все работает и при каких случаях действительно нужно «нервничать», а при каких — проходить мимо.
Приложение хоть и использует одну из надежных технологий защиты информации, однако расслабляться не стоит. Ниже приведу некоторые примеры, которые заметил сам, а некоторые носят лишь предостерегающий характер.
- Не оставляйте Password Store в памяти.
Меню недавних приложений всем знакомо. Дело в том, что после того, как Вы разблокировали и скопировали пароль — процесс остается работать и даже после того, как Вы уже очистите пароль из шторки (OpenKeychain) — откройте меню недавних приложений и выберите Password Store. И. пароль виден. Конечно же, остальные пароли уже не будут видны, но все равно 1, да виден.
-> Решение: после успешного копирования и вставки пароля -> меню недавних приложений — уберите Password Store или добавьте это приложение в список исключений (завершать при закрытии или что-то типа того).
UPD: на телефонах Xiaomi есть функция «Рабочий стол -> Размывать миниатюры». Отметьте там галочку напротив Password Store и в меню недавних приложений больше не будет видно содержимого окна.
Измените значение таймера очистки буфера обмена.
По умолчанию стоит значение 45, т.е., через 45 секунд после копирования пароля в буфер обмена он будет оттуда «вычищен» (и то на старых версиях андроида это не всегда работает, например, на телефонах LG с их «мульти-буфером обмена»). В целях безопасности рекомендую установить таймер на значение ≈15-20 секунд. Этого времени вполне предостаточно, чтобы вы открыли нужное приложение, затем вставили этот пароль в поле и продолжили свои дела (или ввели вручную), а к тому времени в буфере его уже не будет. Начиная с версии 1.3.3 функция в специальных возможностях «автозаполнение» работает уже гораздо стабильнее. Поэтому лучше воспользоваться специальными возможностями, чем вручную все копировать и закрывать.
Не оставляйте расшифрованный ключ в памяти надолго.
Пользователи, использующие OpenKeychain знают, что при разблокировке ключа можно поставить эдакий таймер, который через определённое кол-во времени этот ключ сбросит. Ленивые ставят пункт «до очистки», чего ооооочень не советую делать. Если Вам требуется лишь скопировать пароль один-два, то пункта «до выключения экрана» вам хватит вполне.
Делайте бекап своего ключа (в OpenKeychain) и паролей (в PasswordStore) (!)
За отсутствие бекапов надо платить.
Понятное дело, что люди, которые записывают свои пароли в какие-нибудь хранилища или базы — попросту заносят туда все пароли, от чего у них только есть (почта, соц сети и т.д.). Соответственно, если Вы потеряете телефон/перепрошьете его/обнулите и при этом не имеете никакого бекапа ключей и/или паролей — ждите беды. Чтобы этого избежать — в OpenKeychain сделайте резервную копию своего ключа, с помощью которого и шифровали пароли. Потеряете ключ — останетесь без паролей. Совсем.
В приложении предусмотрено 2 варианта «бекапа» паролей — локальный и отправка на git-репозиторий.
И пробежимся немного по очевидным вопросам, которые могут возникнуть.
Может ли кто украсть мои пароли прямо с телефона?
Технически — да, практически — нет.
Даже если ваш телефон будет заражен каким-нибудь вирусом, который (не факт!) будет отгружать эти пароли на какой-нибудь сервер, человек, получивший ваши записи их попросту не откроет.
Настоятельно рекомендуется использовать клавиатуру без(!) буфера обмена, например, Hacker’s Keyboard.
Источник
Используем passwordstore.org — менеджер паролей в стиле KISS
Всем привет. В этой статье я хотел бы поделиться своим опытом настройки и использования pass — менеджера паролей для Linux и не только, примечательного своей простотой, использованием уже присутствующих в системе инструментов и возможностью работать исключительно из консоли. Конкретнее, будут затронуты проблемы, связанные с генерацией и хранением секретного ключа gpg, а также с настройкой совместной работы pass, gpg, git, github и браузера. Всё — под Linux, Windows и Android.
Что это такое и как оно работает
Технически pass является очень простой обвязкой над GnuPG и git, написанной на bash. Каждый пароль (и сопутствующая ему информация, например логин) хранится в зашифрованном файле. Поиск нужного пароля осуществляется по имени файла, шифрование — при помощи GnuPG, синхронизация между устройствами — при помощи git.
Кроме оригинального pass есть еще два совместимых с ним популярных проекта, работающих и под Windows:
- QtPass. GUI-приложение, написанное, как нетрудно догадаться, на Qt.
- Gopass. Приложение для командной строки, написанное на go. Под Windows я пользуюсь именно им. Однако, на мой взгляд, разработчики начали добавлять туда слишком много лишних фич, при этом отказываясь от интуитивности.
Разработчик pass — Джейсон Доненфельд, также являющийся автором WireGuard (реализации VPN на основе современных стандартов криптографии, «work of art по сравнению с OpenVPN и IPSec» по мнению Линуса Торвальдса, которая скорее всего появится в ядре Linux 5.6).
Создание секретного ключа
GnuPG — система для шифрования и электронных подписей. Несмотря на недостатки (вот, например, статья с критикой gpg), она уже больше 20 лет остается де-факто стандартом. Даже статья по ссылке затрудняется назвать альтернативный инструмент для шифрования файлов.
Процесс создания секретного ключа в консоли описан например на habr, но почему бы не сделать это в GUI? В проекте KDE сделали фронтенд для GPG под названием Kleopatra. Пользователи Linux найдут его в репозиториях, а в gpg4win Kleopatra есть из коробки.
В меню выбираем File — New Key Pair — Create a personal OpenPGP key pair .
Вводим имя и email. Не нужно беспокоиться, что в будущем вы их смените. GPG позволяет свободно добавлять к ключу новые uid и удалять существующие. Если хотите подписывать создаваемым ключом свои git-коммиты и видеть плашки «Verified» напротив них, то тут нужно указать реальный email, имеющий статус «подтвержденный» в вашем аккаунте на github.
Далее нажимаем Advanced Settings для настройки параметров ключа.
В разделе Key Material выбираем ECDSA/EdDSA + ECDH . Я предпочитаю использовать не классический алгоритм RSA, а основанные на эллиптических кривых ed25519/cv25519. Их основное преимущество над RSA с точки зрения конечного пользователя — меньший размер ключа при аналогичной криптостойкости. Утверждается, что ключ ed25519 длиной 256 бит примерно такой же стойкий, как ключ RSA длиной 3072 бита. Единственное преимущество последнего — большая распространенность, особенно в аппаратных системах.
В меню еще можно выбрать семейства кривых Brainpool и NIST. Однако вторые подозреваются в наличии бэкдора NSA, и к первым тоже есть небольшие претензии. Поэтому предложенные известным криптографом Даниэлем Бернштейном ed25519 и cv25519 — лучший выбор.
Интересный факт: в активно продвигаемом сейчас стандарте аутентификации FIDO U2F (в разработке которого активно участвовала компания Google) применяются именно кривые NIST. Также, например, в Android Keystore есть их поддержка, но нет поддержки ed25519. Почему так произошло?
В результате будет создано 2 подключа на эллиптических кривых. Один для подписей, другой для шифрования, что нам и нужно. GPG не позволяет использовать один подключ и для того, и для другого, несмотря на то что алгоритмически это возможно (соответствующие функции есть, например, в библиотеке libsodium ).
Если планируете использовать этот ключ для работы с git, то в разделе Certificate Usage нужно отметить пункты Signing и Authentication .
На следующем шаге предлагается придумать пароль, с помощью которого будет защищен ключ. Поскольку ключ будет использоваться для шифрования всех данных в хранилище, этот пароль является мастер-паролем. Стоит подойти к его выбору с особой педантичностью.
Генерация мастер-пароля
Разумеется, всегда можно сгенерировать случайную строку из достаточного (например 20) количества символов. Однако её практически невозможно запомнить и трудно ввести без ошибок, особенно на смартфоне. Поэтому EFF в своем гайде рекомендует вместо этого пользоваться парольными фразами.
Метод работает так: берем достаточно большой словарь (EFF предлагает несколько словарей, например этот) и выбираем из него не менее 6 случайных слов. Выбирать можно как угодно, даже вообще без компьютера при помощи игральной кости или монетки. Такой метод называется diceware. До игральных костей и монеток я еще не дошел, поэтому просто воспользуюсь входящей в состав GNU coreutils утилитой shuf :
Сохраняем эту парольную фразу в надежном месте за пределами компьютера.
В результате будет создан секретный ключ. При работе в консоли часто придётся указывать его fingerprint, стоит записать это число.
Теперь можно настроить интеграцию gpg и git.
Интеграция gpg, git и github
Строго говоря, этот пункт не обязателен. Хранилище паролей pass — это просто каталог с зашифрованными файлами, а значит, его можно синхронизировать как угодно. Google Drive, Яндекс.Диск, и т.д. и т.п. Если не хотите использовать git, то советую обратить внимание на Syncthing. Это программа с открытым исходным кодом, которая требует минимум настроек и передаёт файлы напрямую между устройствами, не храня их на сторонних серверах.
В качестве git-хостинга никто не мешает поднять свой собственный сервер, поставив туда например Gitea, однако это означает затраты на его поддержку и не обязательно гарантирует большие безопасность и надежность. Поэтому я, не гнушаясь пользоваться продуктами фирмы Microsoft, просто создал приватный репозиторий на github.
Стандартный механизм аутентификации в git — с помощью SSH. Обычно подразумевается, что для этого нужен специальный ключ ssh. Однако есть возможность, не плодя лишние сущности, использовать созданный на предыдущем шаге ключ gpg. Чтобы gpg-ключ (точнее, подключ) мог использоваться ssh, должны быть выполнены два условия:
- у него должен быть установлен флаг A — Authenticate;
- его keygrip должен быть прописан в файле
Первый пункт уже выполнен, а получить keygrip можно командой
В выводе gpg нас интересует keygrip подключа ed25519 ( 05B6641E23D720E87EE6A26020BAB214B842F2B7 ).
Теперь можно загрузить публичный ключ на github. Заходим в раздел SSH and GPG keys в профиле и выбираем New SSH key . В консоли набираем
и копируем получившийся публичный ssh-ключ.
Git может подписывать коммиты с помощью gpg, и github это поддерживает. Думаю, это полезная для безопасности фича. Экспортируем публичный ключ gpg командой
и копируем то, что получилось, в форму New GPG key .
Дальнейшие действия специфичны для используемой операционной системы.
Интеграция gpg и git (linux)
Используемый git клиент OpenSSH может получать ключи двумя способами: из каталога
/.ssh и через сокет, созданный демоном ssh-agent . В качестве последнего может выступать gpg-agent , чем мы и воспользуемся. В файле
/.gnupg/gpg-agent.conf нужно прописать строку enable-ssh-support .
Перезапускаем gpg-agent командой
После этого он создаст сокет по адресу
Этот путь (он может зависеть от дистрибутива) надо прописать в переменной окружения $SSH_AUTH_SOCK , и ssh его подхватит. Набираем в консоли команду
и если все прошло успешно, то после ввода мастер-пароля появится сообщение об успешной аутентификации.
Интеграция gpg и git (Windows)
Относительно недавно Microsoft добавила OpenSSH в число доступных для установки компонентов Windows, а также реализовала поддержку сокетов типа AF_UNIX , таких как тот самый SSH_AUTH_SOCK . Тем не менее, Win32-OpenSSH не умеет взаимодействовать с gpg4win, так как до сих пор использует только именованные каналы.
Поэтому придётся установить вечнозелёный Putty. Прописываем в файле
строку enable-putty-support и перезапускаем gpg-agent. После этого он начнет прикидываться Pageant — демоном ключей. В той же папке должен быть расположен и файл sshcontrol .
Чтобы git-клиент начал использовать putty, нужно создать переменную окружения GIT_SSH с путем до plink.exe . Например, у меня это
Кстати насчет git. Обычно устанавливающийся клиент git for windows содержит много ненужного (по крайней мере, ненужного для работы gopass), например собственную реализацию OpenSSH. Однако его разработчики делают и более легкие версии, которые можно скачать на github. Например, там есть в 2 раза меньший по размеру MinGit, а рисковые люди могут попробовать и MinGit-busybox. Версия busybox возникла из-за стремления разработчиков создать git-клиент, использующий api Win32 без прослоек вроде MSYS2. Однако, по их же отзывам, mingit-busybox пока содержит много багов. Подробнее об этих усилиях можно почитать в тикете.
Убеждаемся, что gpg-agent запущен ( gpg-connect-agent /bye ), и проверяем соединение с github:
Настройка git
Здесь ничего необычного. Думаю, команды можно привести без комментариев:
Пункт gpg.program нужен, если gpg нет в PATH .
Бэкап секретного ключа
Секретный ключ стоит хранить так же надежно, как и парольную фразу, то есть за пределами компьютера. Можно просто распечатать длинную последовательность чисел, но распознавать её или вводить с клавиатуры — занятие не для слабонервных. Поэтому я предпочитаю генерировать QR-код, который легко отсканировать любым смартфоном. Для этого есть специальная программа qrencode . Генерация картинки с QR-кодом выполняется так:
Разумеется, чем меньше ненужной информации в бэкапе, тем лучше. Здесь очень кстати приходится небольшой размер ключа ed25519. Спасибо Даниэлю Бернштейну!
Существует специальная утилита paperkey, позволяющая сократить объем данных до предела. Ценой сокращения является то, что секретный ключ из такого бэкапа можно будет восстановить только при наличии публичного. В экосистеме GPG есть специальные сервера для хранения публичных ключей, почитать про них и не только можно в статье https://eax.me/gpg/.
Бэкап paperkey создается следующим образом:
Второе правило бэкапера: бэкап не существует, пока не подтверждена возможность восстановить из него данные. Поэтому проводим стресс-тест. Удаляем секретный ключ командой
Затем сканируем QR-код и импортируем ключ обратно в GPG. В качестве сканера QR-кодов под Android мне нравится BinaryEye, свободная программа с удобным интерфейсом. На картинке ниже — бэкап секретного ключа из этой статьи.
Надеюсь, вы нигде не будете использовать этот ключ. Он создан только для иллюстрации.
Если все работает, то можно двигаться дальше.
Использование (go)pass
Теперь, когда у нас есть надежно сохраненный и защищенный секретный ключ, а также работающая интеграция с git, можно начинать пользоваться собственно pass. Я предпочитаю gopass, так как эта альтернативная обвязка работает под Windows.
Инициализируем хранилище паролей командой
и выбираем из списка нужный секретный ключ.
Работа с git происходит так же, как в случае с обычным репозиторием, только в командной строке надо дописывать (go)pass . Инициализируем репозиторий и добавляем туда нужный origin:
Адрес можно узнать на странице репозитория на github, нажав кнопку Clone or download .
В gopass есть специфичная команда
выполняющая и git pull , и git push , то есть полную синхронизацию.
Хранилище по умолчанию создается в папке
/.password-store , но можно указать и свой путь.
Для работы с паролями в консоли поддерживаются команды ls, cp, mv, search, create, и т.п. Полный список можно получить, набрав gopass —help , но лично я 95% времени пользуюсь не консолью, а плагином для браузера.
Интеграция с браузером
Плагин для браузера называется gopass bridge, его можно найти в сторах Chrome и Firefox (см. ссылку).
Для связи плагина с собственно gopass понадобятся вспомогательный скрипт и манифест для native messaging. Они создаются командой
которая предложит нам выбрать браузер и расположение скрипта.
Проверяем, как все работает. Создаем новый пароль:
отвечаем на все вопросы и сохраняем. GPG предложит ввести мастер-пароль для работы с секретным ключoм.
Теперь открываем меню плагина с характерным голубым сусликом, и если все прошло успешно, то мы сможем найти там свой пароль.
TOTP-ключи
Лично я пользуюсь FreeOTP, однако с этими ключами можно работать и с помощью pass. Пользователям оригинального pass надо установить расширение pass-otp, а в gopass и APS (см. ниже) нужные функции есть из коробки.
Чтобы добавить TOTP-ключ в хранилище паролей при помощи pass-otp, получаем URL (начинающийся с otpauth:// ) и вводим команду
Можно ли будет назвать двухфакторной получившуюся аутентификацию — спорный вопрос. Разработчики KeePassXC рекомендуют хранить TOTP-ключи в отдельной базе данных, защищенной другим паролем. В pass так тоже можно сделать.
Интеграция с Android
Реализация GnuPG под Android называется OpenKeychain. Для её настройки достаточно зайти в меню «управление ключами» и импортировать ранее созданный секретный ключ. Единственный недостаток OpenKeychain лично для меня — нет разблокировки по отпечатку пальца.
Реализация pass под Android называется android-password-store, или просто APS.
Устанавливаем и запускаем APS. Прежде чем синхронизировать хранилище паролей, заходим в меню «Настройки». Там нам понадобятся следующие пункты:
- Настройки сервера git . Получившийся URL должен быть таким же, какой указан на странице репозитория на github. Тип авторизации — OpenKeychain .
- Git utils . В этом разделе указываем username и email из ключа gpg.
- Провайдер OpenPGP . Выбираем OpenKeychain .
- Автозаполнение . Эта совсем недавно появившаяся фича включает заполнение паролей в приложениях на Android 8.0+.
На заметку пользователям смартфонов Huawei, да и всем остальным тоже: OpenKeychain, APS, BinaryEye, FreeOTP, а также Syncthing, Telegram, Tachiyomi, KDE Connect и много чего еще доступны в F-Droid. Пользователи Google Play должны это оценить: каталог ПО, в котором нет рекламы, руткитов, и просто мусорного софта из известной статьи tonsky.
До появления автозаполнения в APS я пользовался keepass2android. Её нет в F-Droid по оригинальной причине: она написана на Xamarin, но мейнтейнеры F-Droid вот уже 9 месяцев как не могут установить этот фреймворк на свой сборочный сервер. Кто-нибудь, сделайте что-нибудь.
Теперь можно клонировать. Выбираем на главном экране «клонировать с сервера», указываем желаемое расположение хранилища, проверяем настройки git.
Если попытка работы с git приведет к ошибке (это было вероятно в предыдущих релизах APS из-за использования устаревшей версии библиотеки jgit от проекта Eclipse), то по-прежнему есть Syncthing.
Заключение
Конечно, pass не так просто настроить. Однако за эту цену покупается уверенность, что используемые нами (а также людьми вроде Линуса Торвальдса или Эдварда Сноудена) инструменты в один прекрасный момент не будут объявлены устаревшими, не сменят формат данных и не окажутся без поддержки. А если и окажутся, то простая модульная архитектура pass поощряет создание каких угодно альтернативных клиентов и расширений.
Если вы решите не использовать pass, то, надеюсь, некоторые упомянутые в статье программы окажутся вам полезными и сами по себе.
Источник