[go: up one dir, main page]

JP5543821B2 - ENCRYPTION DEVICE, DECRYPTION DEVICE, AND ROUTE SEARCH SYSTEM - Google Patents

ENCRYPTION DEVICE, DECRYPTION DEVICE, AND ROUTE SEARCH SYSTEM Download PDF

Info

Publication number
JP5543821B2
JP5543821B2 JP2010075529A JP2010075529A JP5543821B2 JP 5543821 B2 JP5543821 B2 JP 5543821B2 JP 2010075529 A JP2010075529 A JP 2010075529A JP 2010075529 A JP2010075529 A JP 2010075529A JP 5543821 B2 JP5543821 B2 JP 5543821B2
Authority
JP
Japan
Prior art keywords
node
data
map
encryption
route search
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010075529A
Other languages
Japanese (ja)
Other versions
JP2011211382A (en
Inventor
康生 秦野
邦彦 宮崎
邦康 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2010075529A priority Critical patent/JP5543821B2/en
Publication of JP2011211382A publication Critical patent/JP2011211382A/en
Application granted granted Critical
Publication of JP5543821B2 publication Critical patent/JP5543821B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Instructional Devices (AREA)
  • Navigation (AREA)

Description

本発明は、暗号化された経路探索用データを利用した暗号化装置、復号化装置、および経路探索システムに関するものである。   The present invention relates to an encryption device, a decryption device, and a route search system that use encrypted route search data.

地理情報システムでは地図表示や経路探索など様々な機能が提供される。こられのうち経路探索では、ノードとリンクから構成される経路探索用データを用いて、ダイクストラ法などの経路探索アルゴリズムを用いて、出発点と目的地の経路探索が行われる。   The geographic information system provides various functions such as map display and route search. Among these, in the route search, the route search of the starting point and the destination is performed using the route search algorithm such as the Dijkstra method using the route search data composed of nodes and links.

ところで地図情報には、例えば、軍事基地や個人所有の敷地、或は、企業の工場など、一般に開示しないことが望ましい情報が多数含まれる。従来、地理情報配信システムでは、屋外の地図情報を提供するサービスが多かったが、近年の情報サービス産業の発展に伴い、地下街や駅構内など、屋内の地図情報を提供するサービスも増えてきている。これら屋内の地図情報には、例えば、店舗における従業員の作業エリアやオフィス内の間取図など、一般に公開すべきでない情報が含まれる。また、例えばオフィス内の間取図では、機密文書の保管場所など、地図情報の利用者に応じて適切に開示する情報を制限する必要がある。従って、経路探索についても、利用者の開示範囲に応じて適切な範囲内での経路探索を行うことが望まれる。   By the way, the map information includes a lot of information that should not be disclosed in general, such as military bases, privately owned sites, or factories of companies. Conventionally, in geographic information distribution systems, there are many services that provide outdoor map information, but with the development of the information service industry in recent years, services that provide indoor map information such as underground shopping malls and stations are also increasing. . Such indoor map information includes, for example, information that should not be disclosed to the public, such as work areas of employees in stores and floor plans in offices. For example, in a floor plan in an office, it is necessary to restrict information to be disclosed appropriately according to a user of map information, such as a storage location of a confidential document. Accordingly, it is desired that the route search be performed within an appropriate range according to the disclosure range of the user.

従来の技術では、ネットワークや放送により地図情報を車両に配信する場合に配信先の車両に応じて適切な情報のみが開示されるよう、車両別に地図情報を管理し、それぞれの地図情報を個別の鍵で暗号化することによって、車両の種別に応じた地図情報の開示制限を行う技術が知られている(例えば、特許文献1)。   In the conventional technology, when map information is distributed to a vehicle by a network or broadcast, the map information is managed for each vehicle so that only appropriate information is disclosed according to the distribution destination vehicle. A technique for restricting disclosure of map information according to the type of vehicle by encrypting with a key is known (for example, Patent Document 1).

また、経路探索用データに対しては、利用者が経路探索用データを編集し、経路探索用データの改ざんを、暗号を用いて保護する方法が知られている(例えば特許文献2)。   For route search data, a method is known in which a user edits route search data and protects the alteration of the route search data using encryption (for example, Patent Document 2).

特開2005−121719号公報JP 2005-121719 A 特開2000−193472号公報JP 2000-193472 A

特許文献1では、種別に応じた地図情報の開示において、暗号化した地図情報を送信先の車両種別ごとに準備し、車には種別ごとに秘密鍵を事前に格納しておく。これによって、暗号化された地図情報を配信し、特定の車両種別のみが暗号化された地図を復号することができ、車両の種別に応じた開示制限が可能となる。   In patent document 1, in disclosure of map information according to type, encrypted map information is prepared for each vehicle type of a transmission destination, and a private key is stored in advance for each type in a car. Accordingly, encrypted map information can be distributed, a map in which only a specific vehicle type is encrypted can be decrypted, and disclosure restriction can be made according to the type of vehicle.

しかしながら、特許文献1で開示された方法では、地図を構成する地物の形状、及び、それに付随した名称等の属性情報を対象としており、経路探索用データの暗号化については開示されていない。また、経路探索では、任意の出発点から目的地までの経路を探索する必要があり、利用者ごとの要求に応じて経路探索を実行することが必要となる。特許文献1のように、事前に暗号化データを用意して一斉配信する方法では、利用者の種別ごと、或いは、出発地・目的地ごとの経路探索結果を個別に暗号化して管理すること必要となる。そのため、管理するデータサイズの増加や、事前に用意した地点間の経路探索結果しか提供できず、利用者ごとに適切な経路探索を行うことができないという問題が生じる。   However, the method disclosed in Patent Document 1 targets attribute information such as the shape of a feature constituting a map and the name associated therewith, and does not disclose encryption of route search data. In the route search, it is necessary to search for a route from an arbitrary starting point to the destination, and it is necessary to execute a route search according to a request for each user. In the method of preparing encrypted data in advance and distributing it simultaneously as in Patent Document 1, it is necessary to individually encrypt and manage the route search results for each type of user, or for each departure point / destination It becomes. For this reason, there is a problem that an increase in data size to be managed and only a route search result between points prepared in advance can be provided, and an appropriate route search cannot be performed for each user.

また、特許文献2に開示された方法では、経路探索用データの改ざんを防止する方法が述べられているが、経路探索用データの開示先を利用者、或いは、利用者種別ごとに制限する方法については開示されておらず、特許文献1と同様に、利用者ごとに適切な経路探索を行うことができないという問題がある。   In addition, in the method disclosed in Patent Document 2, a method for preventing falsification of route search data is described, but a method of restricting the disclosure destination of route search data for each user or user type Is not disclosed, and similarly to Patent Document 1, there is a problem that an appropriate route search cannot be performed for each user.

本発明は、上記に鑑みてなされたものであって、利用者ごとに適切な経路探索を行うことができる暗号化装置、復号化装置、および経路探索システムを提供することを目的とする。   The present invention has been made in view of the above, and an object thereof is to provide an encryption device, a decryption device, and a route search system capable of performing an appropriate route search for each user.

上述した目的を達成するために、本発明にかかる暗号化装置は、地図上の位置を示すノードおよび前記ノードと前記ノードに隣接するノードとの関連性を示すリンク情報を含む経路探索用データと前記検索用データに対応した地図を表示させるための表示用データとが対応付けられた地図データと、前記ノードと前記表示用データを開示させる利用者である開示先ユーザとが対応付けられた暗号化定義情報と、前記経路探索用データを暗号化するための暗号化鍵を格納する記憶部と、前記経路探索用データと、前記暗号化鍵と、前記暗号化定義情報とに基づいて、前記利用者ごとに、暗号化すべき前記ノードを特定し、特定した前記ノードおよび特定した前記ノードに隣接するノードの前記経路探索用データを暗号化し、暗号化した前記経路探索用データと前記表示用データとを対応付けた暗号化地図データを生成する暗号化処理部と、を備えることを特徴とする。   In order to achieve the above-described object, an encryption apparatus according to the present invention includes a route search data including a node indicating a position on a map and link information indicating a relationship between the node and a node adjacent to the node. Encryption in which map data associated with display data for displaying a map corresponding to the search data is associated with a disclosure destination user who is a user who discloses the node and the display data Based on the encryption definition information, a storage unit for storing an encryption key for encrypting the route search data, the route search data, the encryption key, and the encryption definition information, For each user, the node to be encrypted is identified, the route search data of the identified node and the node adjacent to the identified node is encrypted, and the encrypted route Characterized in that it comprises an encryption processing unit for generating the encrypted map data that associates search for data and the display data.

また、本発明にかかる復号化装置は、利用者から地図上の位置のある地点から他の地点までの経路を探索するための経路探索要求を受けた場合に、暗号化された地図上の位置を示すノードおよび前記ノードと前記ノードに隣接するノードとの関連性を示すリンク情報を含む経路探索用データを復号化する復号化鍵に基づいて、前記経路探索用データと、前記ノードにある地物を表示させるための表示用データとが対応付けられた暗号化地図データを復号化する復号処理部と、前記ある地点から前記他の地点までの経路を、前記暗号化地図データに対応する前記経路探索用データに含まれる前記ノードと前記リンク情報とに基づいて前記復号処理部を用いて暗号化地図データの復号を行い、復号結果を用いて前記ノードと前記リンク情報とに基づいて、繰り返し探索する経路探索部と、を備えることを特徴とする。   In addition, the decryption device according to the present invention, when receiving a route search request for searching a route from a point on the map to another point from the user, the position on the encrypted map And the route search data based on a decryption key for decrypting the route search data including link information indicating the relevance between the node and the node adjacent to the node. A decryption processing unit for decrypting encrypted map data associated with display data for displaying an object, and a route from the certain point to the other point corresponding to the encrypted map data Based on the node and the link information included in the route search data, the decryption processing unit is used to decrypt the encrypted map data, and based on the node and the link information using the decryption result. There are, characterized in that it comprises a route searching unit for repeatedly searching, a.

また、本発明は、上記暗号化装置および復号化装置を備えた経路探索システムである。   The present invention also provides a route search system including the encryption device and the decryption device.

本発明によれば、利用者ごとに適切な経路探索を行うことができる暗号化装置、復号化装置、および経路探索システムを提供することができる。   According to the present invention, it is possible to provide an encryption device, a decryption device, and a route search system that can perform an appropriate route search for each user.

第1の実施の形態における地図データ配信システムの概略を示す構成図である。It is a block diagram which shows the outline of the map data delivery system in 1st Embodiment. 図1に示した地図データ配信システムを構成する各装置の構成図である。It is a block diagram of each apparatus which comprises the map data delivery system shown in FIG. 地図データ配信システムにおいて行われる処理のシーケンス図である(登録処理)。It is a sequence diagram of the process performed in a map data delivery system (registration process). 地図データ配信システムにおいて行われる処理のシーケンス図である。経路探索の処理フローの概略を表す図である(経路処理)。It is a sequence diagram of the process performed in a map data delivery system. It is a figure showing the outline of the processing flow of a route search (route processing). 平文地図データのデータ構造の一部とその表示イメージを示す図である。It is a figure which shows a part of data structure of plaintext map data, and its display image. 暗号化定義情報の一例を示す図である。It is a figure which shows an example of encryption definition information. 第1の実施の形態における暗号化処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the encryption process in 1st Embodiment. 第1の実施の形態における復号化処理の処理手順を示すフローチャートである。第一の実施例における経路探索用データの復号処理の概略を示す処理フロー図である。It is a flowchart which shows the process sequence of the decoding process in 1st Embodiment. It is a processing flowchart which shows the outline of the decoding process of the data for a route search in a 1st Example. 経路探索用データ格納部の例を示す図である。It is a figure which shows the example of the data storage part for a route search. 暗号化定義情報を生成するためのアプリケーション画面の一例を示す図である。It is a figure which shows an example of the application screen for producing | generating encryption definition information. 第2の実施の形態における暗号化処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the encryption process in 2nd Embodiment. 第2の実施の形態における復号化処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the decoding process in 2nd Embodiment. 第2の実施の形態における暗号化処理前後でのデータ構造の変化の一例を示す図である。It is a figure which shows an example of the change of the data structure before and behind the encryption process in 2nd Embodiment.

以下に添付図面を参照して、この発明にかかる暗号化装置、復号化装置、および経路探索システムの実施の形態を詳細に説明する。
(第1の実施の形態)
図1は、第1の実施の形態における地図データ配信システム1の概略を示す構成図である。図1において、点線はデータの流れの概略を表している。地図データ配信システム1は、地図暗号化装置101、地図格納装置102と、鍵管理装置103と、地図配信装置104と、地図閲覧装置105と、地図復号装置106とを含んで構成され、これらの各装置がネットワーク100を介して接続されている。
Exemplary embodiments of an encryption device, a decryption device, and a route search system according to the present invention will be explained below in detail with reference to the accompanying drawings.
(First embodiment)
FIG. 1 is a configuration diagram showing an outline of a map data distribution system 1 according to the first embodiment. In FIG. 1, the dotted line represents the outline of the data flow. The map data distribution system 1 includes a map encryption device 101, a map storage device 102, a key management device 103, a map distribution device 104, a map browsing device 105, and a map decryption device 106. Each device is connected via the network 100.

地図暗号化装置101は、暗号化定義情報生成部110と、暗号化処理部111とを含んで構成されている。暗号化定義情報生成部110は、暗号化される前の地図データである平文地図データ120から暗号化定義情報121を生成し、暗号化処理部111は、暗号化定義情報121、平文地図データ120と暗号化鍵122から、暗号化地図データ124を生成するものである。なお、暗号化定義情報121の具体的な内容については後述する。   The map encryption apparatus 101 includes an encryption definition information generation unit 110 and an encryption processing unit 111. The encryption definition information generation unit 110 generates encryption definition information 121 from plaintext map data 120 that is map data before being encrypted, and the encryption processing unit 111 includes encryption definition information 121, plaintext map data 120. The encryption map data 124 is generated from the encryption key 122. The specific contents of the encryption definition information 121 will be described later.

地図格納装置102は、データベース処理部112を有し、暗号化地図データ124を格納する。ここで、データベース処理部112は、例えば、SQL(Structured Query Langage)やGIS製品(Geographic Information System)のAPI(Application Program Interface)を用いて、地図配信装置104からの要求に応じて、検索や登録、削除、変更など、暗号化地図データ124に関する種々の処理を行う。   The map storage device 102 has a database processing unit 112 and stores encrypted map data 124. Here, the database processing unit 112 uses, for example, a search or registration in response to a request from the map distribution apparatus 104 using an API (Application Program Interface) of an SQL (Structured Query Language) or a GIS product (Geographic Information System). Various processes relating to the encrypted map data 124 such as deletion, change, etc. are performed.

鍵管理装置103は、鍵生成部113を含んで構成される。鍵生成部113は、暗号化に利用する暗号化鍵122と対応する復号鍵123を生成する。ここで、鍵生成部1113が生成する暗号化鍵122、復号鍵123は、RSAなどの公開鍵暗号技術における公開鍵、秘密鍵であってもよいし、AES(Advanced Encryption Standard)などの共通鍵暗号技術における共有鍵であってもよい。   The key management apparatus 103 includes a key generation unit 113. The key generation unit 113 generates a decryption key 123 corresponding to the encryption key 122 used for encryption. Here, the encryption key 122 and the decryption key 123 generated by the key generation unit 1113 may be a public key or a secret key in a public key encryption technology such as RSA, or a common key such as AES (Advanced Encryption Standard). It may be a shared key in cryptographic technology.

地図配信装置104は、クエリ処理部117を含んで構成されている。クエリ処理部117は、地図閲覧装置105内のクエリ要求部115からの要求を受け付け、クエリの解析を行い、地図復号装置106の表示用イメージ生成部1142が生成した表示用地図データを受けると、地図閲覧装置105へ返信して表示させるための地図データを作成する。   The map distribution device 104 includes a query processing unit 117. When the query processing unit 117 receives a request from the query request unit 115 in the map browsing device 105, analyzes the query, and receives the display map data generated by the display image generation unit 1142 of the map decoding device 106, Map data to be returned to the map browsing device 105 and displayed is created.

地図閲覧装置105は、クエリ要求部115と、表示処理部118とを含んで構成されている。ここで、クエリ要求部115は、地図配信装置104へ、地図データの検索などのクエリを送信し、地図配信装置104から返信された地図データを受信して、表示処理部118が地図データを表示する。地図閲覧装置105が受信した地図データは、後述するように、地図復号装置106の復号処理部116が復号鍵123を用いて復号処理を行ったものである。   The map browsing device 105 includes a query request unit 115 and a display processing unit 118. Here, the query request unit 115 transmits a query such as a search for map data to the map distribution device 104, receives the map data returned from the map distribution device 104, and the display processing unit 118 displays the map data. To do. The map data received by the map browsing device 105 is obtained by performing decryption processing using the decryption key 123 by the decryption processing unit 116 of the map decryption device 106, as will be described later.

地図復号装置106は、経路探索処理部1141と、表示用地図イメージ生成部1142と、復号処理部116とを含んで構成される。表示用地図イメージ生成部1142は、復号処理部116が地図配信装置104のクエリ処理部117から表示用地図データを復号する要求を受けて復号した表示用地図データを送る。経路探索処理部1142は、地図配信装置104から経路探索用データを受信した場合に、経路探索を行う。経路探索の具体的な処理については後述する。復号処理部116は、復号鍵123を用いて、暗号化地図データ124の復号を行う。なお、以下の説明では、地図復号装置106を単独の装置として説明を行うが、地図復号装置106は地図配信装置104の一部であってもよいし、地図復号装置106は、地図閲覧装置105の一部として構成されていてもよい。   The map decoding apparatus 106 includes a route search processing unit 1141, a display map image generation unit 1142, and a decoding processing unit 116. The display map image generation unit 1142 receives the request for decoding the display map data from the query processing unit 117 of the map distribution device 104 by the decoding processing unit 116 and sends the decoded display map data. The route search processing unit 1142 performs route search when receiving route search data from the map distribution device 104. Specific processing for route search will be described later. The decryption processing unit 116 decrypts the encrypted map data 124 using the decryption key 123. In the following description, the map decoding device 106 is described as a single device. However, the map decoding device 106 may be a part of the map distribution device 104, and the map decoding device 106 may be the map browsing device 105. It may be configured as a part of.

図2は、図1に示した地図データ配信システム1を構成する各装置の構成図である。図2に示すように、図1に示した地図データ配信システム1を構成する各装置は、CPU(Central Processor Unit)201、RAM(Random Access Memory)202、入力装置203、表示装置204、通信装置205、読書装置206、及び、外部記憶装置207がインターフェイス205を介して接続された、一般的な構成を有するコンピュータ(電子計算機)200として構成される。   FIG. 2 is a configuration diagram of each device constituting the map data distribution system 1 shown in FIG. As shown in FIG. 2, each device constituting the map data distribution system 1 shown in FIG. 1 includes a CPU (Central Processor Unit) 201, a RAM (Random Access Memory) 202, an input device 203, a display device 204, a communication device. 205, a reading device 206, and an external storage device 207 are connected via an interface 205 and configured as a computer (electronic computer) 200 having a general configuration.

入力装置203は、例えば、キーボードやマウスなどであり、表示装置204は、表示用ディスプレイ、外部記憶装置207は、HDD(Hard Disk Drive)などである。また、通信装置205はネットワークを介して他の装置と通信を行うための通信インターフェイスである。さらに、読書装置206は、FD(Floppy(登録商標) Disk)やUSBメモリ、或いは、CD−Rといった外部記憶媒体208から、データの読込み、或いは、書込みを行うための装置である。   The input device 203 is, for example, a keyboard or a mouse, the display device 204 is a display for display, and the external storage device 207 is an HDD (Hard Disk Drive) or the like. The communication device 205 is a communication interface for communicating with other devices via a network. Furthermore, the reading device 206 is a device for reading or writing data from an external storage medium 208 such as an FD (Floppy (registered trademark) Disk), a USB memory, or a CD-R.

CPU201は、RAM202上にロードしたプログラムを実行することによって、図1に示した各装置の各処理部(暗号化処理部111など)をプロセスとして具現化する。また、インターフェイス209は、装置内の各構成要素間のデータを送受信する内部パスである。   The CPU 201 implements each processing unit (such as the encryption processing unit 111) of each device illustrated in FIG. 1 as a process by executing a program loaded on the RAM 202. The interface 209 is an internal path for transmitting and receiving data between the components in the apparatus.

図3および図4は、地図データ配信システム1において行われる処理のシーケンス図である。まず、図3について説明する。図3は、地図閲覧装置105から経路探索要求があった場合に、利用者の種別に応じて経路探索を行って、その種別に応じた地図データを地図閲覧装置105に表示させるための暗号化地図データ124を登録する処理(以下、登録処理と呼ぶ。)の処理手順を示すフローチャートである。   3 and 4 are sequence diagrams of processes performed in the map data distribution system 1. FIG. First, FIG. 3 will be described. FIG. 3 shows an encryption for performing a route search according to the type of the user and displaying map data corresponding to the type on the map browsing device 105 when a route search request is received from the map browsing device 105. It is a flowchart which shows the process sequence of the process (henceforth a registration process) which registers the map data.

この登録処理は、地図データ配信システム1が行う処理のうち、地図閲覧装置105に地図データを配信する前に、例えば、地図データ配信システム1を利用するユーザを登録するタイミングで、あらかじめ管理者等によって行われるものである。登録処理では、鍵管理装置103での鍵生成と、地図暗号化装置101、地図閲覧装置105への送信、及び、平文地図データの暗号化、暗号化された地図データの地図格納装置102での格納までの処理を行う。   This registration process is performed by the map data distribution system 1 before the map data is distributed to the map browsing device 105, for example, at a timing when a user who uses the map data distribution system 1 is registered. Is done by. In the registration process, key generation in the key management device 103, transmission to the map encryption device 101 and the map browsing device 105, encryption of plain text map data, and map storage device 102 of the encrypted map data Perform processing up to storage.

図3に示すように、登録処理が開始されると(ステップS300)、鍵管理装置103は、利用者に応じた暗号化鍵122、復号鍵123を生成し(ステップS301)、生成した復号鍵123を地図復号装置106に送信する(ステップS302)。   As shown in FIG. 3, when the registration process is started (step S300), the key management apparatus 103 generates an encryption key 122 and a decryption key 123 according to the user (step S301), and the generated decryption key 123 is transmitted to the map decoding apparatus 106 (step S302).

地図復号装置106は、復号鍵123を受信すると、受信したその復号鍵123を、外部記憶装置207等の記憶装置に格納し(ステップS303)、その後、鍵管理装置103は、暗号化鍵122を地図暗号化装置101に送信する(ステップS304)。   Upon receiving the decryption key 123, the map decryption device 106 stores the received decryption key 123 in a storage device such as the external storage device 207 (step S303), and then the key management device 103 stores the encryption key 122. It transmits to the map encryption apparatus 101 (step S304).

暗号化鍵122を受信すると、地図暗号化装置101は、受信した暗号化鍵122を外部記憶装置207等の記憶装置に格納し(ステップS305)、暗号化定義情報生成部110は、平文地図データ120を用いて、暗号化定義情報121を生成する(ステップS306)。   Upon receiving the encryption key 122, the map encryption device 101 stores the received encryption key 122 in a storage device such as the external storage device 207 (step S305), and the encryption definition information generation unit 110 receives the plaintext map data. Using 120, the encryption definition information 121 is generated (step S306).

ここで、暗号化定義情報121とは、後述するノード、およびノード間の関係を表すリンクから構成される経路探索用データを、開示対象となる利用者(あるいは利用者の種別)を、ノードと対応付けて記憶するものである。   Here, the encryption definition information 121 is a route search data composed of a node and a link representing a relationship between nodes described later, a user (or a type of user) to be disclosed, and a node. This is stored in association with each other.

なお、この暗号化定義情報121は、地図データ配信システム1が取り扱う平文地図データ120に対して作成されるものであり、具体的な内容については図6を用いて後述する。また、暗号化定義情報121として記述されるデータの内容(例えば、どのノードをどの利用者に対して開示させるのか)については、あらかじめ管理者等によって定められ、その設定にしたがって暗号化定義情報121が生成されるものとする。   The encryption definition information 121 is created for the plain text map data 120 handled by the map data distribution system 1, and the specific contents will be described later with reference to FIG. The content of data described as the encryption definition information 121 (for example, which node is disclosed to which user) is determined in advance by an administrator or the like, and the encryption definition information 121 is set according to the setting. Is generated.

そして、地図暗号化装置101の暗号化処理部111は、暗号化定義情報121と平文地図データ120、暗号化鍵122から暗号化地図データ124を生成し、生成した暗号化地図データ124を地図格納装置102に送信する(ステップS307)。このステップS307の具体的な処理(暗号化処理)については、図7を用いて後述する。   Then, the encryption processing unit 111 of the map encryption apparatus 101 generates encrypted map data 124 from the encryption definition information 121, the plaintext map data 120, and the encryption key 122, and stores the generated encrypted map data 124 in a map. It transmits to the apparatus 102 (step S307). Specific processing (encryption processing) in step S307 will be described later with reference to FIG.

地図格納装置102は、地図暗号化装置101から暗号化地図データ124を受信して、その暗号化地図データ124を格納し(ステップS308)、図3に示す登録処理が終了する(ステップS309)。この登録処理が終了すると、利用者毎の暗号化鍵122および復号鍵123と、暗号化地図データ124と、暗号化定義情報121とが生成される。   The map storage device 102 receives the encrypted map data 124 from the map encryption device 101, stores the encrypted map data 124 (step S308), and ends the registration process shown in FIG. 3 (step S309). When this registration process is completed, an encryption key 122 and a decryption key 123 for each user, encrypted map data 124, and encryption definition information 121 are generated.

ここで、ステップS302において、鍵管理装置103が復号鍵123を地図復号装置106に送信する場合、および暗号化鍵122、復号鍵123として共通鍵暗号技術における共有鍵を用いたこれらの鍵を生成し、ステップS304において、鍵管理装置103が地図暗号化装置101に暗号化鍵122を送信する場合、外部記憶媒体を利用して直接配送するか、あるいは暗号化通信を用いて送信することが望ましい。また、公開鍵暗号技術における秘密鍵や共通鍵暗号技術における共有鍵は、例えばICカードやHSM(Hardware Security Module)などの耐タンパ性を有するデバイス内に格納しておくことが望ましい。   Here, in step S302, when the key management apparatus 103 transmits the decryption key 123 to the map decryption apparatus 106, and generates these keys using the shared key in the common key encryption technique as the encryption key 122 and the decryption key 123. In step S304, when the key management apparatus 103 transmits the encryption key 122 to the map encryption apparatus 101, it is preferable that the key management apparatus 103 directly delivers it using an external storage medium or transmits it using encrypted communication. . Moreover, it is desirable to store the secret key in the public key cryptography and the shared key in the common key cryptography in a tamper-resistant device such as an IC card or HSM (Hardware Security Module).

一方、公開鍵暗号技術における公開鍵は、一般に公開することが可能であるので、HTTP(Hyper Text Transfer Protocol)などの一般的な通信路を用いてもよい。ただし、例えば、鍵管理装置103が公開鍵に対して公開鍵証明書を発行し、暗号化装置101で使用する暗号化鍵122に誤りや改ざんがないことを、公開鍵証明書を用いて確認することが望ましい。   On the other hand, since the public key in the public key encryption technology can be disclosed to the public, a general communication path such as HTTP (Hyper Text Transfer Protocol) may be used. However, for example, the key management device 103 issues a public key certificate to the public key, and uses the public key certificate to confirm that the encryption key 122 used in the encryption device 101 has no errors or tampering. It is desirable to do.

図4は、地図データ配信システム1が、利用者から地図の経路探索要求を受け付けて、その結果を利用者に表示するための処理(以下、経路処理と呼ぶ。)の処理手順を示すフローチャートである。図4では、地図配信装置104から地図閲覧装置105に地図データを配信し、地図閲覧装置105で表示するまでの処理フローを表している。なお、本処理フローにおいては、主に、地図閲覧装置105からの経路探索要求の送信、地図配信装置104でのクエリ解析、地図格納装置102を利用した検索の実行と地図閲覧装置105への送信、及び、地図閲覧装置105での復号、表示処理が行われる。   FIG. 4 is a flowchart showing a processing procedure of processing (hereinafter referred to as route processing) for the map data distribution system 1 to accept a map route search request from the user and display the result to the user. is there. FIG. 4 shows a processing flow from map data distribution from the map distribution device 104 to the map browsing device 105 until display on the map browsing device 105. In this processing flow, mainly, a route search request is transmitted from the map browsing device 105, a query is analyzed by the map distribution device 104, a search is performed using the map storage device 102, and is transmitted to the map browsing device 105. And the decoding and the display process in the map browsing apparatus 105 are performed.

図4に示すように、地図データ配信システム1が、利用者から地図データの経路探索要求を受け付け、経路処理が開始されると(ステップS400)、地図閲覧装置105のクエリ要求部115は、地図配信装置104に、受け付けられた経路探索要求を送信する(ステップS401)。   As shown in FIG. 4, when the map data distribution system 1 receives a route search request for map data from a user and starts route processing (step S400), the query request unit 115 of the map browsing device 105 The received route search request is transmitted to the distribution device 104 (step S401).

そして、地図配信装置104のクエリ処理部117は、地図閲覧装置105から送信された経路探索要求を構成しているクエリを解析し、解析した結果に従って、地図格納装置102に対して経路探索用データの検索要求を送信する(ステップS402)。   Then, the query processing unit 117 of the map distribution device 104 analyzes the query that constitutes the route search request transmitted from the map browsing device 105, and according to the analysis result, the map storage device 102 sends route search data. A search request is transmitted (step S402).

地図格納装置102のデータベース処理部112は、地図配信装置104から検索要求を受信し、その検索要求に従って、図3に示した登録処理によって登録された暗号化地図データ124あるいは地図暗号化装置101の平文地図データ120にアクセスして検索処理を実行し、検索結果(例えば、出発地、目的地、および途中のノードの座標データやノードIDを含む情報)を経路探索用データとして地図配信装置104に返信する(ステップS403)。   The database processing unit 112 of the map storage device 102 receives the search request from the map distribution device 104, and in accordance with the search request, the encrypted map data 124 or the map encryption device 101 registered by the registration process shown in FIG. The plaintext map data 120 is accessed, search processing is executed, and the search result (for example, information including coordinate data and node IDs of the departure point, destination, and intermediate nodes) is sent to the map distribution device 104 as route search data. A reply is made (step S403).

続いて、地図配信装置104のクエリ処理部117は、地図格納装置102から経路探索用データを受信し、受信した経路探索用データを、地図復号装置106に送信し(ステップS404)、地図復号装置106の経路探索処理部1141および復号処理部116は、受信した経路探索用データを参照して経路探索を実行し、経路探索結果を地図配信装置104に送信する(ステップS405)。なお、ステップS405の具体的な処理(復号化処理)については、図8を用いて後述する
そして、地図配信装置104のクエリ処理部117は、経路探索結果を受信し、受信した経路探索結果を参照して表示用地図データの検索要求を地図格納装置102に送信し(ステップS406)、地図格納装置102のデータベース処理部112は、表示用地図データの検索要求にしたがって表示用地図データの検索を行い、その検索結果を地図配信装置104に送信する(ステップS407)。
Subsequently, the query processing unit 117 of the map distribution device 104 receives the route search data from the map storage device 102, transmits the received route search data to the map decoding device 106 (step S404), and the map decoding device. 106, the route search processing unit 1141 and the decoding processing unit 116 execute the route search with reference to the received route search data, and transmit the route search result to the map distribution device 104 (step S405). Note that the specific processing (decoding processing) in step S405 will be described later with reference to FIG. 8. Then, the query processing unit 117 of the map distribution device 104 receives the route search result, and receives the received route search result. The display map data search request is referred to and transmitted to the map storage device 102 (step S406), and the database processing unit 112 of the map storage device 102 searches the display map data according to the display map data search request. The search result is transmitted to the map distribution device 104 (step S407).

地図配信装置104のクエリ処理部117は、表示用地図データの生成要求を地図復号装置106に送信し(ステップS408)、地図復号装置106の表示用地図イメージ生成部1142および復号処理部116が暗号化地図データ124を復号化した表示用地図イメージを生成し、地図配信装置104に送信する(ステップS409)。   The query processing unit 117 of the map distribution device 104 transmits a display map data generation request to the map decoding device 106 (step S408), and the display map image generation unit 1142 and the decoding processing unit 116 of the map decoding device 106 are encrypted. A display map image obtained by decoding the converted map data 124 is generated and transmitted to the map distribution device 104 (step S409).

その後、地図配信装置104のクエリ処理部117は、表示用地図イメージを地図閲覧装置105に送信し(ステップS410)、地図閲覧装置105のクエリ要求部115は、表示用地図イメージを受信し、表示処理部118が、地図閲覧装置105の表示装置204に表示用地図イメージを表示させ(ステップS411)、図4に示す検索処理が終了する(ステップS412)。
る。
Thereafter, the query processing unit 117 of the map distribution device 104 transmits the display map image to the map browsing device 105 (step S410), and the query request unit 115 of the map browsing device 105 receives the display map image and displays it. The processing unit 118 displays the display map image on the display device 204 of the map browsing device 105 (step S411), and the search process shown in FIG. 4 ends (step S412).
The

ステップS401において、地図閲覧装置105から地図配信装置104への経路探索要求の送信に先立ち、後述するように、暗号化鍵122と復号鍵123とが利用者ごとに定められているため、利用者とこれらの鍵とを対応させるため、地図配信装置104は地図閲覧装置105のユーザ認証を行うことが望ましい。このため、地図配信装置104のクエリ処理部117が、地図閲覧装置105の装置固有の装置ID(例えば、MACアドレス(Media Access Control Address)等)を利用し、地図閲覧装置105からの認証用の情報を受け付けることによってユーザ認証を行えばよい。或いは、地図閲覧装置105を利用するユーザのID/PW(Password)の入力を求め、これを利用してユーザ認証を行ってもよいし、SSL(Secure Sockets Layer)などの暗号技術を用いた認証や生体情報を利用したユーザ認証を利用してもよい。   In step S401, prior to the transmission of the route search request from the map browsing device 105 to the map distribution device 104, the encryption key 122 and the decryption key 123 are determined for each user, as will be described later. In order to make these keys correspond to each other, it is desirable that the map distribution device 104 performs user authentication of the map browsing device 105. Therefore, the query processing unit 117 of the map distribution device 104 uses a device ID (for example, a MAC address (Media Access Control Address), etc.) unique to the map browsing device 105 for authentication from the map browsing device 105. User authentication may be performed by receiving information. Alternatively, the user of the map browsing device 105 may be requested to input ID / PW (Password), and user authentication may be performed using the input, or authentication using an encryption technology such as SSL (Secure Sockets Layer). Or user authentication using biometric information may be used.

また、上記のユーザ認証の結果、地図閲覧装置105に開示すべきでない情報が明らかな場合(ある利用者に対して非開示とする範囲が明らかな場合)には、ステップS402における地図格納装置102への経路探索用データの検索要求において、開示すべきでない情報を含む範囲を除いた検索要求を行い、開示可能な範囲のみの検索要求を行ってもよい。例えば、上記のユーザ認証の結果、ユーザが非開示領域すべてに対して閲覧権限を持たない場合には、ステップS403の地図格納装置102からの検索結果の送信には、開示範囲のみの経路探索用データを含めればよい。   Further, when information that should not be disclosed to the map browsing device 105 is clear as a result of the user authentication (when a range that is not disclosed to a certain user is clear), the map storage device 102 in step S402. In the search request for the route search data, a search request excluding a range including information that should not be disclosed may be performed, and a search request for only a disclosing range may be performed. For example, as a result of the above user authentication, if the user does not have the browsing authority for all the non-disclosure areas, the search result transmission from the map storage device 102 in step S403 is for the route search of only the disclosure range. Data should be included.

ステップS401における経路探索要求の送信では、例えば、現在位置(出発地)と目的地の座標情報(以下、単に位置情報と呼ぶこともある。)が地図配信装置104に送信される。ステップS402およびS403においては、地図配信装置104のクエリ処理部117は、その位置情報を元に地図格納装置102に対し検索処理を行い、現在位置および目的地に最も近いノードを出発地ノードおよび目的地ノードとし、経路探索に必要な経路探索用データと対応する暗号化データを地図格納装置102から取得する。このとき、経路探索に必要なデータは、例えば、探索範囲が建物の1階のみや町内など、限られた範囲であることが明らかである場合には、特定の範囲のみを探索に用いる経路探索用データとして取得すればよい。   In the transmission of the route search request in step S401, for example, the current position (departure point) and the coordinate information of the destination (hereinafter also simply referred to as position information) are transmitted to the map distribution device 104. In steps S402 and S403, the query processing unit 117 of the map distribution device 104 performs a search process on the map storage device 102 based on the position information, and selects the node closest to the current position and the destination as the departure node and the destination. As the ground node, the encrypted data corresponding to the route search data necessary for the route search is acquired from the map storage device 102. At this time, the data necessary for the route search is, for example, a route search that uses only a specific range for the search when it is clear that the search range is a limited range such as only the first floor of a building or a town. What is necessary is just to acquire as business data.

また、ステップS402およびS403の処理は対話的に行ってもよい。例えば、ステップS401から送信された経路探索要求の出発地や目的地が地名や部屋の名称などである場合には、地図配信装置104が地図格納装置102に問い合わせを行い、名称から地物を特定し、地物に関連づけられたノード、或いは、地物の位置からノードを特定すればよい。   Further, the processing in steps S402 and S403 may be performed interactively. For example, if the starting point or destination of the route search request transmitted from step S401 is a place name or a room name, the map distribution device 104 makes an inquiry to the map storage device 102 and identifies the feature from the name. Then, the node may be specified from the node associated with the feature or the position of the feature.

或いは、出発地ノード、または、目的地ノードが暗号化されている場合には、地図配信装置104が、経路探索要求に含まれる位置情報から地物を特定し、特定された地物に関連する暗号化データを地図格納装置102から取得し、地図配信装置104が地図復号装置106にその暗号化データを送信し、地図復号装置106が暗号化データを復号して地物のノードを取得すればよい。なお、経路探索用データの詳細については後述する。   Alternatively, when the departure node or the destination node is encrypted, the map distribution device 104 identifies the feature from the position information included in the route search request and relates to the identified feature. If the encrypted data is obtained from the map storage device 102, the map distribution device 104 transmits the encrypted data to the map decryption device 106, and the map decryption device 106 decrypts the encrypted data to obtain the feature node. Good. Details of the route search data will be described later.

或いは、上記の地名や部屋名称から出発地、或いは、目的地を特定する場合においても、地物そのもの、或いは、地物の属性情報が暗号化されている等の理由により、直接地物を特定できない場合がある。この場合には、例えば、地図格納装置102が、暗号化地図データ124以外に、上記地名や部屋の名称等を含むキーワードリストを、暗号化された地物、或いは属性情報に対応付けて記憶し、これらを管理するようにしてもよい。このようなキーワードリストを作成することによって、上記の地名や部屋名称といったキーワード検索に対応することが可能となる。   Or, even when the departure place or destination is specified from the above place name or room name, the feature is directly specified because the feature itself or the attribute information of the feature is encrypted. There are cases where it is not possible. In this case, for example, in addition to the encrypted map data 124, the map storage device 102 stores a keyword list including the place name, room name, etc. in association with the encrypted feature or attribute information. These may be managed. By creating such a keyword list, it is possible to cope with keyword searches such as the place names and room names described above.

また、キーワードリストには、キーワードそのものを保管するのではなく、例えば、SHA−1などの暗号学的ハッシュ関数を用いることによって、ハッシュ値を生成し、これを保管してもよい。暗号学的ハッシュ関数の一方向性の性質から、キーワードリストに格納されたハッシュ値からもとのキーワードを知ることが困難になる。さらに、各キーワードは、上述したようなユーザ認証によって利用可能なキーワードを制限することが望ましい。なお、キーワードリストの作成方法については、上記に限らず、他の方法を利用してもよい。   Further, in the keyword list, instead of storing the keyword itself, for example, a hash value may be generated and stored by using a cryptographic hash function such as SHA-1. Due to the one-way nature of the cryptographic hash function, it becomes difficult to know the original keyword from the hash value stored in the keyword list. Furthermore, it is desirable for each keyword to limit the keywords that can be used by user authentication as described above. The method for creating the keyword list is not limited to the above, and other methods may be used.

また、地図復号装置106の復号処理において、暗号化データが復号できなかった等の理由により、以上に示したいずれかの方法で、出発地ノード、目的地ノードが得られなかった場合には、「目的地が見つかりません」などのエラーを地図閲覧装置105に送信し、処理を終了する。   In addition, in the decryption process of the map decryption device 106, when the starting node and the destination node are not obtained by any of the methods described above, for example, because the encrypted data could not be decrypted, An error such as “Destination not found” is transmitted to the map browsing device 105, and the process is terminated.

なお、ステップS405までの処理によって経路探索が終了する。経路探索の結果は、上述したノードとリンクの集合である。ステップS406では、経路探索結果によって得られるノードの座標情報、或いは、関連付けられた地物を元に再度地図格納装置102に検索要求を送信し、経路探索結果を記載した周辺地図画像を作成する。なお、ステップS407から検索結果に暗号化データが含まれている(経路探索用データ以外の地図データそのものが暗号化されている)場合には、ステップS409内で復号処理を行い、地図データの復元を行ってもよい。   The route search is completed by the processing up to step S405. The result of the route search is the set of nodes and links described above. In step S406, a search request is transmitted again to the map storage device 102 based on the coordinate information of the node obtained from the route search result or the associated feature, and a surrounding map image describing the route search result is created. If encrypted data is included in the search result from step S407 (the map data itself other than the route search data is encrypted), decryption processing is performed in step S409 to restore the map data. May be performed.

上記のステップS402からステップS405の処理は、繰り返し行ってもよい。例えば、経路探索の範囲が大きい場合や地図送信装置105からの経路探索要求の送信(ステップS401)が経由地を指定している場合には、経由地を目的地ノード、或いは、出発地ノードとして、ステップS402からステップS405までの処理を複数回繰り返して処理を行ってもよい。   The processing from step S402 to step S405 may be repeated. For example, when the route search range is large, or when the route search request transmission from the map transmission device 105 (step S401) designates a route point, the route point is set as the destination node or the departure point node. The processing from step S402 to step S405 may be repeated a plurality of times.

ステップS410の地図閲覧装置105への表示用地図イメージの送信においては、上記ステップS409で生成された経路探索結果を表示した周辺地図画像だけではなく、例えば、タイトルやコスト(例えば、移動時間や料金)などをHTML(Hypertext Markup Language)で成形して送信してもよい。なお、この処理は、ステップS409内で行ってもよい。   In the transmission of the display map image to the map browsing device 105 in step S410, not only the surrounding map image displaying the route search result generated in step S409, but also, for example, the title and cost (for example, travel time and fee) ) Etc. may be formed by HTML (Hypertext Markup Language) and transmitted. This process may be performed in step S409.

