日々のコンピュータ情報の集積と整理

Dr.ウーパのコンピュータ備忘録

2015年3月25日水曜日

画像処理:モザイクによって文字情報を処理した場合の、パターン数について考える

イントロダクション

以前、「シリーズ安全な画像処理」として、情報を保護するためのモザイク処理の安全性について考えてみました。


絶対にやってはならない、情報保護のための、モザイク処理の方法 - シリーズ安全な画像処理
http://upa-pc.blogspot.com/2015/03/public-image-process-mosaic.html
Dr.ウーパのコンピュータ備忘録


そこでは、モザイクの粒度が荒いと、元の情報が推測される恐れがあることを記載しました。

今回は、十分なモザイクの粒度を考えるうえで大事となる、文字情報をモザイク処理した場合の、パターン数について考えてみます。


字情報をモザイク処理した場合の、パターン数


前提条件

今回は、条件を分かりやすくするために、文字 1 文字の全体を、モザイク処理によって均質な色にした場合を考えてみます。

文字 1 文字の全体を、 モザイク処理によって均質な色にした場合
文字 1 文字の全体を、
モザイク処理によって均質な色にした場合


モザイク処理の方式はいくつかありますが、ここではモザイクの 1 つのブロック内のピクセルの色を平均する方法によるモザイク処理方式を用います。

画像の色情報は、白から黒の濃淡で表されるグレースケールとします。
色の階調情報のデータ量は、一般的な 256 段階(8bit)とします。


考え方の基本

文字情報をモザイク処理によって隠した場合に、元の情報が推測できるかどうかの条件の一つに、

元の情報のパターン数と、モザイク処理の後に均質化した場合の色のデータ量(階調数)の対応付けが容易か?

という点があります。


例えば、元の情報が "a", "b", "c" の 3 種類しかない場合には、その 1 文字全体をモザイク処理によって均質の色にした場合でも、色のパターンとしては最大 3 種類しかありません。

画像ファイルの色の階調情報が 256 段階(8bit) で保存されている場合、モザイク処理後の色の被りがないのであれば、元の情報と、モザイク処理後の色が 1 : 1 で対応付けられてしまいます。

このような条件であれば、モザイク後の画像から、元の情報を推測することは容易です。


では、元の情報のパターン数をいくつか考えたうえで、それらを前提条件の条件で処理した場合に、元の情報を推測できる可能性について考えてみます。


なお、文字のビットマップ情報については考えず、あくまで文字の数でのみ考えます。
つまり、理想的に、元の文字情報が、グレースケール 256 段階(8bit)に分散された場合について考えるということです。

そのため、文字のビットマップ情報を、モザイク処理によって均質化した場合には、ある種の色の偏りが発生する可能性があり、文字ごとに元の情報を推測できる可能性の大・小がぶれる可能性があります。


元の情報:数値情報

数値情報は、0 から 9 までの、全 10 種類の文字によってあらわされます。

文字一覧0123456789


それらをモザイク処理によって均質化した時の色のパターン数は、モザイク処理後の色かぶりが無いという条件であれば、全 10 種類となります。


モザイク処理によって均質化した色情報が、均等にばらけていると仮定した場合には、

グレースケール 256 段階(8bit) > 元情報 全 10 種類

となります。


従って、モザイク処理の後に均質化した場合の色と元の情報は、1 : 1 で復元することが可能になります。


元の情報:アルファベット情報(大文字、または小文字のみ)

アルファベット情報(大文字、または小文字のみ)は、a から z までの、全 26 種類の文字によってあらわされます。

文字一覧abcdefghijklmnopqrstuvwxyz
又は、
ABCDEFGHIJKLMNOPQRSTUVWXYZ


それらをモザイク処理によって均質化した時の色のパターン数は、モザイク処理後の色かぶりが無いという条件であれば、全 26 種類となります。


モザイク処理によって均質化した色情報が、均等にばらけていると仮定した場合には、

グレースケール 256 段階(8bit) > 元情報 全 26 種類

となります。


従って、モザイク処理の後に均質化した場合の色と元の情報は、1 : 1 で復元することが可能になります。


元の情報:アルファベット情報(大文字と小文字)

アルファベット情報(大文字と小文字)は、{a から z まで}[26種類]と {A から Z まで}[26種類]の、全 52 種類の文字によってあらわされます。

文字一覧abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ


それらをモザイク処理によって均質化した時の色のパターン数は、モザイク処理後の色かぶりが無いという条件であれば、全 52 種類となります。


モザイク処理によって均質化した色情報が、均等にばらけていると仮定した場合には、

グレースケール 256 段階(8bit) > 元情報 全 52 種類

となります。


従って、モザイク処理の後に均質化した場合の色と元の情報は、1 : 1 で復元することが可能になります。


元の情報:アルファベット情報(大文字と小文字)と数値

アルファベット情報(大文字と小文字)と数値は、{a から z まで}[26種類]と {A から Z まで}[26種類]と{0 から 9 まで}[10種類]の、全 62 種類の文字によってあらわされます。

