Проект Softu2F устарел и больше не поддерживается. Softu2f был создан для поддержки Touch ID для U2F, когда браузеры не поддерживали его, но функциональность теперь доступна на MacOS, используя Touch ID в:
Softu2F имеет несколько проблем совместимости, которые не будут исправлены, поэтому мы рекомендуем переключиться на одну из этих альтернатив.
Спасибо всем, кто использовал Softu2F за эти годы, и особое спасибо Бену Тоусу за написание и поддержание оригинальной реализации!

Soft U2F - это программный аутентикатор U2F для MacOS. Он эмулирует аппаратное устройство HID U2F и выполняет криптографические операции с использованием MacOS для ключей. Этот инструмент работает с Google Chrome/Chromium, Safari, Firefox и встроенными реализациями U2F от Opera.
Мы серьезно относимся к безопасности этого проекта. Сообщите о любых уязвимостях безопасности в программе GitHub Bug Bounty.
Вы можете скачать установщик здесь.
Приложение работает в фоновом режиме. Когда сайт загружен в U2F-совместимый браузер, пытается зарегистрироваться или аутентифицировать с помощью программного токена, вы увидите уведомление с просьбой принять или отклонить запрос. Вы можете экспериментировать на демонстрационном сайте Yubico U2F.
Разгрузить агент запуска
$ launchctl unload ~/Library/LaunchAgents/com.github.SoftU2F.plist
Удалить Плист -Агент -Агент
$ rm ~/Library/LaunchAgents/com.github.SoftU2F.plist
Удалить .app
$ sudo rm -rf /Applications/SoftU2F.app/
Разгрузить расширение ядра (это может сбой, если браузер все еще разговаривает с драйвером. Удаление .kext и перезапуск системы исправят это)
$ sudo kextunload /Library/Extensions/softu2f.kext
Удалить расширение ядра
$ sudo rm -rf /Library/Extensions/softu2f.kext
Скажите MacOS забыть об установке
$ sudo pkgutil --forget com.GitHub.SoftU2F
Сделанный
USB Authenticator сохраняет ключевой материал в оборудовании, тогда как Soft U2F хранит свои клавиши в макосе. Существует аргумент, что более безопасно хранить ключи в оборудовании, поскольку вредоносные программы, работающие на вашем компьютере С другой стороны, вредоносное ПО также может получить доступ к файлам cookie вашего браузера и имеет полный доступ ко всем аутентифицированным сеансам веб -сайтов, независимо от того, где хранятся клавиши U2F.
В случае установки вредоносного ПО, установленного на вашем компьютере, одной значимой разницей между аппаратным и программным хранилищем ключей для U2F является продолжительность компромисса. С помощью Hardware Key Storage вы будете скомпрометированы только в то время как вредоносное ПО работает на вашем компьютере. Благодаря хранилищу программного обеспечения, вы можете продолжать скомпрометироваться, даже после того, как вредоносное ПО было удалено.
Некоторые люди могут решить, что приведенный выше сценарий атаки стоит компромисса для использования аппаратного хранилища ключей. Но для многих безопасность программного U2F является достаточной и помогает смягчить многие общие атаки, такие как дампы паролей, атаки грубой силы и эксплуатации, связанные с фишингом.
У вас должен быть установлен инструменты командной строки XCode для создания этого проекта.
# Install Commaned Line Tools
xcode-select --install
# Build softu2f.kext and SoftU2F.app.
script/buildЕсть две части для мягкого U2F: драйвер и приложение. Чтобы использовать модифицированную версию драйвера, вы должны отключить защиту целостности системы. Приложение может быть изменено и запускается через XCode нормально.
Каждый веб-сайт, использующий U2F, имеет приложение. Например, приложение демо-демо-страницы Yubico U2F является https://demo.yubico.com . Когда низкоуровневый U2F Authenticator получает запрос на регистрацию/аутентификацию веб-сайта, он не получает дружественную строку приложения. Вместо этого он получает диварию SHA256 от App-ID. Чтобы иметь возможность показать полезное сообщение о предупреждении, когда веб-сайт пытается зарегистрировать/аутентифицировать, в этом хранилище поддерживается список Digests App-ID. Вы можете найти список здесь. Если в этом списке отсутствует идентификатор приложения вашей компании, откройте запрос на привлечение, чтобы добавить его.
Этот проект лицензирован MIT, за исключением файлов в /inc , которые включены в их собственные лицензии.