次に、地図暗号化装置101が記憶する平文地図データ120のデータ構造について説明する。図5は、平文地図データ120のデータ構造の一部とその表示イメージ510を示す図である。   Next, the data structure of the plaintext map data 120 stored in the map encryption apparatus 101 will be described. FIG. 5 is a diagram showing a part of the data structure of the plaintext map data 120 and its display image 510.

図5に示すように、平文地図データ120は、地図データ格納部500と、経路探索用データ格納部501とを含んで構成され、経路探索用データ格納部501には、ノード格納部502およびリンク格納部503が格納されている。ここで、ノード格納部502とリンク格納部503は、経路探索の際に用いられるデータを格納しており、ノード格納部502には経路探索用データのノードと各ノードの地図上の対応位置座標、或いは、対応地物の情報が格納される。また、リンク格納部503には、ノード格納部502内に格納されたノード間を接続するリンク情報とその移動コストの情報が格納される。ここで、移動コストとは移動に要する時間、直線距離、或いは、経費などである。なお、ノード格納部502とリンク格納部503のデータ構造については、図9を用いて後述する。   As shown in FIG. 5, the plaintext map data 120 includes a map data storage unit 500 and a route search data storage unit 501. The route search data storage unit 501 includes a node storage unit 502 and a link. A storage unit 503 is stored. Here, the node storage unit 502 and the link storage unit 503 store data used for the route search, and the node storage unit 502 stores the node of the route search data and the corresponding position coordinates on the map of each node. Alternatively, information on corresponding features is stored. The link storage unit 503 stores link information for connecting the nodes stored in the node storage unit 502 and information on the movement cost thereof. Here, the movement cost is a time required for movement, a linear distance, an expense, or the like. The data structures of the node storage unit 502 and the link storage unit 503 will be described later with reference to FIG.

