EFS 暗号化 (Encrypting File System ) まとめ

Windows の暗号化機能であるEFS に関してまとめます。EFSとはWindows標準の機能で、ファイル単位あるいはフォルダ単位で暗号化する機能です。


EFS 暗号化とは

・Windowsの暗号化機能。NTFSファイルシステムで使用が可能。ただしWindows 7の下位エディションなどでは一部機能が制限される。
・ファイルを復号可能なユーザを限定することが可能。複数ユーザを指定することも可能。
透過的にファイルの暗号化、複合化が可能。ファイルにアクセスするときに自動的に複合化され、閉じると暗号化される。(EFSはNTFSドライバと連携しているため)。ユーザがパスワードを入力する必要はない。(そもそもユーザがパスワードを指定することは出来ない。)
・ただし暗号化しても元のファイル名、フォルダ名、ディレクトリ名はそのまま他のユーザに見えてしまう点に注意。ファイル名に個人情報(名前)など付けないことが重要。

・EFS暗号化は共通鍵(対象鍵)の技術と公開鍵(非対象鍵)の技術を組み合わせて実現している。
各ファイルには暗号化する暗号化キーが付加されている。このキーはアクセス可能なユーザの公開鍵、及び回復エージェントの公開鍵で暗号化している。

・暗号化キーはファイルごとに異なるキーが使用される。(類推攻撃対策)

暗号化キー≠ユーザのパスワード。要するに暗号化キーとWindowsのパスワードは全くの別物である。

同じコンピュータでもOSを再インストールすると暗号化したファイルにはアクセス出来なくなるため注意が必要。
・同一PCのNTFSフォルダ間ならファイルを暗号化したままコピーすることが可能。

・暗号化されたファイルに対して復号が不可なユーザでも、アクセス権利(ACL)さえあればファイルそのものはコピーすることが可能である。ただしコピーしても中身が何か分からない(複合出来ないため)

・暗号化するにはエクスプローからファイルあるいはフォルダのプロパティを選択し、「全般」タブから[詳細設定]をクリックして設定が可能。
以下のとおり「内容を暗号化してデータをセキュリティで保護する」をチェックする。

EFS暗号化を設定する

・暗号化されたファイルは緑色で表示される。(圧縮されたファイルは青色)

NTFSのACLのアクセス制御では、ハードディスクを取り出して他のパソコンに接続すればファイルは簡単に見えてしまう。よってこれを防止するために、EFS暗号化が必要
EFS暗号化されたファイルは他のパソコンに接続しても、バックアップされたキーが無ければ複合化することは出来ない。
・EFS以外にBitLocker暗号化機能もある。BitLocker暗号化はパーティション丸ごと暗号化する機能であり、EFS暗号化とは目的が異なる。

・コマンドラインからは cipher.exe コマンドにより操作が可能。
・圧縮機能とEFS暗号化の属性は同時に設定出来ない。

暗号化キーは以下のとおり。

・暗号化されるファイルごとに自動生成されるFEK(File Encryption Key)というキーが付加される。このキーにより暗号化される。
・このキーはユーザの公開鍵で暗号化されている。(回復エージェントを設定した場合は、回復エージェントの公開鍵でも)
・各ユーザ用のEFS暗号化キーはユーザが始めて暗号化を使用する時に自動的に生成される。

証明書名 対象 バックアップ方法
EFS証明書 ユーザ用 cipher /x で作成
EFS DRA 証明書 回復エージェント用 cipher /r で作成

・不測の事態(暗号化した社員の突然の退社)などに備えて回復エージェントを設定するべきである。回復エージェントを設定するとファイル暗号化時には回復エージェントの公開鍵でもFEKが暗号化される。

・暗号化してもキーはパソコンに保管されているため、パソコンごと盗難されかつログオンパスワードが解読されたら暗号化ファイルは簡単に復号されてしまう。要するに暗号化して安心してはいけなく、パスワードは十分に長くかつ頑丈に設定する必要がある。

・暗号化キーはページファイル(pagefile.sys)やハイバネーションファイル(hiberfil.sys)に記録されている可能性がある。これらのファイルがディスクに残存しない設定が必要。

・バックアップとしてエクスポートした秘密鍵はかならずパソコン外に保管すること。パソコンのWindowsが破損した場合、暗号化キーが取り出せなくなり復号が出来なくなる可能性がある。貸金庫などリモートでセーフティーな場所に保管するのがベスト。

参考:cipher コマンドオプション一覧

暗号化ファイルをバックアップする

コントロールパネルからEFS暗号化キーのバックアップを取得することが可能です。

[コントロールパネル]→[ユーザアカウント]→[ファイル暗号化証明書の管理]

EFS暗号化キーをエクスポートする

[戻る]