
MacのSecure EnclaveでSSHキーを保護しましょう
Secretive は、Secure Enclave で SSH キーを保護および管理するためのアプリです。
SSH キーの最も一般的な設定は、適切なパーミッションで保護されたディスク上に保存しておくことです。これはほとんどの場合問題ありませんが、悪意のあるユーザーやマルウェアが秘密鍵をコピーするのはそれほど難しいことではありません。Secure Enclave でキーを保護すれば、設計上、キーをエクスポートすることは不可能になります。
Mac に Secure Enclave が搭載されている場合、Touch ID や Apple Watch による認証などの強力なアクセス制御にも対応しています。キーにアクセスする前に Touch ID(または Watch)による認証を要求するようにキーを設定できます。
Secretive は、キーがアクセスされるたびに通知も行うため、不意を突かれることはありません。
Secure Enclave を搭載していない Mac の場合、スマートカード(YubiKey など)を設定して、署名にも使用できます。
最新のリリースは リリースページ からダウンロードできます。
brew install secretive
よくある質問は、こちら にあります。
ビルドは、監査可能なビルドおよびリリース生成プロセスを持つ GitHub Actions によって生成されます。Secretive 3.0 以降、ビルドは GitHub Artifact Attestation を使用して証明されます。証明は、ビルドのビルドログと メインの証明ページ でも確認できます。
Secretive はキーの保護に Secure Enclave を使用していますが、キーの保存とアクセスには依然としてキーチェーン API に依存しています。キーチェーンは、キーの読み取りを、それを作成したアプリ(具体的にはバンドル ID)に制限します。Secretive をソースからビルドする場合は、キーチェーンがキーを見つけられるように、使用するバンドル ID を一貫させてください。
Secure Enclave 内のシークレットはエクスポートできないため、バックアップしたり、新しいマシンに転送したりすることはできません。新しい Mac を入手した場合は、その Mac 専用の新しいシークレットを作成してください。
Secretive のセキュリティポリシーは SECURITY.md に詳しく記載されています。セキュリティの問題を報告するには、GitHub の非公開報告機能 を使用してください。
Secretive は、sekey プロジェクト に触発されました。
Secretive は、寛大なボランティアチームによって多くの言語にローカライズされています。詳細は LOCALIZING.md をご覧ください。Secretive のローカライゼーションワークフローは、Crowdin によって提供されています。