図5に示したように、地図データ格納部500には地図上の各地物の種類、名称などの属性情報とその地物の地図上での位置(座標)、形状を表すジオメトリが対応付けて構成される。なお、属性情報のうち、地図データ格納部500のFID(Feature ID)は、各地物を一意に識別するための識別子である。   As shown in FIG. 5, in the map data storage unit 500, attribute information such as the type and name of each feature on the map is associated with the geometry representing the position (coordinates) and shape of the feature on the map. Composed. Of the attribute information, the FID (Feature ID) of the map data storage unit 500 is an identifier for uniquely identifying each feature.

また、図5の下部には、経路探索の結果、地図閲覧装置105に表示される表示イメージ510を示している。表示イメージ510は、地図データ格納部500内に格納された地物のオメトリ、属性情報、および、ノード格納部502、リンク格納部503内に格納された位置情報とノード間の接続情報にしたがって作成される。   In the lower part of FIG. 5, a display image 510 displayed on the map browsing device 105 as a result of the route search is shown. The display image 510 is created according to the feature metric and attribute information stored in the map data storage unit 500, and the position information stored in the node storage unit 502 and link storage unit 503 and the connection information between nodes. Is done.

なお、図5に示した平文地図データ120の地図データ格納部500は、上述した各種のデータが表形式で表現されているが、これに限らずともよい。例えば、GIS(Geographic Information System)には、単純な表形式ではなく、例えば地物を最小単位(オブジェクト、フィーチャなどと呼ぶ)とし、同一の性質、或いは、場所に存在する複数のフィーチャをまとめてコンテナと呼ばれる単位にまとめ、管理し、コンテナを地図の構造(例えば、建物の構造等)に応じて配置することによって、木構造を用いて表現するものもある。このような場合でも、図5の表の各行を上記のフィーチャとして扱うことによって、同様に適用可能である。   In the map data storage unit 500 of the plaintext map data 120 shown in FIG. 5, the various data described above are expressed in a table format, but the present invention is not limited to this. For example, GIS (Geographic Information System) is not a simple table format, but features, for example, features as minimum units (called objects, features, etc.), and collects multiple features that exist in the same property or location. Some are expressed in a tree structure by collecting and managing them in units called containers and arranging the containers in accordance with the map structure (for example, the structure of a building). Even in such a case, it can be similarly applied by treating each row in the table of FIG. 5 as the above feature.

続いて、暗号化定義情報121について説明する。図6は、暗号化定義情報121の一例を示す図である。図6に示すように、暗号化定義情報121には、暗号化対象となるノードと、経路探索要求を行う利用者とが対応付けて記述されている。なお、以下では、これらの情報がXML(eXtensible Markup Language)をもちいて記述されているものとして説明している。   Next, the encryption definition information 121 will be described. FIG. 6 is a diagram illustrating an example of the encryption definition information 121. As shown in FIG. 6, in the encryption definition information 121, a node to be encrypted and a user who makes a route search request are described in association with each other. In the following description, it is assumed that these pieces of information are described using XML (extensible Markup Language).

暗号化定義情報121は、経路を検索するための要素として、暗号化対象ノード要素から構成される。暗号化対象ノード要素内には、暗号化対象となるノードを指定するノードリスト要素と、開示先を設定するための開示先リスト要素がある。ノード要素には暗号化対象となるノードIDを記述し、開示先要素に開示先の利用者、或いは、利用者の種別を一意に特定する識別子等を記述することによって、それぞれ、ノード、利用者を特定する。図6に示した例では、暗号化対象ノードとして、ノードID(NID)が「N01」および「N02」のノードが記述され、開示先リストとして、「ユーザA」および「ユーザB」が記述され、これらのノードは、ユーザAおよびユーザBにのみ開示することを示している。   The encryption definition information 121 includes an encryption target node element as an element for searching for a route. The encryption target node element includes a node list element for designating a node to be encrypted and a disclosure destination list element for setting a disclosure destination. In the node element, the node ID to be encrypted is described, and in the disclosed element, the disclosed user or the identifier for uniquely identifying the type of user is described. Is identified. In the example shown in FIG. 6, nodes with node IDs (N01) “N01” and “N02” are described as nodes to be encrypted, and “user A” and “user B” are described as disclosure destination lists. These nodes are shown to be disclosed only to user A and user B.

ここで、利用者を一意に識別するための識別子とは、例えば、社員番号や会員番号、e−mailアドレス等を用いればよい。なお、ノード要素、開示先要素を同一の暗号化対象ノード要素内で複数指定する理由は、開示先が同一であるノードをまとめ、開示先を複数指定可能とするためである。このように、暗号化対象ノードを複数指定することで、開示先の異なる複数のノードリストを設定することが可能である。   Here, as an identifier for uniquely identifying the user, for example, an employee number, a member number, an e-mail address, or the like may be used. The reason why a plurality of node elements and disclosure destination elements are specified in the same encryption target node element is that nodes having the same disclosure destination are grouped and a plurality of disclosure destinations can be specified. In this way, by specifying a plurality of nodes to be encrypted, it is possible to set a plurality of node lists with different disclosure destinations.

