ブログの存在忘れてる間になんかUI変わってる。
- 経緯
- 先に書いておくと
- BitLockerとは何か
- BitLocker回復キーとは何か
- Homeでも使えるBitLockerの正体
- デバイスの暗号化に潜む罠
- 回復キーを求められた時の唯一の希望
- しかしオフにはしてほしくない
- デバイスの暗号化と共存しよう
- 普通のパスワードではダメなのか
- デバイスの暗号化の暗号化方式
- 暗号化で遅くならない?
経緯
最近度々Twitterで
「PCを起動したらBitLocker回復キーを求められて詰んだ」
というツイートを見かけるので、それについて触れようかと。
先に書いておくと
この記事に辿り着いた方の数割は「PCでBitLocker解除キーを求められたがわからないので調べてる」という状況の方だと思います。先に書いておくと筆者が案内できるのは「Microsoftアカウントにログインしてみてください」程度のものです。この記事は「BitLockerは何なのか」とか「この被害に遭わない為にするにはどうするか」といった予防策なので、解決方法を記しているわけではありません。後述しますが、BitLockerは暗号化技術であり、回復キーがわからない場合はどうしようもありません。鍵を紛失した金庫は開けられません、そういう話です。
BitLockerとは何か
ではまずBitLockerとは何なのかというと、WindowsのProエディションで提供されているストレージの暗号化技術です。簡単にいうと、PCに保存したデータをシステムとかも含めて暗号化するということです。近いものだとmacOSのFileVaultとか。
BitLocker回復キーとは何か
BitLocker回復キーは、BitLockerによる暗号化を解除することができる "唯一の" キーです。これを失くすとPCにはログインできなくなります。普段はPC側のTPMチップがこれを記憶しているため特に意識しなくてもPCを使用することができます。ただし、SSDを別のPCに移植して動かしたり、Windowsが不正アクセスされたと認識したり、TPMがキーを忘れたりするとBitLocker回復キーが求められます。
このキーは手動でBitLockerをオンにした場合はユーザー側に回復キーを控えるようアナウンスされます。また、Microsoftアカウントに回復キーが自動でバックアップされます。
Homeでも使えるBitLockerの正体
ここまで読んでいて「自分のPCはHomeだけどBitLockerに締め出されたわ!」って方も居ると思います。先程 "BitLockerはProエディション向けの機能である" と書きましたが、実は例外があります。
デバイスの暗号化とは
Homeエディションでも使えるBitLockerの正体、それはずばり "デバイスの暗号化" です。特にかっこいい名前がついているとかでもなく、本当にそのままの名前です。BitLockerと非常に似た機能であり、詳しい公式での説明もなく、回復キー等の扱いも含めてBitLockerと一部同じであるためかなりややこしいのですが、BitLockerとは区別されている機能です。例えば、暗号化方式が選べなかったり、BitLocker to Goという外部ストレージの保護機能は使えません。元々はWindows RT向けに実装された機能であり、Windows 8.1で統合されました。また、Homeなら全デバイスで使えるという訳でもなく、システム要件が存在します。
デバイスの暗号化のシステム要件
- TPM 2.0をサポートしている
- SecureBootに対応している
- モダンスタンバイに対応している
これらが要件になります。
度々メーカーによる等の記載がありますが、厳密には違います。ただし、メーカーごとにある程度設計が似るため、メーカーごとに対応有無の傾向が出ている気はします。凄く大雑把に分けると、元々は国内ブランドであるPCは対応していないことが多く、海外ブランドのPCは対応していることが多いです。ただしこれは筆者の経験則なので、実際のところとか最近の事情は違うかもしれない。また、システム要件的に2017年以降のPCが対応していることが多いです。
Intel evo認定機種ならほとんど対応している気がする。
対応機種かの確認方法
まずPCを買ったらデバイスの暗号化に対応しているかPCかどうかを調べましょう。買う前から調べるのはなかなか難しいと思います。家電量販店とかで実機を触れるなら事前に確認することができます。
設定を開き、プライバシーとセキュリティを開いて、そこに "デバイスの暗号化" という項目があればそのPCは暗号化に対応しているPCです。
暗号化されているかの確認方法
使っているPCがすでに暗号化されているかどうかの確認方法。
手っ取り早いのは、エクスプローラーでCドライブのアイコンを確認してみてください。南京錠が解除されているアイコンがあれば、そのPCは暗号化されています。
こんな感じ。少しややこしいのは南京錠が解除されていれば暗号化されている点です。金庫は一時的に鍵を開けてアクセスする、それと同じイメージだと勝手に考えている。
もう少し丁寧に見るには、ディスクの管理から確認します。"BitLockerで暗号化済み" と書いてあるボリュームは暗号化されています。
当然ですが、回復領域等の、システム以外のボリュームは暗号化されません。んなとこ暗号化したら単体で初期化できなくなりますからね。
デバイスの暗号化に潜む罠
「何もしていないのにBitLocker回復キー求められて詰んだ」
これが起きる原因について。デバイスの暗号化、この機能自体は全PCで対応すべきレベルの素晴らしい機能です。問題は、上述のシステム要件を満たしたデバイスでMicrosoftアカウントを使用してログインした場合はユーザーに無断で暗号化をする、というとんでも無い仕様をしている点。これにより、ユーザーがこの機能を知らないままPCが暗号化され、ふとした拍子に回復キーを求められて何のこっちゃ、というのがこの話の全貌です。
何もしてないのに回復キーを求められてたまるかという感じですが、Windows Updateとかで回復キーを求められるパターンもあるのでユーザーが何もしてなくても引っ掛かることがあるのがこの機能の更なる罠です。
簡潔にいうと、勝手に暗号化しておきながら勝手にPCには入れなくなることがあるという非常に間抜けな仕様なのです。
回復キーを求められた時の唯一の希望
回復キーを控えていなかった場合。
自動暗号化の発火条件はMicrosoftアカウントにログインすることです。回復キーは暗号化される時に自動でMicrosoftアカウントに保存されるため、スマホや別のPCでMicrosoftアカウントにログインできれば回復キーを得ることができます。Microsoftアカウントのパスワードすら忘れたとか、どのMicrosoftアカウントでログインしてたかわからない等の場合は詰みです。
逆に言うと、Microsoftアカウントではなくローカルアカウントを使用している場合は自動暗号化は働きません。ただし "Microsoftアカウントを使用→自動暗号化→ローカルアカウントに切り替え" という操作をしたときにどういう挙動をするのかはわからない。
しかしオフにはしてほしくない
これは筆者個人の主張で、基本的にデバイスの暗号化は使えるなら使った方が良いと思います。家の中だけで使うとかであればまあオフでも良いのですが、そうでなければ基本オンにするべきです。データを盗まれて気分の良い人なんてそういません...よね?
今のご時世、モバイル端末の内部ストレージの暗号化なんて常識レベルです。システム要件を満たしたPCか、Proエディションでないとサポートしないとかケチなこと言っているWindowsの方が異常です。このページを読んでいる方にはスマートフォンでこの記事を読んでいる方も多いと思いますが、あなたが握っているそのスマートフォンだって暗号化されています。
窓を叩き割って書類を盗むよりも、デジタルデバイスからデータを盗む、そういう時代です。
デバイスの暗号化と共存しよう
とはいえ、PCが突然BitLocker回復キーとか欲しがって使い物にならなくなったらそれも問題です。ではどうするか。BitLocker回復キーをメモする、以上です。
MSアカウントでログインしていたら勝手に暗号化されるので、さっさと回復キーを控えましょう。ただし、そのPC内に保存するのは言うまでもなく無意味なので、せめてiPhoneのメモとか、手帳に書いておくとか、そのPCとは別のところに保存してください。
また、Microsoftアカウントに自動でバックアップされるので、そこから確認することもできます。ただし、Microsoftアカウントのパスワードを忘れるとか、実は別のアカウントだったとかいう可能性もあるため、できるだけこれだけに頼らずメモをしておくことをお勧めします。
普通のパスワードではダメなのか
BitLockerの目的はもちろんユーザーへの嫌がらせでは無く、個人情報の漏洩の防止です。PCに少し詳しい、特にHDDとかSSDの換装をできる人であればわかると思いますが、PCのデータというのはかなりあっさりとぶっこ抜くことができます。PCはログインパスワードを設定していれば安心、ではありません。PCのログインパスワード自体はデータ保護という観点からはかなり無力で、パスワードがわからなくてもデータは盗めますし、ローカルアカウントの場合は第三者が任意のパスワードに改変してログインすることができてしまう程にガバガバです。
一方、BitLockerを設定していればデータが暗号化されているためかなりの高確率でデータを保護することができます。MicrosoftアカウントでPCにログインしている場合はパスワードの改変も効かないため、突破にもかなりの時間を要する、と思う。
デバイスの暗号化の暗号化方式
Windows 10 1511以降はXTS-AES 128bitが採用されています。これ解読される心配するくらいならその前に回復キーの管理を考えましょうと言える程度には強固だと思う。そんな訳で、回復キー失くした場合は諦めてください。
まさか居ないとは思いますが、Windows 10 1507、Windows 8.1以前のOSを利用している場合はXTS-AESは使用できず、AES-CBCになります。
暗号化で遅くならない?
暗号化なんてしてたら動作が重くなるのでは?となりますがその点は心配無用です。ここ最近のCPU、少なくともここ10年程度のほとんどのCPUはAES-NI (AES New Instruction) というハードウェアアクセラレータが実装されているため、実用上の速度低下は無視できるレベルになっています。多分体感できません。暗号化されていようがされていまいがパフォーマンスにほぼ差が出ません。大きな差が出た場合、ほぼ間違いなくそれは暗号化以外の要素に左右されています。暗号化解除するよりも、Chromeのタブを一つ閉じたほうが軽くなるんじゃないですかね。
と、ここまで書いて一応ベンチマークを取ってみたのが以下。
Core i5-1235UはAES-NIに対応しています。
SSDはWD Black SN850、PCIe 4.0x4でCPUレーンに接続しています。
デバイスの暗号化オフ
デバイスの暗号化オン
正直に感想言います、意外と遅くなりますね←
ランダムアクセスについては数値上は無視できない速度低下です。無視できないのは数値上の話で、体感できるかは別問題です。SEQなら多分わからないけど細々したところで、横に並べて比較とかすれば流石に差はわかりそうですね。
とまあ、なんだか締まらない感じですがとりあえず暗号化はできればしておいたほうが良いと筆者は思います。
実際、↑程度の速度低下なら筆者は暗号化をとります。