fTPMの設定

最近の投稿「Windows 11 チェック」でも触れた「TPM(Trusted Platform Module)バージョン2.0」ですが、最初に目にした時は「TPMって何だ?」と思いました。その後に思い出したのは、大分前に Windows の機能の一つ BitLocker を設定しようとした時、TPMモジュールの装着が必要と知って断念したことです。知識不足だったことと、新OSインストール直後の忙しさで手が回らなかったと思われます。

スッカリ忘れていた「TPM」ですが最近発表された次期 OS (Windows 11)では TPM が必須条件と言うので避けて通れません。気になるので一寸調べてみました。下表に示すように、自作26号機のマザーROG STRIX B550-E GAMING 以外は基板上にTPMコネクターを搭載して、別売りのTPMモジュールを装着することでTPMを実現しています。

自作PCのTPM

ところが、26号機のマザーボード ROG STRIX B550-E GAMING には TPMコネクターは搭載されていません。最近のマザーは専用チップを搭載せずファームウェアで対応するようです。但し、Intel と AMD ではファームウェアの作り方が大分違うようで、その概念図を下に載せます。

ファームウェアTPMの概念図

●TPMの専用チップを使う場合、Windows OS はCPU上で動作し、鍵の生成・認証時にはチップセットに接続されたTPM専用チップに処理を依頼する形です。
●IntelのファームウェアTPMの場合、チップセット内にサブCPU (MINIXと言うUNIX系OS下で動作) が組み込まれていて、主な機能として、温度制御、ファン制御、パワーマネジメント、ブートガード等々を担っていますが、その機能の1つとしてTPMチップの機能が取り込まれています。セキュリティ的には非常に危険だと言う指摘があるようです。
●AMDのファームウェアTPMの場合、メインのx64コアとは別に Platform Security Processer (ファームウェアTPM)用のARMコアが1つ搭載されています。

◆TPM専用チップ搭載のマザーボード例
我が自作PCの25号機と24号機のTPMコネクターをマザーボードのマニュアルから抜粋して載せておきます。ASUS製マザーでも、機種によって「14-1 pin」や「20-1 pin」のものがあることが分かります。マザーボードメーカーによっても違いがあり互換性はなさそうです。下端に「TPMは別途お買い求めください。」とありますが、X99-A II用のモジュールはAmazonで 1ヶ5,000円弱で販売されていました。

X99-A IIマザーのTPMコネクター
Z97-PROマザーの TPM connector

◆fTPMの設定
今回の自作で初めてファームウェアTPMの設定をしました。TPMの仕組みは難しくてよく分かりませんが、UEFIでの設定は簡単でした。AMD のファームウェアTPMは「fTPM」と呼ばれており、UEFI BIOS の Advanced の中に fTPM の設定項目が2つあります。(下図)

AMD fTPM switch

上図の下の方の注意書きに「AMD CPU Firmware TPM:Enabled or Disabled」とあります。更に「Warning! fTPM will be disabled and all data saved on it will be lost.」との一寸物騒な記述もありました。今回は新規自作で失われるデータは無いので安心して「Enabled」を選択しました。その下の項目「Erase fTPM NV for factory reset」の注意書きにはもっと物騒なことが記述されています。

Erase fTPM NV for factory reset

物騒な注意書き
「When a new CPU is installed, Select “Enabled” to reset fTPM, if you have BitLocker or an encryption-enabled system, the system will not boot without a recovery key. Select “Disabled” to keep previous fTPM record and continue system boot, fTPM will NOT be enabled with a new CPU unless fTPM is reset (reinitialized), you can swap back to the old CPU to recover TPM related keys and data.」とあります。

つまり「新しい CPU をインストールした場合、Enabled を選択すると fTPM がリセットされ、BitLocker や暗号化が有効なシステムの場合は、回復キーがないとシステムが起動しません。 Disabled を選択すると、以前の fTPM の記録が保持され、システムの起動が継続されます。新しい CPU では、fTPM がリセット(再初期化)されない限り、fTPM は有効にならないので、古い CPU に交換して TPM 関連のキーやデータを復元することができます。」と言うことですが、我がPCは隠居の個人使用なので、BitLocker や暗号化は多分使わないと思います。