本実施例では、暗号技術、すなわち、復号鍵123の有無に応じて開示先の制限を行うため、開示先要素には利用者、或いは、利用者の種別を特定する識別子ではなく、復号鍵に対応する暗号化鍵122の識別子、或いは、参照先を記述するようにしてもよい。上記の開示先要素に利用者、或いは、利用者の識別子を記述した場合には、記述された識別子から暗号化鍵122、或いは、その参照先を特定し、暗号化処理時に暗号化鍵122を利用する。   In this embodiment, since the disclosure destination is restricted depending on the encryption technology, that is, the presence or absence of the decryption key 123, the disclosure destination element is not a user or an identifier that identifies the type of user, but a decryption key. The identifier of the corresponding encryption key 122 or the reference destination may be described. When the identifier of the user or the user is described in the above disclosure destination element, the encryption key 122 or the reference destination thereof is specified from the described identifier, and the encryption key 122 is set during the encryption process. Use.

なお、図6に示した暗号化定義情報121は、開示先リストや開示先などの要素名は異なるものであってもよい。また、ASN.1など、XML以外の他のデータ表現を用いてもよい。また、例えば地物そのもの、或いは、地物の属性情報、ジオメトリなど、経路探索用データ以外のデータの開示先を制限する場合には、暗号化定義情報要素内に暗号化対象ノードとは異なる子要素を追加し、開示先の設定を行えばよい。   Note that the encryption definition information 121 illustrated in FIG. 6 may have different element names such as a disclosure destination list and a disclosure destination. In addition, ASN. Data representations other than XML, such as 1, may be used. For example, when restricting the disclosure destination of data other than the route search data such as the feature itself or the attribute information and geometry of the feature, a child different from the encryption target node in the encryption definition information element. Add an element and set the disclosure destination.

続いて、図3に示したステップS307(暗号化処理)、図4に示したステップS405(復号化処理)、および暗号化処理前後でのデータ構造の変化について説明する。まず、暗号化処理の前後におけるデータ構造の変化を、図9を用いて説明する。なお、図9は、図5に例示した表示イメージ510の経路探索用データ格納部501の一部を例示した図である。前述の通り、経路探索用データ格納部501は、経路探索用データを構成するノードとリンクのうち、ノードに関する情報を格納するノード格納部502と、リンクに関する情報を格納するリンク格納部503から構成される。   Next, step S307 (encryption process) shown in FIG. 3, step S405 (decryption process) shown in FIG. 4, and changes in the data structure before and after the encryption process will be described. First, changes in the data structure before and after the encryption process will be described with reference to FIG. FIG. 9 is a diagram illustrating a part of the route search data storage unit 501 of the display image 510 illustrated in FIG. As described above, the route search data storage unit 501 includes the node storage unit 502 that stores information about nodes among the nodes and links that constitute the data for route search, and the link storage unit 503 that stores information about links. Is done.

図9は経路探索用データ格納部501の例を示す図である。図9に示すように、経路探索用データ格納部501aのノード格納部502aには、各ノード情報を格納するため、ノードを一意に識別する識別子であるNIDと、ノードの地図上の位置情報を表す座標と、暗号化処理後に隣接ノードが暗号化されているか否かを表す復号フラグと、を含んで構成される。また、リンク格納部503aは、リンクを一意に識別するための識別子、接続関係のうち始点側のノードを特定するための始点NIDと、終点側のノードを特定するための終点NIDと、ノード間の移動コストを表すコストと、を含んで構成される。   FIG. 9 is a diagram illustrating an example of the route search data storage unit 501. As shown in FIG. 9, in the node storage unit 502a of the route search data storage unit 501a, in order to store each node information, the NID that is an identifier for uniquely identifying the node and the position information on the map of the node are stored. And a decryption flag indicating whether or not the adjacent node is encrypted after the encryption process. The link storage unit 503a includes an identifier for uniquely identifying a link, a start point NID for specifying a start point side node in a connection relationship, an end point NID for specifying a node on the end point side, And a cost representing the movement cost of

なお、始点NIDおよび終点NIDは、ノード間の一方向への移動を表すためのものであり、ノード間の接続関係が全て両方向である場合には、始点NID、終点NIDの区別は不要である。また、始点NID、終点NIDの区別がある場合に、双方向での移動コストを表現する場合には、始点NIDと終点NIDを入れ替えたデータを別途入力する、或いは、リンク格納部503aに双方向であることを表すためのデータを新たに追加するなどすればよい。また、図9に示したリンク格納部503aは、コストの一例として移動時間のみを格納しているが、これ以外にも複数のコストを格納してもよい。例えば、車や自転車、徒歩など利用者の移動方法などに応じて、移動距離や時間等の複数のコストを格納するようにしてもよい。以下では、コストがひとつである場合について説明を行うが、複数格納されている場合でも、同様の手順で暗号化を行うことが可能である。   Note that the start point NID and the end point NID are for representing movement in one direction between the nodes. When the connection relation between the nodes is all in both directions, it is not necessary to distinguish the start point NID and the end point NID. . In addition, when there is a distinction between the start point NID and the end point NID, to express the movement cost in both directions, the data in which the start point NID and the end point NID are exchanged are separately input, or the link storage unit 503a is bidirectional. What is necessary is just to add the data for showing that it is. Further, the link storage unit 503a illustrated in FIG. 9 stores only the travel time as an example of the cost, but may store a plurality of costs in addition to this. For example, a plurality of costs such as a moving distance and time may be stored according to a user's moving method such as a car, a bicycle, and walking. In the following, a case where the cost is one will be described. However, even when a plurality of costs are stored, it is possible to perform encryption in the same procedure.

図9に示したノード格納部502a、リンク格納部503aには、例えば、名称や補足説明、或いは、関連する地物のFIDなどの情報を含んでもよい。なお、ノード格納部502a内の復号フラグは暗号化後に必要となるデータであるため、経路探索用データ格納部501aにはなくてもよい。   The node storage unit 502a and the link storage unit 503a illustrated in FIG. 9 may include information such as names, supplementary explanations, or FIDs of related features, for example. Note that the decryption flag in the node storage unit 502a is data necessary after encryption, and therefore may not be present in the route search data storage unit 501a.

暗号化経路探索用データ504aは、経路探索用データ501aのうち、NIDがN5のノードを暗号化した場合の暗号化結果を表している。暗号化経路探索用データ504aは、ノード格納部502aと、リンク格納部503aと、暗号化データ部505aと、を含んで構成されている。   The encrypted route search data 504a represents an encryption result when the node with NID N5 is encrypted in the route search data 501a. The encrypted path search data 504a includes a node storage unit 502a, a link storage unit 503a, and an encrypted data unit 505a.

暗号化データ部505aは、ノード、及びリンクを暗号化した結果を格納する暗号化データと、暗号化データを一意に識別するための識別子であるCIDと、復号時に復号すべき暗号化データを特定するためのFIDとNIDとを含む関連データと、を含んで構成される。   The encrypted data unit 505a specifies the encrypted data for storing the result of encrypting the node and the link, the CID that is an identifier for uniquely identifying the encrypted data, and the encrypted data to be decrypted at the time of decryption And related data including the FID and NID.

本実施例で説明するように、地図暗号化装置101の暗号化処理部111が行う経路探索データの暗号化では、暗号化対象となるノード、及びそのノードに接続された全てのリンク(例えば、図9に示した太枠部分)を、暗号化後のノード格納部502a、およびリンク格納部503aから削除し、暗号化対象のノードの全ての隣接ノードの復号フラグをT(TRUE)に設定する。なお、復号フラグがTでないノードには、F(FALSE)を設定する。   As described in the present embodiment, in the encryption of the route search data performed by the encryption processing unit 111 of the map encryption apparatus 101, the node to be encrypted and all the links connected to the node (for example, 9 is deleted from the encrypted node storage unit 502a and link storage unit 503a, and the decryption flags of all adjacent nodes of the encryption target node are set to T (TRUE). . Note that F (FALSE) is set for a node whose decoding flag is not T.

暗号化対象となるノードとそれに接続された全リンク(以下、これら暗号化を行うデータを暗号化対象データと呼ぶ。)は、暗号化定義情報121の開示先要素の設定に従い暗号化を行い、その暗号化結果のBASE64符号化した結果を暗号化データに格納する。なお、暗号化データには、ノードとリンクに関する全てのデータの暗号化結果を格納することが必要となるが、これには例えばXMLなどを用いてNID、座標などの各データを構造化した結果をBASE64符号化した結果を格納すればよい。   The node to be encrypted and all links connected thereto (hereinafter, the data to be encrypted are referred to as encryption target data) are encrypted according to the setting of the disclosure destination element of the encryption definition information 121, The result of BASE64 encoding of the encryption result is stored in the encrypted data. The encrypted data needs to store the encryption results of all the data related to the nodes and links. For this, for example, the result of structuring each data such as NID and coordinates using XML or the like May be stored as a result of BASE64 encoding.

上記の暗号化対象データの暗号化にあたっては、暗号化対象データを開示先ごとに暗号化鍵122を用いて個別に暗号化し、その結果を、XMLなどを用いて整形し、暗号化データ部505aに書き込んでもよいし、例えば、以下のようにしてもよい。   In the encryption of the encryption target data, the encryption target data is individually encrypted using the encryption key 122 for each disclosure destination, the result is shaped using XML or the like, and the encrypted data unit 505a is encrypted. Or may be written as follows, for example.

まず、鍵管理装置103の鍵生成部113が共通鍵暗号技術におけるランダムな共有鍵(以下、セッション鍵と呼ぶ。)を暗号化対象ノードごとに別々に生成し、地図暗号化装置101に送信する。次に、地図暗号化装置101の暗号化処理部111は、暗号化対象ノードごとに生成されたセッション鍵を暗号化定義情報121内の開示先ごとに以下のように暗号化する。   First, the key generation unit 113 of the key management apparatus 103 generates a random shared key (hereinafter referred to as a session key) in the common key encryption technique separately for each encryption target node, and transmits it to the map encryption apparatus 101. . Next, the encryption processing unit 111 of the map encryption apparatus 101 encrypts the session key generated for each encryption target node for each disclosure destination in the encryption definition information 121 as follows.

まず、各暗号化対象ノードに設定された開示先に、現在処理を行っている開示先と一致する開示先が存在すれば、現在処理を行っている暗号化対象ノードのセッション鍵をセッション鍵暗号化リストに加える。これを全ての暗号化対象ノードに対して繰り返すことにより、現在処理中の開示先が復号可能な暗号化対象ノードのセッション鍵のセッション鍵暗号化リストが作成される。次に生成されたセッション鍵暗号化リストを集約し、その開示先の暗号化鍵122を用いて暗号化する。以下、同様の処理を全ての開示先に対して繰り返し、その結果を、XMLなどを用いて整形し、暗号化データ部505aに書き込めばよい。上記では、暗号化対象ノードごと暗号化しているが、前述のようにノード格納部503aが複数のコストを含む場合には、個々のコストごとにセッション鍵を割り当てるようにしてもよい。   First, if there is a disclosure destination that matches the disclosure destination that is currently performing processing at the disclosure destination that is set for each encryption target node, the session key encryption of the session key of the encryption target node that is currently processing is performed. Add to the conversion list. By repeating this for all the encryption target nodes, a session key encryption list of session keys of the encryption target nodes that can be decrypted by the disclosure destination currently being processed is created. Next, the generated session key encryption list is aggregated and encrypted using the disclosed encryption key 122. Thereafter, the same processing is repeated for all disclosure destinations, and the result is shaped using XML or the like and written into the encrypted data portion 505a. In the above description, encryption is performed for each node to be encrypted, but as described above, when the node storage unit 503a includes a plurality of costs, a session key may be assigned for each cost.

なお、上記のセッション鍵暗号化リストの暗号化鍵122による暗号化において、復号時に暗号化対象ノードの完全性を保証するための暗号化対象ノードのハッシュ値や、MAC(Message Authentication Code)などを含めてもよい。上記の暗号化処理は、選択的開示型暗号と呼ばれ、特開2009−499731などで公開されているものである。   In the encryption using the encryption key 122 of the above session key encryption list, the hash value of the encryption target node for guaranteeing the integrity of the encryption target node at the time of decryption, the MAC (Message Authentication Code), etc. May be included. The above encryption processing is called selective disclosure type encryption, and is disclosed in Japanese Unexamined Patent Application Publication No. 2009-499731.

経路探索では、ダイクストラ法、或いはダイクストラ法を改良した経路探索アルゴリズムが用いられる。これらの経路探索アルゴリズムでは、あるノードを起点(起点ノードと呼ぶ)として、その隣接ノードを探索し、出発地ノードから隣接ノードへの合計コストの評価を繰り返すことによって、目的地ノードまでの合計コストを求め、最終的な出発点から目的地への経路探索が行われる。ダイクストラ法は、出発地ノードから目的地ノードまでの経路を、上記の手順を中核処理として、これを繰り返して探索を行う幅優先探索の経路探索アルゴリズムである。ダイクストラ法におけるコスト評価や探索の打切り条件等を改良することによって効率的な経路探索を行うアルゴリズムが知られている(例えばA*法など)。   In the route search, the Dijkstra method or a route search algorithm improved from the Dijkstra method is used. In these route search algorithms, a certain node is used as a starting point (referred to as a starting node), its neighboring nodes are searched, and the total cost from the departure node to the neighboring nodes is repeatedly evaluated, whereby the total cost to the destination node is determined. The route search from the final starting point to the destination is performed. The Dijkstra method is a route search algorithm of a breadth-first search in which a route from a departure node to a destination node is searched by using the above procedure as a core process. Algorithms that perform efficient route searches by improving cost evaluation, search termination conditions, etc. in the Dijkstra method are known (for example, the A * method).

そして、地図復号装置106の復号処理部116が復号化処理を行う際には、上記の隣接ノードの探索の際に、まず復号すべきデータの有無を起点ノードの復号フラグによって判断する。そして、復号フラグがTであった場合には、暗号化データ部505aの関連データを参照し、復号すべき暗号化データを取得する。次に、復号処理を実行し、暗号化データが復号された場合には、復号データからノード、リンクを復元し、経路探索を継続する。   When the decoding processing unit 116 of the map decoding apparatus 106 performs the decoding process, the search for the adjacent node first determines whether there is data to be decoded based on the decoding flag of the starting node. When the decryption flag is T, the related data in the encrypted data unit 505a is referred to obtain the encrypted data to be decrypted. Next, decryption processing is executed, and when encrypted data is decrypted, nodes and links are restored from the decrypted data, and the route search is continued.

以下に、上述した暗号化処理、復号化処理の具体的な処理手順を図7、図8を用いて説明する。本実施例では、上記のダイクストラ法の中核処理の中で復号処理を行う方法を説明するが、経路探索アルゴリズムはダイクストラ法に限定されるものではなく、ダイクストラ法を拡張した他の経路探索アルゴリズムにも適用可能である。   Hereinafter, specific processing procedures of the above-described encryption processing and decryption processing will be described with reference to FIGS. In this embodiment, a method of performing decoding processing in the core processing of the Dijkstra method will be described. However, the route search algorithm is not limited to the Dijkstra method, and other route search algorithms that extend the Dijkstra method may be used. Is also applicable.

本実施例における暗号化後には、暗号化対象ノードの全ての隣接ノードの復号フラグにはTが設定されている。経路探索アルゴリズム内で、起点ノードの復号フラグがTに設定されている場合には、暗号化データ部505a内から復号すべき暗号化データを検索し、復号処理部116に与えられた復号鍵123を用いて暗号化データを復号する。この復号によって暗号化データが復号できた場合には、ノード格納部502a、リンク格納部503aに復号されたデータを復元する。なお、暗号化データ部505a内からの復号すべき暗号化データの検索には、暗号化データ部505aの関連データを利用する。   After encryption in this embodiment, T is set in the decryption flags of all adjacent nodes of the encryption target node. In the route search algorithm, when the decryption flag of the origin node is set to T, the encrypted data to be decrypted is retrieved from the encrypted data unit 505a and the decryption key 123 given to the decryption processing unit 116 is retrieved. Is used to decrypt the encrypted data. If the encrypted data can be decrypted by this decryption, the decrypted data is restored to the node storage unit 502a and the link storage unit 503a. It should be noted that the related data of the encrypted data portion 505a is used for searching the encrypted data to be decrypted from the encrypted data portion 505a.

以下、本実施例における具体的な暗号化処理、復号化処理について説明する。図7は、本実施例における暗号化処理の処理手順を示すフローチャートである。   Hereinafter, specific encryption processing and decryption processing in the present embodiment will be described. FIG. 7 is a flowchart showing the processing procedure of the encryption processing in the present embodiment.

図7に示すように、暗号化処理が開始されると(ステップS700)、地図暗号化装置101の暗号化処理部111は、平文地図データ120を構成している経路探索用データ格納部501aを暗号化経路探索用データ格納部504aにコピーし、一度、復号フラグをFにセットする(ステップS701)。   As shown in FIG. 7, when the encryption process is started (step S700), the encryption processing unit 111 of the map encryption apparatus 101 stores the route search data storage unit 501a constituting the plaintext map data 120. The data is copied to the encrypted path search data storage unit 504a and the decryption flag is set to F once (step S701).

そして、暗号化処理部111は、暗号化定義情報121を参照し、暗号化すべき暗号化対象ノードの有無を判定する(ステップS702)。そして、暗号化処理部111は、暗号化すべき暗号化対象ノードがあると判定した場合(ステップS702;Yes)、ステップS703に進み、暗号化すべき暗号化対象ノードがないと判定した場合(ステップS702;No)、図7に示す暗号化処理を終了させる(ステップS710)。   Then, the encryption processing unit 111 refers to the encryption definition information 121 and determines whether there is an encryption target node to be encrypted (step S702). If the encryption processing unit 111 determines that there is an encryption target node to be encrypted (step S702; Yes), the process proceeds to step S703 and determines that there is no encryption target node to be encrypted (step S702). No), the encryption process shown in FIG. 7 is terminated (step S710).

