(57)【特許請求の範囲】
【請求項１】
図形の形状データと、図形の識別子と、を対応付けて登録した図形情報と、
前記図形情報に含まれる図形のうち閲覧が制限される暗号化対象図形ごとに、当該暗号化対象図形の識別子と、当該暗号化対象図形の閲覧を許可されている開示対象と、を定義した暗号化定義情報と、
前記開示対象ごとの暗号化鍵と、
を記憶した記憶部と、
前記暗号化定義情報に基づき、前記図形情報に含まれる、暗号化対象図形の形状データと図形の識別子を取得し、当該暗号化対象図形の形状データを、当該暗号化対象図形の閲覧を許可されている開示対象の暗号化鍵を用いて暗号化し、当該暗号化対象図形の識別子と対応付けて暗号化データを生成する暗号化データ生成部と、
前記図形情報に含まれる各々の図形の形状データと図形の識別子を取得し、取得された図形の形状データのうち前記暗号化対象図形に関する図形の形状データを削除、または、他のデータと置換した図形データを生成する図形データ生成部と、
前記暗号化データと前記図形データを組み合わせて、前記図形情報についての暗号化図形データを生成する暗号化図形データ生成部を有し、
復号した前記暗号化データと図形データから図形情報を復元可能とすることを特徴とする図形暗号化装置。
【請求項２】
請求項１に記載の図形暗号化装置であって、
前記暗号化データ生成部は、さらに、隣接する前記暗号化対象図形を統合した統合図形の形状データを生成し、当該統合図形の形状データを用いて暗号化データを生成すること、を特徴とする図形暗号化装置。
【請求項３】
請求項２に記載の図形暗号化装置であって、
前記図形暗号化装置はさらに、前記図形情報が有する図形のいずれかを選択して暗号化対象図形として指定する入力と、当該暗号化対象図形について閲覧を許可する１以上の開示対象を指定する入力と、を受け付ける暗号化情報受付部と、
前記暗号化情報受付部が受け付けた暗号化対象図形と、当該暗号化対象図形についての開示対象と、前記図形情報が有する当該暗号化対象図形の識別子と、から、前記図形情報に関する暗号化定義情報を生成する暗号化定義情報生成部と、
を有することを特徴とする図形暗号化装置。
【請求項４】
図形の形状データと、図形の識別子と、を対応付けて登録した図形情報と、
前記図形情報に含まれる図形のうち閲覧が制限される暗号化対象図形ごとに、当該暗号化対象図形の識別子と、当該暗号化対象図形の閲覧を許可されている開示対象と、を定義した暗号化定義情報と、
前記開示対象ごとの暗号化鍵と、
を記憶した記憶部と、
前記図形情報についての前記暗号化定義情報に登録された暗号化対象図形ごとにセッション鍵を生成するセッション鍵生成部と、
前記暗号化定義情報に基づき、前記図形情報に含まれる、暗号化対象図形の形状データと図形の識別子を取得し、当該暗号化対象図形の形状データを、当該暗号化対象図形についてのセッション鍵を用いて暗号化し、当該暗号化対象図形の識別子と対応付けて暗号化データを生成する暗号化データ生成部と、
前記図形情報についての暗号化定義情報に登録された開示対象ごとに、当該開示対象が閲覧可能な暗号化対象図形の暗号化に用いたセッション鍵を集約し、当該開示対象の暗号化鍵を用いて暗号化した暗号化セッション鍵を生成するセッション鍵暗号化部と、
前記図形情報に含まれる各々の図形の形状データと図形の識別子を取得し、取得された図形の形状データのうち前記暗号化対象図形に関する図形の形状データを削除、または、他のデータと置換した図形データを生成する図形データ生成部と、
前記暗号化データと前記図形データを組み合わせて、前記図形情報についての暗号化図形データを生成する暗号化図形データ生成部を有し、
復号した前記暗号化データと図形データから図形情報を復元可能とすることを特徴とする図形暗号化装置。
【請求項５】
暗号化図形データの復号に用いる復号鍵を記憶した記憶部と、
地図情報に含まれる図形のうち、閲覧が制限されない図形の、図形の形状データ及び図形の識別子と、閲覧が制限される暗号化対象図形の識別子を有する図形データと、暗号化対象図形の形状データを暗号化して当該暗号化対象図形の識別子と対応付けた暗号化データと、を有する暗号化図形データを受信する暗号化図形データ受信部と、
受信した前記暗号化図形データの暗号化データを、前記記憶部に記憶された復号鍵を用いて復号する復号処理部と、
前記暗号化データの復号に成功した場合は、当該暗号化データに対応付けられた暗号化対象図形の識別子に基づき、当該暗号化データを復号して取得した前記暗号化対象図形の形状データを地図データに適用し、当該暗号化対象図形の形状データを復元する図形データ復元部と、
前記図形データが有する図形の形状データに基づき図形の形状を生成して表示する表示処理部と、
を有することを特徴とする暗号化図形復号装置。
【請求項６】
暗号化図形データの復号に用いる復号鍵を記憶した記憶部と、
地図情報に含まれる図形のうち、閲覧が制限されない図形の形状データと図形の識別子と、閲覧が制限される暗号化対象図形の識別子を有する図形データと、暗号化対象図形の形状データを暗号化して当該暗号化対象図形の識別子と対応付けた暗号化データと、閲覧対象ごとに、当該閲覧対象が閲覧可能な暗号対象図形の各々の暗号化に用いたセッション鍵を集約し暗号化した暗号化セッション鍵と、を有する暗号化図形データを受信する暗号化図形データ受信部と、
受信した前記暗号化図形データの暗号化セッション鍵を、前記記憶部に記憶された復号鍵を用いて復号するセッション鍵復号処理部と、
前記暗号化セッション鍵の復号に成功した場合は、当該暗号化セッション鍵を復号して取得したセッション鍵を用いて、前記暗号化図形データの暗号化データを復号する復号処理部と、
前記暗号化データの復号に成功した場合は、当該暗号化データに対応付けられた図形の識別子に基づき、当該暗号化データを復号して取得した前記暗号化対象図形の形状データを地図データに適用し、当該暗号化対象図形の形状データを復元する図形データ復元部と、
前記図形データが有する図形の形状データに基づき図形の形状を生成して表示する表示処理部と、
を有することを特徴とする暗号化図形復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、図形データの暗号化・復号装置に係り、特に、開示制限が必要な図形データの暗号化・復号の技術に関する。
【背景技術】
【０００２】
設計図などの図面には、製品に関する詳細情報が含まれる。そのため、図面内に記載された部品の形状や説明などは、その開示先を適切に制限する必要がある。また、さまざまな情報を地図と組み合わせて配信する地理情報配信システムが利用されているが、これらの地図データには、例えば軍事基地や個人所有の敷地、或は、企業の工場など、一般に開示しないことが望ましい情報が多数含まれる。
【０００３】
図面の形状を隠ぺいする方法としては、例えば特許文献１で開示された方法が知られている。特許文献１には、隠ぺい部分の形状に対応する新たな部品（特許文献１では、隠ぺい部分形状モデルと呼ぶ）を生成し、隠ぺい部分の情報は隠ぺい部分形状モデルに関連づけて保管しておく方法が開示されている。また、特許文献２には、地図データに対して配信先ごとに個別に暗号化した地図データを準備し、配信する方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１７９４１９号公報
【特許文献２】特開２００５−１２１７１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示された図面の隠ぺい方法では、図面の部品単位での隠ぺいが可能であるが、隠ぺい部分を復元する際には、復元に使用する隠ぺい部分形状モデルを指定する必要がある。例えば、地図データにおいては、多量の地物に関するデータが管理されている場合が多い。そのため、ユーザからの施設、或いは、位置等を指定した検索要求に対して、例えば表示などのために、ユーザにとって必要な部分の地図データのみを検索結果として返信することが望まれる。
【０００６】
また、特許文献２に開示された方法のように、ユーザごとに個別に暗号化データを用意しておいた場合には、暗号化データの全てを復号した後に検索処理を実行しなければならず、検索処理の応答性能が悪くなる。したがって、図形データ内に開示先を制限すべき図形データが含まれ、その図形データを暗号化して保護する場合には、ユーザからの要求に応じて、必要な図形データとそれに関連する暗号化データのみを送付することが望まれる。
【課題を解決するための手段】
【０００７】
上記の問題を解決するため、暗号化装置は、特定のユーザ以外には開示しない領域に対し、新たな図形（以後、墨塗領域と呼ぶ）を生成し、図形データに追加し、開示しない領域の図形の暗号化データを墨塗領域と対応付けて格納すると共に、開示しない領域の図形に置換又は削除の処理を加える。また、復号装置は、入力した図形データに墨塗領域が含まれるとき、その墨塗領域に対応する暗号化データを復号して図形データを復元する。さらに、図形データの閲覧システムは、このような暗号化装置および復号装置を含んでいる。
【０００８】
暗号化装置の具体的な態様は、図形データを格納する図形データ部と暗号化データ部とを有する暗号化図形データ、および、図形データを閲覧するユーザに対応した暗号化鍵を格納する記憶装置、図形データに含まれる暗号化対象データ、暗号化対象データを対応付ける墨塗領域、および、暗号化対象データの開示先としてのユーザを定義した暗号化定義情報を生成する暗号化定義情報生成部、並びに、墨塗領域をデータ部に追加し、開示先として定義されたユーザに対応した暗号化鍵を用いて暗号化対象データを暗号化し、暗号化データ部に暗号化した暗号化データを墨塗領域と対応付けて格納し、図形データ部に含まれる暗号化対象データに処理を加える暗号化処理部を有する。
【０００９】
復号装置の具体的な態様は、図形データを閲覧するユーザに対応した復号鍵を格納する記憶装置、および、図形データを格納する図形データ部と暗号化データ部とを有する暗号化図形データを入力し、墨塗領域が図形データ部にあるとき、墨塗領域に対応する暗号化データを取得し、暗号化データを復号鍵を用いて復号する復号部を有する。
【発明の効果】
【００１０】
本発明によれば、図形データに含まれる開示先を制限すべき図形データを、定義した特定の開示先以外に開示不可能な状態に暗号化し、特定の開示先において図形データを復号でき、定義した開示先以外では開示を制限された図形データを復元できないように制御できる。
【図面の簡単な説明】
【００１１】
【図１】実施例１における地図データ閲覧システムの構成図である。
【図２】地図データ閲覧システム内の各装置の構成図である。
【図３】実施例１における地図データを配信する前に行う処理シーケンスである。
【図４】実施例１における地図データ閲覧の処理シーケンスである。
【図５】暗号化の前後での地図データの概略を表す図である。
【図６】暗号化の前後での地図データの表示イメージの概略を表す図である。
【図７】暗号化定義情報のデータ構造の一例を示す図である。
【図８】暗号化処理部の処理フローチャートである。
【図９】暗号化定義情報の設定を行う画面イメージの一例を表す図である。
【図１０】復号の処理フローチャートである。
【図１１】実施例２における地図データ閲覧システムの構成図である。
【図１２】実施例２における地図データを配信する前に行う処理シーケンスである。
【図１３】実施例２における地図データ閲覧の処理シーケンスである。
【発明を実施するための形態】
【００１２】
本発明の実施形態として、特定のユーザ以外には開示しない領域に対応した新たな図形（以後、墨塗領域と呼ぶ）を図形データに追加し、開示しない領域の図形の暗号化データを墨塗領域と対応付けて格納すると共に、開示しない領域の図形に置換又は削除の処理を加える暗号化装置を説明する。また、入力した図形データに墨塗領域が含まれるとき、その墨塗領域に対応する暗号化データを復号して図形データを復元する復号装置を説明する。さらに、このような暗号化装置および復号装置を含む図形データの閲覧システムを説明する。
【００１３】
暗号化装置は、（1）図形データを格納する図形データ部と暗号化データ部とを有する暗号化図形データ、および、図形データを閲覧するユーザに対応した暗号化鍵を格納する記憶装置、（2）図形データに含まれる暗号化対象データ、暗号化対象データを対応付ける墨塗領域、および、暗号化対象データの開示先としてのユーザを定義した暗号化定義情報を生成する暗号化定義情報生成部、並びに、（3）墨塗領域をデータ部に追加し、開示先として定義されたユーザに対応した暗号化鍵を用いて暗号化対象データを暗号化し、暗号化データ部に暗号化した暗号化データを墨塗領域と対応付けて格納し、図形データ部に含まれる暗号化対象データに処理を加える暗号化処理部を有する。なお、後述する実施例のように、暗号化対象データの暗号化と暗号化対象データに処理を加えることが、図形データをコピーすることにより、逆順に処理してもよい。
【００１４】
復号装置は、（1）図形データを閲覧するユーザに対応した復号鍵を格納する記憶装置、および、（2）図形データを格納する図形データ部と暗号化データ部とを有する暗号化図形データを入力し、墨塗領域が図形データ部にあるとき、墨塗領域に対応する暗号化データを取得し、暗号化データを復号鍵を用いて復号する復号部を有する。
【００１５】
本実施形態を、図形データの一例として屋内の地図データ（建築図面における平面図データ）を用いて説明を行う。屋内地図データは、例えば企業ビルや個人使用の部屋などのプライバシーに関る情報が含まれ、閲覧するユーザに応じて開示・非開示を制御すべき情報が多く混在する図形データの一例である。なお、以下では屋内の地図データを用いて説明を行うが、本実施形態の対象となる図形データは、屋内の地図データに限らず、屋外などの一般的な地図データ、或いは、設計図面などの他の図形データでもよい。以下、本実施形態を、実施例１および実施例２の地図データ閲覧システムとして説明する。
【実施例１】
【００１６】
図１は、本実施例における地図データ閲覧システムの構成図である。地図データ閲覧システムは、地図暗号化装置１０１、地図格納装置１０２、鍵管理装置１０３、地図閲覧装置１０５、および地図配信装置１０４がネットワーク１００を介して接続されている。図１において、点線はデータの流れを表している。
【００１７】
地図暗号化装置１０１は、暗号化定義情報生成部１１０と暗号化処理部１１１を有する。暗号化定義情報生成部１１０は、平文地図データ１２０から暗号化定義情報１２１を生成する。暗号化処理部１１１は、暗号化定義情報１２１、平文地図データ１２０および暗号化鍵１２２から、暗号化地図データ１２４を生成する。
【００１８】
地図格納装置１０２は、データベース処理部１１２を有し、暗号化地図データ１２４を格納する。データベース処理部１１２は、例えば、SQL（Structured Query Language）文やGIS（Geographical Information System）製品のAPI（Application Program Interface）を用いて、暗号化地図データ１２４の検索、登録、削除、変更などの、データベースに関する一連の処理を行う。
【００１９】
地図データ配信装置１０４は、クエリ処理部１１７を有する。クエリ処理部１１７は、地図閲覧装置１０５内のクエリ要求部１１５からの要求(クエリ)を受付け、クエリの解析を行い、地図格納装置１０２内のデータベース処理部１１２を用いて、地図閲覧装置１０５へ返信する表示用地図データを作成する。
【００２０】
地図閲覧装置１０５は、クエリ要求部１１５、復号処理部１１６、および、表示処理部１１８を有する。クエリ要求部１１５は、地図配信装置１０４へ、地図データの検索などのクエリを送信し、地図配信装置１０４から返信された表示用地図データを受信する。復号処理部１１６は、受信した表示用地図データに対し、復号鍵１２３を用いて復号処理を行い、さらに、復号された表示用地図データから、地図の画像イメージなどの表示イメージを生成する。表示処理部１１８は、生成された表示イメージを、地図閲覧装置１０５の表示装置２０４(図２)に表示する。
【００２１】
鍵管理装置１０３は、鍵生成部１１３を有する。鍵生成部１１３は、暗号化に利用する暗号化鍵１２２と対応する復号鍵１２３を生成する。鍵管理装置１０３が生成する暗号化鍵１２２及び復号鍵１２３は、ＲＳＡなどの公開鍵暗号技術における公開鍵及び秘密鍵であってもよいし、ＡＥＳ（Advanced Encryption Standard）などの共通鍵暗号技術における共有鍵であってもよい。
【００２２】
なお、公開鍵暗号技術における秘密鍵や共通鍵暗号技術における共有鍵は、開示先を制限する復号に利用するため、地図暗号化装置１０１や地図閲覧装置１０５への送付は、外部記憶媒体を利用した直接送付、或いは、暗号化通信を用いた送付などによることが望ましい。また、秘密鍵や共有鍵は、例えばＩＣカードやＨＳＭ（Hardware Security Module）などの耐タンパ性を有するデバイス内に格納しておくことが望ましい。一方、公開鍵暗号技術における公開鍵は公開可能な情報であるため、地図暗号化装置１０１への送付に当たっては、ＨＴＴＰ（Hyper Text Transfer Protocol）などにより一般的な通信路を用いてもよい。ただし、鍵管理装置１０３が公開鍵証明書を発行し、地図暗号化装置１０１で使用する公開鍵に誤りや改竄が無いことを公開鍵証明書を用いて確認することが望ましい。
【００２３】
図１では鍵管理装置１０３において鍵生成を行っているが、これと異なってもよい。例えば、地図閲覧装置１０５において暗号化鍵１２２と復号鍵１２３の生成を行い、生成した暗号化鍵１２２を地図暗号化装置１０１へ送付するようにしてもよい。このとき、公開鍵暗号技術を用いる場合には、鍵管理装置１０３が、地図閲覧装置１０５が生成した公開鍵（暗号化鍵１２２）に対し、公開鍵証明書を発行することが望ましい。
【００２４】
暗号化鍵１２２および復号鍵１２３の生成に当たっては、例えばＡＳＮ．１（Abstract  Syntax  Notation  One）やXML（eXtensible Markup Language）などのフォーマットを用いて、暗号化鍵１２２と復号鍵１２３を利用するユーザの氏名やユーザＩＤなどのような、ユーザを一意に識別可能な識別子を暗号化鍵１２２と復号鍵１２３内に書込み、地図暗号化装置１０１などで鍵を利用する際に参照できるようにし、暗号化鍵１２２および復号鍵１２３を特定するための情報として用いてもよい。なお、上記の識別子はユーザを一意に識別可能な識別子ではなく、鍵そのものに対する識別子などでよい。
【００２５】
以下では、ユーザごとに暗号化鍵１２２と復号鍵１２３とを割り当てた場合を例として説明を行うが、例えば権限や役職、所属などを基準として、一人以上のユーザに対して同一の鍵を割り当てるようにしてもよい。
【００２６】
図２は、図１の地図データ閲覧システム内の各装置の構成図である。図２に示すように、地図データ閲覧システム内の各装置は、ＣＰＵ（Central Processor Unit）２０１、ＲＡＭ（Random Access Memory）２０２、入力装置２０３、表示装置２０４、通信装置２０５、読書装置２０６、及び、外部記憶装置２０７が接続された、一般的なコンピュータ（電子計算機）として構成される。
【００２７】
入力装置２０３は、キーボードやマウスなどである。表示装置２０４は、表示用ディスプレイなどである。外部記憶装置２０７は、ＨＤＤ（Hard Disk Drive）などである。通信装置２０５はネットワーク１００を介して他の装置と通信を行うための通信インターフェイスである。読書装置２０６は、ＦＤ（Flexible Disk）やＵＳＢ（Universal Serial Bus）メモリ、或いは、ＣＤ−Ｒ（Compact Disk Recordable）といった外部記憶媒体２０８から、データの読込み、或いは、書込みを行うための装置である。ＣＰＵ２０１は、ＲＡＭ２０２上にロードしたプログラムを実行することで、図１に示す各処理部(暗号化処理部１１１など）をプロセスとして具現化する。
【００２８】
図３、図４は、地図データ閲覧システムの処理シーケンスの概略である。図３は、地図データ閲覧システムの処理シーケンスの内、地図閲覧装置１０５へ地図データを配信する前に行う処理シーケンスであり、鍵管理装置１０３での鍵生成、生成した鍵の地図暗号化装置１０１および地図閲覧装置１０５への送付、地図暗号化装置１０１での平文地図データ１２０の暗号化、及び、暗号化された暗号化地図データ１２４の地図格納装置１０２での格納までの処理シーケンスである。以下に、そのシーケンスを示す。
【００２９】
鍵管理装置１０３の鍵生成部１１３が暗号化鍵１２２および復号鍵１２３を生成する（Ｓ３０１）。鍵管理装置１０３が生成した復号鍵１２３を地図閲覧装置１０５に送付する（Ｓ３０２）。地図閲覧装置１０５が復号鍵１２３を受信し、格納する（Ｓ３０３）。鍵管理装置１０３が生成した暗号化鍵１２２を地図暗号化装置１０１に送付する（Ｓ３０４）。地図暗号化装置１０１は、暗号化鍵１２２を受信し、格納する（Ｓ３０５）。地図暗号化装置１０１内の暗号化定義情報生成部１１０が、平文地図データ１２０を用いて、暗号化定義情報１２１を生成する（Ｓ３０６）。地図暗号化装置１０１内の暗号化処理部１１１が、暗号化定義情報１２１、平文地図データ１２０、および暗号化鍵１２２を用いて暗号化地図データ１２４を生成し、地図格納装置１０２に送付する（Ｓ３０７）。地図格納装置１０２が、暗号化地図データ１２４を受信し、格納する（Ｓ３０８）。
【００３０】
以上の処理シーケンスでは、鍵管理装置１０３にて鍵生成を行っているが、前述の通り、鍵管理装置１０３ではなく、地図閲覧装置１０５において暗号化鍵１２２と復号鍵１２３の生成を行い、これを地図暗号化装置１０１へ送付するようにしてもよい。この場合、ステップ３０１の暗号化鍵および復号鍵の生成は、地図閲覧装置１０５において行い、ステップ３０２の復号鍵の送付は、地図閲覧装置１０５から鍵管理装置１０３に暗号化鍵１２２と復号鍵１２３を送付する処理となる。
【００３１】
なお、同じ暗号化鍵１２２および復号鍵１２３の組を、複数のユーザに対して割り当てる場合には、ステップ３０２において、複数のユーザに対応する全ての地図閲覧装置１０５への復号鍵１２３の送付を行う。また、異なる暗号化鍵１２２および復号鍵１２３の組を複数の異なるユーザに対して割り当てる場合には、ステップ３０１をユーザ毎に実行してユーザごとの暗号化鍵１２２および復号鍵１２３を生成し、ステップ３０２およびステップ３０３を実行することによって暗号化鍵１２２および復号鍵１２３の送付を行う。なお、上記処理は、同一のユーザに複数の暗号化鍵１２２および復号鍵１２３の組を割当ててもよい。
【００３２】
図４は、地図データ閲覧システムにおいて、地図配信装置１０４から地図閲覧装置１０５へ表示用地図データを送信し、地図閲覧装置１０５で表示するまでの処理シーケンスを表している。本処理シーケンスにおいては、地図閲覧装置１０５からの地図閲覧要求(クエリ)の送付、地図配信装置１０４でのクエリ解析、地図格納装置１０２を利用した検索の実行と地図閲覧装置１０５への送付、及び、地図閲覧装置１０５での復号、表示処理が行われる。
【００３３】
地図閲覧装置１０５内のクエリ要求部１１５が地図配信装置１０４へ地図閲覧要求(クエリ)を送付する（Ｓ４０１）。地図配信装置１０４内のクエリ処理部１１７が、地図閲覧装置１０５からのクエリの解析を行い、解析結果に応じた検索要求を地図格納装置１０２へ送付する（Ｓ４０２）。地図格納装置１０２内のデータベース処理部１１２が、検索要求を受信し、暗号化地図データ１２４を対象に検索処理を実行し、検索結果を地図配信装置１０４に返信する（Ｓ４０３）。地図配信装置１０４内のクエリ処理部１１７が、返信された検索結果から、地図閲覧装置１０５への応答として表示用地図データを生成し、地図閲覧装置１０５へ送付する（Ｓ４０４）。地図閲覧装置１０５が、表示用地図データをクエリに対する応答として受信する（Ｓ４０５）。地図閲覧装置１０５内の復号処理部１１６が、暗号化されている表示用地図データと復号鍵１２３を用いて復号処理を実行し、地図の表示イメージを作成する（Ｓ４０６）。地図閲覧装置１０５内の表示処理部１１８が、表示イメージを表示装置２０４に表示する（Ｓ４０７）。
【００３４】
上記のステップ４０１における地図閲覧装置１０５から地図配信装置１０４への配信要求に先立ち、地図配信装置１０４はユーザ認証を行うことが望ましい。このためには、地図配信装置１０４内で地図閲覧装置１０５の装置固有の装置ＩＤ（ＭＡＣアドレス（Media Access Control Address）など）を利用し、地図閲覧装置１０５から認証用の情報を受け付け、認証すればよい。或いは、地図閲覧装置１０５を利用するユーザにＩＤ／ＰＷ（Pass Word）の入力を求め、これを利用して認証を行ってもよいし、ＳＳＬ（Secure Sockets Layer）などの暗号技術を用いた認証や生体情報を利用した認証を利用してもよい。
【００３５】
上記のステップ４０１における地図閲覧装置１０５のクエリ要求部１１５による地図配信装置１０４への地図閲覧要求(クエリ)には、ユーザによって指定された緯度、経度、或は、高さなどの位置情報、或は、地名や施設の名称などのキーワードなどを含む。位置情報を含む地図閲覧要求の場合、GPSなどの測位装置を用いて、ユーザの現在位置の取得を行い、取得した現在位置を位置情報としてもよい。
【００３６】
ステップ４０２における地図配信装置１０４内のクエリの解析において、クエリ処理部１１７は、地図閲覧装置１０５からのクエリをそのまま地図格納装置１０２に送付してもよいし、クエリの解析を行い、その結果から地図格納装置１０２へのクエリを、地図閲覧装置１０５からのクエリを修正する、或は、新たにクエリを生成してもよい。
【００３７】
ステップ４０４における表示用地図データの生成において、クエリ処理部１１７は、地図格納装置１０２からの検索結果をそのまま地図閲覧装置１０５に送付してもよいし、地図配信装置１０４内のクエリ処理部１１７で処理を加えた後、送付してもよい。
【００３８】
ステップ４０２〜４０４の地図配信装置１０４における、地図閲覧装置１０５からのクエリの受信から、地図閲覧装置１０５へのクエリに対する返信の処理において、地図配信装置１０４は、地図格納装置１０２と対話式に処理を行ってもよい。すなわち、地図配信装置１０４は、ステップ４０３における地図格納装置１０２からの検索結果に応じて、再び地図格納装置１０２へ検索要求してもよい。
【００３９】
図３のステップ３０６、及び、ステップ３０７における、暗号化定義情報１２１の生成、及び、平文地図データ１２０の暗号化処理について説明する。これらの説明に先立って、暗号化前後での地図データの変化について説明する。
【００４０】
図５は、暗号化処理の前後での地図データの変化の様子を表す概略図である。また、図６は、図５に示した地図データの表示イメージを表している。したがって、図５および図６において、同じものには同じ符号を用いる。前述の通り、本実施例では、図５、図６に示した屋内の地図データを用いて説明を行うが、暗号化対象となる地図データは、屋内の地図データに限らず、屋外など、一般的な地図データ、或いは、図面などの他の図形データへの適用も可能である。
【００４１】
一般的に、地図データは、地物の形状を表す形状データ（ジオメトリ）、地物の名称や説明などの形状以外の特徴を表す属性、及び、地物間の接続関係（ノードとエッジから構成されるネットワークデータ）から構成される。図５は、これら地図データの地物間の接続関係を除いて簡略化し、表を用いて表現した例である。
【００４２】
図５は、地図データを表を用いて表現しているが、これに限らない。例えば、ＧＩＳ（Geographic Information System）においては、例えば地物（オブジェクト、或は、フィーチャと呼ぶ）を最小単位とし、同一の性質のフィーチャ、或いは、特定の場所に存在する複数のフィーチャを、コンテナと呼ばれる単位にまとめ、コンテナを地図の構造(建物の構造等)に応じて配置し、木構造を用いて表現、管理する場合がある。このような場合でも、図５の表の各行を上記のフィーチャとして扱うことによって、同様に適用可能である。
【００４３】
図６に示したとおり、ここで示した例では、通路、階段、会議室などから構成された建屋内の間取りの内、通路２、作業エリア、閲覧室からなるエリア内（以下、プロジェクトエリアと呼ぶ）の地物を暗号化する場合の暗号化前後でのデータの変化（図５）、及び、表示イメージの変化（図６）を表している。なお、図５の平文地図データ１２０は、図６に示した屋内地図の中から、暗号化対象となる地物の一部（閲覧室、通路２、書類保管庫）を抜粋して示した図である。
【００４４】
図６に示した平文地図データ１２０の表示イメージ内のプロジェクトエリア（閲覧室、作業エリア、通路２からなる領域）の開示先を制限する場合、暗号化定義情報生成部１１０が、開示先を制限する対象データ（すなわち、暗号化対象となるデータ。以下、これを暗号化対象データと呼ぶ）、及び、開示先の設定を行い、暗号化定義情報１２１を生成する。次に、暗号化処理部１１１が、生成された暗号化定義情報１２１と平文地図データ１２０、及び、暗号化鍵１２２から暗号化地図データ１２４を生成する。なお、暗号化定義情報１２１のデータ構造、暗号化定義情報１２１を利用した暗号化処理部１１１による処理、および、暗号化定義情報１２１の設定方法については図７、図８、図９でそれぞれ説明する。
【００４５】
図５に示したとおり、暗号化後の地図データ（暗号化地図データ１２４）は、地図データ部１２４Ａ、暗号化データ部１２４Ｂの二つの部分から構成される。ここで、地図データ部１２４Ａは、地図データそのものを格納し、暗号化データ部１２４Ｂは、暗号化対象データの暗号化結果（暗号化データ）を格納する。
【００４６】
暗号化地図データ１２４内の地図データ部１２４Ａには、平文地図データ１２０と比較し、ＩＤが９０１、タイプが墨塗領域の行５２０（以下、墨塗領域５２０と呼ぶ。）が追加され、さらに暗号化対象となったジオメトリ、及び、名称は暗号化後のデータとしてＮＵＬＬが代入される。また、これら暗号化されたデータは、新たに生成された墨塗領域５２０の参照情報（図５では地図データ部１２４Ａ内のＩＤ列の値である９０１）と組で暗号化データ部１２４Ｂに格納される。
【００４７】
暗号化データ部１２４Ｂに格納する暗号化データは、例えば、ＡＳＮ．１やＸＭＬなどのデータフォーマットを用い、一つの墨塗領域（たとえば、墨塗領域５２０）と関連付けられた一つ以上の暗号化対象データ（たとえば、暗号化対象となったジオメトリ、及び、名称）の暗号化結果を、タグを用いて区切って整形し、これを暗号化データ部１２４Ｂに格納すればよい。さらに、整形に当たっては、復号を容易にするため、例えば暗号化データとともに、当該暗号化データを復号可能な復号鍵１２３への参照情報、或いは、復号可能なユーザの一覧などを含めてデータを生成してもよい。
【００４８】
図５では、暗号化後のデータとしてＮＵＬＬを代入しているが、実際のデータベースシステムでは、設計上の制限から、ＮＵＬＬを代入できない場合がある。この場合、暗号化後のデータには、ＮＵＬＬ以外の値を代入してもよい。例えば、ジオメトリの暗号化データとしては、ランダムなジオメトリデータ、或いは、墨塗領域と同じジオメトリデータ等を埋め込めばよい。また、名称などの属性については、空白の文字列を代入する、或いは、”名称不明”などを格納すればよい。また、文字列型以外の場合（例えば、整数型等）についても、同様に無意味な値、或は、暗号化されていることを示す数値データを定義し、これを代入すればよい。
【００４９】
図７は、暗号化定義情報１２１のデータ構造をＸＭＬフォーマットを用いて表現した一例を示している。なお、図７の暗号化定義情報１２１の記述内容は、図５、図６の暗号化定義情報１２１を表現したデータである。図７に示した通り、暗号化定義情報１２１は、墨塗領域要素から構成され、墨塗要素内に、暗号化対象となるデータ、および、開示先の設定情報が記載される。墨塗領域要素内の子要素である対象地物要素には、ＩＤ属性に対象地物のＩＤ（図５参照）を記載し、対象となる地物を特定し、さらに地物内の暗号化する対象データ（ジオメトリや名称など）を対象データ要素内の対象属性に記載する。また、開示先リストには、暗号化処理後に暗号化された暗号化対象データを復号する（言い換えれば、ここに記載された対象データを復号する復号鍵１２３を所有する）ユーザを記載する。
【００５０】
なお、図７では暗号化定義情報１２１として、XMLを用いて表現した例を示したが、これと異なってもよい。例えば、ASN.１などのデータフォーマットを利用して、タグ情報などを別途定義し、暗号化定義情報１２１を表現してもよい。また、XMLを利用してデータ構造を定義する場合でも、図７に記載した各要素と異なっていてもよく、同一の意味を持つXMLデータであれば、図７に示したデータフォーマットでなくてもよい。
【００５１】
図８は、暗号化定義情報１２１、平文地図データ１２０、暗号化鍵１２２から、暗号化地図データ１２４を生成する暗号化処理部１１１の処理フローチャートを示している。
【００５２】
平文地図データ１２０を暗号化地図データ１２４の地図データ部１２４Ａにコピーする（Ｓ８０１）。暗号化定義情報１２１を読込み、墨塗領域要素があればステップ８０３に進み、なければ、処理を終了する（Ｓ８０２）。墨塗領域要素内のジオメトリ要素を参照して墨塗領域を生成し、暗号化地図データ１２４に追加する（Ｓ８０３）。対象地物要素があればステップ８０５へ、なければステップ８０７に進む（Ｓ８０４）。対象地物要素内のＩＤ属性を読込み、平文地図データ１２０から、暗号化対象となる対象地物を特定する。さらに、対象データ要素内の対象属性を参照し、暗号化対象となるデータ（暗号化対象データ）を取得し、ＮＵＬＬで置き換えを行う（Ｓ８０５）。開示先リスト要素内の開示先要素を参照し、対応する暗号化鍵１２２を取得し、ステップ８０５で取得した暗号化対象データの暗号化を行う（Ｓ８０６）。暗号化結果を整形し、暗号化データ部１２４Ｂへ書き込み、ステップ８０２に進む（Ｓ８０７）。
【００５３】
ステップ８０１のコピーは、平文地図データ１２０を保持しておくことを意味している。平文地図データ１２０を保持しておく必要がない場合は、ステップ８０６の暗号化を実行した後に、ステップ８０５のＮＵＬＬでの置換処理を実行する。
【００５４】
図８に示す暗号化処理部１１１は、図７に記載の暗号化定義情報１２１を利用した場合、例えば、XMLのSAX（Simple API for ＸＭＬ）のように、図７の暗号化定義情報１２１を先頭から逐次読み込むことで実行可能である。以下では、図７に示した暗号化定義情報１２１を用いて、図８に示す暗号化処理部１１１の説明を行うが、暗号化定義情報１２１は、図７に示したものでなくてもよい。
【００５５】
上記のステップ８０４からステップ８０６の処理において、暗号処理部１１１は暗号化定義情報１２１から逐次墨塗領域要素内の対象地物要素８０４を読み出し、暗号化対象データの取得を行い、暗号化を行う。ここで開示先リスト内に複数の開示先が記述されている場合には、記述された複数の開示先に対応する暗号化鍵１２２を用いて別々に暗号化対象データを暗号化する。また、暗号化地図データ１２４内の暗号化データ部１２４Ｂに格納する暗号化データは、例えば図７に記載した暗号化定義情報１２１内の開示先要素ごとに、暗号化データ要素を追加し、暗号化した結果をＢＡＳＥ６４で符号化して格納する。暗号化データ部１２４Ｂに格納する暗号化データは、これに限らず、ＸＭＬやＡＳＮ．１などを用いて図７とは異なるデータフォーマットを別途定義してもよい。例えば、地図データをＸＭＬを用いて管理するＧＸＭL（Geography XML）などのフォーマットを利用し、これらのタグ情報を応用して暗号化データの管理を行う。
【００５６】
上記の暗号化処理部１１１では、それぞれの暗号化対象データを開示先ごとに別々に暗号化しているが、以下のようにして暗号化処理(Ｓ８０６)を実施してもよい。
【００５７】
まず、共通鍵暗号化技術におけるランダムな共有鍵（以下、セッション鍵と呼ぶ。）を暗号化対象データごとに別々に生成する。次に、暗号化対象データごとに別々に生成されたセッション鍵を、以下のように暗号化する。まず、墨塗領域要素内に記載された全ての開示先要素を取得し、開示先ごとに以下の処理を行う。各対象データ要素内の開示先要素に、現在処理を行っている開示先と一致する開示先が存在すれば、対象データを暗号化する際に利用したセッション鍵を取得し、これをセッション鍵暗号化リストに加える。換言すると、セッション鍵暗号化リストには、１つの開示先に関連する複数箇所の暗号化対象データの各々に対応するセッション鍵が含まれる。全ての対象データに対し、上記の処理を行った後、セッション鍵暗号化リストに記載されたセッション鍵を集約（たとえば、連結)し、前記開示先に対応する暗号化鍵１２２を用いて暗号化処理を行う。以下全ての開示先について、同様の処理を繰り返す。なお、上記のセッション鍵暗号化リストの暗号化鍵１２２による暗号化において、セッション鍵暗号化リストに、復号時に暗号化データの完全性を保証するため暗号化データのハッシュ値やＭＡＣ（Message Authentication Code）などを含めてもよい。上記の暗号化処理は、選択的開示型暗号と呼ばれ、特開２００９−４９７３１等に開示されている。
【００５８】
図９は暗号化定義情報１２１を生成するための設定用ＧＵＩ（Graphic User Interface）の一例を表している。図９に示すように、本ＧＵＩは地図表示エリア９０６と設定エリア９０７を有する。ＧＵＩ上部のファイルメニュー９０２、データベースメニュー９０３、鍵読込メニュー９０４は、操作メニューを表す。ユーザによりそれぞれのメニューが選択されると、以下の処理を実行する。
【００５９】
・ファイルメニュー９０２： 作成済みの暗号化定義情報１２１の読込み、或は、作成途中の暗号化定義情報１２１の保存を行う。
【００６０】
・データベースメニュー９０３：平文地図データ１２０を格納してあるデータベースからの平文地図データ１２０の読み込み、および、暗号化地図データ１２４の格納先の指定を行う。また、開示先を設定し、暗号化定義情報１２１の生成、および、暗号化処理部１１１を実行する。
【００６１】
・鍵読込メニュー９０４：暗号化定義情報１２１の設定に必要な暗号化鍵１２２を読み込む。
【００６２】
上記ではメニューとして、データベースメニュー９０３を設け、平文地図データ１２０および暗号化地図データ１２４が、データベースシステム上にあることを想定しているが、必ずしても地図データ１２０および暗号化地図データ１２４は、データベースシステム上にある必要はなく、例えば、ＣＳＶ（Comma Separated Values）などの形式で、ファイルとして存在してもよい。
【００６３】
地図表示エリア９０６には、平文地図データ１２０を描画した結果を表示し、マウスなどの入力装置２０３からの入力に従い、墨塗領域５２０を指定する。なお、指定にあたっては、図９に点線で示すように、マウスの入力に従い、選択領域９０１のような矩形領域を墨塗り領域５２０として利用してもよいし、多角形や円などを墨塗領域５２０として利用してもよい。或は、マウスを用いて開示先を限定したい地物を選択し、選択された地物のジオメトリデータを元に墨塗領域５２０を作成してもよいし、マウスによって複数の地物を選択し、これらを連結した領域、あるいは、選択された複数の地物全てを包含する領域を新たに作成し、これを墨塗領域５２０としてもよい。
【００６４】
以下では、図９に示した選択領域９０１を新たな墨塗領域５２０とし、これをエリアＹとして設定する場合を例として、図９に例示したＧＵＩの動作を説明する。
【００６５】
図９の選択領域９０１が墨塗領域５２０として指定されると、設定エリア内の非開示エリア項目に新たな項目（図９ではエリアＹ）が登録される。また、エリアＹ内に含まれる地物の一覧が、対象地物一覧項目の一覧表に表示される（ここでは、通路２、閲覧室、作業エリア、施錠扉B、C、書類保管庫）。ここで、対象地物一覧項目に表示する項目は、墨塗領域５２０に完全に含まれる地物でもよいし、一部が含まれる地物、或は、地物の中心点が含まれる地物でもよい。また、墨塗領域５２０に一部が含まれる地物、及び、中心点が含まれる地物を表示する場合には、表示色を変更する、書体を変更するなどにより、墨塗領域５２０に一部が含まれている地物がユーザに分かるようにしてもよい。
【００６６】
次に、マウスなどの入力装置２０３を用いて対象地物一覧の中から開示先の設定を行う地物を選択する（図９では矢印により作業エリアを選択）と、対象属性項目に選択した地物内の全ての属性が表示される。また、このとき、選択された地物が地図上のどの地物であるかを明示するため、地図表示エリア９０６の対応する地物の表示色を変更する、或は、境界線を太くするなどしてもよい。
【００６７】
次に、対象属性項目内から属性を選択し（図９では部屋名称）、開示先項目から開示先として指定するユーザを選択し、開示先設定ボタン９０５を選択することで、一つの項目に対する開示先の設定が完了する。以下、上記の処理を繰り返すことで、一つの墨塗領域５２０内の地物、属性に対してさまざまな設定を行うことが可能である。また、選択領域９０１を複数作成することによって、複数の墨塗領域５２０を生成することができ、地図データ内に一つ以上の墨塗領域５２０を作成することができる。
【００６８】
図９において、地物全暗号化を選択した場合には、図８に示した暗号化処理部１１１のステップ８０５における、地物内のジオメトリ、名称などの各属性のデータの置換処理（上記では、ＮＵＬＬによる置換）を、以下のようにしてもよい。地物内のジオメトリ、属性などの全属性を取得する。次に、データの置換の代わりに、暗号化地図データ１２４の地図データ部１２４Ａから対象となる地物（地図データ部１２４Ａ内の対応する行）を削除する。このようにすることによって、地物自体を隠蔽することが可能となる。このように削除処理を行った場合でも、図１０に示す復号処理部１１６によって、削除された地物を復元することが可能である。
【００６９】
次に、上述のようにして生成された暗号化地図データ１２４の復号処理について説明する。
【００７０】
図４に示したように、地図配信装置１０４は、地図閲覧装置１０５内のクエリ要求部１１５からのクエリ要求に従い、データベース処理部１１２へ表示用地図データの取得を行う。このとき、クエリ処理部１１７は、クエリ要求部１１５からのクエリ要求を、データベース処理部１１２を用いて、地図データ部１２４Ａから地図データの取得を行う。このとき、取得された地図データ内に墨塗領域５２０が含まれている場合には、墨塗領域５２０のＩＤ情報を取得し、これを検索情報として暗号化データ部１２４Ｂから暗号化データを取得する。なお、このとき上記の処理においてクエリ要求部１１５からの検索要求が位置情報であり、かつ、地図閲覧装置１０５が表示する地図表示イメージが墨塗領域５２０に対して小さい場合には、クエリ要求部１１５からの検索要求をそのままデータベース処理部１１２に配信すると、データベース処理部１１２からの応答に墨塗領域５２０が含まれない可能性がある。この場合、クエリ受付部１１７は、例えばクエリ要求部１１５からの検索要求に対し、検索要求を包含する全ての地物を返信するようにクエリを修正して、データベース処理部１１２への検索を行ってもよい。
【００７１】
上記の処理において、図５に示した暗号化地図データ１２４では、暗号化データ部１２４ＢのＩＤ列に地図データ部１２４ＡのＩＤ番号が記載されており、これを検索情報として暗号化データ部１２４Ｂより暗号化データを取得することができるが、以下のようにしてもよい。暗号化処理部１１１のステップ８０５の暗号化対象データの置換処理において、ジオメトリに対しＮＵＬＬではなく、墨塗領域５２０のジオメトリデータによって置換を行った場合、以下のようにしてもよい。
【００７２】
まず、暗号化処理部１１１のステップ８０５において、暗号化対象データがジオメトリである場合には、墨塗領域５２０のジオメトリデータによって置き換えを行う。次に、ステップ８０６において、各地物を個別に暗号化し、暗号化データ部１２４Ｂに埋め込み、暗号化データ部１２４ＢのＩＤには、対応する地物のＩＤを埋め込む。或いは、暗号化データ部１２４ＢのＩＤには、暗号化データを一意に識別するためのＩＤを個別に格納し、地図データ部１２４Ａの暗号化情報列に前記ＩＤを記載し、地図データ部１２４の暗号化情報列から対応する暗号化データを参照できるようにしておく。
【００７３】
復号時には、取得された表示用地図データ内に墨塗領域５２０が含まれる場合、墨塗領域と同じジオメトリデータを持つ地物のＩＤから、暗号化データ部１２４Ｂ内の同じＩＤを持つ暗号化データを取得する。或いは、暗号化情報内の情報を用いて、暗号化データ部１２４Ｂから暗号化データを取得する。
【００７４】
上記のような処理を行うことによって、暗号化データ部１２４Ｂから、復号に必要な暗号化データを取得してもよい。
【００７５】
地図格納装置１０２内、或は、地図配信装置１０４内には、暗号化地図データ１２４のほかに、名称などの属性と対応するＩＤからなるキーワードリストを保管してもよい。キーワードリストを利用することで、例えば図５における書類保管庫など、暗号化された属性に対するキーワードを利用した検索である場合でも、キーワードリスト内にキーワードがあることによって検索に対応することが可能となる。なお、キーワードリストに保管する名称は、例えば、ＳＨＡ−１などの暗号学的ハッシュ関数を用いることによって、ハッシュ値を生成し、これを保管しておくことによって、キーワードリストから、直接キーワードが分からないようにすることが望ましい。この場合には、地図配信装置１０５のユーザ認証の結果に応じて、利用可能なキーワードを制限することが望ましい。
【００７６】
或いは、ユーザごとにキーワードリストを作成し、当該ユーザの暗号化鍵１２２を用いてキーワードごとに暗号化を行うにしてもよい。この場合、ユーザからのクエリを、暗号化鍵を用いて暗号化することによって、暗号化された状態のまま検索を行うようにしてもよい。なお、暗号化した状態でキーワード検索を行う場合、キーワードリストの暗号化に用いる暗号化は、ＲＳＡ−ＯＡＥＰ(Optimal Asymmetric Encryption Padding)などの確率的な暗号化方法ではなく、確定的な暗号化方法である必要がある。なお、図８に示した暗号化処理部１１１の処理においては、安全性の観点からは確率的な暗号化方法であることが望ましい。
【００７７】
なお、上記の説明では、地図配信装置１０４が暗号化データ部１２４Ｂからの暗号化データの取得処理を行っているが、上記の処理は、地図格納装置１０２内のデータベース処理部１１２が処理してもよい。
【００７８】
図１０は、図４のステップ４０６における地図閲覧装置１０５内の復号の処理フローチャートを示す図である。なお、地図配信装置１０４から送付される表示用地図データは、図５に示す暗号化地図データ１２４の一部を抜粋したデータとなる。したがって、表示用地図データは、図５の暗号化地図データ１２４と同様のデータ構造でもよいが、例えば、地図データ部１２４Ａのデータ表現にＧＸＭＬなどを用いるなど、ＸＭＬやその他のデータフォーマットを用いて、表示用地図データ１２４用に個別にデータ構造を定めてもよい。以下では、表示用地図データが図５と同様のデータ構造を持つものとして説明を行う。
【００７９】
表示用地図データを読み込む（Ｓ１００１）。墨塗領域が表示用地図データ内に存在すれば、ステップ１００３に進み、ない場合には処理を終了する（Ｓ１００２）。表示用地図データ内の暗号化データ部１２４Ｂより、該当する墨塗領域５２０に対応する暗号化データを取得する（Ｓ１００３）。ステップ１００３で取得した暗号化データを復号鍵１２３で復号する（Ｓ１００４）。復号に成功した場合は、ステップ１００６に進み、失敗した場合には、ステップ１００２に進む（Ｓ１００５）。復号結果から地物を復元する（Ｓ１００６）。墨塗領域を削除し、ステップ１００２に進む。
【００８０】
上記、ステップ１００４および１００５の復号処理および復号の成功/失敗の判断は、暗号化データ内に当該暗号化データを復号可能な復号鍵１２３の参照情報（例えば復号鍵１２３を所有するユーザのＩＤなど）を記載し、復号に利用する復号鍵１２３の参照情報が復号対象となる暗号化データ内に含まれているか否かで判断する。或いは、ＲＳＡ−ＯＡＥＰなどの暗号化アルゴリズムを利用し、その復号結果から得られる復号成功/失敗を利用して判断してもよい。或いは、暗号化時に予め個々の暗号化データにＭＡＣ（Message Authentication Code）などを付与し、復号時にＭＡＣの検証処理を行い、検証結果によって得られる、検証成功/失敗を用いて判断してもよい。上記の復号の成功/失敗の判断において、以下のような場合には復号処理そのものを終了し、復号失敗を出力するようにしてもよい。例えば、復号の成功/失敗の判断を復号鍵１２３の参照情報を用いて判断する場合に、参照情報からは復号処理に与えられた復号鍵１２３によって当該暗号化データが復号可能であるにもかかわらず、当該暗号化データのステップ１００４における復号結果が復号失敗である場合には、参照情報とステップ１００４の復号結果が矛盾するものとして、復号失敗を出力し、図１０の復号処理そのものを終了してもよい。
【００８１】
さらに、ステップ１００７において、墨塗領域５２０の削除を行っているが、墨塗領域５２０を削除しなくてもよい。この場合、復号処理終了後の表示イメージの作成において、墨塗領域の上に、復号結果を上書きすることによって、復元された地物を表示することができる。また、ステップ１００４および１００５において、ジオメトリの復号に部分的に失敗した地物があった場合でも、表示イメージ上は、該当する地物に対応する領域を空白領域とすることなく表示することができる。なお地物のジオメトリ、或は、地物そのものが暗号化されている場合に、墨塗領域５２０を表示せずに、初めから地物がなかったように表示してもよい。
【００８２】
復号処理のステップ１００４では、取得した暗号化データを復号鍵１２３による復号を行う。暗号化処理のステップ８０６の処理では、暗号化対象データを開示先リスト要素内の開示先に対応する暗号化鍵１２２を用いて暗号化処理を行う。したがって、復号処理のステップ１００４の暗号化データの復号において、与えられた復号鍵１２３に対応する暗号化鍵１２２が、復号対象の暗号化対象データの開示先に含まれている場合には、暗号化データの復号が可能である。一方で、暗号化対象データの開示先に含まれていない場合には暗号化データを復号することができない。以上の処理は、個々の墨塗り領域ごとにそれぞれの暗号化対象データに対して行われる。そのため、図８に示す復号処理は、与えられた復号鍵１２３（すなわち、復号鍵を所有しているユーザ）ごとに異なる復号結果を出力し、ユーザごとに開示範囲の異なる表示イメージを出力することが可能である。すなわち、暗号化時に暗号化対象データごとに開示先（暗号化鍵１２２）を指定することによって、対応する復号鍵１２３を所持するユーザに開示する情報を制御することが可能となる。
【００８３】
上記において、地図閲覧装置１０５に複数の復号鍵１２３が格納されている場合には、上記のステップ１００４による復号処理を格納されている全ての復号鍵１２３に対して行う。
【００８４】
以上の説明では暗号化データを含む表示用地図データを、地図配信装置１０４が地図閲覧装置１０５の地図閲覧要求に対して生成し、これを地図閲覧装置１０５に返信していたが、表示用地図データに暗号化データを含めなくてもよい。その場合、ステップ１００３の暗号化データの取得は、表示用地図データからではなく、地図配信装置１０４に暗号化データの取得要求を行い、地図配信装置１０４が対応する暗号化データを地図閲覧装置１０５に返信する。
【００８５】
また、以上の図５、図６に例示した地図データでは、地図のジオメトリ（形状）と名称などの属性のみを暗号化した例を示したが、地物間の接続関係を表すノード、エッジに対しても、上記と同様に処理することによって、暗号化、復号を行うことが可能であり、これによって、例えば経路検索や誘導など、地図データ向けの機能にも対応することが可能となる。
【実施例２】
【００８６】
図１に示した実施例１における地図データ閲覧システムでは、復号処理は地図閲覧装置１０５が実行する。しかしながら、例えば地図閲覧装置１０５が携帯電話など、十分な処理性能を有しない場合には、地図閲覧装置１０５上で復号処理を実行し、地図データの描画イメージの作成、画面へ表示すると、クエリから表示までに時間がかかる、などの問題が生じる。
【００８７】
図１１は、上記の問題を解決するため、復号処理、及び、地図データの描画処理を地図復号装置１０７で行い、地図閲覧装置１０５では、受信した描画イメージを表示のみを行うように変形した、本実施例の地図データ閲覧システムの概略を示す構成図である。なお、暗号化、復号処理については、実施例１と同じであるため、以下では、実施例１との違いを説明する。
【００８８】
図１１において、鍵管理装置１０３、地図格納装置１０２、地図暗号化装置１０１、及び、地図配信装置１０４は、図１に示した各装置と同じである。ただし、鍵管理装置１０３は、地図閲覧装置１０５ではなく、地図復号装置１０７に対し復号鍵１２３の配付を行う。また、地図配信装置１０４内のクエリ処理部１１７は、地図閲覧装置１０５、地図格納装置１０２だけでなく、地図復号装置１０７と送受信を行う。
【００８９】
図１２は、本実施例の地図データ閲覧システムにおける地図閲覧装置１０５へ地図データを配信する前に行う処理であり、実施例１の図３の処理シーケンスに対応する。
【００９０】
暗号化鍵１２２、復号鍵１２３を生成する（Ｓ１２０１）。復号鍵を地図復号装置１０７に送付する（Ｓ１２０２）。地図復号装置１０７５において、復号鍵１２３を受信し、格納する（Ｓ１２０３）。暗号化鍵１２２を地図暗号化装置１０１に送付する（Ｓ１２０４）。地図暗号化装置１０１において暗号化鍵１２２を受信し、格納する（Ｓ１２０５）。地図暗号化装置１０１内の暗号化定義情報生成部１１０が、平文地図データ１２０を用いて、暗号化定義情報１２１を生成する（Ｓ１２０６）。地図暗号化装置１０１内の暗号化処理部１１１を用いて、暗号化定義情報１２１と平文地図データ１２０、暗号化鍵１２２から暗号化地図データを生成し、地図格納装置１０２に送付する（Ｓ１２０７）。地図格納装置１０２において、暗号化地図データを受信し、格納する（Ｓ１２０８）。
【００９１】
上記の処理と図３に示した実施例１の処理との違いは、復号鍵１２３が地図閲覧装置１０５ではなく、地図復号装置１０７に送付されることである。
【００９２】
上記の処理においては、実施例１と同様にして、暗号化鍵１２２、復号鍵１２３は、ＲＳＡなどの公開鍵暗号技術における公開鍵、秘密鍵を用いてもよいし、ＡＥＳなどの共通鍵暗号技術における共有鍵を用いてもよい。なお、公開鍵暗号技術における秘密鍵、及び、共通鍵暗号技術における共有鍵は、ともに、復号（開示先の制限）に利用するため、地図暗号化装置１０１や地図閲覧装置１０５への送付に当たっては、外部記憶媒体を利用して直接送付する、或いは、暗号化通信を用いて送付するなどを利用することが望ましい。一方、公開鍵暗号技術における公開鍵は、公開可能な情報であるため地図暗号化装置１０１への送付に当たっては、ＨＴＴＰなどの一般的な通信路を用いてもよい。ただし、鍵管理装置１０３において、公開鍵証明書を発行するなどにより地図暗号化装置１０１で使用する公開鍵に誤りや改竄が無いことを確認することが望ましい。
【００９３】
また、実施例１と同様にして、鍵管理装置１０３ではなく、地図閲覧装置１０５において暗号化鍵１２２と復号鍵１２３の生成を行い、これを地図暗号化装置１０１へ送付するようにしてもよい。
【００９４】
次に本実施例における地図閲覧装置１０５からクエリを送付し、地図を表示するまでの処理シーケンスを、図１３を用いて説明する。
【００９５】
地図閲覧装置１０５内のクエリ要求部１１５が、地図配信装置１０４へ地図データの配信要求を送付する（Ｓ１３０１）。地図配信装置１０４内のクエリ処理部１１７が、地図閲覧装置１０５からのクエリの解析を行い、地図格納装置１０２へ検索要求を送付する（Ｓ１３０２）。地図格納装置１０２内のデータベース処理部が、検索要求を受信し、暗号化地図データ１２４を対象に検索処理を実行、検索結果を地図配信装置１０４に返信する（Ｓ１３０３）。地図配信装置１０４内のクエリ処理部１１７が、検索結果を受信し、表示用地図データを生成し、地図復号装置１０７へ送付する（Ｓ１３０４）。地図復号装置１０７内の復号処理１１６が、暗号化地図データと復号鍵１２３を用いて復号処理を実施する（Ｓ１３０５）。地図配信装置１０４において、地図復号装置１０７からの復号結果を受信し、表示イメージを作成する（Ｓ１３０６）。地図閲覧装置１０５において、クエリに対する応答として表示イメージを受信する（Ｓ１３０７）。地図閲覧装置１０５内の表示処理部１１８が、表示装置２０４を用いて、表示イメージを表示する（Ｓ１３０８）。
【００９６】
上記の処理と図４に示した実施例１の処理の違いは、復号処理が地図復号処理１０７で行われていることである。したがって、実施例１において説明した復号の処理(図１０）は、本実施例では地図復号装置１０７が行う。上記の復号処理だけでなく、地図データから画像などの表示イメージの生成処理をも、復号処理終了後の復号処理部１１６で行う、或は、地図配信装置１０４内のクエリ処理部１１７で表示イメージを生成するようにしてもよい。これによって、クエリ要求部１１５への表示用地図データの送付は、表示イメージとなるため、地図閲覧装置１０５の表示処理部１１８上で、与えられた地図データから表示イメージに変換する必要がなくなり、処理の軽減が可能となる。
【００９７】
上記のステップ１３０５における復号処理に先立ち、地図復号装置１０７では、復号時に利用する復号鍵１２３を特定するため、ユーザ認証を行うことが望まれる。このためには、地図復号装置１０７内で地図閲覧装置１０５の装置固有の装置ＩＤ（ＭＡＣアドレスなど）や、ユーザ固有の情報（ユーザＩＤやパスワード、生体情報など）を格納し、地図閲覧装置１０５から、認証用の情報を受け付け認証すればよいし、例えば、ＳＳＬ（Secure Sockets Layer）などの暗号技術を用いた認証や生体情報を利用した認証を利用してもよい。上記の認証処理は、地図閲覧装置１０５から、地図復号装置１０７に直接行ってもよいし、地図配信装置１０４が代行してもよい。これを実施するためには、たとえば地図復号装置１０７に格納されている認証用の情報を複製して地図配信装置１０４に格納し、地図配信装置１０４の認証結果を用いて、地図復号装置１０７が地図閲覧装置１０５の認証を行うなどすればよい。なお、ユーザ認証処理は、最終的にクエリ要求を送信した地図復号装置１０７を利用したユーザに応じて利用可能な復号鍵を特定できれば、上記の態様に限らずともよい。
【００９８】
なお、図１３における地図閲覧装置１０５、地図配信装置１０４におけるデータの送受信は、インターネットなどの公開されたネットワーク上で行う場合には、暗号化通信路を用いることが望ましい。
【００９９】
以上説明した実施形態によれば、図形データに含まれる開示先を制限すべき図形データを、特定の開示先以外に開示不可能な状態に暗号化し、適切な開示先において図形データを復号でき、定義した開示先以外では開示を制限された図形データを復元できないように制御できる。
【符号の説明】
【０１００】
１００：ネットワーク、１０１：地図暗号化装置、１０２：地図格納装置、１０３：鍵管理装置、１０４：地図配信装置、１０５：地図閲覧装置、１０７：地図復号装置、１１０：暗号化定義情報生成部、１１１：暗号化処理部、１１２：データベース処理部、１１３：鍵生成部、１１５：クエリ要求部、１１６：復号処理部、１１７：クエリ処理部、１１８：表示処理部、１２０：平文地図データ、１２１：暗号化定義情報、１２２：暗号化鍵、１２３：復号鍵、１２４：暗号化地図データ、１２４Ａ：地図データ部、１２４Ｂ：暗号化データ部、２０１：ＣＰＵ、２０２：ＲＡＭ、２０３：入力装置、２０４：表示装置、２０５：通信装置、２０６：読書装置、２０７：外部記憶装置、２０８：外部記憶媒体、５２０：墨塗領域、５２１：暗号化対象データ、９０１：選択領域、９０２：ファイルメニュー、９０３：データベースメニュー、９０４：鍵読込メニュー、９０６：地図表示エリア、９０７：設定エリア。
【図１】
0005422300.tif 000002
【図２】
0005422300.tif 000003
【図３】
0005422300.tif 000004
【図４】
0005422300.tif 000005
【図５】
0005422300.tif 000006
【図６】
0005422300.tif 000007
【図７】
0005422300.tif 000008
【図８】
0005422300.tif 000009
【図９】
0005422300.tif 000010
【図１０】
0005422300.tif 000011
【図１１】
0005422300.tif 000012
【図１２】
0005422300.tif 000013
【図１３】
0005422300.tif 000014