1. TPMの基本
- TPM = Trusted Platform Module(トラステッド・プラットフォーム・モジュール)
- PCやサーバーのマザーボードに搭載される セキュリティチップ
- 暗号鍵・証明書・パスワードなどを安全に生成・保管し、外部から取り出せないようにする
2. TPMの主な役割
(1) 鍵管理
- 公開鍵暗号の鍵ペア生成・保管
- 秘密鍵はTPM内にしか存在せず、外部に取り出せない
(2) 暗号処理
- 暗号化/復号
- デジタル署名の生成・検証
- ハッシュ値の計算(SHA-1, SHA-256など)
(3) セキュリティ強化機能
- 高品質な乱数生成(RNG)
- カウンタ・タイマ機能によるリプレイ攻撃対策
- 物理的改ざん耐性
(4) システムの信頼性保証
- セキュアブート:改ざんされたOSやファームウェアを起動させない
- リモートアテステーション:端末が信頼できる状態であることを外部に証明
- ディスク暗号化の支援(例:Windows BitLocker)
3. 動作イメージ
アプリケーションが暗号処理をしたいとき、TPMは次のように使われます。
👉 秘密鍵そのものは TPMから出てこない のがポイントです。
4. 具体的な利用例
-
BitLocker(Windows)
→ ディスク全体を暗号化し、TPMで鍵を守る -
セキュアブート
→ OSやドライバが改ざんされていないか検証 -
企業のPC管理
→ TPMに証明書を格納し、VPNやWi-Fi認証を安全に実行
5. 他のセキュリティ要素との比較
| 項目 | TPM | HSM | Secure Enclave / TEE |
|---|---|---|---|
| 形態 | PC/サーバー用チップ | 専用装置(外付け/ラック型) | CPU内の安全領域 |
| 主な用途 | PCセキュリティ(BitLocker等) | 金融システム、PKI基盤 | スマホ認証、決済 |
| 利用規模 | 個人/企業端末 | 大規模システム | モバイル/クラウド |
| 鍵管理 | OSレベル | 集中管理 | アプリ単位 |
6. ゼロトラスト時代におけるTPMの活用
(1) デバイス認証(Device Identity)
- ゼロトラストの前提は「ネットワークを信用しない」
- 代わりに「デバイスの信頼性を証明する」ことが重要
- TPMは秘密鍵を安全に持ち、証明書と組み合わせて端末の信頼性を保証
例:
- Azure AD / Intune で TPMを使ったデバイス証明
- 社内VPN接続時に「TPM内の証明書がある端末だけ許可」
(2) リモートアテステーション(Remote Attestation)
- TPMは「OSが正しく起動しているか」「改ざんされていないか」を証明できる
- クラウド環境で、VMやホストが信頼できるかを検証する仕組み
- Microsoft Azure, Google Cloud など主要クラウドがTPMベースのアテステーションを導入済み
(3) クラウド・ハイブリッド環境での利用
- オンプレ端末:TPMでデバイス証明書を保持
- クラウドVM:vTPM(仮想TPM)で同じ仕組みを利用可能
- ハイブリッド環境:同一のセキュリティポリシーで管理できる
まとめ
- TPMは 「ハードウェアで秘密を守る金庫」
- 鍵や認証情報をチップ外に出さずに安全に管理
- OSレベルのセキュリティ(BitLocker, Secure Boot)からゼロトラストの基盤(デバイス認証, アテステーション)まで幅広く活用
- 今後はクラウドの vTPM も普及し、「オンプレでもクラウドでも信頼を証明できる」時代に進化中