暗号化すべき暗号化対象ノードがあると判定すると(ステップS702;Yes)、暗号化処理部111は、暗号化定義情報121に記述されている暗号化対象ノードを取得し(ステップS703)、リンク格納部503aを参照し、取得した暗号化対象ノードに接続された接続リンク内に未操作のリンクがあるか否かを判定する(ステップS704)。   If it is determined that there is an encryption target node to be encrypted (step S702; Yes), the encryption processing unit 111 acquires the encryption target node described in the encryption definition information 121 (step S703), and stores the link. With reference to the unit 503a, it is determined whether or not there is an unoperated link in the connection link connected to the acquired encryption target node (step S704).

そして、暗号化処理部111は、取得した暗号化対象ノードに接続された接続リンク内に未操作のリンクがあると判定した場合(ステップS704;Yes)、その接続リンクを関連リンクとして取得し(ステップS705)、取得した暗号化対象ノードに接続された接続リンクから暗号化対象ノードの隣接ノードを特定し、復号フラグをTに変更する(ステップS706)。そして、暗号化処理部111は、ステップS704〜S706までの処理を繰り返し行う。   When the encryption processing unit 111 determines that there is an unoperated link in the connection link connected to the acquired encryption target node (step S704; Yes), the encryption processing unit 111 acquires the connection link as a related link ( In step S705), an adjacent node of the encryption target node is identified from the connection link connected to the acquired encryption target node, and the decryption flag is changed to T (step S706). Then, the encryption processing unit 111 repeatedly performs the processing from steps S704 to S706.

一方、暗号化対象ノードに接続された接続リンク内に未操作のリンクがないと判定した場合(ステップS704;No)、暗号化処理部111は、暗号化対象ノード、及びステップS705で取得した関連リンクを暗号化し(ステップS707)、暗号化対象ノード、及びステップS705で取得した関連リンクを暗号化経路探索用データ504a内のノード格納部502a、リンク格納部503aから削除する(ステップS708)。   On the other hand, if it is determined that there is no unoperated link in the connection link connected to the encryption target node (step S704; No), the encryption processing unit 111 determines the encryption target node and the relationship acquired in step S705. The link is encrypted (step S707), and the encryption target node and the related link acquired in step S705 are deleted from the node storage unit 502a and link storage unit 503a in the encrypted route search data 504a (step S708).

その後、暗号化処理部111は、ステップS707の暗号化結果を暗号化データ格納部504aに格納し(ステップS709)、ステップS702へ戻る。そして、暗号化処理部111は、暗号化定義情報121に記述された全ての暗号化対象ノードについて、繰り返しステップS702〜S709までの処理を行う。   Thereafter, the encryption processing unit 111 stores the encryption result of step S707 in the encrypted data storage unit 504a (step S709), and returns to step S702. Then, the encryption processing unit 111 repeatedly performs the processing from steps S702 to S709 for all the encryption target nodes described in the encryption definition information 121.

なお、上記の暗号化処理におけるステップ702では、例えば図6に例示した暗号化定義情報121の暗号化対象ノード要素を逐次処理し、暗号化対象ノードがなくなるまで繰り返せばよい。このような逐次処理は、例えばXMLのSAX(Simple API for XML)を用いて実現すればよい。   In step 702 in the above encryption processing, for example, the encryption target node elements of the encryption definition information 121 illustrated in FIG. 6 may be sequentially processed and repeated until there are no encryption target nodes. Such sequential processing may be realized using, for example, XML SAX (Simple API for XML).

また、図9の例では、暗号化対象ノード(N5)に接続されているノードは一つ(N6、リンクはL14)のみであるが(表示イメージは図5参照)、ステップS704〜S706に示した通り、暗号化対象ノードに隣接ノードが複数ある場合には、これら全ての隣接ノードに対して同様の処理を行う。   In the example of FIG. 9, only one node (N6, link L14) is connected to the encryption target node (N5) (see FIG. 5 for a display image), which is shown in steps S704 to S706. As described above, when there are a plurality of adjacent nodes in the encryption target node, the same processing is performed on all these adjacent nodes.

なお、ステップS708における暗号化処理はノード一つずつ行うのではなく、複数のノードをまとめて処理してもよい。この場合には、ステップS709における暗号化データの暗号化データ部505aへの書き込みは、これらをまとめて暗号化した1つの暗号化データとして行い、関連データに関連した地物、隣接ノードのNIDを全て書き込むようにしてもよい。   Note that the encryption processing in step S708 is not performed for each node, but a plurality of nodes may be processed together. In this case, the writing of the encrypted data to the encrypted data portion 505a in step S709 is performed as a single encrypted data obtained by collectively encrypting these, and the feature related to the related data and the NID of the adjacent node are set. All may be written.

また、複数のノードをまとめて処理する場合において、暗号化対象となるノードが同一の領域内にある場合には、領域内の境界線にあるノードの隣接ノードに対してのみステップS705、ステップS706を実行すればよい。その理由は、暗号化データの復号によってノード、リンクが復元された場合、領域の中にあるノード、リンクがまとめて復号されるため、領域内の境界以外にあるノード、リンクに対して復号すべきか否かを調べる必要がないためである。   Further, when a plurality of nodes are processed together, if the nodes to be encrypted are in the same region, only steps S705 and S706 are performed on the adjacent nodes of the nodes on the boundary line in the region. Should be executed. The reason is that when nodes and links are restored by decrypting encrypted data, the nodes and links in the area are decrypted together, so the nodes and links outside the boundary in the area should be decrypted. This is because it is not necessary to examine whether or not

上記の暗号化処理によって、暗号化対象のノード、及びそれに接続されるリンク情報は、すべて暗号化経路探索用データ504aのノード格納部502a、リンク格納部503aから削除され、その暗号化結果が関連データとともに暗号化データ部505aに格納される。   Through the above encryption process, all nodes to be encrypted and link information connected thereto are deleted from the node storage unit 502a and link storage unit 503a of the encryption path search data 504a, and the encryption results are related. It is stored in the encrypted data part 505a together with the data.

なお、経路探索では、始点ノードから隣接ノードまでの検索を行ってコストを算出し、算出したコストから出発地ノードからのコスト評価を行うが、上記の暗号化処理では、暗号化されたノードの隣接ノード全ての復号フラグがTに設定される。従って、経路探索の隣接ノードの検索時に復号フラグがTであるかどうかを調べることによって、復号すべき暗号化データの有無を知ることができ、経路探索アルゴリズム内の必要箇所で復号することが可能となる。続いて、復号化処理について説明する。   In the route search, the cost is calculated by searching from the start node to the adjacent node, and the cost evaluation from the departure node is performed from the calculated cost. In the above encryption process, the encrypted node The decoding flags of all adjacent nodes are set to T. Therefore, by checking whether or not the decryption flag is T when searching for an adjacent node for route search, it is possible to know the presence or absence of encrypted data to be decrypted, and it is possible to decrypt at a required location in the route search algorithm. It becomes. Subsequently, the decoding process will be described.

図8は、本実施例における復号化処理の処理手順を示すフローチャートである。図8は、経路探索アルゴリズムにおける復号化処理を行うための処理フローを示したものであり、経路探索アルゴリズムそのものの処理については、その手順の概略のみを示している。なお、図8内の点線内が経路探索アルゴリズムの中核処理である。以下、図8に示す復号化処理について説明する。   FIG. 8 is a flowchart showing the processing procedure of the decoding processing in the present embodiment. FIG. 8 shows a processing flow for performing the decoding process in the route search algorithm, and only the outline of the procedure is shown for the processing of the route search algorithm itself. The dotted line in FIG. 8 is the core processing of the route search algorithm. Hereinafter, the decoding process shown in FIG. 8 will be described.

図8に示すように、復号化処理が開始されると(ステップS800)、地図復号装置106の復号処理部116は、まず、出発地ノードを始点ノードに設定する(ステップS801)。   As shown in FIG. 8, when the decoding process is started (step S800), the decoding processing unit 116 of the map decoding apparatus 106 first sets the departure point node as the starting point node (step S801).

そして、復号処理部116は、経路探索が終了しているか否かを判定し(ステップS802)、経路探索が終了していると判定した場合(ステップS802;Yes)、図8に示す復号化処理を終了させる(ステップS810)。   Then, the decoding processing unit 116 determines whether or not the route search has ended (step S802). If it is determined that the route search has ended (step S802; Yes), the decoding processing illustrated in FIG. Is terminated (step S810).

一方、復号処理部116は、経路探索が終了していないと判定した場合(ステップS802;No)、始点ノードの復号フラグがTであるか否かを判定し(ステップS803)、始点ノードの復号フラグがTであると判定した場合(ステップS803;Yes)、暗号化データ部505aから暗号化データを取得し、取得した暗号化データを復号する(ステップS804)。一方、復号処理部116は、始点ノードの復号フラグがTではない(Fである)と判定した場合(ステップS803;No)、ステップS807に進む。   On the other hand, if the decoding processing unit 116 determines that the route search has not ended (step S802; No), the decoding processing unit 116 determines whether the decoding flag of the starting node is T (step S803) and decodes the starting node. If it is determined that the flag is T (step S803; Yes), the encrypted data is acquired from the encrypted data unit 505a, and the acquired encrypted data is decrypted (step S804). On the other hand, when the decoding processing unit 116 determines that the decoding flag of the starting point node is not T (F) (step S803; No), the decoding processing unit 116 proceeds to step S807.

復号処理部116は、ステップS804で取得した暗号化データの復号に成功したか否かを判定し(ステップS805)、復号に成功したと判定した場合(ステップS805;Yes)、ステップS804における復号結果からノード、リンクを復元し、復元したノード、リンクをノード格納部502a、リンク格納部503aに追加する(ステップS806)。一方、復号処理部116は、復号に成功していない(失敗した)と判定した場合(ステップS805;No)、ステップS807に進む。   The decryption processing unit 116 determines whether or not the decryption of the encrypted data acquired in step S804 is successful (step S805). When it is determined that the decryption is successful (step S805; Yes), the decryption result in step S804 is determined. Then, the node and the link are restored, and the restored node and link are added to the node storage unit 502a and the link storage unit 503a (step S806). On the other hand, when the decoding processing unit 116 determines that the decoding is not successful (failed) (step S805; No), the process proceeds to step S807.

そして、復号処理部116は、ノード格納部502aとリンク格納部503aとを参照し、始点ノードの接続リンク(隣接ノード)を検索し(ステップS807)、未探索の隣接ノードがあるか否かを判定する(ステップS808)。   Then, the decoding processing unit 116 refers to the node storage unit 502a and the link storage unit 503a, searches for the connection link (adjacent node) of the start node (step S807), and determines whether there is an unsearched adjacent node. Determination is made (step S808).

復号処理部116は、未探索の隣接ノードがあると判定した場合(ステップS808;Yes)、リンク格納部503a内のコスト欄を参照し、始点ノードから隣接ノードまでのコストを算出し、出発地ノードから隣接ノードまでのコスト評価を行う(ステップS809)。   When it is determined that there is an unsearched adjacent node (step S808; Yes), the decoding processing unit 116 refers to the cost column in the link storage unit 503a, calculates the cost from the start point node to the adjacent node, Cost evaluation from the node to the adjacent node is performed (step S809).

一方、復号処理部116は、未探索の隣接ノードがないと判定した場合(ステップS808;No)、ステップS802に戻る。そして、復号処理部116は、ステップS802からS810の処理を経路探索が終了するまで繰り返し行う。   On the other hand, when it is determined that there is no unsearched adjacent node (step S808; No), the decoding processing unit 116 returns to step S802. Then, the decoding processing unit 116 repeatedly performs the processing from steps S802 to S810 until the route search is completed.

なお、上記のステップS804において、例えば、復号結果が正しいノードやリンクではないなどの復号が異常停止した場合には処理を停止することが望ましい。また、経路探索の過程において、目的地ノードにたどりつかないなど、経路探索が一定時間以上終了しない場合や非現実的なコスト(例えば、徒歩での移動に100年以上かかるなど)であった場合には、ステップS802において処理を停止してもよい。   In step S804 described above, it is desirable to stop the processing when decoding stops abnormally, for example, when the decoding result is not a correct node or link. Also, when the route search does not reach the destination node during the route search process, such as when the route search does not finish for a certain period of time or when it is unrealistic cost (for example, it takes more than 100 years to walk) In step S802, the process may be stopped.

上記のステップS804における復号、ステップS806におけるノードおよびリンクの復元は、単一のノードに対してではなく、複数のノード、リンクに対して行ってもよい。例えば、前述の暗号化処理時に複数のノードをまとめて暗号化した場合には、ステップS804における復号の結果には、複数のノードおよびリンクが含まれるため、ステップS806は復号されたノードおよびリンクを全て復元することになる。   The decoding in step S804 and the restoration of the node and link in step S806 may be performed not on a single node but on a plurality of nodes and links. For example, when a plurality of nodes are encrypted together at the time of the encryption process described above, the result of decryption in step S804 includes a plurality of nodes and links, so step S806 includes the decrypted nodes and links. All will be restored.

なお、上記の復号処理では、経路探索アルゴリズム内で逐次復号を行っているが、事前に復号すべきデータが少ない場合(例えば、ステップ403における地図格納装置102からの応答に暗号化データが一つしか含まれていない場合など)には、図8の処理の前に復号処理をまとめて実施してもよい。   In the above decryption process, sequential decryption is performed within the route search algorithm. However, when there is a small amount of data to be decrypted in advance (for example, one encrypted data is included in the response from the map storage device 102 in step 403). In such a case, the decoding process may be performed collectively before the process of FIG.

また、経路探索においては、データ管理、或いは、経路探索を効率に行うため、ビルのフロア等の階層、或いは領域ごとにデータ管理を行っている場合がある。この場合、経路探索についても、領域ごと、或いは階層別に経路探索アルゴリズムを実行し、これらの結果を繋ぎ合わせることで経路探索を実行し、図8の処理を階層、或いは領域ごとに経路探索してもよい。   In route search, in order to efficiently perform data management or route search, data management may be performed for each hierarchy or area such as a building floor. In this case, also for the route search, the route search algorithm is executed for each region or layer, the route search is executed by connecting these results, and the processing of FIG. 8 is performed for each layer or region. Also good.

このように、記憶部(あるいは地図格納装置102)が、地図上の位置を示すノードおよびノードとノードに隣接するノードとの関連性を示すリンク情報を含む経路探索用データ格納部501が格納するデータ(経路探索用データ)とノードにある地物を表示させるための地図データ格納部500が格納するデータ(表示用データ)とが対応付けられた平文地図データ120と、ノードと表示用データを開示させる利用者である開示先ユーザとが対応付けられた暗号化定義情報121と、経路探索用データを暗号化するための暗号化鍵122を格納し、暗号化処理部111が、経路探索用データと、暗号化鍵122と、暗号化定義情報121とに基づいて、利用者ごとに、暗号化すべきノードを特定し、特定したノードおよび特定したノードに隣接するノードの経路探索用データを暗号化し、暗号化した経路探索用データと表示用データとを対応付けた暗号化地図データ124を生成する。   As described above, the storage unit (or map storage device 102) stores the route search data storage unit 501 including the node indicating the position on the map and the link information indicating the relationship between the node and the node adjacent to the node. The plaintext map data 120 in which the data (data for route search) and the data (display data) stored in the map data storage unit 500 for displaying the feature in the node are associated, and the node and the display data are The encryption definition information 121 associated with the disclosure target user who is the user to be disclosed and the encryption key 122 for encrypting the route search data are stored, and the encryption processing unit 111 is used for route search. Based on the data, the encryption key 122, and the encryption definition information 121, a node to be encrypted is identified for each user, and the identified node and the identified node It encrypts the route search data of the adjacent node to generate encrypted map data 124 that associates display data and encrypted route search data.

