Le projet Softu2f est obsolète et n'est plus pris en charge. Softu2f a été créé pour prendre en charge Touch ID pour U2F lorsque les navigateurs ne l'ont pas pris en charge, mais la fonctionnalité est désormais disponible sur macOS à l'aide de Touch ID dans:
Softu2f a plusieurs problèmes de compatibilité qui ne seront pas résolus, nous vous recommandons donc de passer à l'une de ces alternatives.
Merci à tous ceux qui ont utilisé Softu2F au fil des ans, et un merci spécial à Ben Toews pour avoir écrit et maintenu la mise en œuvre originale!

Soft U2F est un logiciel U2F Authenticator pour MacOS. Il émule un périphérique HID U2F matériel et effectue des opérations cryptographiques à l'aide du clés macOS. Cet outil fonctionne avec Google Chrome / Chromium, Safari, Firefox et les implémentations U2F intégrées d'Opera.
Nous prenons au sérieux la sécurité de ce projet. Signalez toutes les vulnérabilités de sécurité au programme GitHub Bug Bounty.
Vous pouvez télécharger l'installateur ici.
L'application s'exécute en arrière-plan. Lorsqu'un site chargé dans un navigateur compatible U2F tente de s'inscrire ou de s'authentifier avec le jeton logiciel, vous verrez une notification vous demandant d'accepter ou de rejeter la demande. Vous pouvez expérimenter sur le site de démonstration U2F de YuBico.
Déchargez l'agent Launchd
$ launchctl unload ~/Library/LaunchAgents/com.github.SoftU2F.plist
Supprimer l'agent de lancement PLIST
$ rm ~/Library/LaunchAgents/com.github.SoftU2F.plist
Supprimer le .app
$ sudo rm -rf /Applications/SoftU2F.app/
Déchargez l'extension du noyau (cela peut échouer si un navigateur parle toujours au pilote. La suppression du .kext et le redémarrage du système corrigeront ceci)
$ sudo kextunload /Library/Extensions/softu2f.kext
Supprimer l'extension du noyau
$ sudo rm -rf /Library/Extensions/softu2f.kext
Dites à macOS d'oublier l'installation
$ sudo pkgutil --forget com.GitHub.SoftU2F
Fait
Un authentificateur USB stocke le matériau clé dans le matériel, tandis que Soft U2F stocke ses clés dans le trousseau macOS. Il y a un argument à faire valoir qu'il est plus sécurisé de stocker des clés dans le matériel, car le malware exécuté sur votre ordinateur peut accéder au contenu de votre trousseau mais ne peut pas exporter le contenu d'un authentificateur matériel. D'un autre côté, les logiciels malveillants peuvent également accéder aux cookies de votre navigateur et ont un accès complet à toutes les sessions de sites Web authentifiées, quel que soit l'endroit où les clés U2F sont stockées.
Dans le cas des logiciels malveillants installés sur votre ordinateur, une différence significative entre le matériel et le stockage des clés logicielles pour U2F est la durée du compromis. Avec le stockage de la clé matérielle, vous n'êtes compromis que pendant que le malware s'exécute sur votre ordinateur. Avec le stockage des clés logicielles, vous pouvez continuer à être compromis, même après la suppression du malware.
Certaines personnes peuvent décider du scénario d'attaque ci-dessus vaut le compromis de convivialité du stockage des clés matériels. Mais, pour beaucoup, la sécurité de U2F basée sur un logiciel est suffisante et aide à atténuer de nombreuses attaques courantes telles que les vidages de mot de passe, les attaques de force brute et les exploits liés au phishing.
Vous devez installer des outils de ligne de commande Xcode pour créer ce projet.
# Install Commaned Line Tools
xcode-select --install
# Build softu2f.kext and SoftU2F.app.
script/buildIl y a deux parties à Soft U2F: le pilote et l'application. Pour utiliser une version modifiée du pilote, vous devez désactiver la protection de l'intégrité du système. L'application peut être modifiée et exécutée via Xcode normalement.
Chaque site Web utilisant U2F a un APP-ID. Par exemple, l'application de la page de démonstration U2F de YuBico est https://demo.yubico.com . Lorsque l'authentificateur U2F de bas niveau reçoit une demande pour enregistrer / authentifier un site Web, il ne reçoit pas la chaîne APP-ID amicale. Au lieu de cela, il reçoit un digest Sha256 de l'APP-ID. Pour pouvoir afficher un message d'alerte utile lorsqu'un site Web essaie de s'inscrire / d'authentifier, une liste des digests App-ID est maintenue dans ce référentiel. Vous pouvez trouver la liste ici. Si l'application de votre entreprise est absente de cette liste, ouvrez une demande de traction pour l'ajouter.
Ce projet est sous licence MIT, à l'exception des fichiers dans /inc , qui sont inclus avec leurs propres licences.