Windows 2000 キーワード

EFS(暗号化ファイルシステム)

Encrypting File System
イー・エフ・エス

デジタルアドバンテージ

 Windows 2000で導入された、NTFSにおける新機能。ファイルに記録されるデータを自動的に暗号化してファイルシステムのセキュリティを高めるために使われる。従来のWindows NT 4.0でも、NTFSファイルシステムを使えば、各ユーザーごとにアクセス権を設定して権限のないユーザーからのファイルやフォルダへのアクセスを禁止することができたが、ディスク上に記録されている物理的なデータは暗号化されている訳ではなかった。そのため、たとえばマシン自体が盗難に遭ったり、どこかに置き忘れたりした場合、内蔵しているディスクの内容を物理的に読み出すことができれば、ファイルの内容を取り出すことが可能であった。これに対してWindows 2000のEFS(Encrypting File System、暗号化ファイルシステム)では、ファイルの内容が記録されているディスク上の物理セクタのデータ自体を暗号化しているので、たとえディスクの物理的なデータを読み出すことができたとしても、もとのファイルの内容を取り出すことはできない。

 このEFSによるファイルの暗号化/復号化機能はNTFSシステム自体に組み込まれているので、ユーザーはファイルが暗号化されていることをまったく意識せずに透過的に利用できるし、暗号化のためにもほとんど何も特別な操作は不要である(NTFSファイルシステム上でのみ利用可能)。ファイルを暗号化するためには、エクスプローラでファイルのプロパティを表示させ、「暗号化」するための属性をセットするか、cipher.exeというコマンドラインツールを使う。ただしこの暗号化機能は、ファイルの圧縮機能と併用することはできず、どちらか一方しか選択できない(暗号化を行うとデータの内容がほぼランダムになり、ほとんど圧縮ができなくなるためだと思われる)。データが暗号化されたファイルやフォルダをエクスプローラで表示させると、「E(Encryption)」という属性が付加されている。

EFSによるファイルの暗号化

  暗号化を行うには、ファイルプロパティの詳細メニューを使う。
  このチェックボックスをオンにする。これをオンにすると、上の圧縮指定のチェックボックスルは(選択されていれば)オフになる。圧縮と暗号化を同時に指定することはできない。
クリックすると図が拡大表示されます
  暗号化されているファイル/フォルダでは属性が「暗号化」となる。

 暗号化されたファイルは、暗号化した本人しか復号化することができない。たとえ管理者(Administrator)や(NTFSにおける)ファイルの「所有者」であっても、暗号化したユーザー以外はその内容を復号化することはできず、アクセスしようとするとエラーとなる。

 NTFSでは、各ファイルやフォルダに対して、ユーザーやグループごとに「読み取り」や「書き込み」などの属性を付けることができるが、暗号化はそれらの属性とは独立して扱われる。つまり、適切なアクセス権限と、暗号化したユーザー自身であるという証明の両方が揃わないと、ファイルの内容にアクセスすることができない。

権限のないユーザーが暗号化されたファイルにアクセスしたところ

暗号化されたファイルへ他のユーザーがアクセスした場合、ファイルへの読み書きはこのようにエラーとなる。ただし、ファイルが暗号化されてエラーになっているのか、それとも単にアクセス権を持たないためにエラーになっているのかどうかは、たいていのアプリケーションでは詳しく表示されないので、ユーザーが注意する必要がある。

 暗号化属性はファイルだけではなく、フォルダにも付けることができるが、これはフォルダの内容を暗号化してそこに含まれているファイルの一覧を参照不可にするためのものではない。圧縮属性と同じように、そのフォルダ内に作成されるファイルを、デフォルトで暗号化させるということを指示するものである(一覧を見えなくするためには、NTFSの「フォルダの内容の一覧表示」アクセス権を禁止する)。暗号化属性の付けられたフォルダにファイルやフォルダを新規に作成すると、それらは最初から暗号化された状態になる。

  このフォルダの暗号化機能は、各ユーザーの特定のフォルダ全体を保護するためだけではなく、一時ファイルなどの置かれるフォルダを保護するためにも利用できる。たとえばアプリケーションプログラムによっては、オリジナルファイルの一時的なコピーを作成することがあるが、この際、一時的にではあれ、暗号化が解除されたファイルがディスク上に存在することになる。この一時ファイルに外部からアクセスされてしまっては(もしくはマシンがハングアップして、一時ファイルが消去されずに残ってしまっては)、暗号化の意味がなくなってしまう。そこで一時ファイルを作成するフォルダにも暗号化属性を付けておくことが望ましい。この暗号化属性は、COPYコマンドやエクスプローラのファイルコピー、名前の変更操作などでも維持され、ユーザーが明示的に解除しない限りファイルは暗号化されたままの状態になっている。

  暗号化されたファイルは、Windows 2000システムでは、「非ページ」メモリ領域を使ってファイルのバッファリング操作が行われる。このメモリ領域はスワップファイル上に割り当てられることはないので(メモリ上にしか存在しない)、たとえばスワップファイルの内容を調べても、復号化されたファイル内容を見ることはできない。なお、ネットワークを介したリモートサーバ上のファイルを暗号化することもできるが、(IPSecのようなセキュリティのための機能を使わない限り)ネットワーク上でやり取りされる場合のファイルデータは暗号化されていないので、このEFS機能はローカルマシン上でのみ利用することが推奨されている。



Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間