文字一覧abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
0123456789


それらをモザイク処理によって均質化した時の色のパターン数は、モザイク処理後の色かぶりが無いという条件であれば、全 62 種類となります。


モザイク処理によって均質化した色情報が、均等にばらけていると仮定した場合には、

グレースケール 256 段階(8bit) > 元情報 全 62 種類

となります。


従って、モザイク処理の後に均質化した場合の色と元の情報は、1 : 1 で復元することが可能になります。


元の情報:アルファベット情報(大文字と小文字)と数値と記号

記号は、ascii コードに定義されている記号について考えます。

ASCII文字コード : IT用語辞典
http://e-words.jp/p/r-ascii.html


すると、アルファベット情報(大文字と小文字)と数値と記号の文字情報は、ascii コード 33(!) から 126(~)までの全 94 種類の文字によってあらわされます。
(ascii コードから、制御文字と空白文字を除いた、図形文字の数です。)

文字一覧!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~


それらをモザイク処理によって均質化した時の色のパターン数は、モザイク処理後の色かぶりが無いという条件であれば、全 94 種類となります。


モザイク処理によって均質化した色情報が、均等にばらけていると仮定した場合には、

グレースケール 256 段階(8bit) > 元情報 全 94 種類

となります。


従って、モザイク処理の後に均質化した場合の色と元の情報は、1 : 1 で復元することが可能になります。


元の情報:アルファベット情報(大文字と小文字)と数値と記号と日本語

アルファベット情報(大文字と小文字)と数値と記号と日本語の文字情報は、上記の「アルファベット情報(大文字と小文字)と数値と記号」の文字情報数に、日本語の文字情報数を加えたもので考えます。

日本語の文字は、日常使わない文字等を考えるとさまざまなパターンがあるのですが、ここでは、以下のひらがな、カタカナ、常用漢字についてパターン数を考えます。

ひらがな[83 種類]
ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん

カタカナ[86 種類]
ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲン
ヴヵヶ

文字と文字コード
http://www.nii.ac.jp/hrd/HTML/OpenHouse/h15/archive/pdf/miyazawa.pdf


常用漢字[2136 種類]

文化庁 | 常用漢字表の内閣告示等について | 「常用漢字表」(平成22年内閣告示第2号)
http://www.bunka.go.jp/kokugo_nihongo/kokujikunrei_h221130.html



アルファベット情報(大文字と小文字)と数値と記号[94 種類]
日本語(ひらがな、カタカナ、常用漢字)[2305 種類]

よって、

アルファベット情報(大文字と小文字)と数値と記号と日本語(ひらがな、カタカナ、常用漢字):全 2399 種類

として考えます。


それらをモザイク処理によって均質化した時の色のパターン数は、モザイク処理後の色かぶりを考えると、全 256 種類(文字情報が 全 2399 種類 あり、色の階調情報の上限 256 種類を超えているため、256 種類が上限になります)となります。


モザイク処理によって均質化した色情報が、均等にばらけていると仮定した場合には、

・グレースケール 256 段階(8bit) < 元情報 全 2399 種類

・元情報 全 2399 種類 / グレースケール 256 段階(8bit) ≒ 9.4

となります。

つまり、モザイク処理によって均質化した 1 つの色情報につき、候補となる文字が 9 パターン存在することを意味しています。


従って、モザイク処理の後に均質化した場合の色と元の情報は、1 : 9 となり、1/9 の確率で元の情報を当てることができます。


まとめ

以上のように、文字 1 文字をモザイク処理によって、均質の色として表現した場合には、ascii コードで表現されるようなアルファベット情報(大文字と小文字)と数値と記号を組み合わせた程度の文字パターン数のでは、元の文字と処理後のモザイクが 1対1で対応してしまう可能性があることが分かりました。


なお、ここではあくまで実際の文字のビットマップ情報を無視して計算しているということを強調しておきます。

あくまで、以上の情報は、目安としてお考えください。


なお、今回は文字 1 文字を、モザイク範囲の元の色の平均値で均一の色情報に塗りつぶすモザイクを考えました。

モザイクの適用範囲によって、

  • 1 文字が、複数のモザイクのセルで構成される
  • 複数の文字が、1 つのモザイクのセルで構成される

パターンがあり、それらのパターンのモザイクの元の情報の推測可能性については別途考える必要があります。


また、文字同士が何らかの意味を持って構成されている場合(例:英単語など)、個々のモザイクの色情報からの推測は難しくても、複数のモザイクの色を組み合わせることで、元の情報を推測することが容易になるケースもあります。


意図しない情報を公開しないように、モザイク処理は気を付けて使いたいものです。


追記:
実際の文字情報のビットマップに基づいて、パターン数を計算してみました。

画像処理:文字情報をモザイク処理した場合の、パターン数とその分布(Windowsテキストボックス)
http://upa-pc.blogspot.com/2015/03/public-image-process-mosaic-pattern-check.html







関連記事

関連記事を読み込み中...

同じラベルの記事を読み込み中...