Да, я знаю про OpenID, разговор не про то.
Основные пункты мысли:
- Брелки:
- Приватный ключ храним на usb-брелке с невозможностью доставания (нет, не в фс), (про него все знают, см Rutoken и eToken), такие под линуксом работают. Пока что такие используются банками.
- Брелки должны появится в свободной продаже (справки не наводил).
- Брелки должны иметь встроенный флэш-диск хотя бы метров на 128 (копейки), дальше — от желания пользователя. Такие есть, пример: Rutoken Flash, eToken Flash, в Linux работают.
- Доступ к встроенному диску может быть защищён паролем (или можно, введя пароль к данным, подписывать компьютеры на право доступа к данным без пароля).
- Пользователи:
- Вход в систему осуществляется автоматически через PAM при вставлении нового ключа. Предупреждение выхода — при вытаскивании. Для этого надо допилить все/какие-то из DM на предмет логина через PAM.
- При вставлении нового ключа при уже имеющемся — спрашиваем, хотим ли мы их объединить (принимать второй в качестве авторизации альтернативно/вместе).Для этого нужно допилить DE, или сделать какой-то универсальный user-демон.
- Диск служит хранилищем настроек, сеансов, и некоторых из папкок с данными в домашнем разделе. Грубо говоря — хомяк синхронизируется с диском, при этом на папках должна быть иконка синхронизирован/нет. Настройки становятся синхронизироваными автоматически, папки с данными отмечаются как таковые при запросу, кэш не синхронизируем никогда. Для этого надо допилить приложения на предмет соответсвия последнему XDG. И опять же, DE или демон.
- Система может быть настроена так (галка на видном месте), что при вставлении неизвестного брелка создавался новый пользователь (логин и настройки хранятся на том же встроенном в брелок диске). После вытаскивания брелка — удалять пользователя по желанию пользователя или принудительно (в зависимости от настроек системы). Это позволит сидеть со своего окружения из гостей, без разных уходов в облака. Нужно допилить DM с добавлением пользователей. Тут вопрос по поводу доверия данных конкретной систему, на этот случай можно заводить два брелка: публичный (для шастания по библиотекам и отелям) и личный (для дома, друзей, и близких родственников). Можно ключи совместить в одну железку с выбором/вводом разных паролей.
- Если какие-то программы или выбранный пользователем DE не стоят — проблема не критична, это опять же проблемы настроек компьютера.
- Сайты, сервисы, аккаунты.
- Да, пароли можно хранить в бумажнике на встроенном диске, но это — очень плохой выход, особенно если таскаться с ним по библиотекам.
- Тут мы вспоминаем, что наш брелок — ключ. Встраиваем в браузеры механизм авторизации с использованием ключа и мастер-пароля, которым ключ подписывается. (См. он-лайн системы банков). Эта система должна быть альтернативной к обычному входу (как OpenID), и, если сайт, браузер, и компьютер поддерживают, а брелок вставлен — должна работать вместо обычной авторизации.
- Такая же система с почтовыми, IM-клиентами и всем остальным. Тоже нужна поддержка в приложениях.
- DE, помимо описанного выше.
- Должна быть возможность таскать сеансы. Это может быть реализовано через уже имеющееся сохранение сеанса при выходе (настройки-то с собой).
Можно разделить внутренние ключи в железке по группам: хомяк/аккаунты/банки, тогда будет три разных пароля. Для получения данных хомяка — надо ввести пароль от зашифрованного раздела. Для авторизации из банков нужно ввести пароль, чтобы подписать ключ токена. Совсем без пароля хранятся только публичные настройки окружения.
Выгоды очевидны. Критикуйте.