MacのSecure EnclaveでSSH鍵を作り、Touch IDで認証する

Setting Up SSH Keys on macOS with Touch ID

Macに内蔵されたSecure Enclave上に秘密鍵を生成し、Touch IDでSSH認証を行う方法を3つのコマンドで解説する。鍵は抽出もコピーもできず、ファイルとして残らないため盗難リスクがない。GitHubへの登録手順に加え、ssh-keychain.dylibがSSHエージェントとSecure Enclaveの間でどう署名を仲介するのか、その仕組みも掘り下げる。

誰にもあなたのアイデンティティは盗めません(そもそもSecure Enclaveから抽出できないので、自分から進んで渡すことすらできないのです)。
  1. maratc

    > ~/.ssh/id_ed25519.pub などの鍵ファイルがファイルシステム上に散らばることがなく、誤って削除してしまうリスクもありません。

    バックアップしたり、新しいコンピュータにコピーしたりする必要もありません。コーヒーをこぼすだけで鍵を失う寸前です。

  2. citrin_ru

    比較的簡単だと知っていたら、yubikey にお金をかけずに済んだのに。個人プロジェクトではセキュリティ要件は高くないけれど、マルウェアに盗まれる可能性のあるファイルよりはマシなものがあると良い。ハウツーを書いてくれた作者に感謝。

  3. QGQBGdeZREunxLe

    複雑そうですね。https://secretive.dev/ をインストールするだけでいいのでは?

  4. apimade

    私たち全員が待ち望んでいたこの特定の機能が、DevEx 企業によるファーストパーティサポートを受けていないなんて信じられない。

    セキュリティが最優先だと公言している企業、あるいは「開発者、開発者、開発者」と叫んでいる企業のことだ。Google と Apple が一緒に何かを作らなかったのが不思議でならないが、考えてみれば、彼らがサービスを提供していない領域(認証、アプリケーション制御など)にエコシステムやカテゴリ全体が展開されているのだから無理もない。

  5. gurjeet

    誰かの役に立てばと思い、少し前に TouchID で保護されたローカルパスワードストアをセットアップするための正確な CLI コマンドをブログ記事に書きました。必要なら、暗号化されたパスワードストアをバックアップし、Git で追跡することもできます。

    > PasswordStore (`pass`) + GnuPG (`gpg`) + TouchID

    > https://gurjeet.singh.im/blog/passwordstore+gnupg+touchid

この日のほかの記事

2026-10-21