また、復号処理部116が、利用者から地図上の位置のある地点から他の地点までの経路を探索するを実行する場合に、暗号化された地図上の位置を示すノードおよびノードとノードに隣接するノードとの関連性を示すリンク情報を含む経路探索用データ格納部501が格納するデータ(経路探索用データ)を復号化する復号化鍵123に基づいて、経路探索用データと、ノードにある地物を表示させるための地図データ格納部500が格納するデータ(表示用データ)とが対応付けられた暗号化地図データ124を復号化し、経路探索部処理部1141が、ある地点から他の地点までの経路を、復号処理部116による暗号化地図データ124の復号化結果を用いて、経路探索用データに含まれるノードとリンク情報とに基づいて繰り返し探索する。   In addition, when the decryption processing unit 116 executes a search for a route from a point on the map to another point from the user, the decryption processing unit 116 determines the node indicating the position on the encrypted map and the node and the node. Based on the decryption key 123 for decrypting the data (route search data) stored in the route search data storage unit 501 including the link information indicating the relevance with the adjacent node, the route search data and the node The encrypted map data 124 associated with the data (display data) stored in the map data storage unit 500 for displaying a certain feature is decrypted, and the route search unit processing unit 1141 receives the data from a certain point to another The route to the point is repeated based on the node and link information included in the route search data using the decryption result of the encrypted map data 124 by the decryption processing unit 116. To search.

したがって、利用者ごとに適切な経路探索を行うことができる。すなわち、利用者の種別に応じて開示可能な経路探索データのみを利用した経路探索を行い、利用者の種別ごとに適切な経路探索結果を提供することができる。   Therefore, an appropriate route search can be performed for each user. That is, a route search using only the route search data that can be disclosed according to the type of user can be performed, and an appropriate route search result can be provided for each type of user.

なお、経路探索においては、データ管理、或いは、経路探索を効率に行うため、ビルのフロア等の階層、或いは領域ごとにデータ管理を行っている場合がある。この場合、経路探索についても、領域ごと、或いは階層別に経路探索アルゴリズムを実行し、これらの結果を繋ぎ合わせることで経路探索を実行する場合がある。その場合には、図8の処理を階層、或いは、領域ごとの経路探索を行い、これらの探索結果を組み合わせて、最終的な出発地ノードから目的地ノードまでの経路探索を行ってもよい。   In route search, in order to efficiently perform data management or route search, data management may be performed for each hierarchy or area such as a building floor. In this case, the route search may be executed by executing a route search algorithm for each region or layer, and connecting these results. In that case, the route search from the final departure node to the destination node may be performed by performing route search for each hierarchy or region in the processing of FIG. 8 and combining these search results.

続いて、地図データ配信システム1の管理者等からの操作を受け付けて、地図暗号化装置101が暗号化定義情報121の登録や変更等を行う場合について説明する。   Next, a case will be described in which an operation from an administrator or the like of the map data distribution system 1 is received and the map encryption apparatus 101 registers or changes the encryption definition information 121.

図10は、暗号化定義情報121を生成するためのアプリケーション画面(GUI:Graphic User Interface)の実現イメージの一例を示す図である。なお、以下では、図10を用いて経路探索用データを暗号化する場合のGUIについて説明を行うが、地物そのものの、或いは、その属性、ジオメトリを暗号化する場合には、本GUIを拡張し、これらもまとめて暗号化できるようにしてもよい。   FIG. 10 is a diagram illustrating an example of an implementation image of an application screen (GUI: Graphic User Interface) for generating the encryption definition information 121. In the following, the GUI for encrypting route search data will be described with reference to FIG. 10, but this GUI is extended when encrypting the features themselves or their attributes and geometry. However, these may be encrypted together.

図10に示すように、本GUIは地図表示エリア1と、設定エリア1001と、を含んで構成される。なお、GUI上部のファイルメニュー1002、データベースメニュー1003、鍵読込メニュー1004は、アプリケーション画面に対する操作を切り替えるためのメニュータグを表す。それぞれのメニュータグが選択された場合、以下の操作を行う(図10では、「メニュー」は省略した)。   As shown in FIG. 10, the GUI includes a map display area 1 and a setting area 1001. Note that a file menu 1002, a database menu 1003, and a key reading menu 1004 at the top of the GUI represent menu tags for switching operations on the application screen. When each menu tag is selected, the following operation is performed (“Menu” is omitted in FIG. 10).

地図暗号化装置101は、ファイルメニュー1002がアクティブになっている場合、作成済みの暗号化定義情報121の読込、或は、作成途中の暗号化定義情報121の保存を行う。また、地図暗号化装置101は、データベースメニュー1003がアクティブになっている場合、平文地図データ120を格納してあるデータベースへの接続を行い、平文地図データ120の読み込み、および、格納先の暗号化地図データ124の指定を行う。また、開示設定を終了し、暗号化定義情報121を生成する。さらに、地図暗号化装置101は、鍵読込メニュー1004がアクティブになっている場合、暗号化定義情報121の設定に必要な暗号化鍵122を読み込む。   When the file menu 1002 is active, the map encryption apparatus 101 reads the created encryption definition information 121 or saves the encryption definition information 121 being created. In addition, when the database menu 1003 is active, the map encryption apparatus 101 connects to the database storing the plaintext map data 120, reads the plaintext map data 120, and encrypts the storage destination. The map data 124 is designated. Also, the disclosure setting is ended and the encryption definition information 121 is generated. Further, the map encryption apparatus 101 reads the encryption key 122 necessary for setting the encryption definition information 121 when the key reading menu 1004 is active.

なお、上記ではメニューとして、データベースメニュー1003を配置し、平文地図データ120、および暗号化地図データ124が、データベースシステム上にあることを想定しているが、必ずしも、地図データ120や暗号化地図データ124は、データベースシステム上にある必要はなく、例えば、CSV(Comma Separeted Values)などの形式で、ファイルとして存在してもよい。   In the above description, it is assumed that the database menu 1003 is arranged as the menu, and the plaintext map data 120 and the encrypted map data 124 are on the database system. However, the map data 120 and the encrypted map data are not necessarily used. 124 does not need to exist on the database system, and may exist as a file in a format such as CSV (Comma Separated Values).

図10に示すGUIにおいて、地図表示エリア1000は、平文地図データ120を描画した結果を表示し、マウスなどの入力装置203からの入力に従い、暗号化対象となるノードを指定する。なお、指定にあたっては、図10に例示したようにマウスの入力に従い矩形領域内に含まれるすべてのノードを暗号化対象ノードとしてもよいし、多角形や円などを利用してもよい。或は、マウスを用いてノードを直接を選択し、選択されたノードを暗号化対象ノードとしてもよいし、マウスによって地物を選択し、地物内に含まれる前ノードを暗号化対象ノードとしてもよい。   In the GUI shown in FIG. 10, the map display area 1000 displays the result of rendering the plaintext map data 120 and designates a node to be encrypted in accordance with an input from the input device 203 such as a mouse. In the specification, as illustrated in FIG. 10, all nodes included in the rectangular area may be set as encryption target nodes according to mouse input, or polygons, circles, or the like may be used. Alternatively, a node may be directly selected using a mouse, and the selected node may be selected as an encryption target node, or a feature is selected using a mouse, and a previous node included in the feature is set as an encryption target node. Also good.

以下では、図10に示したマウスカーソル1005で選択された領域の開示先を制限し、領域内に含まれるノードを設定する場合を例として、図10に例示したGUIの動作を説明する。   Hereinafter, the operation of the GUI illustrated in FIG. 10 will be described by taking as an example the case where the disclosure destination of the area selected by the mouse cursor 1005 illustrated in FIG. 10 is limited and the nodes included in the area are set.

設定エリア1001は、平文地図データ120を非開示とする領域を指定するための非開示エリアと、非開示エリアに含まれる地物を示す関連地物と、非開示エリアに含まれるノードを示す対象ノードと、開示先のユーザを示す開示先と、を含んでいる。   The setting area 1001 is a non-disclosure area for designating an area in which the plaintext map data 120 is not disclosed, a related feature indicating a feature included in the non-disclosure area, and a target indicating a node included in the non-disclosure area A node and a disclosure destination indicating a disclosure destination user.

管理者等によってマウスカーソル1005で領域が選択されると、設定エリア1001の非開示エリア項目に新たな項目(図10内のエリア2とする)が登録される。また、エリア2内に含まれる地物の一覧が関連する地物の一覧が、また、対象ノード欄にエリア2内に含まれるノードの一覧が表示される(図10に示す例では、N5(機械室))。   When the administrator selects an area with the mouse cursor 1005, a new item (referred to as area 2 in FIG. 10) is registered in the non-disclosure area item of the setting area 1001. In addition, a list of features related to the list of features included in area 2 is displayed, and a list of nodes included in area 2 is displayed in the target node column (N5 ( machine room)).

次に、管理者等によってマウスなどの入力装置203を用いて対象地物一覧の中から設定を行う地物やエリアが選択されると(図10ではエリアを選択している)、選択した地物内の全ての属性がサブ画面(不図示)に表示される。また、このとき、選択された地物が地図上のどの地物であるかを明示するため、地図表示エリア906の対応する地物の表示色を変更する、或は、境界線を太くするなどしてもよい。   Next, when a feature or area to be set is selected from the target feature list using the input device 203 such as a mouse by the administrator or the like (the area is selected in FIG. 10), the selected feature is selected. All attributes in the object are displayed on a sub-screen (not shown). At this time, the display color of the corresponding feature in the map display area 906 is changed or the boundary line is thickened to clearly indicate which feature on the map the selected feature is. May be.

次に、開示先を設定するノードを、対象ノードから、あるは関連地物欄内の地物を選択することによって指定する。そして、地図暗号化装置101は、開示先欄から開示先として指定するユーザの選択を受け付け、開示先設定ボタンの押下を受け付けると、一つのエリアに対する設定を完了する。このように設定された情報(例えば、図6に示したAの部分)が、暗号化定義情報121として出力される。なお、地物内に含まれる全ノードを選択するために、関連地物欄内の地物を選択するようにしてもよい。上記によって、同一の開示先を持つ複数のノードが設定される。さらに、異なる開示先を持つノードを設定する場合には、上記の処理を繰り返せばよい。   Next, a node for setting a disclosure destination is designated by selecting a feature from the target node or a feature in the related feature column. Then, the map encryption apparatus 101 receives the selection of the user designated as the disclosure destination from the disclosure destination column, and completes the setting for one area when the depression of the disclosure destination setting button is accepted. Information set in this way (for example, part A shown in FIG. 6) is output as the encryption definition information 121. In addition, in order to select all the nodes included in the feature, the feature in the related feature column may be selected. As described above, a plurality of nodes having the same disclosure destination are set. Furthermore, when a node having a different disclosure destination is set, the above process may be repeated.

このように、地図暗号化装置101が、GUIによって暗号化定義情報121の設定や変更を受け付けるので、地図データ配信システム1の図管理者等は、その設定や変更を容易に行うことができる。
(第2の実施の形態)
第1の実施の形態では、暗号化対象ノードと暗号化対象ノードに接続された接続リンクを、暗号化後にノード格納部502とリンク格納部503から削除する方法について述べた。第2の実施の形態では、暗号化対象ノードと接続ノード内のデータを変更することによって暗号化、復号を行う方法について述べる。第1の実施の形態と比較し、第2の実施の形態では、経路探索用データの構造を崩す必要がないという特徴がある。
Thus, since the map encryption apparatus 101 receives the setting and change of the encryption definition information 121 by GUI, the figure manager of the map data delivery system 1 can perform the setting and change easily.
(Second Embodiment)
In the first embodiment, the method of deleting the encryption target node and the connection link connected to the encryption target node from the node storage unit 502 and the link storage unit 503 after encryption has been described. In the second embodiment, a method for performing encryption and decryption by changing data in an encryption target node and a connection node will be described. Compared to the first embodiment, the second embodiment is characterized in that it is not necessary to destroy the structure of the route search data.

第1の実施の形態と第2の実施の形態との違いは暗号処理と復号化処理のみであるため、以下では暗号化処理、復号化処理について、第1の実施の形態におけるとの違いを説明する。   Since the difference between the first embodiment and the second embodiment is only the encryption process and the decryption process, the difference between the encryption process and the decryption process in the first embodiment will be described below. explain.

図11および図12は、第2の実施の形態における暗号化処理、復号化処理の処理手順を示すフローチャートである。また、図13は、暗号化処理前後でのデータ構造の変化の一例を示す図である。以下に、これらの図面を参照して、暗号化処理および復号化処理について説明する。   FIG. 11 and FIG. 12 are flowcharts showing the processing procedures of the encryption process and the decryption process in the second embodiment. FIG. 13 is a diagram illustrating an example of a change in the data structure before and after the encryption process. The encryption process and the decryption process will be described below with reference to these drawings.

まず、暗号化処理の前後におけるデータ構造の変化を、図13を用いて説明する。なお、図13は、図9と同様、図5に例示した表示イメージ510の経路探索用データ格納部501の一部を例示した図である。   First, changes in the data structure before and after the encryption process will be described with reference to FIG. 13 is a diagram illustrating a part of the route search data storage unit 501 of the display image 510 illustrated in FIG. 5, as in FIG. 9.

第1の実施の形態の場合と同様、暗号化経路探索用データ格納部504bは、ノード格納部502bと、リンク格納部503bと、暗号化データ部505bと、を含んで構成される。ノード格納部502bは、ノードを一意に識別するための識別子であるNIDと、ノードの地図上の位置を表す座標を含み、リンク格納部503bは、リンクを一意に識別する識別子であるLIDと、ノードの始点と終点のノードを表す始点NIDと、終点NIDと、リンクを移動するために必要となるコストとを含んでいる。   As in the case of the first embodiment, the encrypted path search data storage unit 504b includes a node storage unit 502b, a link storage unit 503b, and an encrypted data unit 505b. The node storage unit 502b includes an NID that is an identifier for uniquely identifying a node and coordinates representing the position of the node on the map, and the link storage unit 503b is an LID that is an identifier for uniquely identifying a link; It includes the start point NID representing the start point and end point node of the node, the end point NID, and the cost required to move the link.

なお、リンク格納部503bが始点NIDと終点NIDから構成されている理由は、移動経路が一方向であることを表すためであり、第1の実施の形態の場合と同様に、双方向のデータ構造を用いてもよい。また、第1の実施の形態と同様に、ノード格納部502b、リンク格納部503bは、上記以外の項目を含んでもよい。   The reason why the link storage unit 503b is composed of the start point NID and the end point NID is to indicate that the movement route is unidirectional, and as in the case of the first embodiment, bidirectional data A structure may be used. Similarly to the first embodiment, the node storage unit 502b and the link storage unit 503b may include items other than those described above.

第1の実施の形態では、暗号化対象ノードとそれに接続した接続リンクをノード格納部502a、リンク格納部503aから削除し、隣接ノードの暗号化フラグをT(TRUE)と設定することによって、経路探索時に復号すべきデータの特定を行った。第2の実施の形態では、図13に示した通り、ノード格納部502b、リンク格納部503bからデータの削除は行わず、代わりに各格納部に格納された情報を、他のノードやリンクとは区別しうる属性や値となるような情報に書き換えを行う。   In the first embodiment, the node to be encrypted and the connection link connected to the node are deleted from the node storage unit 502a and the link storage unit 503a, and the encryption flag of the adjacent node is set to T (TRUE). Data to be decoded at the time of search was specified. In the second embodiment, as shown in FIG. 13, data is not deleted from the node storage unit 502b and the link storage unit 503b. Instead, information stored in each storage unit is exchanged with other nodes and links. Rewrites information that can be distinguished attributes and values.

図13に示した例では、第1の実施の形態と同様、暗号化対象ノードとしてN5のノードを暗号化した場合について示している。図13に示した通り、暗号化対象となるノード(N5)の座標情報を、暗号化されていることを表す記号「ENC」で書き換え、さらに暗号化対象ノード(N5)の接続リンクのコストを最大値(図13に示す例では「99」)に設定する。暗号化対象ノードのもとの座標情報と接続リンクのコストは、第1の実施の形態と同様の方法で暗号化を行い、暗号化データ部505bに格納する。   In the example illustrated in FIG. 13, as in the first embodiment, the case where the node N5 is encrypted as the encryption target node is illustrated. As shown in FIG. 13, the coordinate information of the node (N5) to be encrypted is rewritten with the symbol “ENC” indicating that it is encrypted, and the cost of the connection link of the node (N5) to be encrypted is further reduced. The maximum value is set (“99” in the example shown in FIG. 13). The original coordinate information of the encryption target node and the cost of the connection link are encrypted by the same method as in the first embodiment and stored in the encrypted data unit 505b.

なお、データベース、或いはGIS製品の制約上の問題で座標情報に座標以外の情報を格納することができない場合には、上記の「ENC」への書き換えは、「ENC」を意味する代替値であってもよいし、座標情報を別の座標に書き換えてもよい。なお、ノードの位置そのものを非開示にするためには、ランダムな座標位置を用いてもよいが、暗号化後の地図データ(暗号化地図データ124)の利用に影響を与えないようにするためは、平文地図データ120内の管理外の座標情報を格納する方が望ましい。   If information other than coordinates cannot be stored in the coordinate information due to problems with the database or GIS product, the above rewriting to “ENC” is an alternative value meaning “ENC”. Alternatively, the coordinate information may be rewritten to another coordinate. In order to make the node position itself undisclosed, a random coordinate position may be used, but in order not to affect the use of the encrypted map data (encrypted map data 124). It is desirable to store unmanaged coordinate information in the plaintext map data 120.

