EFS(暗号化ファイルシステム)の鍵は証明書ストアに保存される

今日は転職した先輩が久しぶりに遊びにきました。開口一番

先輩「EFS の鍵をなくしちゃったんだけどさぁ〜,なんとか復号する方法ない?」

と聞かれました。zip とか Office とかの暗号化ならまだしも破れると思いますけど,そもそも鍵をなくしたってどういうことですか?

先「SSL のテストで自己証明書を大量に登録しててさぁ〜ばっさり消したときに一緒に消しちゃったんだよね」
私「え,あの『インターネットオプション』にある証明書ストアに鍵があるんですか?」
先「そうなんだよ〜試してみなよ」

EFS なんてほとんど使ったことがないので,改めて確かめてみることに。でもそもそも証明書ストアに個人証明書なんて一個も入っていません。

先「とにかく試してみ」

適当なファイルを右クリック→暗号化,を選びます。パスワードを聞かれるわけでもなく,ファイル名が緑色になりました。そこであらためてインターネットオプションをみてみると…「発行先: dayflower,発行者: dayflower」なる証明書が!

私「たしかに見た目的に自己証明書とまぎらわしいですねぇ」
先「だろ〜。なんとかならない〜?」

文字入力で鍵を要求されなかったこと,安全性と簡便性を考えると SSH の公開鍵認証みたいな感じでやっているんだろうなぁと想像がつきます。おそらくファイルごとに共通鍵を生成しファイル自体はそれで暗号化,共通鍵自体を公開鍵で暗号化してファイル添付,と。だとすると秘密鍵をなくした時点で(共通鍵がよっぽど弱い物でなければ)復号はほぼ不可能でしょう。

先「やっぱそうだよね。dayflower に頼った俺が間違ってた。」
私「ΣΣ( ̄◇ ̄;)」

先輩が帰ってから調べてみたら,ページ『http://www.cybernetic-survival.net/efs.htm』がありました。暗号化方式はだいたい想像通り,そして運よく「回復エージェント」によって署名された共通鍵が付着していれば復号できるかもしれません。はてさて先輩のメールアドレスどこやったかなぁ…

追記

Windowsにおける物理アクセス対策 − EFSとSYSKEY』にはグラフィカルな模式図があってわかりやすいです。

リモートマシンのディスクへのコピーには注意

というところは盲点かも。