
Schützen Sie Ihre SSH-Schlüssel mit der Secure Enclave Ihres Macs
Secretive ist eine App zum Schützen und Verwalten von SSH-Schlüsseln mit der Secure Enclave.
Der gängigste Ansatz für SSH-Schlüssel ist es, sie einfach auf der Festplatte zu speichern und durch geeignete Berechtigungen zu schützen. Das ist in den meisten Fällen in Ordnung, aber es ist für böswillige Benutzer oder Malware nicht besonders schwer, deinen privaten Schlüssel zu kopieren. Wenn du deine Schlüssel mit der Secure Enclave schützt, ist es konstruktionsbedingt unmöglich, sie zu exportieren.
Wenn dein Mac über eine Secure Enclave verfügt, unterstützt er auch starke Zugriffskontrollen wie Touch ID oder die Authentifizierung mit der Apple Watch. Du kannst deine Schlüssel so konfigurieren, dass für den Zugriff eine Touch-ID- (oder Apple-Watch-)Authentifizierung erforderlich ist.
Secretive benachrichtigt dich außerdem, wann immer auf deine Schlüssel zugegriffen wird, damit du nie unvorbereitet erwischt wirst.
Für Macs ohne Secure Enclave kannst du eine Smart Card (z. B. einen YubiKey) konfigurieren und sie ebenfalls zum Signieren verwenden.
Du kannst die neueste Version auf der Releases-Seite herunterladen.
brew install secretive
Hier gibt es eine FAQ.
Builds werden von GitHub Actions mit einem überprüfbaren Build- und Release-Erzeugungsprozess erstellt. Ab Secretive 3.0 werden Builds mithilfe von GitHub Artifact Attestation attestiert. Attestierungen sind im Build-Log eines Builds und auch auf der Haupt-Attestierungsseite einsehbar.
Obwohl Secretive die Secure Enclave verwendet, um Schlüssel zu schützen, ist es dennoch auf Keychain-APIs angewiesen, um sie zu speichern und darauf zuzugreifen. Die Keychain beschränkt das Lesen von Schlüsseln auf die App (genauer gesagt auf die Bundle-ID), die sie erstellt hat. Wenn du Secretive aus dem Quellcode baust, stelle sicher, dass du konsequent dieselbe Bundle-ID verwendest, damit die Keychain deine Schlüssel finden kann.
Da Geheimnisse in der Secure Enclave nicht exportierbar sind, lassen sie sich nicht sichern und du kannst sie nicht auf einen neuen Rechner übertragen. Wenn du einen neuen Mac bekommst, erstelle einfach einen neuen Satz von Geheimnissen, die spezifisch für diesen Mac sind.
Die Sicherheitsrichtlinie von Secretive ist in SECURITY.md beschrieben. Um Sicherheitsprobleme zu melden, nutze bitte die private Berichtsfunktion von GitHub.
Secretive wurde vom sekey-Projekt inspiriert.
Secretive wird von einem großzügigen Team aus Freiwilligen in viele Sprachen lokalisiert. Mehr dazu erfährst du in LOCALIZING.md. Secretives Lokalisierungsworkflow wird freundlicherweise von Crowdin bereitgestellt.