Das Softu2F -Projekt ist veraltet und nicht mehr unterstützt. Softu2F wurde erstellt, um die Touch -ID für U2F zu unterstützen, wenn Browser sie nicht unterstützten, aber die Funktionalität ist jetzt auf macOS mit Touch ID in:
Softu2f hat mehrere Kompatibilitätsprobleme, die nicht behoben werden. Wir empfehlen daher, auf eine dieser Alternativen umzusteigen.
Vielen Dank an alle, die Softu2f im Laufe der Jahre benutzt haben, und besonders bei Ben Toews für das Schreiben und Aufrechterhalten der ursprünglichen Implementierung!

Soft U2F ist ein Software -U2F -Authentikator für macOS. Es emuliert ein Hardware -U2F -HID -Gerät und führt kryptografische Operationen mithilfe der MacOS -Schlüsselbund durch. Dieses Tool funktioniert mit Google Chrome/Chrom, Safari, Firefox und Opera integriert U2F-Implementierungen.
Wir nehmen die Sicherheit dieses Projekts ernst. Melden Sie alle Sicherheitslücken im Github -Bug Bounty -Programm.
Sie können den Installateur hier herunterladen.
Die App läuft im Hintergrund. Wenn eine in einem U2F-kompatiblen Browser geladene Site versucht, sich mit dem Software-Token zu registrieren oder zu authentifizieren, wird eine Benachrichtigung angezeigt, in der Sie aufgefordert werden, die Anfrage zu akzeptieren oder abzulehnen. Sie können auf Yubicos U2F -Demo -Site experimentieren.
Entladen Sie den Launchd -Agenten
$ launchctl unload ~/Library/LaunchAgents/com.github.SoftU2F.plist
Löschen Sie den Startagenten Plist
$ rm ~/Library/LaunchAgents/com.github.SoftU2F.plist
Löschen Sie die .app
$ sudo rm -rf /Applications/SoftU2F.app/
Entladen Sie die Kernel -Erweiterung (dies kann fehlschlagen, wenn ein Browser immer noch mit dem Treiber spricht. Löschen des .kext und Neustarts des Systems wird dies beheben).
$ sudo kextunload /Library/Extensions/softu2f.kext
Löschen Sie die Kernel -Erweiterung
$ sudo rm -rf /Library/Extensions/softu2f.kext
Sagen Sie MacOS, sie sollen die Installation vergessen
$ sudo pkgutil --forget com.GitHub.SoftU2F
Erledigt
Ein USB -Authenticator speichert Schlüsselmaterial in Hardware, während Soft U2F seine Schlüssel in der MacOS -Schlüsselbund speichert. Es muss ein Argument vorgebracht werden, dass es sicherer ist, Schlüssel in Hardware zu speichern, da Malware, die auf Ihrem Computer ausgeführt wird, auf den Inhalt Ihres Schlüsselbundes zugreifen kann, aber den Inhalt eines Hardware -Authentikators nicht exportieren kann. Andererseits kann Malware auch auf die Cookies Ihres Browsers zugreifen und verfügt über vollen Zugriff auf alle authentifizierten Website -Sitzungen, unabhängig davon, wo U2F -Tasten gespeichert sind.
Bei Malware, die auf Ihrem Computer installiert ist, ist ein sinnvoller Unterschied zwischen Hardware und Softwareschlüsselspeicher für U2F die Dauer des Kompromisses. Mit Hardware -Schlüsselspeicher sind Sie nur kompromittiert, während die Malware auf Ihrem Computer ausgeführt wird. Mit Software -Schlüsselspeicher können Sie auch nach dem Entfernen der Malware auch nach dem Entfernen der Malware beeinträchtigt werden.
Einige Leute können entscheiden, dass das obige Angriffsszenario den Benutzerverhältnis für die Benutzerfreundlichkeit des Hardware -Schlüsselspeichers wert ist. Für viele ist die Sicherheit von Software-basierten U2F jedoch ausreichend und hilft dabei, viele gemeinsame Angriffe wie Kennwort-Dumps, Brute-Force-Angriffe und Phishing-verwandte Exploits abzuschwächen.
Sie müssen Xcode -Befehlszeilen -Tools installiert haben, um dieses Projekt zu erstellen.
# Install Commaned Line Tools
xcode-select --install
# Build softu2f.kext and SoftU2F.app.
script/buildEs gibt zwei Teile für weiche U2F: den Treiber und die App. Um eine geänderte Version des Treibers zu verwenden, müssen Sie den Schutz des Systemintegrität deaktivieren. Die App kann geändert und über Xcode normal ausgeführt werden.
Jede Website mit U2F verfügt über eine App-ID. Beispielsweise lautet die App-ID von Yubicos U2F-Demo-Seite https://demo.yubico.com . Wenn der U2F-Authenticator mit niedrigem Niveau eine Anfrage zur Registrierung/Authentifizierung einer Website erhält, erhält er die freundliche App-ID-Zeichenfolge nicht. Stattdessen erhält es eine SHA256-Digest der App-ID. Um eine hilfreiche Warnmeldung anzeigen zu können, wenn eine Website registriert/authentifiziert wird, wird in diesem Repository eine Liste von App-ID-Digests verwaltet. Hier finden Sie die Liste. Wenn der App-ID Ihres Unternehmens in dieser Liste fehlt, öffnen Sie eine Pull-Anfrage, um sie hinzuzufügen.
Dieses Projekt ist MIT lizenziert, mit Ausnahme der Dateien in /inc , die in ihren eigenen Lizenzen enthalten sind.