Проект Kryptonite развивает систему хранения закрытых ключей SSH на смартфоне
4 мая 2017 года
Представлен (Архивная копия от 22 мая 2017 на Wayback Machine) проект Kryptonite, предлагающий хранить закрытые ключи SSH на смартфоне, вместо размещения в файле ~/.ssh/id_rsa. Kryptonite состоит из двух частей - ssh-агента, запускаемого на стороне рабочих станций, и мобильного приложения для Android и iOS, занимающегося хранением ключей. Агент написан на языке Go и распространяется в исходных текстах, но лицензия на код пока не определена.
Kryptonite может рассматриваться как подобие двухфакторной аутентификации для доступа к SSH-ключам. Все операции с ключами выполняются на смартфоне, а размещаемый на локальной системе агент лишь получает результат операции, выполненной на стороне смартфона с закрытым ключом. На локальной системе ключи не фигурируют ни в каком виде. Каждая операция с ключом требует явного подтверждения на смартфоне.
Так как ключи хранятся отдельно, они не привязаны к локальным системам и один ключ можно использовать с разных компьютеров. С точки зрения безопасности, с одной стороны появляется лишнее звено в виде смартфона, но с другой стороны исчезает возможность утечки ключей из локальной ФС рабочей станции в случае компрометации пользовательских приложений (например, эксплуатации уязвимости в браузере). Весь обмен данными между ssh-агентом и мобильным приложением передаётся в зашифрованном виде, для шифрования и аутентификации используется библиотека libsodium.
Процесс работы с Kryptonite выглядит следующим образом: На локальных системах устанавливается пакет с ssh-агентом kr, а на смартфоны специальное приложение. Далее запускается процесс сопряжения мобильного приложения и рабочих станций пользователя. Сопряжение сводится к выполнению в терминале на рабочей станции команды "kr pair", которая приводит к отображению QR-кода. Пользователь фотографирует мобильным приложением этот QR-код, после чего Kryptonite генерирует пару SSH-ключей, сессионные ключи для аутентификации рабочей станции и устанавливает канал связи с агентом. Обмен данными между агентом и смартфоном может производиться(недоступная ссылка) по Bluetooth или шифрованному каналу поверх TCP/IP (применяются сервисы AWS SQS и AWS SNS). Далее при каждом использовании SSH на сопряжённой рабочей станции на смартфоне выводится уведомление и требование подтвердить вход.
На смартфоне в iOS ключ хранится в iOS Keychain и генерируется на базе 4096-разрядных ключей RSA в реализации Apple iOS Security Framework или на базе Ed25519 в реализации libsodium. В Android ключи сохраняются в аппаратно изолированном хранилище ключей
Источники
править- Главная ссылка к новости (https://blog.krypt.co/the-end-...) (Архивная копия от 22 мая 2017 на Wayback Machine)
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.