Windows XP Professional のスタンドアロン環境 (ドメイン環境でないシステム) で暗号化ファイルシステム (EFS: Encrypting File System) を使う場合の注意点


〔目次〕  〔全項展開〕



複数のPC/ユーザー間で暗号化ファイルを使うには

離れた場所の二つの PC (例として PC1, PC2 と呼ぶことにする) の間でデータを移動・共用する方法として、データをリムーバブルメディアに入れてオフラインで持ち運ぶ方法がある。例えば 2.5 インチの USB 2.0 インターフェースの外付けハードディスクには容量が 100GB のものもあり、大量のデータを持ち運ぶのに便利である。しかし、もしもその外付けハードディスクを運搬中に紛失してしまったり、盗難にあったりするとデータが漏洩することになり危険である。

このようなとき、その外付けハードディスクを NTFS でフォーマットしておいて、暗号化ファイルシステムを使用すれば、たとえハードディスクが盗まれてもデータは安全である。USB メモリなども、convert.exe コマンドで NTFS に変換すれば同様に利用できる (例: E: ドライブを変換する場合、convert E: /FS:NTFS を実行)。

このような運用をする場合、暗号化したデータを PC1, PC2 のどちらでも読めるようにする必要がある。例えばPC1 の user1 と PC2 の user2 の間でデータを読み書きできるようにするには、両者の EFS 証明書を互いにインポートしておく必要がある。つまり user1 は user2 がエクスポートした証明書をインポートし、user2 は user1 がエクスポートした証明書をインポートする。こうすることによって、外付けハードディスクをどちらの PC につないだ場合でも、その中のデータを問題なく読み書きできるようになる。

この場合に注意することは、上でも述べたように、「データのアクセスに成功するとそのファイルの EFS 証明書は現在のユーザーの EFS 証明書で置き換えられる」という点である。あるファイルを user1 が暗号化して保存したものを user2 (user1 の証明書をインポートしてある) がアクセスすると、それだけでそのファイルの証明書は user2 のもので置き換えられる。従って、外付けハードディスクを何度も運搬してファイルを互いに参照したりすると、外付けハードディスクの中には証明書が user1 のファイルと証明書が user2 のファイルが混在することになる。もしも第三の PC でその外付けハードディスクのファイルをすべて読めるようにしようとする場合は、そのユーザーは user1 の証明書と user2 の証明書の両方をインポートする必要がある。

証明書がたくさんになることを避けるには、PC1 の user1 の EFS 証明書と PC2 の user2 の EFS 証明書が同じものであればよい。証明書をそろえるのは以下の方法でできるが、どちらかのユーザーがまだ一度も暗号化ファイルを作成していない場合が望ましい。以下の例では user1 の証明書にそろえる (user2 の EFS 証明書を user1 のものと同じにする) 場合を示すが、user2 がまだ一度も暗号化ファイルを作成したことがない (最初から「個人」タブの中が空になっている) なら、エクスポート作業がいらないので簡単である。

  1. user1 が自分の EFS 証明書を (秘密鍵を含めて) user1.pfx ファイルとしてエクスポートする。「個人」タブで証明書のアイコンをダブルクリックすると表示されるウィンドウの「詳細」タブで「表示」を「<すべて>」にするとリストの下の方に「拇印」という欄があるので、それをクリックして表示される文字列 (40桁の16進数) をメモしておく (選択して Ctrl-C でコピーできる)。
  2. user2 が暗号化ファイルを作成したことがあるなら、自分の EFS 証明書を (秘密鍵を含めて) user2.pfx としてエクスポートし、保存しておく。証明書の拇印もメモしておく。
  3. user2 の「個人」タブから user2 の EFS 証明書を削除する。「個人」タブの中に“目的”が“暗号化ファイル システム”の証明書が一つもないことを確認する。
  4. user2 は、いったんログオフして、再度ログオンする。
  5. user2 の「個人」タブを開き、user1 が作成した user1.pfx をインポートする。
  6. user2 は、暗号化操作を一度行う。(例えばフォルダを一つ作って、そのプロパティの詳細設定で暗号化をオンにする)。
  7. user2 が以前にエクスポートした user2.pfx があるなら、それを再度インポートする (そうしないと以前に作成した暗号化ファイルにアクセスできない)
  8. できれば、user2 は cipher /u コマンドを使って、古い暗号化ファイルに付加された証明書をすべて新しいもの (現在使っている、user1 と同じもの) に更新する。そうすれば user2 は「個人」タブから古い方の証明書を再度削除できる。削除するときは拇印をチェックして証明書を確認すること。なお、暗号化ファイルに現在付加されている証明書の拇印は、ファイルを右クリックして表示されるプロパティの「全般」タブで「属性」の「詳細設定」ボタンをクリックし、「暗号化属性」の「詳細」ボタンをクリックすると確認できる。

この手法は、PC を新調したので新しい PC の新しいアカウントにこれまでの暗号化資産を移行したい、といった時にも便利である。証明書をそろえておくことのもう一つの利点は、どちらかの PC の Windows が破損して証明書ファイルが必要になったとき、他方の PC からエクスポートして取り出すことができるので、互いにバックアップになる、という点である (最初にインポートするときに「エクスポート可能にする」にチェックしておくこと)。つまり .PFX ファイルを保管した金庫にすぐアクセスできなくても証明書ファイルが取り出せる。ただし双方の PC のログオン パスワードは十分長くて推測されにくいものにし、厳重に管理すること。



〔目次〕  〔全項展開〕