(57)【要約】【課題】元の画像を復元可能なようにマスクを掛ける暗号装置を提供する。【解決手段】暗号装置１０は、受信手段１と、検出手段２と、マスク手段３と、送信手段４とを備える。受信手段１は、監視カメラ等が撮影した画像データＡを受信し、その受信した画像データＡを検出手段２へ出力する。検出手段２は、可逆マスクを掛ける対象となるマスク対象領域を画像データＡから検出し、その検出したマスク対象領域の座標を検出する。そして、検出手段２は、マスク対象領域の座標および画像データＡをマスク手段３へ出力する。マスク手段３は、マスク対象領域の座標に基づいてマスク対象領域に含まれる画素値を検出し、その画素値を構成するビット値の所望数のビットを別のビットに変換してマスク対象領域に可逆マスクを掛ける。送信手段４は、可逆マスクが掛けられた画像データＢおよびマスク対象領域の座標を送信する。【選択図】図１
2015170954.tif 000002
【特許請求の範囲】
【請求項１】
静止画または動画からなる画像データからマスクを掛けるマスク対象領域を検出する検出手段と、
前記検出手段によって検出されたマスク対象領域に、マスクを掛ける前の画像データに復元できる可逆マスクを掛けるマスク手段とを備える暗号装置。
【請求項２】
前記マスク手段は、前記マスク対象領域に含まれる元の画素値を別の画素値に変換することによって前記可逆マスクを前記マスク対象領域に掛ける、請求項１に記載の暗号装置。
【請求項３】
前記マスク手段は、前記マスク対象領域に含まれる元の画素値を示すビット値のｎ（ｎは、２以上の整数）ビットのうち、最下位ビットからｍ（ｍは、１≦ｍ≦ｎを満たす整数）ビット目までのｍビットのビット値を別のｍビットのビット値に変換することによって前記可逆マスクを前記マスク対象領域に掛ける、請求項２に記載の暗号装置。
【請求項４】
前記マスク手段は、前記検出されたマスク対象領域に、相互に異なる複数の可逆マスクを掛ける、請求項１に記載の暗号装置。
【請求項５】
前記検出手段は、前記画像データから複数のマスク対象領域を検出し、
前記マスク手段は、前記検出された複数のマスク対象領域に、相互に異なる複数の可逆マスクをそれぞれ掛ける、請求項１に記載の暗号装置。
【請求項６】
請求項１から請求項５のいずれか１項に記載の暗号装置によって前記可逆マスクが掛けられた画像データから前記マスク対象領域を抽出する抽出手段と、
前記抽出手段によって抽出されたマスク対象領域から前記可逆マスクを解除する解除手段とを備える復号装置。
【請求項７】
前記解除手段は、前記抽出されたマスク対象領域に含まれる前記別の画素値を前記元の画素値に変換することによって前記可逆マスクを解除する、請求項６に記載の復号装置。
【請求項８】
前記解除手段は、前記マスク手段が前記元の画素値を前記別の画素値に変換する変換規則に基づいて前記別の画素値を前記元の画素値に変換することによって前記可逆マスクを解除する、請求項７に記載の復号装置。
【請求項９】
前記抽出手段は、前記可逆マスクが掛けられた画像データから複数の前記マスク対象領域を抽出し、
前記解除手段は、前記複数のマスク対象領域のうち、ユーザに与えられた権限に対応したマスク対象領域から前記可逆マスクを解除する、請求項６に記載の復号装置。
【請求項１０】
請求項１から請求項５のいずれか１項に記載の暗号装置と、
請求項６から請求項９のいずれか１項に記載の復号装置とを備えるセキュリティーシステム。
【請求項１１】
静止画または動画からなる画像データの一部にマスクを掛ける動作をコンピュータに実行させるためのプログラムであって、
前記画像データからマスクを掛けるマスク対象領域を検出する第１のステップと、
前記第１のステップにおいて検出されたマスク対象領域に、マスクを掛ける前の画像データに復元できる可逆マスクを掛ける第２のステップとをコンピュータに実行させるためのプログラム。
【請求項１２】
前記第２のステップにおいて、前記可逆マスクは、前記マスク対象領域に含まれる元の画素値を別の画素値に変換することによって前記マスク対象領域に掛けられる、請求項１１に記載のコンピュータに実行させるためのプログラム。
【請求項１３】
前記第２のステップにおいて、前記可逆マスクは、前記マスク対象領域に含まれる元の画素値を示すビット値のｎ（ｎは、２以上の整数）ビットのうち、最下位ビットからｍ（ｍは、１≦ｍ≦ｎを満たす整数）ビット目までのｍビットのビット値を別のｍビットのビット値に変換することによって前記マスク対象領域に掛けられる、請求項１２に記載のコンピュータに実行させるためのプログラム。
【請求項１４】
前記第２のステップにおいて、相互に異なる複数の可逆マスクが前記検出されたマスク対象領域に掛けられる、請求項１１に記載のコンピュータに実行させるためのプログラム。
【請求項１５】
前記第１のステップにおいて、複数のマスク対象領域が前記画像データから検出され、
前記第２のステップにおいて、相互に異なる複数の可逆マスクが前記検出された複数のマスク対象領域にそれぞれ掛けられる、請求項１１に記載のコンピュータに実行させるためのプログラム。
【請求項１６】
請求項１から請求項５のいずれか１項に記載の暗号装置によって前記可逆マスクが掛けられた画像データから前記可逆マスクを解除する動作をコンピュータに実行させるためのプログラムであって、
前記可逆マスクが掛けられた画像データから前記マスク対象領域を抽出する第１のステップと、
前記第１のステップにおいて抽出されたマスク対象領域から前記可逆マスクを解除する第２のステップとをコンピュータに実行させるためのプログラム。
【請求項１７】
前記第２のステップにおいて、前記可逆マスクは、前記抽出されたマスク対象領域に含まれる前記別の画素値を前記元の画素値に変換することによって解除される、請求項１６に記載のコンピュータに実行させるためのプログラム。
【請求項１８】
前記第２のステップにおいて、前記可逆マスクは、前記元の画素値を前記別の画素値に変換する変換規則に基づいて前記別の画素値を前記元の画素値に変換することによって解除される、請求項１７に記載のコンピュータに実行させるためのプログラム。
【請求項１９】
前記第１のステップにおいて、複数の前記マスク対象領域は、前記可逆マスクが掛けられた画像データから抽出され、
前記第２のステップにおいて、前記可逆マスクは、前記複数のマスク対象領域のうち、ユーザに与えられた権限に対応したマスク対象領域から解除される、請求項１６に記載のコンピュータに実行させるためのプログラム。
【請求項２０】
請求項１１から請求項１５のいずれか１項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項２１】
請求項１６から請求項１９のいずれか１項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、暗号装置、復号装置、それらを備えたセキュリティーシステム、それらで実行されるプログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
従来、画像にマスクを掛ける技術として、画像からマスクを掛けたい部分を抽出して保存し、その抽出した部分を黒塗りにすることによってマスクを掛ける技術が知られている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−１４６８９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、従来の技術では、一旦、マスクを掛けると、元の画像に戻すことができないという問題がある。
【０００５】
そこで、この発明は、かかる問題を解決するためになされたものであり、その目的は、元の画像を復元可能なようにマスクを掛ける暗号装置を提供することである。
【０００６】
また、この発明の別の目的は、元の画像を復元可能なようにマスクを掛けられた画像を復元可能な復号装置を提供することである。
【０００７】
更に、この発明の別の目的は、元の画像を復元可能なようにマスクを掛ける暗号装置を備えたセキュリティーシステムを提供することである。
【０００８】
更に、この発明の別の目的は、元の画像を復元可能なようにマスクを掛ける動作をコンピュータに実行させるためのプログラムを提供することである。
【０００９】
更に、この発明の別の目的は、元の画像を復元可能なようにマスクを掛けられた画像を復元する動作をコンピュータに実行させるためのプログラムを提供することである。
【００１０】
更に、この発明の別の目的は、元の画像を復元可能なようにマスクを掛ける動作をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供することである。
【００１１】
更に、この発明の別の目的は、元の画像を復元可能なようにマスクを掛けられた画像を復元する動作をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供することである。
【課題を解決するための手段】
【００１２】
この発明の実施の形態によれば、暗号装置は、検出手段と、マスク手段とを備える。検出手段は、静止画または動画からなる画像データからマスクを掛けるマスク対象領域を検出する。マスク手段は、検出手段によって検出されたマスク対象領域に、マスクを掛ける前の画像データに復元できる可逆マスクを掛ける。
【００１３】
この発明の実施の形態による暗号装置は、画像データからマスク対象領域を検出し、その検出したマスク対象領域に可逆マスクを掛ける。その結果、マスク対象領域の画像データは、元の画像データに復元可能である。
【００１４】
従って、元の画像を復元できるようにマスクを掛けることができる。
【００１５】
好ましくは、マスク手段は、マスク対象領域に含まれる元の画素値を別の画素値に変換することによって可逆マスクをマスク対象領域に掛ける。
【００１６】
マスク手段は、マスク対象領域の画素値を変換することによってマスク対象領域に可逆マスクを掛ける。
【００１７】
従って、可逆マスクをマスク対象領域に容易に掛けることができる。
【００１８】
好ましくは、マスク手段は、マスク対象領域に含まれる元の画素値を示すビット値のｎ（ｎは、２以上の整数）ビットのうち、最下位ビットからｍ（ｍは、１≦ｍ≦ｎを満たす整数）ビット目までのｍビットのビット値を別のｍビットのビット値に変換することによって可逆マスクをマスク対象領域に掛ける。
【００１９】
マスク手段は、マスク対象領域に含まれる元の画素値を示すビット値のうち、所望のｍビットを別のｍビットに変換してマスク対象領域に可逆マスクを掛ける。その結果、所望のビット数のビット値が別のビット値に変換される。そして、変換されたビット数を秘密に保持することによって、元の画像が復元でき難くなる。
【００２０】
従って、セキュリティーを向上できる。
【００２１】
好ましくは、マスク手段は、検出されたマスク対象領域に、相互に異なる複数の可逆マスクを掛ける。その結果、複数の可逆マスクがマスク対象領域に掛けられ、可逆マスクの個数を秘密に保持することによって、元の画像が復元でき難くなる。
【００２２】
従って、セキュリティーを向上できる。
【００２３】
好ましくは、検出手段は、画像データから複数のマスク対象領域を検出する。マスク手段は、検出された複数のマスク対象領域に、相互に異なる複数の可逆マスクをそれぞれ掛ける。
【００２４】
従って、画像データの複数の箇所に可逆マスクを掛けることができる。
【００２５】
また、この発明の実施の形態によれば、復号装置は、抽出手段と、解除手段とを備える。抽出手段は、請求項１から請求項５のいずれか１項に記載の暗号装置によって可逆マスクが掛けられた画像データからマスク対象領域を抽出する。解除手段は、抽出手段によって抽出されたマスク対象領域から可逆マスクを解除する。
【００２６】
この発明の実施の形態による復号装置は、暗号装置によって可逆マスクが掛けられたマスク対象領域を抽出し、その抽出したマスク対象領域から可逆マスクを解除する。
【００２７】
従って、元の画像を正確に復元できる。
【００２８】
好ましくは、解除手段は、抽出されたマスク対象領域に含まれる別の画素値を元の画素値に変換することによって可逆マスクを解除する。
【００２９】
解除手段は、マスク対象領域に含まれる画素値を変換することによって可逆マスクを解除する。
【００３０】
従って、容易に元の画像を復元できる。
【００３１】
好ましくは、解除手段は、マスク手段が元の画素値を別の画素値に変換する変換規則に基づいて別の画素値を元の画素値に変換することによって可逆マスクを解除する。その結果、マスク手段が画素値の変換に用いた変換規則に基づいてマスク対象領域の画素値が元の画素値に変換される。
【００３２】
従って、元の画像を正確に復元できる。
【００３３】
好ましくは、抽出手段は、可逆マスクが掛けられた画像データから複数のマスク対象領域を抽出する。解除手段は、複数のマスク対象領域のうち、ユーザに与えられた権限に対応したマスク対象領域から可逆マスクを解除する。
【００３４】
従って、ユーザの権限に応じて可逆マスクを解除できる。
【００３５】
更に、この発明の実施の形態によれば、キュリティーシステムは、請求項１から請求項５のいずれか１項に記載の暗号装置と、請求項６から請求項９のいずれか１項に記載の復号装置とを備える。
【００３６】
暗号装置は、マスク対象領域に可逆マスクを掛け、復号装置は、マスク対象領域から可逆マスクを解除する。
【００３７】
従って、元の画像を復元できる。
【００３８】
更に、この発明の実施の形態によれば、コンピュータに実行させるためのプログラムは、静止画または動画からなる画像データの一部にマスクを掛ける動作をコンピュータに実行させるためのプログラムであって、画像データからマスクを掛けるマスク対象領域を検出する第１のステップと、第１のステップにおいて検出されたマスク対象領域に、マスクを掛ける前の画像データに復元できる可逆マスクを掛ける第２のステップとをコンピュータに実行させるためのプログラムである。
【００３９】
プログラムをコンピュータに実行させることによって、マスク対象領域が画像データから検出され、可逆マスクがマスク対象領域に掛けられる。その結果、マスク対象領域の画像データは、元の画像データに復元可能である。
【００４０】
従って、元の画像を復元できる。
【００４１】
好ましくは、第２のステップにおいて、可逆マスクは、マスク対象領域に含まれる元の画素値を別の画素値に変換することによってマスク対象領域に掛けられる。
【００４２】
プログラムをコンピュータに実行させることによって、マスク対象領域の画素値が変換され、可逆マスクがマスク対象領域に掛けられる。
【００４３】
従って、可逆マスクをマスク対象領域に容易に掛けることができる。
【００４４】
好ましくは、第２のステップにおいて、可逆マスクは、マスク対象領域に含まれる元の画素値を示すビット値のｎ（ｎは、２以上の整数）ビットのうち、最下位ビットからｍ（ｍは、１≦ｍ≦ｎを満たす整数）ビット目までのｍビットのビット値を別のｍビットのビット値に変換することによってマスク対象領域に掛けられる。
【００４５】
プログラムをコンピュータに実行させることによって、マスク対象領域に含まれる元の画素値を示すビット値のうち、所望のｍビットが別のｍビットに変換され、可逆マスクがマスク対象領域に掛けられる。その結果、所望のビット数のビット値が別のビット値に変換される。そして、変換されたビット数を秘密に保持することによって、元の画像が復元でき難くなる。
【００４６】
従って、セキュリティーを向上できる。
【００４７】
好ましくは、第２のステップにおいて、相互に異なる複数の可逆マスクが、検出されたマスク対象領域に掛けられる。その結果、複数の可逆マスクがマスク対象領域に掛けられ、可逆マスクの個数を秘密に保持することによって、元の画像が復元でき難くなる。
【００４８】
従って、セキュリティーを向上できる。
【００４９】
好ましくは、第１のステップにおいて、複数のマスク対象領域が画像データから検出され、第２のステップにおいて、相互に異なる複数の可逆マスクが検出された複数のマスク対象領域にそれぞれ掛けられる。
【００５０】
従って、画像データの複数の箇所に可逆マスクを掛けることができる。
【００５１】
更に、この発明の実施の形態によれば、コンピュータに実行させるためのプログラムは、請求項１から請求項５のいずれか１項に記載の暗号装置によって可逆マスクが掛けられた画像データから可逆マスクを解除する動作をコンピュータに実行させるためのプログラムであって、可逆マスクが掛けられた画像データからマスク対象領域を抽出する第１のステップと、第１のステップにおいて抽出されたマスク対象領域から可逆マスクを解除する第２のステップとをコンピュータに実行させるためのプログラムである。
【００５２】
プログラムをコンピュータに実行させることによって、可逆マスクが掛けられたマスク対象領域が抽出され、その抽出したマスク対象領域から可逆マスクが解除される。
【００５３】
従って、元の画像を正確に復元できる。
【００５４】
好ましくは、第２のステップにおいて、可逆マスクは、抽出されたマスク対象領域に含まれる別の画素値を元の画素値に変換することによって解除される。
【００５５】
従って、容易に元の画像を復元できる。
【００５６】
好ましくは、第２のステップにおいて、可逆マスクは、元の画素値を別の画素値に変換する変換規則に基づいて別の画素値を元の画素値に変換することによって解除される。その結果、可逆マスクを掛けるときの画素値の変換に用いた変換規則に基づいてマスク対象領域の画素値が元の画素値に変換される。
【００５７】
従って、元の画像を正確に復元できる。
【００５８】
好ましくは、第１のステップにおいて、複数のマスク対象領域は、可逆マスクが掛けられた画像データから抽出され、第２のステップにおいて、可逆マスクは、複数のマスク対象領域のうち、ユーザに与えられた権限に対応したマスク対象領域から解除される。
【００５９】
複数のマスク対象領域のうち、ユーザに与えられた権限に対応したマスク対象領域から可逆マスクが解除される。
【００６０】
従って、ユーザの権限に応じて可逆マスクを解除できる。
【００６１】
更に、この発明の実施の形態によれば、記録媒体は、請求項１１から請求項１５のいずれか１項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００６２】
更に、この発明の実施の形態によれば、記録媒体は、請求項１６から請求項１９のいずれか１項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００６３】
この発明の実施の形態によれば、元の画像を復元できるようにマスクを掛けることができる。
【図面の簡単な説明】
【００６４】
【図１】この発明の実施の形態による暗号装置の構成を示す概略図である。
【図２】図１に示す検出手段の動作を説明するための図である。
【図３】変換テーブルの概念図である。
【図４】可逆マスクを掛ける方法を説明するための図である。
【図５】可逆マスクを掛けるパターンを示す図である。
【図６】図１に示す暗号装置の動作を説明するためのフローチャートである。
【図７】図６に示すステップＳ３の詳細な動作を説明するためのフローチャートである。
【図８】図６に示すステップＳ３の別の詳細な動作を説明するためのフローチャートである。
【図９】図６に示すステップＳ３の更に別の詳細な動作を説明するためのフローチャートである。
【図１０】この発明の実子の形態による復号装置の構成を示す概略図である。
【図１１】認証テーブルの概念図である。
【図１２】可逆マスクを解除する方法を説明するための図である。
【図１３】可逆マスクの解除パターンを示す図である。
【図１４】図１０に示す復号装置の動作を説明するためのフローチャートである。
【図１５】図１４に示すステップＳ４４の詳細な動作を説明するためのフローチャートである。
【図１６】複数の可逆マスクがそれぞれ複数のマスク対象領域に掛けられた場合における図１４のステップＳ４３，Ｓ４４の詳細な動作を説明するためのフローチャートである。
【図１７】複数の可逆マスクが１個のマスク対象領域に掛けられた場合における図１４のステップＳ４３，Ｓ４４の詳細な動作を説明するためのフローチャートである。
【図１８】この発明の実施の形態によるセキュリティーシステムの構成を示す概略図である。
【発明を実施するための形態】
【００６５】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【００６６】
図１は、この発明の実施の形態による暗号装置の構成を示す概略図である。図１を参照して、この発明の実施の形態による暗号装置１０は、受信手段１と、検出手段２と、マスク手段３と、送信手段４とを備える。
【００６７】
受信手段１は、外部から画像データＡを受信し、その受信した画像データＡを検出手段２へ出力する。画像データＡは、静止画または動画からなる画像データである。より具体的には、画像データＡは、ＤＶＤ等の映像メディア、映画、地上デジタル放送、監視カメラ、パーソナルコンピュータ、デジタルカメラ、デジタルビデオ、スマートフォンおよび携帯電話等によって扱われるデジタル画像の画像データである。
【００６８】
検出手段２は、受信手段１から画像データＡを受け、その受けた画像データＡから可逆マスクを掛ける対象となるマスク対象領域を検出する。この場合、検出手段２は、パーセプトロン、判別分析、ニューラルネットワーク、ＳＶＭ（Support Vector Machines）、アンサンブル学習法、部分空間法、モルフォロジカルウェーブレット等の公知のパターン認識技術、またはInterest operator、Scale space、Wavelet、ＳＩＦＴ（Scale Invariant Feature Transform）、Ｈａａｒ特徴、Ａｄａ  ｂｏｏｓｔ、テンプレートマッチング、ＤＰマッチングおよびグラフマッチング等の公知の画像特徴抽出技術を用いてマスク対象領域を検出する。
【００６９】
また、検出手段２は、その検出したマスク対象領域を示す座標［ｘ１〜ｘｐ，ｙ１〜ｙｑ］を検出する。そして、検出手段２は、画像データＡと、座標［ｘ１〜ｘｐ，ｙ１〜ｙｑ］とをマスク手段３へ出力する。
【００７０】
マスク手段３は、画像データＡと座標［ｘ１〜ｘｐ，ｙ１〜ｙｑ］とを検出手段２から受け、その受けた画像データＡと座標［ｘ１〜ｘｐ，ｙ１〜ｙｑ］とに基づいて、後述する方法によって、マスク対象領域に可逆マスクを掛ける。そして、マスク手段３は、座標［ｘ１〜ｘｐ，ｙ１〜ｙｑ］と、可逆マスクを掛けた画像データＢとを送信手段４へ出力する。
【００７１】
送信手段４は、座標［ｘ１〜ｘｐ，ｙ１〜ｙｑ］と画像データＢとをマスク手段３から受け、その受けた座標［ｘ１〜ｘｐ，ｙ１〜ｙｑ］と画像データＢとを後述する復号装置へ送信する。
【００７２】
図２は、図１に示す検出手段２の動作を説明するための図である。図２を参照して、画像データＡは、画素値Ｇ１１〜Ｇ７７をそれぞれ有する複数の画素からなる。検出手段２は、画像データＡを受信手段１から受ける。そして、検出手段２は、上述した公知の方法によってマスク対象領域ＭＳＫを検出する。マスク対象領域ＭＳＫは、一般的には、画像データＡのうち、プライバシーに関わる部分の画素値を有する領域からなる。より具体的には、マスク対象領域ＭＳＫは、人物（特に顔）、家の窓、パーソナルコンピュータのモニタ、現金自動支払機（ＡＴＭ）の操作部等の画素値を有する領域からなる。そして、人物等の移動物体を検出するには、上述したパターン認識技術または画像特徴抽出技術が適している。
【００７３】
マスク対象領域ＭＳＫは、頂点Ａ，Ｂ，Ｃ，Ｄを有する四角形の領域からなる。従って、検出手段２は、マスク対象領域ＭＳＫを検出すると、マスク対象領域ＭＳＫの４個の頂点Ａ，Ｂ，Ｃ，Ｄの座標［ｘ１，ｙ１］，［ｘｐ，ｙ１］，［ｘｐ，ｙｑ］，［ｘ１，ｙｑ］を検出する。そして、検出手段２は、画像データＡと、座標［ｘ１，ｙ１］，［ｘｐ，ｙ１］，［ｘｐ，ｙｑ］，［ｘ１，ｙｑ］とをマスク手段３へ出力する。
【００７４】
また、検出手段２は、複数のマスク対象領域を公知の方法によって検出し、その検出した複数のマスク対象領域の複数の座標を同様にして検出する。そして、検出手段２は、画像データＡと複数の座標とをマスク手段３へ出力する。
【００７５】
このように、検出手段２は、少なくとも１つのマスク対象領域を検出し、その検出した少なくとも１つのマスク対象領域の少なくとも１つの座標を検出する。そして、検出手段２は、画像データＡと少なくとも１つの座標とをマスク手段３へ出力する。
【００７６】
図３は、変換テーブルの概念図である。図３の（ａ）を参照して、変換テーブルＴＢＬ１は、画素値の変換対象のビットＧＢ１と、乱数ＲＮ１と、変換後のビット値Ｂ１とを含む。
【００７７】
画素値Ｇ１１〜Ｇ７７の各々は、例えば、８ビットのビット値ｇ１ｇ２ｇ３ｇ４ｇ５ｇ６ｇ７ｇ８からなる。変換対象のビットＧＢ１は、ビット値ｇ１ｇ２ｇ３ｇ４ｇ５ｇ６ｇ７ｇ８の最下位ビットｇ８からなる。最下位ビットｇ８は、“０”または“１”からなるので、変換対象のビットＧＢ１は、“０”または“１”からなる。
【００７８】
変換対象のビットＧＢ１が１ビットからなる場合、乱数ＲＮ１も１ビットからなる。従って、乱数ＲＮ１は、“０”または“１”からなる。
【００７９】
変換対象のビットＧＢ１および乱数ＲＮ１が“０”である場合、変換対象のビットＧＢ１（＝“０”）は、“０”に変換される（即ち、“０”が維持される。）。変換対象のビットＧＢ１が“０”であり、乱数ＲＮ１が“１”である場合、変換対象のビットＧＢ１（＝“０”）は、“１”に変換される。
【００８０】
変換対象のビットＧＢ１が“１”であり、乱数ＲＮ１が“０”である場合、変換対象のビットＧＢ１（＝“１”）は、“１”に変換される（即ち、“１”が維持される。）。
【００８１】
変換対象のビットＧＢ１が“１”であり、乱数ＲＮ１が“１”である場合、変換対象のビットＧＢ１（＝“１”）は、“０”に変換される。
【００８２】
このように、変換対象のビットＧＢ１および乱数ＲＮ１が１ビットからなる場合、ビット値Ｂ１は、変換対象のビットＧＢ１と乱数ＲＮ１との排他的論理和の演算結果からなる。
【００８３】
図３の（ｂ）を参照して、変換テーブルＴＢＬ２は、画素値の変換対象のビットＧＢ２と、乱数ＲＮ２と、変換後のビット値Ｂ２とを含む。
【００８４】
変換対象のビットＧＢ２および乱数ＲＮ２の各々は、２ビットからなる。そして、変換対象のビットＧＢ２は、具体的には、ビット値ｇ１ｇ２ｇ３ｇ４ｇ５ｇ６ｇ７ｇ８の最下位ビットから２ビット目までの２ビットｇ７ｇ８からなる。従って、変換対象のビットＧＢ２は、“００”，“０１”，“１０”，“１１”のいずれかからなる。同様に、乱数ＲＮ２も、“００”，“０１”，“１０”，“１１”のいずれかからなる。
【００８５】
変換対象のビットＧＢ２が“００”であり、乱数ＲＮ２が“００”である場合、変換対象のビットＧＢ２（＝“００”）は、“１０”に変換される。また、変換対象のビットＧＢ２が“００”であり、乱数ＲＮ２が“０１”である場合、変換対象のビットＧＢ２（＝“００”）は、“１１”に変換される。以下、同様にして、変換対象のビットＧＢ２は、変換テーブルＴＢＬ２に従ってビット値Ｂ２に変換される。
【００８６】
マスク手段３は、変換対象のビットが画素値の最下位ビットであるとき、変換テーブルＴＢＬ１を保持しており、変換対象のビットが画素値の最下位ビットから２ビット目までの２ビットであるとき、変換テーブルＴＢＬ２を保持している。また、マスク手段３は、乱数発生器を内蔵している。そして、マスク手段３は、乱数発生器によって乱数列を発生する。
【００８７】
変換テーブルＴＢＬ１，ＴＢＬ２は、任意のタイミングまたは定期的に更新されてもよい。例えば、変換テーブルＴＢＬ１においては、変換対象のビットＧＢ１が“０”であり、乱数ＲＮ１が“０”である場合、ビット値Ｂ１は、“１”からなり、変換対象のビットＧＢ１が“０”であり、乱数ＲＮ１が“１”である場合、ビット値Ｂ１は、“０”からなり、変換対象のビットＧＢ１が“１”であり、乱数ＲＮ１が“０”である場合、ビット値Ｂ１は、“０”からなり、変換対象のビットＧＢ１が“１”であり、乱数ＲＮ１が“１”である場合、ビット値Ｂ１は、“１”からなっていてもよい。
【００８８】
同様に、変換テーブルＴＢＬ２においても、変換対象のビットＧＢ２と乱数ＲＮ２との組合せによって決定されるビットＢ２は、図３に示すビット値と異なるビット値からなっていてもよい。但し、変換テーブルＴＢＬ２の任意の１行および１列は、“００”，“０１”，“１０”，“１１”からなる。
【００８９】
この発明の実施の形態においては、画像データＡは、一般的には、画素値Ｇ１１〜Ｇｉｊ（ｉ，ｊは２以上の整数）からなる。そして、画素値Ｇ１１〜Ｇｉｊの各々は、ｎ（ｎは２以上の整数）ビットのビット値からなり、変換対象のビットは、画素値のｎビットのビット値のうち、最下位ビットからｍ（ｍは１≦ｍ≦ｎを満たす整数）ビット目までのｍビットからなる。
【００９０】
従って、この発明の実施の形態における変換テーブルにおいては、変換対象のビット、乱数および変換後のビット値は、ｍビットからなる。
【００９１】
図４は、可逆マスクを掛ける方法を説明するための図である。図４を参照して、マスク対象領域ＭＳＫの画素値Ｇ４３，Ｇ４４，Ｇ４５がそれぞれ“００１１００１０”，“１１００１０１１”，“０１１０１１００”からなる場合を想定する。そして、変換対象のビットが１ビットであるとする。
【００９２】
マスク手段３は、変換テーブルＴＢＬ１を保持しており、内蔵した乱数発生器によって、例えば、乱数列ＲＮＣ１＝“０１１０１１０００・・・”を発生させる。
【００９３】
そうすると、マスク手段３は、画素値Ｇ４３＝“００１１００１０”の最下位ビット“０”と、乱数列ＲＮＣ１＝“０１１０１１０００・・・”の先頭のビット値“０”とを検出する。そして、マスク手段３は、変換テーブルＴＢＬ１を参照して、最下位ビット“０”と乱数ＲＮ１のビット“０”とが交差するビット値“０”を検出する。その後、マスク手段３は、画素値Ｇ４３＝“００１１００１０”の最下位ビット“０”をビット値“０”に変換することによって元の画素値Ｇ４３＝“００１１００１０”を別の画素値Ｇ４３’＝“００１１００１０”に変換する。
【００９４】
次に、マスク手段３は、画素値Ｇ４４＝“１１００１０１１”の最下位ビット“１”と、乱数列ＲＮＣ１＝“０１１０１１０００・・・”の先頭から２番目のビット値“１”とを検出する。そして、マスク手段３は、変換テーブルＴＢＬ１を参照して、最下位ビット“１”と乱数ＲＮ１のビット値“１”とが交差するビット値“０”を検出する。その後、マスク手段３は、画素値Ｇ４４＝“１１００１０１１”の最下位ビット“１”をビット値“０”に変換することによって元の画素値Ｇ４４＝“１１００１０１１”を別の画素値Ｇ４４’＝“１１００１０１０”に変換する。
【００９５】
更に、マスク手段３は、画素値Ｇ４５＝“０１１０１１００”の最下位ビット“０”と、乱数列ＲＮＣ１＝“０１１０１１０００・・・”の先頭から３番目のビット値“１”とを検出する。そして、マスク手段３は、変換テーブルＴＢＬ１を参照して、最下位ビット“０”と乱数ＲＮ１のビット値“１”とが交差するビット値“１”を検出する。その後、マスク手段３は、画素値Ｇ４５＝“０１１０１１００”の最下位ビット“０”をビット値“１”に変換することによって元の画素値Ｇ４５＝“０１１０１１００”を別の画素値Ｇ４５’＝“０１１０１１０１”に変換する（図４の（ａ）参照）。
【００９６】
次に、変換対象のビットが２ビットである場合について可逆マスクを掛ける方法を説明する。
【００９７】
マスク手段３は、変換テーブルＴＢＬ２を保持しており、内蔵した乱数発生器によって、例えば、乱数列ＲＮＣ２＝“１０１０１０１００・・・”を発生させる。
【００９８】
そうすると、マスク手段３は、画素値Ｇ４３＝“００１１００１０”の最下位ビットから２ビット目までの２ビット“１０”と、乱数列ＲＮＣ２＝“１０１０１０１００・・・”の先頭から２ビット目までの２ビット“１０”とを検出する。そして、マスク手段３は、変換テーブルＴＢＬ２を参照して、変換対象の２ビット“１０”と乱数ＲＮ２の２ビット“１０”とが交差する２ビット“１１”を検出する。その後、マスク手段３は、画素値Ｇ４３＝“００１１００１０”の最下位ビットから２ビット目までの２ビット“１０”を２ビット“１１”に変換することによって元の画素値Ｇ４３＝“００１１００１０”を別の画素値Ｇ４３’＝“００１１００１１”に変換する。
【００９９】
次に、マスク手段３は、画素値Ｇ４４＝“１１００１０１１”の最下位ビットから２ビット目までの２ビット“１１”と、乱数列ＲＮＣ２＝“１０１０１０１００・・・”の先頭から３番目および４番目の２ビット“１０”とを検出する。そして、マスク手段３は、変換テーブルＴＢＬ２を参照して、変換対象の２ビット“１１”と乱数ＲＮ２の２ビット“１０”とが交差する２ビット“１０”を検出する。その後、マスク手段３は、画素値Ｇ４４＝“１１００１０１１”の最下位ビットから２ビット目までの２ビット“１１”を２ビット“１０”に変換することによって元の画素値Ｇ４４＝“１１００１０１１”を別の画素値Ｇ４４’＝“１１００１０１０”に変換する。
【０１００】
更に、マスク手段３は、画素値Ｇ４５＝“０１１０１１００”の最下位ビットから２ビット目までの２ビット“００”と、乱数列ＲＮＣ２＝“１０１０１０１００・・・”の先頭から５番目および６番目の２ビット“１０”とを検出する。そして、マスク手段３は、変換テーブルＴＢＬ２を参照して、変換対象の２ビット“００”と乱数ＲＮ２の２ビット“１０”とが交差する２ビット“０１”を検出する。その後、マスク手段３は、画素値Ｇ４５＝“０１１０１１００”の最下位ビットから２番目までの２ビット“００”を２ビット“０１”に変換することによって元の画素値Ｇ４５＝“０１１０１１００”を別の画素値Ｇ４５’＝“０１１０１１０１”に変換する（図４の（ｂ）参照）。
【０１０１】
この発明の実施の形態においては、画素値Ｇ１１〜Ｇ７７の各々は、上述したようにｎビットのビット値からなる。従って、マスク手段３は、一般的には、マスク対象領域に含まれる画素値のｎビットのビット値のうち、最下位ビットからｍビット目までのｍビットを変換テーブルおよび乱数列を用いて別のｍビットに変換することによってマスク対象領域に可逆マスクを掛ける。
【０１０２】
このように、マスク手段３は、マスク対象領域ＭＳＫに含まれる画素値を変換することによって可逆マスクをマスク対象領域ＭＳＫに掛ける。
【０１０３】
そして、マスク手段３は、マスク対象領域ＭＳＫに含まれる画素値のｍビットを別のｍビットに変換するときの変換テーブルをユーザの権限に応じて決定してもよい。例えば、マスク手段３は、監視カメラによって撮影された画像中の人物の顔を見る権限を有するユーザに対しては、変換対象のビット、乱数および変換後のビット値がより多くのビット数からなる変換テーブルを用いてマスク対象領域ＭＳＫに可逆マスクを掛ける。また、マスク手段３は、監視カメラによって撮影された画像中の家の窓のようにありふれた部分を見る権限を有するユーザに対しては、変換対象のビット、乱数および変換後のビット値がより少ないビット数からなる変換テーブルを用いてマスク対象領域ＭＳＫに可逆マスクを掛ける。
【０１０４】
図５は、可逆マスクを掛けるパターンを示す図である。図５の（ａ）を参照して、１つの可逆マスク１が上述した方法によって画像データのマスク対象領域に掛けられる。
【０１０５】
図５の（ｂ）を参照して、２つの可逆マスク１，２が上述した方法によって画像データの異なる２つのマスク対象領域に掛けられる。この場合、可逆マスク１を掛けるマスク対象領域の一部は、可逆マスク２を掛けるマスク対象領域の一部と重なっていてもよい。また、一般的には、複数の可逆マスクが画像データの異なる複数のマスク対象領域に掛けられる。この場合、２つの可逆マスク１，２を掛けるときの変換テーブルは、同じであってもよく、異なっていてもよい。また、２つの可逆マスク１，２を掛けるときの乱数列も、同じであってもよく、異なっていてもよい。
【０１０６】
図５の（ｃ）を参照して、２つの可逆マスク１，２が上述した方法によって画像データの１つのマスク対象領域に掛けられる。この場合、可逆マスク１を掛けるときの変換テーブルは、可逆マスク２を掛けるときの変換テーブルと同じであってもよく、異なっていてもよい。また、可逆マスク１を掛けるときの乱数列は、可逆マスク２を掛けるときの乱数列と同じであってもよく、異なっていてもよい。更に、可逆マスク１，２のいずれが先にマスク対象領域に掛けられてもよい。そして、一般的には、複数の可逆マスクが画像データの１つのマスク対象領域に任意の順序で掛けられる。
【０１０７】
このように、複数の可逆マスクが１つのマスク対象領域または複数のマスク対象領域に掛けられる場合、マスク手段３は、相互に同じ変換テーブルを使用してもよいし、相互に異なる変換テーブルを使用してもよい。
【０１０８】
また、複数の可逆マスクが１つのマスク対象領域または複数のマスク対象領域に掛けられる場合、マスク手段３は、画素値を示すビット値のうち、変換対象となるビット数を、複数の可逆マスク間で同じに設定してもよく、複数の可逆マスク間で異なるように設定してもよい。
【０１０９】
更に、複数の可逆マスクが１つのマスク対象領域または複数のマスク対象領域に掛けられる場合、マスク手段３は、複数の可逆マスク間で同じ乱数列を使用してもよいし、複数の可逆マスク間で相互に異なる乱数列を使用してもよい。
【０１１０】
図６は、図１に示す暗号装置１０の動作を説明するためのフローチャートである。図６を参照して、一連の動作が開始されると、暗号装置１０の受信手段１は、画像データを受信し（ステップＳ１）、その受信した画像データを検出手段２へ出力する。
【０１１１】
そして、検出手段２は、画像データに基づいて、上述した方法によってマスク対象領域を検出し（ステップＳ２）、その検出したマスク対象領域の座標を検出する。
【０１１２】
その後、検出手段２は、画像データと、マスク対象領域の座標とをマスク手段３へ出力する。
【０１１３】
マスク手段３は、画像データと、マスク対象領域の座標とを受け、その受けた画像データ、マスク対象領域の座標、変換テーブル（変換テーブルＴＢＬ１，ＴＢＬ２等の変換テーブル）および乱数列を用いて上述した方法によってマスク対象領域に可逆マスクを掛ける（ステップＳ３）。
【０１１４】
そして、マスク手段３は、可逆マスクが掛けられた画像データＢと、マスク対象領域の座標と、可逆マスクを掛けるときに発生させた乱数列とを送信手段４へ出力する。
【０１１５】
送信手段４は、可逆マスクが掛けられた画像データＢと、マスク対象領域の座標と、可逆マスクを掛けるときに発生させた乱数列とを受け、可逆マスクが掛けられた画像データＢと、マスク対象領域の座標とを送信し、可逆マスクを掛けるときに発生させた乱数列を公開鍵暗号化方式に従って暗号化して送信する（ステップＳ４）。
【０１１６】
そして、一連の動作が終了する。
【０１１７】
なお、ステップＳ４においては、可逆マスクを掛けるときに発生させた乱数列をＤＶＤ等に格納して送ってもよい。
【０１１８】
図７は、図６に示すステップＳ３の詳細な動作を説明するためのフローチャートである。
【０１１９】
図７を参照して、図６に示すステップＳ２の後、マスク手段３は、画像データとマスク対象領域の座標とを受ける（ステップＳ３１）。
【０１２０】
そして、マスク手段３は、画像データおよびマスク対象領域の座標に基づいて、可逆マスクを掛ける画素の個数ＧＮをカウントする（ステップＳ３２）。
【０１２１】
その後、マスク手段３は、ｇ＝１を設定し（ステップＳ３３）、マスク対象領域に含まれるＧＮ個の画素値を画像データから検出する（ステップＳ３４）。
【０１２２】
引き続いて、マスク手段３は、内蔵した乱数発生器によって乱数列を発生する（ステップＳ３５）。そして、マスク手段３は、変換テーブルおよび乱数列を用いて、上述した方法によって、ｇ番目の画素値のｎビットのビット値のうち、最下位ビットからｍビット目までのｍビットを別のｍビットに変換する（ステップＳ３６）。
【０１２３】
そして、マスク手段３は、ｇ＝ＧＮであるか否かを判定する（ステップＳ３７）。ステップＳ３７において、ｇ＝ＧＮでないと判定されたとき、マスク手段３は、ｇ＝ｇ＋１を設定する（ステップＳ３８）。その後、一連の動作は、ステップＳ３６へ移行し、ステップＳ３７において、ｇ＝ＧＮであると判定されるまで、ステップＳ３６〜ステップＳ３８が繰り返し実行される。
【０１２４】
そして、ステップＳ３７において、ｇ＝ＧＮであると判定されると、マスク手段３は、可逆マスクが掛けられた画像データ、マスク対象領域の座標および乱数列を送信手段４へ出力する（ステップＳ３９）。その後、一連の動作は、図６に示すステップＳ４へ移行する。
【０１２５】
なお、図７に示すフローチャートにおいては、ステップＳ３８を実行した後、一連の動作がステップＳ３５へ移行するようにしてもよい。この場合、マスク手段３は、マスク対象領域に含まれる各画素値ごとに新たな乱数列を発生させ、その発生させた乱数列を用いて各画素値のｍビットを別のｍビットに変換する。また、送信手段４は、マスク対象領域に含まれる画素値の個数ＧＮに等しい個数の乱数列を暗号化して送信する。これによって、可逆マスクが掛けられた画素のセキュリティーを向上できる。
【０１２６】
また、変換対象のビット数が１ビットである場合、マスク手段３は、ステップＳ３６において、画素値のｍ（＝１）ビットと乱数列中の１ビットとの排他的論理和を演算して画素値のｍ（＝１）ビットを別のｍ（＝１）ビットに変換してもよい。この場合、マスク手段３は、変換テーブルＴＢＬ１を保持していなくてもよい。
【０１２７】
図８は、図６に示すステップＳ３の別の詳細な動作を説明するためのフローチャートである。なお、図８に示すフローチャートは、複数の可逆マスクをそれぞれ複数のマスク対象領域に掛ける場合のステップＳ３の詳細な動作を説明するためのフローチャートである。
【０１２８】
図８を参照して、図６に示すステップＳ２の後、マスク手段３は、画像データとＫ（Ｋは２以上の整数）個のマスク対象領域のＫ個の座標とを受ける（ステップＳ３１Ａ）。
【０１２９】
そして、マスク手段３は、画像データおよびＫ個のマスク対象領域のＫ個の座標に基づいて、Ｋ個の可逆マスクを掛けるＫ個のマスク対象領域に含まれる画素の個数ＧＮ１〜ＧＮＫをカウントする（ステップＳ３２Ａ）。
【０１３０】
その後、マスク手段３は、ｋ＝１およびｇｋ＝１を設定し（ステップＳ３３Ａ）、Ｋ個のマスク対象領域に含まれる（ＧＮ１＋・・・＋ＧＮＫ）個の画素値を画像データから検出する（ステップＳ３４Ａ）。
【０１３１】
引き続いて、マスク手段３は、内蔵した乱数発生器によって乱数列を発生する（ステップＳ３５Ａ）。そして、マスク手段３は、ｋ番目の可逆マスクに対応した変換テーブルと、乱数列とを用いて、上述した方法によって、ｋ番目のマスク対象領域においてｇ番目の画素値のｎビットのビット値のうち、最下位ビットからｍビット目までのｍビットを別のｍビットに変換する（ステップＳ３６Ａ）。なお、マスク手段３は、Ｋ個の可逆マスクに対応付けてＫ個の変換テーブルを保持している。
【０１３２】
そして、マスク手段３は、ｇｋ＝ＧＮｋであるか否かを判定する（ステップＳ３７Ａ）。ステップＳ３７Ａにおいて、ｇｋ＝ＧＮｋでないと判定されたとき、マスク手段３は、ｇｋ＝ｇｋ＋１を設定する（ステップＳ３８Ａ）。その後、一連の動作は、ステップＳ３６Ａへ移行し、ステップＳ３７Ａにおいて、ｇｋ＝ＧＮｋであると判定されるまで、ステップＳ３６Ａ〜ステップＳ３８Ａが繰り返し実行される。
【０１３３】
そして、ステップＳ３７Ａにおいて、ｇｋ＝ＧＮｋであると判定されると、マスク手段３は、ｋ＝Ｋであるか否かを判定する（ステップＳ３９Ａ）。ステップＳ３９Ａにおいて、ｋ＝Ｋでないと判定されたとき、マスク手段３は、ｋ＝ｋ＋１を設定するとともに（ステップＳ４０Ａ）、ｇｋ＝１を設定する（ステップＳ４１Ａ）。その後、一連の動作は、ステップＳ３６Ａへ移行し、ステップＳ３９Ａにおいて、ｋ＝Ｋであると判定されるまで、ステップＳ３６Ａ〜ステップＳ４１Ａが繰り返し実行される。
【０１３４】
そして、ステップＳ３９Ａにおいて、ｋ＝Ｋであると判定されると、マスク手段３は、Ｋ個の可逆マスクが掛けられた画像データ、Ｋ個のマスク対象領域のＫ個の座標、Ｋ個の座標に対応付けられたＫ個の可逆マスクのＩＤおよび乱数列を送信手段４へ出力する（ステップＳ４２Ａ）。その後、一連の動作は、図６に示すステップＳ４へ移行する。この場合、送信手段４は、Ｋ個の可逆マスクが掛けられた画像データ、Ｋ個のマスク対象領域のＫ個の座標、およびＫ個の座標に対応付けられたＫ個の可逆マスクのＩＤを送信するとともに、乱数列を暗号して送信する。なお、送信される乱数列は、１個の乱数列であってもよく、Ｋ個の可逆マスクに対応付けられたＫ個の乱数列であってもよい。そして、Ｋ個の乱数列が送信される場合、送信手段４は、Ｋ個の可逆マスクとＫ個の乱数列とを対応付けた対応表を暗号化して送信する。
【０１３５】
図９は、図６に示すステップＳ３の更に別の詳細な動作を説明するためのフローチャートである。なお、図９に示すフローチャートは、複数の可逆マスクを１個のマスク対象領域に掛ける場合のステップＳ３の詳細な動作を説明するためのフローチャートである。
【０１３６】
図９を参照して、図６に示すステップＳ２の後、マスク手段３は、画像データと１個のマスク対象領域の座標とを受ける（ステップＳ３１Ｂ）。
【０１３７】
そして、マスク手段３は、画像データおよび１個のマスク対象領域の座標に基づいて、Ｋ個の可逆マスクを掛ける１個のマスク対象領域に含まれる画素の個数ＧＮをカウントする（ステップＳ３２Ｂ）。
【０１３８】
その後、マスク手段３は、ｋ＝１およびｇ＝１を設定し（ステップＳ３３Ｂ）、１個のマスク対象領域に含まれるＧＮ個の画素値を画像データから検出する（ステップＳ３４Ｂ）。
【０１３９】
引き続いて、マスク手段３は、内蔵した乱数発生器によって乱数列を発生する（ステップＳ３５Ｂ）。そして、マスク手段３は、ｋ番目の可逆マスクに対応した変換テーブルと、乱数列とを用いて、上述した方法によって、ｇ番目の画素値のｎビットのビット値のうち、最下位ビットからｍビット目までのｍビットを別のｍビットに変換する（ステップＳ３６Ｂ）。この場合も、マスク手段３は、Ｋ個の可逆マスクに対応付けてＫ個の変換テーブルを保持している。
【０１４０】
そして、マスク手段３は、ｇ＝ＧＮであるか否かを判定する（ステップＳ３７Ｂ）。ステップＳ３７Ｂにおいて、ｇ＝ＧＮでないと判定されたとき、マスク手段３は、ｇ＝ｇ＋１を設定する（ステップＳ３８Ｂ）。その後、一連の動作は、ステップＳ３６Ｂへ移行し、ステップＳ３７Ｂにおいて、ｇ＝ＧＮであると判定されるまで、ステップＳ３６Ｂ〜ステップＳ３８Ｂが繰り返し実行される。
【０１４１】
そして、ステップＳ３７Ｂにおいて、ｇ＝ＧＮであると判定されると、マスク手段３は、ｋ＝Ｋであるか否かを判定する（ステップＳ３９Ｂ）。ステップＳ３９Ｂにおいて、ｋ＝Ｋでないと判定されたとき、マスク手段３は、ｋ＝ｋ＋１を設定するとともに（ステップＳ４０Ｂ）、ｇ＝１を設定する（ステップＳ４１Ｂ）。その後、一連の動作は、ステップＳ３６Ｂへ移行し、ステップＳ３９Ｂにおいて、ｋ＝Ｋであると判定されるまで、ステップＳ３６Ｂ〜ステップＳ４１Ｂが繰り返し実行される。
【０１４２】
そして、ステップＳ３９Ｂにおいて、ｋ＝Ｋであると判定されると、マスク手段３は、Ｋ個の可逆マスクが掛けられた画像データ、１個のマスク対象領域の座標、Ｋ個の可逆マスクのＩＤ、Ｋ個の可逆マスクが掛けられた順序および乱数列を送信手段４へ出力する（ステップＳ４２Ｂ）。その後、一連の動作は、図６に示すステップＳ４へ移行する。この場合、送信手段４は、Ｋ個の可逆マスクが掛けられた画像データ、１個のマスク対象領域の座標、Ｋ個の可逆マスクのＩＤ、およびＫ個の可逆マスクが掛けられた順序を送信するとともに、乱数列を暗号化して送信する。なお、送信手段４は、Ｋ個の可逆マスクが掛けられた順番および乱数列を暗号化して送信してもよい。これによって、マスク対象領域の画素値を元の画素値に戻すことが困難になり、セキュリティーを向上できる。Ｋ個の可逆マスクが掛けられた順番が分からなければ、マスク対象領域の画素値を元の画素値に戻すことができないからである。
【０１４３】
図９に示すステップＳ３６Ｂ〜ステップＳ３８Ｂからなるループが２回目に実行される場合、ステップＳ３６Ｂにおいて、１回目に変換された別のｍビットが更に別のｍビットに変換される。そして、マスク対象領域に含まれる各画素の画素値のｍビットが別のｍビットにＫ回変換されると、Ｋ個の可逆マスクを掛ける動作が終了する。
【０１４４】
図１０は、この発明の実施の形態による復号装置の構成を示す概略図である。図１０を参照して、この発明の実施の形態による復号装置２０は、受付手段１１と、認証手段１２と、受信手段１３と、抽出手段１４と、解除手段１５とを備える。
【０１４５】
受付手段１１は、ユーザＩＤおよびパスワードを外部から受け付ける。そして、受付手段１１は、その受け付けたユーザＩＤおよびパスワードを認証手段１２へ出力する。
【０１４６】
認証手段１２は、受付手段１１から受けたユーザＩＤおよびパスワードを認証サーバへ送信し、ユーザＩＤを有するユーザの可逆マスクを解除する解除権限を認証サーバから受信する。そして、認証手段１２は、その受信した解除権限を解除手段１５へ出力する。
【０１４７】
なお、認証サーバがユーザＩＤおよびパスワードに基づいて正規のユーザでないと判定したとき、認証手段１２は、認証サーバから何も受信しない。従って、認証手段１２は、解除権限を解除手段１５へ出力できず、復号装置２０は、可逆マスクを解除しない。
【０１４８】
受信手段１３は、可逆マスクが掛けられた画像データＢ、マスク対象領域の座標および暗号化された乱数列等を暗号装置１０から受信する。そして、受信手段１３は、その受信した画像データＢ、マスク対象領域の座標および暗号化された乱数列等を抽出手段１４へ出力する。
【０１４９】
抽出手段１４は、画像データＢ、マスク対象領域の座標および暗号化された乱数列等を受信手段１３から受ける。そして、抽出手段１４は、画像データＢおよびマスク対象領域の座標に基づいて、マスク対象領域を抽出し、その抽出したマスク対象領域と、画像データＢと、暗号化された乱数列とを解除手段１５へ出力する。
【０１５０】
解除手段１５は、上述した変換テーブルＴＢＬ１，ＴＢＬ２等の変換テーブルをユーザの解除権限に対応付けて保持している。また、複数の可逆マスクが１個のマスク対象領域または複数のマスク対象領域に掛けられる場合、解除手段１５は、複数の可逆マスクのＩＤに対応付けて複数の変換テーブルを保持している。そして、解除手段１５は、認証手段１２から解除権限を受け、抽出手段１４から画像データＢ、マスク対象領域の座標および暗号化された乱数列等を受ける。
【０１５１】
その後、解除手段１５は、暗号化された乱数列を復号する。また、解除手段１５は、解除権限に対応した変換テーブルを決定し、その決定した変換テーブルと、乱数列とを用いて、マスク対象領域に掛けられた可逆マスクを後述する方法によって解除する。そして、解除手段１５は、可逆マスクが解除された画像データを出力する。
【０１５２】
図１１は、認証テーブルの概念図である。図１１を参照して、認証テーブルＣＴＦは、ユーザＩＤと、パスワードと、解除権限とを含む。ユーザＩＤ、パスワードおよび解除権限は、相互に対応付けられる。
【０１５３】
ユーザＩＤ＝Ａを有するユーザは、顔−表示、顔−半開示、画面および全体の全てが許可される解除権限を有する。ここで、“画面”とは、可逆マスクを解除した画像を画面に表示するか否かの権限であり、“全体”とは、可逆マスクを解除した画像の全体を表示するか否かの権限である。
【０１５４】
また、ユーザＩＤ＝Ｂを有するユーザは、顔−表示が禁止され、顔−半開示が許可され、画面が禁止され、全体が許可される解除権限を有する。
【０１５５】
更に、ユーザＩＤ＝Ｃを有するユーザは、顔−表示、顔−半開示、画面および全体の全てが禁止される解除権限を有する。
【０１５６】
認証サーバは、認証テーブルＣＴＦを保持しており、復号装置２０の認証手段１２からユーザＩＤおよびパスワードを受信すると、その受信したユーザＩＤおよびパスワードが認証テーブルＣＴＦに含まれているか否かによってユーザが正規のユーザであるか否かを判定する。この場合、認証サーバは、ユーザＩＤおよびパスワードが認証テーブルＣＴＦに含まれているとき、ユーザが正規のユーザであると判定し、ユーザＩＤおよびパスワードが認証テーブルＣＴＦに含まれていないとき、ユーザが正規のユーザでないと判定する。
【０１５７】
認証サーバは、ユーザが正規のユーザであると判定したとこ、認証テーブルＣＴＦを参照して、ユーザＩＤおよびパスワードに対応する解除権限を抽出し、その抽出した解除権限を復号装置２０の認証手段１２へ送信する。
【０１５８】
一方、認証サーバは、ユーザが正規のユーザでないと判定したとき、復号装置２０の認証手段１２へ何も送信しない。
【０１５９】
図１２は、可逆マスクを解除する方法を説明するための図である。図１２の（ａ）を参照して、マスク対象領域に含まれる画素の画素値は、Ｇ４３’＝“００１１００１０”、Ｇ４４’＝“１１００１０１０”およびＧ４５’＝“０１１０１１０１”に変更されている。
【０１６０】
解除手段１５は、マスク対象領域の画素値Ｇ４３’＝“００１１００１０”、Ｇ４４’＝“１１００１０１０”およびＧ４５’＝“０１１０１１０１”を検出する。そして、解除手段１５は、画素値Ｇ４３’＝“００１１００１０”の最下位ビット＝“０”を検出し、乱数列ＲＮＣ１＝“０１１０１１０００・・・”の先頭のビット＝“０”を検出する。
【０１６１】
そうすると、解除手段１５は、変換テーブルＴＢＬ１を参照して、乱数ＲＮ１のビットが“０”であり、ビット値Ｂ１が“０”であるときの変換対象のビットＧＢ１が“０”であることを検出する。そして、解除手段１５は、画素値Ｇ４３’＝“００１１００１０”の最下位ビット＝“０”をビット＝“０”に変換して画素値Ｇ４３’＝“００１１００１０”を元の画素値Ｇ４３＝“００１１００１０”に変換する。
【０１６２】
また、解除手段１５は、画素値Ｇ４４’＝“１１００１０１０”の最下位ビット＝“０”を検出し、乱数列ＲＮＣ１＝“０１１０１１０００・・・”の先頭から２番目のビット＝“１”を検出する。そして、解除手段１５は、変換テーブルＴＢＬ１を参照して、乱数ＲＮ１のビットが“１”であり、ビット値Ｂ１が“０”であるときの変換対象のビットＧＢ１が“１”であることを検出する。その後、解除手段１５は、画素値Ｇ４４’＝“１１００１０１０”の最下位ビット＝“０”をビット＝“１”に変換して画素値Ｇ４４’＝“１１００１０１０”を元の画素値Ｇ４４＝“１１００１０１１”に変換する。
【０１６３】
更に、解除手段１５は、画素値Ｇ４５’＝“０１１０１１０１”の最下位ビット＝“１”を検出し、乱数列ＲＮＣ１＝“０１１０１１０００・・・”の先頭から３番目のビット＝“１”を検出する。そして、解除手段１５は、変換テーブルＴＢＬ１を参照して、乱数ＲＮ１のビットが“１”であり、ビット値Ｂ１が“１”であるときの変換対象のビットＧＢ１が“０”であることを検出する。その後、解除手段１５は、画素値Ｇ４５’＝“０１１０１１０１”の最下位ビット＝“１”をビット＝“０”に変換して画素値Ｇ４５’＝“０１１０１１０１”を元の画素値Ｇ４５＝“０１１０１１００”に変換する（図１２の（ａ）参照）。これによって、可逆マスクが解除される。
【０１６４】
図１２の（ｂ）を参照して、マスク対象領域に含まれる画素の画素値は、Ｇ４３’＝“００１１００１１”、Ｇ４４’＝“１１００１０１０”およびＧ４５’＝“０１１０１１０１”に変更されている。
【０１６５】
解除手段１５は、マスク対象領域の画素値Ｇ４３’＝“００１１００１１”、Ｇ４４’＝“１１００１０１０”およびＧ４５’＝“０１１０１１０１”を検出する。そして、解除手段１５は、画素値Ｇ４３’＝“００１１００１１”の最下位ビットから２番目のビットまでの２ビット“１１”を検出し、乱数列ＲＮＣ２＝“１０１０１０１００・・・”の先頭から２番目までの２ビット＝“１０”を検出する。
【０１６６】
そうすると、解除手段１５は、変換テーブルＴＢＬ２を参照して、乱数ＲＮ２のビットが“１０”であり、ビット値Ｂ２が“１１”であるときの変換対象のビットＧＢ２が“１０”であることを検出する。そして、解除手段１５は、画素値Ｇ４３’＝“００１１００１１”の最下位ビットから２番目のビットまでの２ビット＝“１１”をビット＝“１０”に変換して画素値Ｇ４３’＝“００１１００１１”を元の画素値Ｇ４３＝“００１１００１０”に変換する。
【０１６７】
また、解除手段１５は、画素値Ｇ４４’＝“１１００１０１０”の最下位ビットから２番目のビットまでの２ビット＝“１０”を検出し、乱数列ＲＮＣ２＝“１０１０１０１００・・・”の先頭から３番目および４番目の２ビット＝“１０”を検出する。そして、解除手段１５は、変換テーブルＴＢＬ２を参照して、乱数ＲＮ２のビットが“１０”であり、ビット値Ｂ２が“１０”であるときの変換対象のビットＧＢ２が“１１”であることを検出する。その後、解除手段１５は、画素値Ｇ４４’＝“１１００１０１０”の最下位ビットから２番目のビットまでの２ビット＝“１０”を２ビット＝“１１”に変換して画素値Ｇ４４’＝“１１００１０１０”を元の画素値Ｇ４４＝“１１００１０１１”に変換する。
【０１６８】
更に、解除手段１５は、画素値Ｇ４５’＝“０１１０１１０１”の最下位ビットから２番目のビットまでの２ビット＝“０１”を検出し、乱数列ＲＮＣ２＝“１０１０１０１００・・・”の先頭から５番目および６番目の２ビット＝“１０”を検出する。そして、解除手段１５は、変換テーブルＴＢＬ２を参照して、乱数ＲＮ２の２ビットが“１０”であり、ビット値Ｂ２が“０１”であるときの変換対象のビットＧＢ２が“００”であることを検出する。その後、解除手段１５は、画素値Ｇ４５’＝“０１１０１１０１”の最下位ビットから２番目のビットまでの２ビット＝“０１”を２ビット＝“００”に変換して画素値Ｇ４５’＝“０１１０１１０１”を元の画素値Ｇ４５＝“０１１０１１００”に変換する（図１２の（ｂ）参照）。これによって、可逆マスクが解除される。
【０１６９】
図１２の（ａ）に示す乱数列ＲＮＣ１＝“０１１０１１０００・・・”は、暗号装置１０のマスク手段３が画素値の最下位ビットを変換して可逆マスクを掛けるときに用いた乱数列であり（図３の（ａ）参照）、図１２の（ｂ）に示す乱数列ＲＮＣ２＝“１０１０１０１００・・・”は、暗号装置１０のマスク手段３が画素値の最下位ビットから２番目のビットまでの２ビットを変換して可逆マスクを掛けるときに用いた乱数列である（図３の（ｂ）参照）。
【０１７０】
そして、解除手段１５は、変換テーブルＴＢＬ１および乱数列ＲＮＣ１＝“０１１０１１０００・・・”（または変換テーブルＴＢＬ２および乱数列ＲＮＣ２＝“１０１０１０１００・・・”）を用いて画素値Ｇ４３’，Ｇ４４’，Ｇ４５’をそれぞれ元の画素値Ｇ４３，Ｇ４４，Ｇ４５に変換する。従って、解除手段１５は、暗号装置１０のマスク手段３が元の画素値Ｇ４３，Ｇ４４，Ｇ４５を別の画素値Ｇ４３’，Ｇ４４’，Ｇ４５’に変換する変換規則（変換テーブルＴＢＬ１および乱数列ＲＮＣ１＝“０１１０１１０００・・・”（または変換テーブルＴＢＬ２および乱数列ＲＮＣ２＝“１０１０１０１００・・・”））に基づいて別の画素値Ｇ４３’，Ｇ４４’，Ｇ４５’を元の画素値Ｇ４３，Ｇ４４，Ｇ４５に変換することによって可逆マスクを解除する。
【０１７１】
そして、解除手段１５が上述した方法によって画素値Ｇ４３’，Ｇ４４’，Ｇ４５’をそれぞれ画素値Ｇ４３，Ｇ４４，Ｇ４５に変換することによって、元の画像が復元される。従って、この発明の実施の形態における可逆マスクは、マスクを掛ける前の画像データに復元できるマスクである。
【０１７２】
図１３は、可逆マスクの解除パターンを示す図である。図１３の（ａ）を参照して、１個の可逆マスク１が掛けられた場合、認証サーバによって可逆マスク１を解除する解除権限が有ると判定されると、復号装置２０の解除手段１５は、可逆マスク１を上述した方法によって解除する。これによって、ユーザは、画像データ中の人の顔を見ることができる。
【０１７３】
図１３の（ｂ）を参照して、２個の可逆マスク１，２が掛けられた場合、３つの解除パターンが存在する。即ち、可逆マスク２のみを解除する解除権限が有る場合、可逆マスク１のみを解除する解除権限が有る場合、および可逆マスク１，２の両方を解除する解除権限がある場合である。
【０１７４】
可逆マスク２のみを解除する解除権限が有る場合、解除手段１５は、可逆マスク２のみを上述した方法によって解除して出力する。その結果、ユーザは、可逆マスク２によって隠されていた「タイトル」を見ることができる。
【０１７５】
また、可逆マスク１のみを解除する解除権限が有る場合、解除手段１５は、可逆マスク１のみを上述した方法によって解除して出力する。その結果、ユーザは、可逆マスク１によって隠されていた人の「顔」を見ることができる。
【０１７６】
更に、可逆マスク１，２の両方を解除する解除権限がある場合、解除手段１５は、可逆マスク１，２の両方を上述した方法によって解除して出力する。その結果、ユーザは、可逆マスク１によって隠されていた人の「顔」および可逆マスク２によって隠されていた「タイトル」を見ることができる。
【０１７７】
なお、図５の（ｃ）に示すように１つのマスク対象領域に２個の可逆マスクが掛けられた場合、２つの解除パターンが存在する。即ち、２個の可逆マスク１，２が可逆マスク１および可逆マスク２の順に１つのマスク対象領域に掛けられていた場合、可逆マスク２のみを解除するパターンと、可逆マスク１，２の両方を解除するパターンとである。そして、可逆マスク２のみを解除した場合、可逆マスク１が掛けられているので、可逆マスク２のみを解除する権限を有するユーザは、ぼやけた画像を見ることができるだけである。そして、一般的には、Ｋ個の可逆マスクが１つのマスク対象領域に掛けられるので、Ｋ個の解除パターンが存在する。
【０１７８】
図１４は、図１０に示す復号装置２０の動作を説明するためのフローチャートである。
【０１７９】
図１４を参照して、復号装置２０の受信手段１３は、可逆マスクが掛けられた画像データ、マスク対象領域の座標および暗号化された乱数列を受信し（ステップＳ４１）、その受信した画像データ、マスク対象領域の座標および暗号化された乱数列を抽出手段１４へ出力する。
【０１８０】
抽出手段１４は、可逆マスクが掛けられた画像データおよびマスク対象領域の座標に基づいて、マスク対象領域を抽出する（ステップＳ４２）。そして、抽出手段１４は、可逆マスクが掛けられた画像データ、マスク対象領域および暗号化された乱数列を解除手段１５へ出力する。
【０１８１】
解除手段１５は、可逆マスクが掛けられた画像データ、マスク対象領域および暗号化された乱数列を抽出手段１４から受ける。そして、解除手段１５は、認証手段１２からの解除権限の有無によって解除権限があるか否かを判定する（ステップＳ４３）。より具体的には、解除手段１５は、認証手段１２から解除権限を受けると、解除権限有りと判定し、認証手段１２から解除権限を受けないとき、解除権限無しと判定する。
【０１８２】
ステップＳ４３において、解除権限有りと判定されたとき、解除手段１５は、暗号化された乱数列を復号し、その復号した乱数列および変換テーブル（変換テーブルＴＢＬ１，ＴＢＬ２等）を用いて、上述した方法によって、マスク対象領域に掛けられた可逆マスクを解除する（ステップＳ４４）。
【０１８３】
そして、ステップＳ４３において、解除権限無しと判定されたとき、またはステップＳ４４の後、一連の動作は、終了する。
【０１８４】
図１５は、図１４に示すステップＳ４４の詳細な動作を説明するためのフローチャートである。
【０１８５】
図１５を参照して、図１４のステップＳ４３において、解除権限があると判定されると、解除手段１５は、暗号化された乱数列を復号する（ステップＳ４４１）。
【０１８６】
そして、解除手段１５は、マスク対象領域に含まれる画素値の個数ＧＮをカウントする（ステップＳ４４２）。
【０１８７】
その後、解除手段１５は、ｇ＝１を設定し（ステップＳ４４３）、マスク対象領域に含まれるＧＮ個の画素値を画像データから検出する（ステップＳ４４４）。
【０１８８】
そうすると、解除手段１５は、変換テーブルおよび乱数列を用いて、ｇ番目の画素値のｎビットのビット値のうち、最下位ビットからｍビット目までのｍビットを元のｍビットに変換する（ステップＳ４４５）。
【０１８９】
そして、解除手段１５は、ｇ＝ＧＮであるか否かを判定する（ステップＳ４４６）。ステップＳ４４６において、ｇ＝ＧＮでないと判定されたとき、解除手段１５は、ｇ＝ｇ＋１を設定する（ステップＳ４４７）。その後、一連の動作は、ステップＳ４４５へ移行し、ステップＳ４４６において、ｇ＝ＧＮであると判定されるまでステップＳ４４５〜ステップＳ４４７が繰り返し実行される。
【０１９０】
そして、ステップＳ４４６において、ｇ＝ＧＮであると判定されると、一連の動作は、図１４の“終了”へ移行する。
【０１９１】
図１６は、複数の可逆マスクがそれぞれ複数のマスク対象領域に掛けられた場合における図１４のステップＳ４３，Ｓ４４の詳細な動作を説明するためのフローチャートである。この場合、復号装置２０の解除手段１５は、Ｋ個のマスク対象領域のＫ個の座標に対応付けられたＫ個の可逆マスクのＩＤを暗号装置１０から受信している。また、解除手段１５は、Ｋ個の可逆マスクのＩＤに対応付けてＫ個の変換テーブルを保持している。
【０１９２】
図１６を参照して、図１４のステップＳ４２の後、解除手段１５は、暗号化された乱数列を復号する（ステップＳ４４１Ａ）。
【０１９３】
そして、解除手段１５は、Ｋ個のマスク対象領域に含まれる画素値の個数ＧＮ１〜ＧＮＫをカウントする（ステップＳ４４２Ａ）。
【０１９４】
その後、解除手段１５は、ｋ＝１およびｇｋ＝１を設定する（ステップＳ４４３Ａ）。引き続いて、解除手段１５は、Ｋ個のマスク対象領域に含まれる（ＧＮ１＋・・・＋ＧＮＫ）個の画素値を画像データから検出する（ステップＳ４４４Ａ）。
【０１９５】
そうすると、解除手段１５は、ｋ番目のマスク対象領域に掛けられたｋ番目の可逆マスクの解除権限があるか否かを判定する（ステップＳ４４５Ａ）。
【０１９６】
ステップＳ４４５Ａにおいて、ｋ番目の可逆マスクの解除権限が無いと判定されたとき、一連の動作は、ステップＳ４４９Ａへ移行する。
【０１９７】
一方、ステップＳ４４５Ａにおいて、ｋ番目の可逆マスクの解除権限が有ると判定されたとき、解除手段１５は、ｋ番目の可逆マスクに対応した変換テーブルと、乱数列とを用いて、ｋ番目のマスク対象領域においてｇ番目の画素値のｎビットのビット値のうち、最下位ビットからｍビット目までのｍビットを元のｍビットに変換する（ステップＳ４４６Ａ）。なお、この場合、解除手段１５は、ｋ番目の可逆マスクの解除権限に基づいて、その解除権限に対応する変換テーブルを用いてもよい。つまり、ステップＳ４４６Ａにおいては、ｋ番目の可逆マスクに対応した変換テーブル、および解除権限に対応する変換テーブルのいずれを用いてもよい。但し、ｋ番目の可逆マスクに対応した変換テーブルは、解除権限に対応する変換テーブルと同じである。ｋ番目の可逆マスクをｋ番目のマスク対象領域に掛ける場合、ｋ番目の可逆マスクに対応した変換テーブルが選択されるが、ｋ番目の可逆マスクは、ユーザの権限に対応付けられているので、その選択された変換テーブルは、ユーザの権限に対応付けられることになるからである。
【０１９８】
また、乱数列は、１個の乱数列からなっていてもよく、Ｋ個の乱数列からなっていてもよい。乱数列がＫ個の乱数列からなる場合、Ｋ個の乱数列は、Ｋ個の可逆マスクに対応付けられているので、ｋ番目の可逆マスクを解除する場合、ｋ番目の乱数列が用いられる。
【０１９９】
そして、ステップＳ４４６Ａの後、解除手段１５は、ｇｋ＝ＧＮｋであるか否かを判定する（ステップＳ４４７Ａ）。
【０２００】
ステップＳ４４７Ａにおいて、ｇｋ＝ＧＮｋでないと判定されたとき、解除手段１５は、ｇｋ＝ｇｋ＋１を設定する（ステップＳ４４８Ａ）。その後、一連の動作は、ステップＳ４４６Ａへ移行し、ステップＳ４４７Ａにおいて、ｇｋ＝ＧＮｋであると判定されるまで、ステップＳ４４６Ａ〜ステップＳ４４８Ａが繰り返し実行される。
【０２０１】
そして、ステップＳ４４７Ａにおいて、ｇｋ＝ＧＮｋであると判定されたとき、またはステップＳ４４５Ａにおいて、ｋ番目の可逆マスクの解除権限が無いと判定されたとき、解除手段１５は、ｋ＝Ｋであるか否かを判定する（ステップＳ４４９Ａ）。
【０２０２】
ステップＳ４４９Ａにおいて、ｋ＝Ｋでないと判定されたとき、解除手段１５は、ｋ＝ｋ＋１を設定し（ステップＳ４５０Ａ）、ｇｋ＝１を設定する（ステップＳ４５１Ａ）。その後、一連の動作は、ステップＳ４４５Ａへ移行し、ステップＳ４４９Ａにおいて、ｋ＝Ｋであると判定されるまで、ステップＳ４４５Ａ〜ステップＳ４５１Ａが繰り返し実行される。
【０２０３】
そして、ステップＳ４４９Ａにおいて、ｋ＝Ｋであると判定されると、一連の動作は、図１４の“終了”へ移行する。
【０２０４】
なお、ステップＳ４４５Ａにおいて、ｋ番目の可逆マスクの解除権限が無いと判定されたとき、一連の動作がステップＳ４４９Ａへ移行するのは、一連の動作がステップＳ４４７ＡからステップＳ４４９Ａへ移行した段階では、ｋ番目の可逆マスクの解除動作が終了しているからである。一方、図１４のステップＳ４３において、解除権限が無いと判定されると、一連の動作が終了する。しかし、図１４のフローチャートは、可逆マスクを解除する一般的な動作を説明するものであり、解除権限が無い場合に、１個の可逆マスクの解除動作が終了するという意味では、図１６に示すフローチャートと同じである。従って、図１６に示すフローチャートは、図１４に示すフローチャートと矛盾しない。
【０２０５】
上述したように、Ｋ個の可逆マスクがそれぞれＫ個のマスク対象領域に掛けられた場合、解除手段１５は、解除権限が有る可逆マスクだけを解除する。従って、ユーザの権限に応じて、開示する画像の内容を変えることができる。
【０２０６】
図１７は、複数の可逆マスクが１個のマスク対象領域に掛けられた場合における図１４のステップＳ４３，Ｓ４４の詳細な動作を説明するためのフローチャートである。なお、図１７においては、Ｋ個の可逆マスクが１番目の可逆マスク、２番目の可逆マスク、・・・、Ｋ番目の可逆マスクの順で１個のマスク対象領域に掛けられたことを前提として図１４のステップＳ４３，Ｓ４４の詳細な動作を説明する。また、解除手段１５は、Ｋ個の可逆マスクが掛けられた順序を暗号装置１０から受信している。
【０２０７】
図１７を参照して、図１４のステップＳ４２の後、解除手段１５は、暗号化された乱数列を復号する（ステップＳ４４１Ｂ）。
【０２０８】
そして、解除手段１５は、１個のマスク対象領域に含まれる画素値の個数ＧＮをカウントする（ステップＳ４４２Ｂ）。
【０２０９】
その後、解除手段１５は、Ｋ個の可逆マスクが掛けられた順序に基づいてｋ＝Ｋを設定するとともに、ｇ＝１を設定する（ステップＳ４４３Ｂ）。引き続いて、解除手段１５は、１個のマスク対象領域に含まれるＧＮ個の画素値を画像データから検出する（ステップＳ４４４Ｂ）。
【０２１０】
そうすると、解除手段１５は、１個のマスク対象領域に掛けられたｋ番目の可逆マスクの解除権限があるか否かを判定する（ステップＳ４４５Ｂ）。
【０２１１】
ステップＳ４４５Ｂにおいて、ｋ番目の可逆マスクの解除権限がないと判定されたとき、一連の動作は、図１４の“終了”へ移行する。
【０２１２】
一方、ステップＳ４４５Ｂにおいて、ｋ番目の可逆マスクの解除権限があると判定されたとき、解除手段１５は、ｋ番目の可逆マスクに対応した変換テーブルと、乱数列とを用いて、ｇ番目の画素値のｎビットのビット値のうち、最下位ビットからｍビット目までのｍビットを元のｍビットに変換する（ステップＳ４４６Ｂ）。なお、この場合も、図１６に示すステップＳ４４６Ａと同様にして、解除手段１５は、ユーザの権限に対応した変換テーブルを用いてもよい。また、図１６に示すステップＳ４４６Ａと同様にして、解除手段１５は、Ｋ個の乱数列を用いてもよい。
【０２１３】
ステップＳ４４６Ｂの後、解除手段１５は、ｇ＝ＧＮであるか否かを判定する（ステップＳ４４７Ｂ）。
【０２１４】
ステップＳ４４７Ｂにおいて、ｇ＝ＧＮでないと判定されたとき、解除手段１５は、ｇ＝ｇ＋１を設定する（ステップＳ４４８Ｂ）。その後、一連の動作は、ステップＳ４４６Ｂへ移行し、ステップＳ４４７Ｂにおいて、ｇ＝ＧＮであると判定されるまで、ステップＳ４４６Ｂ〜ステップＳ４４８Ｂが繰り返し実行される。
【０２１５】
そして、ステップＳ４４７Ｂにおいて、ｇ＝ＧＮであると判定されたとき、解除手段１５は、ｋ＝１であるか否かを判定する（ステップＳ４４９Ｂ）。
【０２１６】
ステップＳ４４９Ｂにおいて、ｋ＝１でないと判定されたとき、解除手段１５は、ｋ＝ｋ−１を設定し（ステップＳ４５０Ｂ）、ｇ＝１を設定する（ステップＳ４５１Ｂ）。その後、一連の動作は、ステップＳ４４５Ｂへ移行し、ステップＳ４４９Ｂにおいて、ｋ＝１であると判定されるまで、ステップＳ４４５Ｂ〜ステップＳ４５１Ｂが繰り返し実行される。
【０２１７】
そして、ステップＳ４４９Ｂにおいて、ｋ＝１であると判定されたとき、またはステップＳ４４５Ｂにおいて、ｋ番目の可逆マスクの解除権限が無いと判定されたとき、一連の動作は、図１４の“終了”へ移行する。
【０２１８】
このように、Ｋ個の可逆マスクが１個のマスク対象領域に順次掛けられたとき、掛けられた順番が遅い順に可逆マスクを解除し、解除権限が無い可逆マスクになった時点で可逆マスクを解除する動作が終了する（図１７のステップＳ４４５Ｂの“ＮＯ”参照）。
【０２１９】
従って、ユーザの解除権限に応じて、開示する画像の鮮明さを制御できる。即ち、Ｋ個の可逆マスクの全てを解除する解除権限を有するユーザが最も鮮明が画像を見ることができ、Ｋ−１個の可逆マスクを解除する解除権限を有するユーザが２番目に鮮明な画像を見ることができ、１個の可逆マスクのみを解除する解除権限を有するユーザが最も不鮮明な画像を見ることになる。
【０２２０】
図１８は、この発明の実施の形態によるセキュリティーシステムの構成を示す概略図である。
【０２２１】
図１８を参照して、この発明の実施の形態によるセキュリティーシステム１００は、暗号装置１０と、復号装置２０とを備える。
【０２２２】
暗号装置１０は、例えば、監視カメラ３０が撮影した画像データを受信し、その受信した画像データのマスク対象領域に上述した方法によって可逆マスクを掛ける。そして、暗号装置１０は、可逆マスクを掛けた画像データおよびマスク対象領域の座標等を復号装置２０へ送信する。
【０２２３】
復号装置２０は、可逆マスクを掛けた画像データおよびマスク対象領域の座標等を受信する。そして、復号装置２０は、ユーザＩＤおよびパスワードを外部から受けると、その受けたユーザＩＤおよびパスワードを認証サーバ４０へ送信する。その後、復号装置２０は、認証サーバ４０から解除権限を受信すると、上述した方法によって、マスク対象領域に掛けられた可逆マスクを解除し、その解除した画像データを出力する。
【０２２４】
復号装置２０は、認証サーバ４０から解除権限を受信しない場合、可逆マスクを解除できないので、認証サーバ４０が保持する認証テーブルＣＴＦにおいて、各ユーザに対する解除権限を各種設定することによって、解除権限に応じて、開示する画像の内容を制御でき、セキュリティーを向上できる。
【０２２５】
この発明の実施の形態においては、暗号装置１０および復号装置２０の動作をコンピュータによって実現してもよい。
【０２２６】
この場合、暗号装置１０は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）を備える。そして、ＲＯＭは、図６に示すフローチャートのステップＳ１〜ステップＳ４からなるプログラムＡ、図６および図７に示すフローチャートのステップＳ１〜ステップＳ４（ステップＳ３１〜Ｓ３９を含む）からなるプログラムＢ、図６および図８に示すフローチャートのステップＳ１〜ステップＳ４（ステップＳ３１Ａ〜Ｓ４２Ａを含む）からなるプログラムＣ、および図６および図９に示すフローチャートのステップＳ１〜ステップＳ４（ステップＳ３１Ｂ〜Ｓ４２Ｂを含む）からなるプログラムＤのいずれかのプログラムを格納する。
【０２２７】
そして、暗号装置１０において、ＣＰＵは、ＲＯＭからプログラム（プログラムＡ〜Ｄのいずれか）を読み出して実行し、少なくとも１つのマスク対象領域を画像データから検出し、その検出した少なくとも１つのマスク対象領域に少なくとも１つの可逆マスクを掛ける。
【０２２８】
また、復号装置２０も、ＣＰＵ、ＲＯＭおよびＲＡＭを備える。そして、ＲＯＭは、図１４に示すフローチャートのステップＳ４１〜ステップＳ４４からなるプログラムＥ、図１４および図１５に示すフローチャートのステップＳ４１〜ステップＳ４４（ステップＳ４４１〜Ｓ４４７を含む）からなるプログラムＦ、図１４および図１６に示すフローチャートのステップＳ４１〜ステップＳ４４（ステップＳ４４１Ａ〜Ｓ４５１Ａを含む）からなるプログラムＧ、および図１４および図１７に示すフローチャートのステップＳ４１〜ステップＳ４４（ステップＳ４４１Ｂ〜Ｓ４５１Ｂを含む）からなるプログラムＨのいずれかのプログラムを格納する。
【０２２９】
そして、復号装置２０において、ＣＰＵは、ＲＯＭからプログラム（プログラムＥ〜Ｈのいずれか）を読み出して実行し、ユーザの解除権限に応じて、画像データの少なくとも１つのマスク対象領域に掛けられた少なくとも１つの可逆マスクを解除する。
【０２３０】
上記においては、マスク対象領域の画素値のｍビットを別のｍビットに変換することによって可逆マスクをマスク対象領域に掛けることについて説明したが、この発明の実施の形態においては、これに限らず、暗号装置１０は、マスク対象領域の画素値をマスク対象領域の複数の画素値間で相互に交換する方法、マスク対象領域の複数の画素値間で四則演算の少なくとも１つを用いた演算を行って複数の画素値間で画素値を交換する方法、およびマスク対象領域の各画素値を示すｎビットのビット値を構成するｎ個のビットの配列順序を変更して画素値を変換する方法のいずれかを用いて可逆マスクをマスク対象領域に掛けてもよく、一般的には、何らかの方法によって、マスク対象領域の画素値を別の画素値に変換することによってマスク対象領域に可逆マスクを掛けてもよい。この場合、暗号装置１０は、画素値を変換する変換規則を暗号化して復号装置２０へ送信する。また、画素値を変換する変換規則は、ＤＶＤ等の記録媒体に記録されて、復号装置２０の管理者へ送られる。
【０２３１】
また、この発明の実施の形態においては、暗号装置１０は、マスク対象領域の画素値を別の画素値に変換する方法以外の方法を用いてマスク対象領域に可逆マスクを掛けてもよく、一般的には、可逆マスクをマスク対象領域に掛けるものであればよい。暗号装置１０において実行されるプログラムについても同様である。
【０２３２】
更に、この発明の実施の形態による復号装置２０は、暗号装置１０に対応して、何らかの方法によって、マスク対象領域の画素値を元の画素値に変換することによって可逆マスクを解除するものであればよい。そして、この発明の実施の形態による復号装置２０は、一般的には、暗号装置１０によって可逆マスクが掛けられた画像データのマスク対象領域から可逆マスクを解除するものであればよい。復号装置２０において実行されるプログラムについても同様である。
【０２３３】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【０２３４】
この発明は、暗号装置、復号装置、それらを備えたセキュリティーシステム、それらで実行されるプログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体に適用される。
【符号の説明】
【０２３５】
１，１３  受信手段、２  検出手段、３  マスク手段、４  送信手段、１０  暗号装置、１１  受付手段、１２  認証手段、１４  抽出手段、１５  解除手段、２０  復号装置、３０  監視カメラ、４０  認証サーバ、１００  セキュリティーシステム。
【図１】
2015170954.tif 000003
【図２】
2015170954.tif 000004
【図３】
2015170954.tif 000005
【図５】
2015170954.tif 000006
【図６】
2015170954.tif 000007
【図７】
2015170954.tif 000008
【図８】
2015170954.tif 000009
【図９】
2015170954.tif 000010
【図１０】
2015170954.tif 000011
【図１１】
2015170954.tif 000012
【図１３】
2015170954.tif 000013
【図１４】
2015170954.tif 000014
【図１５】
2015170954.tif 000015
【図１６】
2015170954.tif 000016
【図１７】
2015170954.tif 000017
【図１８】
2015170954.tif 000018
【図４】
2015170954.tif 000019
【図１２】
2015170954.tif 000020