− 電子署名を付与した後も、真正性を保証しながら墨塗りを可能とした仕組みを教えてください。
|
宮崎: 従来の電子署名技術は、電子ファイル全体の情報から1つのハッシュ値を計算し、暗号化による電子署名を生成するのが一般的でした。ハッシュ値とは暗号化によく使われる関数の出力値で、そこから元の入力データを逆算することが事実上不可能な性質を持つものです。今回の技術では、まず表計算ファイルの各セルごとに乱数を付与し、この乱数とセルの値を結合したデータのハッシュ値を生成し、ファイル全体の要約値を計算します。そしてこれを公開鍵暗号方式※2の秘密鍵で暗号化することによって電子署名を生成するのです。セルごとに付与した乱数は表計算シートに埋め込まれ、ファイルと一緒に保存、送付されます。
このファイルをネットワーク経由などで受け取った側が公開鍵によって複号化できれば、それが確かに発信者が作成した正しいファイルだと確認することができるのです。
では、電子署名を付与されてから一定期間が経過した後、この表計算ファイルの一部の情報のみを隠して公開したい場合はどうするか―その場合は削除したいセルに墨塗りすると、そのセルからデータと乱数が削除され、代わりに電子署名時に生成したハッシュ値が埋め込まれる仕組みになっています。もちろん、一度にいくつのセルを墨塗りしてもかまいません。結果として、墨塗り前に行った電子署名を復号化して得られる要約値と、墨塗り後の文書の要約値は同じになりますから、電子署名を検証すれば、それが間違いなく当初作られた表計算ファイルであることが証明されるのです(図2)
|

図2 墨塗り〜検証の流れ
※クリックして拡大図をご覧下さい
|
| ※2 |
公開鍵暗号方式:暗号化方式の一種。暗号化に使う鍵と復号に使う鍵が異なることが特長。秘匿性保持目的で利用する場合、暗号化は、公開鍵と呼ばれるだれもが知りうる鍵を使って行い、復号は、それと対になる秘密鍵と呼ばれる特定のユーザーのみが知る鍵を使用して行う。真正性保証目的で利用する場合(電子署名として利用する場合)は、特定ユーザーのみが知る秘密鍵を使ってメッセージ(またはそのハッシュ値)を暗号化し、署名を得る。この署名を検証する際は、秘密鍵と対になる公開鍵を使用して署名を復号し、署名とともに送られてきたメッセージ(またはそのハッシュ値)と比較を行う。
|
− つまり、墨塗りしたセル以外のデータは途中で改ざんされていないという証になるわけですね。
|
宮崎: はい。必要のない個人情報や数値などを適切に削除しながら、ファイル全体は正しい開示文書であることが証明できます。いうまでもないことですが、ここでの「墨塗り」は、単に黒く表示しているという意味ではありません。秘匿すべき情報は確実に削除されているため、情報漏えいの心配がまったくないのです。最近のワープロソフトやPDF作成ソフトでも、一部の情報を隠す「墨塗り機能」を備えたものが出始めています。しかしそれらは、情報を隠す機能としては十分なものの、電子署名による真正性保証とは両立できません。両方の機能を兼ね備え、さまざまな場面でセキュアかつ柔軟に活用できるのは、私たちが開発した技術ならではのアドバンテージだと考えています。
|