また、例えば、同一の地物内に複数のノードが存在する場合には、地物の中心座標などで座標情報を置き換えてもよい。これによって、本来のノードの座標位置をある程度非開示にすることができる。また、複数のノードを暗号化する場合には、第1の実施の形態のように、代表点のみ残し、後のノード、リンクは、ノード格納部502b、リンク格納部503bから削除してもよい。なお、座標情報を書き変えなくてもよいが、この場合には、コストのみが暗号化され、ノードが地図上のどの位置に配置されているかがわかってしまうため、注意が必要である。   For example, when a plurality of nodes exist in the same feature, the coordinate information may be replaced with the center coordinates of the feature. As a result, the original coordinate position of the node can be made undisclosed to some extent. Further, when encrypting a plurality of nodes, as shown in the first embodiment, only the representative points may be left and the subsequent nodes and links may be deleted from the node storage unit 502b and the link storage unit 503b. . Note that the coordinate information need not be rewritten, but in this case, since only the cost is encrypted and the position where the node is arranged on the map is known, care is required.

復号時には、復号処理部116が、ノード格納部502bの座標情報が「ENC」である場合、或いは、リンク格納部503bのコストが最大値である場合に暗号化データ部505bの関連データを基に復号すべき暗号化データを取得、復号する。この復号処理によって、ノード、リンクが復号された場合には、復号結果からノードの座標、及び、リンクのコストを復元することにより、元の地図データ(平文地図データ120)を用いた経路探索が実行できる。一方で、復号できなかった場合にはコストは最大値のままとなっているため、経路探索のコスト評価の際、他の最適な経路と比較した場合に削除可能、或いは、非現実的な経路として削除することができる。   At the time of decryption, when the coordinate information of the node storage unit 502b is “ENC” or when the cost of the link storage unit 503b is the maximum value, the decryption processing unit 116 is based on the related data of the encrypted data unit 505b. Acquire and decrypt encrypted data to be decrypted. When a node and a link are decoded by this decoding process, a route search using the original map data (plain text map data 120) is performed by restoring the node coordinates and the link cost from the decoding result. Can be executed. On the other hand, if the decryption fails, the cost remains at the maximum value. Therefore, the cost can be deleted when compared with another optimum route when evaluating the cost of route search, or an unrealistic route. As can be deleted.

以下、図11および図12を用いて、第2の実施の形態における暗号化、復号化処理の具体的な処理手順を説明する。まず、第2の実施の形態における暗号化処理について説明する。図11は、第2の実施の形態における暗号化処理の処理手順を示すフローチャートである。   Hereinafter, specific processing procedures of encryption and decryption processing in the second embodiment will be described with reference to FIGS. 11 and 12. First, the encryption process in the second embodiment will be described. FIG. 11 is a flowchart illustrating a processing procedure of encryption processing according to the second embodiment.

図11に示すように、第2の実施の形態における暗号化処理が開始されると(ステップS1100)、暗号化処理部111は、経路探索用データ格納部501aを暗号化経路探索用データ格納部504aにコピーする(ステップS1101)。   As shown in FIG. 11, when the encryption processing in the second embodiment is started (step S1100), the encryption processing unit 111 converts the route search data storage unit 501a into the encrypted route search data storage unit. Copy to 504a (step S1101).

そして、暗号化処理部111は、暗号化定義情報121を参照し、暗号化すべき暗号化対象ノードの有無を判定する(ステップS1102)。そして、暗号化処理部111は、暗号化すべき暗号化対象ノードがあると判定した場合(ステップS1102;Yes)、暗号化定義情報121に記述されている暗号化対象ノードを取得し(ステップS1103)、その暗号化対象ノードを変更する(ステップS1104)。一方、暗号化処理部111は、暗号化すべき暗号化対象ノードがないと判定した場合(ステップS1102;No)、図11に示す暗号化処理を終了させる(ステップS1110)。   Then, the encryption processing unit 111 refers to the encryption definition information 121 and determines whether there is an encryption target node to be encrypted (step S1102). If it is determined that there is an encryption target node to be encrypted (step S1102; Yes), the encryption processing unit 111 acquires the encryption target node described in the encryption definition information 121 (step S1103). Then, the encryption target node is changed (step S1104). On the other hand, if the encryption processing unit 111 determines that there is no encryption target node to be encrypted (step S1102; No), the encryption processing unit 111 ends the encryption process illustrated in FIG. 11 (step S1110).

そして、暗号化処理部111は、変更した暗号化対象ノードに接続された接続リンク内に未操作のリンクがあるか否かを判定し(ステップS1105)、変更した暗号化対象ノードに接続された接続リンク内に未操作のリンクがあると判定した場合(ステップS1105;Yes)、その接続リンクのコストを取得し(ステップS1106)、取得したコストを最大値に設定する(ステップS107)。そして、暗号化処理部111は、ステップS1105〜S1107までの処理を繰り返し行う。   Then, the encryption processing unit 111 determines whether there is an unoperated link in the connection link connected to the changed encryption target node (step S1105), and is connected to the changed encryption target node. When it is determined that there is an unoperated link in the connection link (step S1105; Yes), the cost of the connection link is acquired (step S1106), and the acquired cost is set to the maximum value (step S107). Then, the encryption processing unit 111 repeatedly performs the processing from steps S1105 to S1107.

一方、暗号化処理部111は、暗号化対象ノードに接続された接続リンク内に未操作のリンクがないと判定した場合(ステップS1105;No)、ステップS1103において取得した座標情報と、ステップS1106において取得したコストとを暗号化し(ステップS1108)、その暗号化結果を暗号化データ格納部504aに格納し(ステップS1109)、ステップS1102へ戻る。そして、暗号化処理部111は、暗号化定義情報121に記述された全ての暗号化対象ノードについて、繰り返しステップS1102〜S1109までの処理を行う。   On the other hand, if the encryption processing unit 111 determines that there is no unoperated link among the connection links connected to the encryption target node (step S1105; No), the encryption processing unit 111 and the coordinate information acquired in step S1103 The acquired cost is encrypted (step S1108), the encryption result is stored in the encrypted data storage unit 504a (step S1109), and the process returns to step S1102. Then, the encryption processing unit 111 repeatedly performs the processing from steps S1102 to S1109 for all the encryption target nodes described in the encryption definition information 121.

なお、ステップS1102では、例えば、図6に例示した暗号化定義情報121の暗号化対象ノード要素を逐次処理し、暗号化対象ノード要素がなくなるまで繰り返せばよい。また、図9に示した例では、暗号化対象ノード(N5)に接続されているノードは一つ(N6、リンクはL14)のみであるが、ステップS1105〜S1107に示した通り、接続リンクが複数ある場合には、全ての接続リンクに対して同様の処理を行う。   In step S1102, for example, the encryption target node elements of the encryption definition information 121 illustrated in FIG. 6 may be sequentially processed and repeated until there are no encryption target node elements. In the example shown in FIG. 9, only one node (N6, link L14) is connected to the encryption target node (N5). However, as shown in steps S1105 to S1107, the connection link is not connected. When there are a plurality of links, the same processing is performed for all the connection links.

第1の実施の形態と同様、ステップS1108における暗号化処理は、ノードを一つずつ行うのではなく、複数のノードをまとめて暗号化してもよい。また、複数ノードを暗号化する場合には、以下のようにしてもよい。例えば、座標情報の書き換えに際して「ENC」の代わりに、暗号化対象となるノードが同一の領域内にある場合には、ステップ1104の処理を領域の中心座標などを格納するようにしてもよい。また、この場合に第1の実施の形態と同様に、代表点となるノードのみを残し、他のノードリンクをノード格納部502b、リンク格納部503bから削除してもよい。なお、この場合、削除したノードに合わせて、リンク格納部503bの始点NID、終点NIDも書き換える必要があることに注意が必要である。   As in the first embodiment, the encryption processing in step S1108 may be performed by encrypting a plurality of nodes instead of performing the nodes one by one. Further, when encrypting a plurality of nodes, the following may be performed. For example, if the node to be encrypted is in the same area instead of “ENC” when rewriting the coordinate information, the processing in step 1104 may store the center coordinates of the area. Further, in this case, as in the first embodiment, only the node that is a representative point may be left and other node links may be deleted from the node storage unit 502b and the link storage unit 503b. Note that in this case, it is necessary to rewrite the start point NID and the end point NID of the link storage unit 503b in accordance with the deleted node.

続いて、第2の実施の形態における復号化処理について説明する。図12は、第2の実施の形態における復号化処理の処理手順を示すフローチャートである。なお、第1の実施の形態と同様、図12は、経路探索アルゴリズムにおける復号処理を行うための処理フローを示したものであり、経路探索アルゴリズムそのものの処理は、その手順の概略のみを示している。経路探索アルゴリズムの中核処理は、図12内の点線で示した部分である。以下、図12に示す復号化処理について説明する。   Next, the decoding process in the second embodiment will be described. FIG. 12 is a flowchart illustrating a processing procedure of the decoding processing according to the second embodiment. As in the first embodiment, FIG. 12 shows a processing flow for performing the decoding process in the route search algorithm, and the route search algorithm itself shows only the outline of the procedure. Yes. The core processing of the route search algorithm is a portion indicated by a dotted line in FIG. Hereinafter, the decoding process shown in FIG. 12 will be described.

図12に示すように、復号化処理が開始されると(ステップS1200)、地図復号装置106の復号処理部116は、まず、出発地ノードを始点ノードに設定する(ステップS1201)。   As shown in FIG. 12, when the decoding process is started (step S1200), the decoding processing unit 116 of the map decoding apparatus 106 first sets the departure node as the start point node (step S1201).

そして、復号処理部116は、経路探索が終了しているか否かを判定し(ステップS1202)、経路探索が終了していると判定した場合(ステップS1202;Yes)、図8に示す復号化処理を終了させる(ステップS1210)。   Then, the decoding processing unit 116 determines whether or not the route search has ended (step S1202). When the decoding processing unit 116 determines that the route search has ended (step S1202; Yes), the decoding processing illustrated in FIG. Is terminated (step S1210).

一方、復号処理部116は、経路探索が終了していないと判定した場合(ステップS1202;No)、ノード格納部502aとリンク格納部503aとを参照し、始点ノードの接続リンク(隣接ノード)を検索し(ステップS1203)、未探索の隣接ノードがあるか否かを判定する(ステップS1204)。   On the other hand, when it is determined that the route search has not ended (step S1202; No), the decoding processing unit 116 refers to the node storage unit 502a and the link storage unit 503a, and determines the connection link (adjacent node) of the start point node. Search is performed (step S1203), and it is determined whether there is an unsearched adjacent node (step S1204).

そして、復号処理部116は、未探索の隣接ノードがあると判定した場合(ステップS1204;Yes)、さらにその未探索の隣接ノードを関連データとして有する暗号化データが暗号化データ部505bにあるか否かを判定し(ステップS1205)、暗号化データが暗号化データ部505bにあると判定した場合(ステップS1205;Yes)、暗号化データ部505aから暗号化データを取得し、取得した暗号化データを復号する(ステップS1206)。一方、復号処理部116は、暗号化データが暗号化データ部505bにないと判定した場合(ステップS1205;No)、ステップS1209に進む。   If the decryption processing unit 116 determines that there is an unsearched adjacent node (step S1204; Yes), whether there is encrypted data having the unsearched adjacent node as related data in the encrypted data unit 505b. If it is determined whether the encrypted data is in the encrypted data portion 505b (step S1205; Yes), the encrypted data is obtained from the encrypted data portion 505a, and the obtained encrypted data is obtained. Is decoded (step S1206). On the other hand, when the decryption processing unit 116 determines that the encrypted data is not in the encrypted data unit 505b (step S1205; No), the process proceeds to step S1209.

復号処理部116は、ステップS1206で取得した暗号化データの復号に成功したか否かを判定し(ステップS1207)、復号に成功したと判定した場合(ステップS1207;Yes)、ステップS1206における復号結果からノード、リンクを復元し、復元したノード、リンクをノード格納部502b、リンク格納部503bに追加する(ステップS1208)。一方、復号処理部116は、復号に成功していない(失敗した)と判定した場合(ステップS1207;No)、ステップS1209に進む。   The decryption processing unit 116 determines whether or not the decryption of the encrypted data acquired in step S1206 has succeeded (step S1207). When it is determined that the decryption has succeeded (step S1207; Yes), the decryption result in step S1206. Then, the node and the link are restored, and the restored node and link are added to the node storage unit 502b and the link storage unit 503b (step S1208). On the other hand, when the decoding processing unit 116 determines that the decoding has not been successful (failed) (step S1207; No), the process proceeds to step S1209.

そして、復号処理部116は、ステップS1205またはステップS1207またはステップS1208のいずれかの処理が終了すると、リンク格納部503a内のコスト欄を参照し、始点ノードから隣接ノードまでのコストを算出し、出発地ノードから隣接ノードまでのコスト評価を行い(ステップS1209)、ステップS1202に戻る。そして、復号処理部116は、ステップS1202からS1209までの処理を経路探索が終了するまで繰り返し行う。   When the processing of either step S1205, step S1207, or step S1208 ends, the decoding processing unit 116 refers to the cost column in the link storage unit 503a, calculates the cost from the start point node to the adjacent node, and starts. Cost evaluation from the ground node to the adjacent node is performed (step S1209), and the process returns to step S1202. Then, the decoding processing unit 116 repeatedly performs the processing from steps S1202 to S1209 until the route search is completed.

第2の実施の形態では、暗号化時に暗号化対象ノードの接続リンクのコストを最大にする。これにより、暗号化データが復号できなかった場合には、ステップS1209において、コスト最大として出発点ノードから該当ノードまでのコスト評価が行われるため、非現実的なコストとなり、他の最適なコストを有する経路があった場合に、暗号化ノードを含む経路を排除することができる。したがって、図5に示したように、最終的に利用者には、そのような経路を含まない表示イメージ510が表示されることとなる。   In the second embodiment, the cost of the connection link of the encryption target node is maximized at the time of encryption. As a result, if the encrypted data cannot be decrypted, in step S1209, the cost is evaluated from the starting node to the corresponding node as the maximum cost. When there is a path having the path, the path including the encryption node can be excluded. Accordingly, as shown in FIG. 5, the display image 510 that does not include such a route is finally displayed to the user.

なお、上記のステップS1206において、例えば復号結果がノード、リンクでないなどの復号が異常停止した場合には処理を停止することが望ましい。また、経路探索の家庭において、目的地ノードにたどりつかないなど、経路探索が一定時間以上終了しない場合や非現実的なコスト(例えば、徒歩での移動に100年以上かかるなど)であった場合には、ステップS1202において処理を停止してもよい。   In step S1206 described above, it is desirable to stop the processing when the decoding stops abnormally, for example, when the decoding result is not a node or a link. Also, when the route search does not reach the destination node in the route search home, such as when the route search does not finish for a certain period of time or when it is an unrealistic cost (for example, it takes more than 100 years to move on foot) In step S1202, the process may be stopped.

上記のステップS1206における復号、ステップS1208におけるノード、リンクの復元は、単一のノードに対してではなく、複数のノード、リンクに対して行ってもよい。例えば、前述の暗号化処理時に複数のノードをまとめて暗号化した場合には、ステップS1206における復号の結果には、複数のノード、リンクが含まれるため、ステップS1208は復号されたノード、リンクを全て復元することになる。   The decoding in step S1206 and the restoration of nodes and links in step S1208 may be performed not on a single node but on a plurality of nodes and links. For example, when a plurality of nodes are encrypted together at the time of the above-described encryption process, the decryption result in step S1206 includes a plurality of nodes and links, so step S1208 includes the decrypted nodes and links. All will be restored.

なお、上記の復号処理では、経路探索アルゴリズム内で逐次復号を行っているが、事前に復号すべきデータが少ない場合(例えば、ステップS403における地図格納装置102からの応答に暗号化データが一つしか含まれていない場合など)には、復号処理部116は、図12の処理の前に復号処理をまとめて実施してもよい。   In the above-described decryption processing, sequential decryption is performed within the route search algorithm. However, when there is little data to be decrypted in advance (for example, one encrypted data is included in the response from the map storage device 102 in step S403). In the case where only the data is included, the decoding processing unit 116 may perform the decoding processing collectively before the processing of FIG.

