コンピュータのフォレンジック調査で使うツールは基本的に海外製品ばかりですので、日本語文字列の取り扱いが時々アレだったりします。最近は Unicode でなんとかなるようになりつつありますが、製品のQA部隊から「何をテストしておけばいいのか?」とか急に聞かれると困るので、過去の経験上で思いつくことを適当にメモ。主に電子メール関係を考えてますが、他にもテストしたほうがよいパターンはいろいろある気もします・・・
メール本文のエンコード方式
Windows のコードページでいくと、50221(半角カナを含むJIS)、65000(UTF-7)、65001(UTF-8) りをテストしておけば最近はOKなんでしょうかね。念のため 932 とか 51932 なケースもやっておくと安心かもしれません。
主には 50220 でOKな気がしていたのですが、Outlookだと設定で 50221 を選択できるのと、「UnicodeによるJIS X0213実装入門asin:4891006080」によると、ISO-2022-JPは 50221 という記述なので、50221 で半角カナ文字を含むケースをテストですかね。
でもって、Base64 と Quoted-Printable を試すと。
Outlook でテキスト形式の電子メール メッセージをエンコードする方法
http://support.microsoft.com/kb/278134/ja
個人的にはQuoted-Printable なケースでよく文字化けしているケースを見る気がします。
海外との多言語でのやり取りでは UTF-8 が多い気がしないでもないのですが、UTF-16 とか使うケースもあるんですかね。
機種依存文字
使わないのがマナーというのはすでに過去のお話なのかもしれませんが、よく見かける丸付き数字の?とか、?などの文字列。化けるというよりは違う字形で表示されるというだけかもですが。
参照:利用者:Suisui/機種依存文字テスト
だめ文字が含まれるケース
Shift_JISの2バイト目に区切り文字列と同一パターンが含まれているケース。
「能力」を Shift_JIS(CP 932)の 16進数パターンで表現すると「\x94\x5C\x97\xCD」となる、円マーク記号(\) \x5c が含まれる文字列が Subject や添付ファイル名に含まれるケースで、\x5c 部分で分割されてしまうといったケースがありますね。
参照:2バイト目が5C等に成りうることによる問題
電子メールというよりは添付されているZIPファイルの解析などで出くわすケースでしょうか。ZIPファイルに含まれる日本語ファイル名は Shift_JIS だったりするケースで、だめ文字が含まれているとマウント処理がおかしな結果になります。*1
*1:EnCaseでも以前あった問題ですねZIPファイルをマウントすると能がフォルダ扱いになってましたが今は直ってます
HTMLメールとリッチテキスト形式
「修正箇所とコメントは赤字にしてあります」と言われても、手元のメーラでは黒字しかなくて悲しい思いをして以来、Outlookを使うようになりましたが・・・
RTFファイル
添付ファイルとして、リッチテキストファイル(RTF)を試すケースでは、複数種類のツールを使って RTF を生成するほうがよいですかね。Notepad、ワードパッド、Word、OpenOffice とか。
インデックス処理
文字化けとかとは違いますが、インデックスを作成するケースでは、全角と半角混じりのパターンがどう処理されるか確認しておいた方がよいかもしれません。
例えば「Forensics」のように前半は全角英数で後半部分が半角英数のようなパターンとか、全角英数と半角英数が混在しているようなケースがありますね。これを例えば半角英数の Forensics で検索できるかどうかって辺りでしょうか。まぁインデックス処理を行うエンジンの仕様によるのかもしれませんが・・・