Windows 11便利テク
実験!Windows 11でTPMをクリアしたらサインインできなくなるのか?
2021年11月5日 06:50
Windows 11では、サインインの方法として、標準でTPMを使ったPIN、顔認証などのWindows Helloが利用される。では、セットアップ後にTPMが使えなくなったらどうなるのだろうか? 実際に試してみた。
TPM(Trusted Platform Module)について知りたいという方は、以下の関連記事を参照されたい。
(1) PINはTPMを利用するための合い言葉
(2) セットアップ後にTPMを無効化してみる
(3) 結果まとめ
PINはTPMを利用するための合い言葉
Windows 11の初期設定の際、PINや顔認証のセットアップが実行されるが、この認証では自動的にTPMに保存された情報を利用するように構成される。
PCでTPM 2.0が利用可能な場合(利用できない場合はソフトウェアベースの手法でキーを保護)、TPM内に公開鍵/秘密鍵のキーペアが作成される。ユーザーを認証する際は、TPM内のキーにアクセスして署名を取得する必要があるが、そのためにはユーザーが秘密鍵の所有者であることを証明する必要がある。このためにPIN、または生体認証が使われるという仕組みになっている。
要するに、サインイン時に入力しているPINは、そのものが認証に使われるのではなく、TPMにアクセスするための暗証番号としてのみ使われていることになる。
Windows 11では、このほかBitlocker、デバイス暗号化、Credential Guardなど、TPMは広く使われているが、もっとも身近にTPMの存在を感じられるのは、このサインインの際のPINということになる。
なお、以下の関連記事にあるようにインストール時にTPMチェックを回避する方法も紹介されているが、推奨されないので、検証目的での利用などに留めておくべきだろう。
セットアップ後にTPMを無効化してみる
さて、ここまででWindows 11でTPMが身近に使われていることが分かったと思うが、このTPMはUEFI(BIOS)で簡単に無効化できる。
TPMが有効な状態のPCで、後から無効にしたらどうなるのだろうか? Hyper-Vの仮想マシンを使って実際に確かめてみよう。
【ステップ1】実験環境
まずは、現在の状態を確認しておこう。対象の環境はWindows 11のHyper-Vにセットアップした仮想マシンで、仮想マシンの設定で[セキュリティ]の[トラステッドプラットフォームモジュールを有効にする]をオンにした環境だ。仮想マシン側でtpm.mscを実行すると、以下のようにTPMが有効になっていることが確認できる。
サインインはPINのみが設定されている状態となる。TPMにアクセスする方法が違うだけなので、顔認証でも指紋認証でも結果は同じだ。
なお、Windows 11では、標準で[セキュリティ向上のため、このデバイスではMicrosoftアカウント用にWindows Helloサインインのみを許可する]がオンに設定されている。
このため、サインイン時にMicrosoftアカウント(メールアドレスとパスワード)を利用することはできない。
【ステップ2】TPMをオフにする
このマシンをシャットダウンし、仮想マシンの設定で[トラステッドプラットフォームモジュールを有効にする]のチェックボックスを外し、TPMをオフの状態にする。これで、認証に必要なTPM内の暗号鍵ペアにアクセスできなくなる。
果たして、サインインはできるのだろうか?
【ステップ3】サインインできるか試す
仮想マシンを起動して、サインイン画面を表示すると、以下のように「問題が発生したため、暗証番号(PIN)を使用できません。クリックして暗証番号(PIN)をもう一度設定してください。」と表示される。
方法は後述するステップ6と同じだが、ここでPINを再設定すると、TPMがオフの状態でのPINとなり、認証情報がハードウェアではなくソフトウェアベースで保管されることになる。つまり、見た目は同じでも、仕組みがまったく違う(TPMが使われない)ので注意が必要だ。
Windows 11では、前述したように標準でWindows Hello以外のサインインが許可されていない。あらかじめ、この設定をオフにしておけば、サインインオプションとしてMicrosoftアカウントを使ったサインインも可能だ。
【ステップ4】TPMをオンに戻す
PINを再設定する前に、TPMをオンに戻すことで、以前の認証情報をもう一度使えるかどうかを確認する。
TPMをオンに変更し、再起動すると、問題なくPINの入力画面が表示され、以前のPINをそのまま使ってサインインすることができた。
【ステップ5】TPMをクリアする
続いて、TPMはオンにした状態のまま、TPMの情報をクリアしてみる。やり方としては、UEFIからクリアする方法と、Windows 11からクリアする方法があるが、今回はtpm.mscを使って、Windows 11上でTPMをクリアした。
この場合、TPM内の暗号鍵ペアがリセットされ、以前のPINは完全に使えなくなる。このため、PINを再設定する必要がある。
結果まとめ
このように、TPMをオフにしても、救済処置があるため、いきなりサインインできなくなることはない。シンプルにオフにしただけの場合はオンに戻すことで元のPINを利用できる。クリアしてしまった場合はMicrosoftアカウントでの認証を経てPINを再設定できる。
ただし、TPMをオフにした状態でPINを再設定するとソフトウェアベースでの管理になるので注意が必要だ。TPMの意味がなくなってしまう。
また、この方法はPINを忘れてしまった場合にも応用できる。同様にPINを再設定すれば、元通りサインイン可能なので、慌てずに済むだろう。