また、第1の実施の形態と同様、経路探索においては、データ管理、或いは、経路探索を効率に行うため、ビルのフロア等の階層、或いは領域ごとにデータ管理を行っている場合がある。この場合、経路探索についても、領域ごと、或いは階層別に経路探索アルゴリズムを実行し、これらの結果を繋ぎ合わせることで経路探索を実行する場合がある。その場合には、図12の処理を階層、或いは、領域ごとの経路探索を行い、これらの探索結果を組み合わせて、最終的な出発地ノードから目的地ノードまでの経路探索を行ってもよい。   Similarly to the first embodiment, in route search, data management may be performed for each hierarchy or area such as a building floor in order to efficiently perform data management or route search. In this case, the route search may be executed by executing a route search algorithm for each region or layer, and connecting these results. In that case, the route search from the final departure node to the destination node may be performed by performing route search for each layer or region in the processing of FIG. 12 and combining these search results.

なお、本発明は、上記実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせても良い。   It should be noted that the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the above embodiments. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined.

1:地図データ配信システム、100:ネットワーク、101:地図暗号化装置、102:地図格納装置、103:鍵管理装置、104:地図配信装置、105:地図閲覧装置、106:地図復号装置、110:暗号化情報生成部、111:暗号化処理部、112:データベース処理部、113:鍵生成部、114:経路探索処理部、115:クエリ要求部、116:復号処理部、117:クエリ処理部、118:表示処理部、120:平文地図データ、121:暗号化定義情報、122:暗号化鍵、123:復号鍵、124:暗号化地図データ、200:計算機、201:CPU、202:RAM、203:入力装置、204:表示装置、205:通信装置、206:読書装置、207:外部記憶装置、208:外部記憶媒体、209:インターフェイス、500:地図データ格納部、501:経路探索用データ格納部、502:ノード格納部、503:リンク格納部、510:表示イメージ510、501a:経路探索用データ格納部、502a:ノード格納部、503a:リンク格納部、504a:暗号化経路探索用データ格納部、505a:暗号化データ部、1000:地図表示エリア、1001:設定エリア、1002:ファイル、1003:データベース、1004:鍵読込、1005:マウスカーソル、501b:経路探索用データ格納部、502b:ノード格納部、503b:リンク格納部、504b:暗号化経路探索用データ格納部、505b:暗号化データ部。 1: map data distribution system, 100: network, 101: map encryption device, 102: map storage device, 103: key management device, 104: map distribution device, 105: map browsing device, 106: map decryption device, 110: Encryption information generation unit 111: Encryption processing unit 112: Database processing unit 113: Key generation unit 114: Path search processing unit 115: Query request unit 116: Decryption processing unit 117: Query processing unit 118: Display processing unit, 120: Plain text map data, 121: Encryption definition information, 122: Encryption key, 123: Decryption key, 124: Encryption map data, 200: Computer, 201: CPU, 202: RAM, 203 : Input device, 204: display device, 205: communication device, 206: reading device, 207: external storage device, 208: external storage medium, 209: i 500: Map data storage unit, 501: Route search data storage unit, 502: Node storage unit, 503: Link storage unit, 510: Display image 510, 501a: Route search data storage unit, 502a: Node storage 503a: Link storage unit, 504a: Encrypted path search data storage unit, 505a: Encrypted data unit, 1000: Map display area, 1001: Setting area, 1002: File, 1003: Database, 1004: Key reading, 1005: Mouse cursor, 501b: Route search data storage unit, 502b: Node storage unit, 503b: Link storage unit, 504b: Encrypted route search data storage unit, 505b: Encrypted data unit.

Claims (6)

地図上の位置を示すノードおよび前記ノードと前記ノードに隣接するノードとの関連性を示すリンク情報を含む経路探索用データと前記経路探索用データに対応した地図を表示するための表示用データとが対応付けられた地図データと、前記ノードと前記表示用データを開示させる利用者である開示先ユーザとが対応付けられた暗号化定義情報と、前記経路探索用データを暗号化するための暗号化鍵を格納する記憶部と、
前記経路探索用データと、前記暗号化鍵と、前記暗号化定義情報とに基づいて、前記利用者ごとに、暗号化すべき前記ノードを特定し、特定した前記ノードおよび特定した前記ノードに隣接するノードとのリンク情報の前記経路探索用データを暗号化し、暗号化した前記経路探索用データと前記表示用データとを対応付けた暗号化地図データを生成する暗号化処理部と、
を備えることを特徴とする暗号化装置。
Route search data including a node indicating a position on a map and link information indicating a relationship between the node and a node adjacent to the node, and display data for displaying a map corresponding to the route search data; Is associated with map data, encryption definition information in which the node and a disclosure destination user, who is a user for disclosing the display data, and encryption for encrypting the route search data A storage unit for storing the activation key;
Based on the route search data, the encryption key, and the encryption definition information, the user specifies the node to be encrypted for each user, and is adjacent to the specified node and the specified node. An encryption processor that encrypts the route search data of link information with a node and generates encrypted map data in which the encrypted route search data and the display data are associated with each other;
An encryption device comprising:
前記暗号化処理部は、特定した前記ノードと前記ノードに隣接するノードとのリンク情報を前記経路探索用データとして暗号化した後、削除し、さらに前記隣接するノードに特定したノードを暗号化したことを示す復号フラグを設定し、暗号化した前記経路探索用データと前記表示用データとを対応付けた暗号化地図データを生成する、
ことを特徴とする請求項1に記載の暗号化装置。
The encryption processing unit encrypts link information between the identified node and a node adjacent to the node as the route search data, and then deletes and further encrypts the node specified as the adjacent node. A decryption flag indicating that, and generating encrypted map data in which the encrypted route search data and the display data are associated with each other,
The encryption apparatus according to claim 1, wherein:
前記ノードには座標情報を含み、前記リンク情報には前記ノードから前記ノードに隣接するノードまでに要するコスト情報を含み、
前記暗号化処理部は、特定した前記ノードに含まれる前記座標情報と前記リンク情報に含まれる前記コスト情報とを暗号化した後、特定した前記ノードに座標情報とは異なる情報を設定し、特定した前記コスト情報に、コストが最大となる値を設定することによって更新し、暗号化した前記経路探索用データと前記表示用データとを対応付けた暗号化地図データを生成する、
ことを特徴とする請求項1に記載の暗号化装置。
The node includes coordinate information, and the link information includes cost information required from the node to a node adjacent to the node,
The encryption processing unit encrypts the coordinate information included in the specified node and the cost information included in the link information, and then sets information different from the coordinate information to the specified node, and specifies Updating the cost information by setting a value that maximizes the cost, and generating encrypted map data in which the encrypted route search data and the display data are associated with each other.
The encryption apparatus according to claim 1, wherein:
利用者から地図上の位置のある地点から他の地点までの経路を探索するための経路探索要求を受けた場合に、地図上の位置を示すノードおよび前記ノードと前記ノードに隣接するノードとの関連性を示すリンク情報から、前記ノードと前記リンク情報を含む経路探索用データに対応した地図を表示するための表示用データを開示させる利用者である開示先ユーザとが対応付けられた暗号化定義情報と、前記経路探索用データと、前記経路探索用データを暗号化するための暗号化鍵とに基づいて、前記利用者ごとに、暗号化すべき前記ノードが特定され、特定された前記ノードおよび特定された前記ノードに隣接するノードとのリンク情報を含む前記経路探索用データが暗号化されている場合に、前記隣接するノードに特定したノードを暗号化したことを示す復号フラグが設定されているか否かを判定することにより、前記経路探索用データと、前記表示用データとが対応付けられた暗号化地図データを復号すべきか否かを判断し、前記暗号化地図データを復号すべきと判断した場合、前記暗号化データを復号結果に置き換える復号処理部と、
前記ある地点から前記他の地点までの経路を、前記暗号化地図データに対応する前記経路探索用データに含まれる前記ノードと前記リンク情報とに基づいて前記復号処理部を用いて暗号化地図データの復号を行い、復号結果を用いて前記ノードと前記リンク情報とに基づいて繰り返し探索する経路探索部と、
を備えることを特徴とする復号化装置。
When a route search request for searching a route from a point on the map to another point is received from the user, the node indicating the position on the map and the node and the node adjacent to the node Encryption in which a disclosure destination user who is a user for disclosing display data for displaying a map corresponding to route search data including the node and the link information is associated with link information indicating relevance Based on the definition information, the route search data, and the encryption key for encrypting the route search data, the node to be encrypted is identified for each user, and the identified node and if the route search data include link information and adjacent node identified the nodes is encrypted, encrypting the node identified in the adjacent node By determining whether it is set the decoded flag indicating the judges said route search data, whether or not to decrypt the encrypted map data to which the display data is associated , If it is determined that the encrypted map data should be decrypted, a decryption processing unit that replaces the encrypted data with a decryption result;
Encrypted map data using the decryption processing unit based on the node and the link information included in the route search data corresponding to the encrypted map data for a route from the certain point to the other point A route search unit that repeatedly performs a search based on the node and the link information using a decoding result;
A decoding device comprising:
利用者からの要求に応じて地図上の位置のある地点から他の地点までの経路を探索する経路探索システムであって、
地図閲覧装置は、
前記利用者から要求された前記経路を探索する要求をネットワークを介して送信する要求部と、
前記要求部が要求した前記経路を探索した結果を表示する表示処理部と、を備え、
地図格納装置は、
暗号化鍵によって暗号化された地図上の位置を示すノードおよび前記ノードと前記ノードに隣接するノードとの関連性を示すリンク情報を含む経路探索用データと前記経路探索用データに対応した地図を表示するための表示用データとを対応付けた暗号化地図データを記憶する記憶部と、
前記暗号化鍵によって暗号化された前記暗号化地図データから前記経路探索用データを検索し、検索した検索結果を前記ネットワークを介して送信する検索処理部と、を備え、
復号化装置は、
前記地図格納装置が前記検索を行った場合に、前記暗号化鍵に対応する復号鍵に基づいて前記暗号化地図データを復号化する復号処理部と、
前記経路を、前記暗号化地図データに対応する前記経路探索用データに含まれる前記ノードと前記リンク情報とに基づいて前記復号処理部を用いて暗号化地図データの復号を行い、復号結果を用いて前記ノードと前記リンク情報とに基づいて、繰り返し探索し、探索した探索結果を前記ネットワークを介して送信する経路探索部と、を備え、
地図配信装置は、
前記地図閲覧装置から前記要求を受信した場合に、前記地図格納装置に前記ネットワークを介して前記検索を行うよう要求して前記検索結果を受信し、受信した前記検索結果を前記復号装置に送信して前記探索を行うように要求し、前記復号化装置から前記探索結果を受信した場合に、前記探索結果を前記ネットワークを介して前記地図閲覧装置に送信するクエリ処理部、
を備えることを特徴とする経路探索システム。
A route search system that searches a route from a point on a map to another point in response to a request from a user,
The map browsing device
A request unit for transmitting a request for searching for the route requested by the user via a network;
A display processing unit for displaying a result of searching for the route requested by the request unit,
The map storage device
A route search data including a node indicating a position on a map encrypted by an encryption key, and link information indicating a relationship between the node and a node adjacent to the node, and a map corresponding to the route search data A storage unit for storing encrypted map data associated with display data for display;
A search processing unit for searching the route search data from the encrypted map data encrypted by the encryption key, and transmitting the searched search result via the network,
The decryption device
A decryption processing unit that decrypts the encrypted map data based on a decryption key corresponding to the encryption key when the map storage device performs the search;
The route is decrypted using the decryption processing unit based on the node and the link information included in the route search data corresponding to the encrypted map data, and the decryption result is used. A route search unit that repeatedly searches based on the node and the link information and transmits the searched search results via the network,
Map distribution device
When the request is received from the map browsing device, the map storage device is requested to perform the search via the network, the search result is received, and the received search result is transmitted to the decoding device. A query processing unit that requests to perform the search and transmits the search result to the map browsing device via the network when the search result is received from the decoding device;
A route search system comprising:
前記地図配信装置は、
前記クエリ処理部が、前記地図格納装置から前記検索結果として前記検索用データと前記表示用データとを受信し、前記復号化装置から受信した前記表示用データに基づいて、前記地図閲覧装置に表示させるための地図データを生成し、生成した前記地図データを前記地図閲覧装置に送信し、
前記復号化装置は、
前記地図配信装置から受信した前記検索用データに基づいて復号化された前記暗号化データに対応する前記表示用データを生成し、生成した前記表示用データを前記地図配信装置に送信するイメージ生成部をさらに備える、
ことを特徴とする請求項5に記載の経路探索システム。
The map distribution device includes:
The query processing unit receives the search data and the display data as the search results from the map storage device, and displays them on the map browsing device based on the display data received from the decoding device. Map data to be generated, and the generated map data is transmitted to the map browsing device,
The decoding device
An image generation unit that generates the display data corresponding to the encrypted data decrypted based on the search data received from the map distribution device, and transmits the generated display data to the map distribution device Further comprising
The route search system according to claim 5.
JP2010075529A 2010-03-29 2010-03-29 ENCRYPTION DEVICE, DECRYPTION DEVICE, AND ROUTE SEARCH SYSTEM Expired - Fee Related JP5543821B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010075529A JP5543821B2 (en) 2010-03-29 2010-03-29 ENCRYPTION DEVICE, DECRYPTION DEVICE, AND ROUTE SEARCH SYSTEM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010075529A JP5543821B2 (en) 2010-03-29 2010-03-29 ENCRYPTION DEVICE, DECRYPTION DEVICE, AND ROUTE SEARCH SYSTEM

Publications (2)

Publication Number Publication Date
JP2011211382A JP2011211382A (en) 2011-10-20
JP5543821B2 true JP5543821B2 (en) 2014-07-09

Family

ID=44942010

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010075529A Expired - Fee Related JP5543821B2 (en) 2010-03-29 2010-03-29 ENCRYPTION DEVICE, DECRYPTION DEVICE, AND ROUTE SEARCH SYSTEM

Country Status (1)

Country Link
JP (1) JP5543821B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6551092B2 (en) * 2015-09-11 2019-07-31 日産自動車株式会社 Vehicle information communication method, vehicle information communication apparatus
JP2019204986A (en) * 2018-05-21 2019-11-28 日本電信電話株式会社 Service provision system, service provision server, service provision method and service provision program

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3586120B2 (en) * 1998-11-13 2004-11-10 松下電器産業株式会社 Route search display device
US20060020789A1 (en) * 2004-05-11 2006-01-26 Peter Gipps Secure infrastructure for path determination system
JP4956969B2 (en) * 2005-11-22 2012-06-20 富士ゼロックス株式会社 Document distribution apparatus, program, and document distribution system
JP2008076910A (en) * 2006-09-25 2008-04-03 Toshiba Corp Car navigation system
JP2009049731A (en) * 2007-08-21 2009-03-05 Hitachi Ltd Encryption method, decryption method, and key management method
JP5536313B2 (en) * 2008-04-23 2014-07-02 株式会社日立製作所 Map processing device, program, map display device, and geographic information system

Also Published As

Publication number Publication date
JP2011211382A (en) 2011-10-20

Similar Documents

Publication Publication Date Title
US10997553B2 (en) Method and system for automatically creating a bill of materials
US11030709B2 (en) Method and system for automatically creating and assigning assembly labor activities (ALAs) to a bill of materials (BOM)
JP5024999B2 (en) Cryptographic management device, cryptographic management method, cryptographic management program
JP4958246B2 (en) Method, apparatus and system for fast searchable encryption
US9349023B2 (en) Database encryption system, method, and program
KR101623742B1 (en) Method and system for sharing file related messages
CN113094334B (en) Digital service method, device, equipment and storage medium based on distributed storage
KR20100062013A (en) Method for data encryption and method for data search using conjunctive keyword
JP5140026B2 (en) Database processing method, database processing program, and encryption apparatus
US20130083919A1 (en) Access control method, information display device using the same, and information display system
CN107229872A (en) It is a kind of to separate storage query logic and the private data guard method of segment data
JPWO2006001268A1 (en) Document processing apparatus, document browsing apparatus, and document processing method
CN108197491A (en) A kind of subgraph search method based on ciphertext
JP5536313B2 (en) Map processing device, program, map display device, and geographic information system
KR102535322B1 (en) System for providing privacy protection service and method thereof
JP2002009757A (en) Data encryption device and data decryption device
JP5543821B2 (en) ENCRYPTION DEVICE, DECRYPTION DEVICE, AND ROUTE SEARCH SYSTEM
US12216966B2 (en) Method and system for automatically hosting, indexing, searching and distributing construction details
JP2015090993A (en) Encryption control device, encryption control method and program
JPH11331145A (en) Information sharing system, information preserving device, information processing method and recording medium therefor
JP7577254B2 (en) Information processing program, information processing system, and information processing method
JP5422300B2 (en) Graphic data encryption / decryption device and graphic data browsing system
CN112153142B (en) Data interaction method and device
CN108055256A (en) The platform efficient deployment method of cloud computing SaaS
KR101507165B1 (en) Membership issue and management method and system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120717

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131022

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140204

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140331

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140422

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140509

R150 Certificate of patent or registration of utility model

Ref document number: 5543821

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees