(57)【要約】【課題】遺伝子情報の検索システムにおいて、既存遺伝子情報やサンプル遺伝子情報の流出を防ぐことを目的とする。【解決手段】遺伝子情報検索システム１００では、暗号化タグとクエリータグとを用いた検索可能暗号を用いる。特に、Ｎ個（Ｎは１以上の整数）の単位情報が順に並んだ遺伝子情報から、連続するＷ個（Ｗは１以上Ｎ以下の整数）の単位情報を遺伝子タグとして、先頭から順に１単位情報づつずらしながら（Ｎ−Ｗ＋１）個抽出し、抽出した遺伝子タグを暗号化して暗号化タグとして、遺伝子情報に関連付けてＤＢに蓄積しておく。サンプル遺伝子情報から、連続するＷ個の単位情報を検索タグとして、先頭から順に１単位情報づつずらしながら（Ｌ−Ｗ＋１）個抽出し、抽出した検索タグを暗号化してクエリータグとして検索を行う。【選択図】図２
2012073693.tif 000002
【特許請求の範囲】
【請求項１】
遺伝子情報を記憶する遺伝子情報記憶装置と、前記遺伝子情報記憶装置が記憶した遺伝子情報から検索情報を含む遺伝子情報を検索する遺伝子情報検索装置とを備える遺伝子情報検索システムであり、
前記遺伝子情報記憶装置は、
Ｎ個（Ｎは１以上の整数）の単位情報が順に並んだ遺伝子情報から、連続するＷ個（Ｗは１以上Ｎ以下の整数）の単位情報を遺伝子タグとして、先頭から順に１単位情報づつずらしながら（Ｎ−Ｗ＋１）個抽出する遺伝子タグ抽出部と、
前記遺伝子タグ抽出部が抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを生成する暗号化タグ生成部と、
前記暗号化タグ生成部が生成した（Ｎ−Ｗ＋１）個の暗号化タグを、前記遺伝子情報と関連付けて記憶装置に記憶する遺伝子情報記憶部と
を備え、
前記遺伝子情報検索装置は、
Ｌ個（Ｌは１以上の整数）の単位情報が順に並んだ検索情報を入力する検索情報入力部と、
前記検索情報入力部が入力した検索情報から、連続する前記Ｗ個の単位情報を検索タグとして、先頭から順に１単位情報づつずらしながら（Ｌ−Ｗ＋１）個抽出する検索タグ抽出部と、
前記検索タグ抽出部が抽出した（Ｌ−Ｗ＋１）個の検索タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個のクエリータグを生成するクエリータグ生成部と、
前記クエリータグ生成部が生成した（Ｌ−Ｗ＋１）個のクエリータグを送信して、送信したクエリータグに基づき、前記遺伝子情報記憶部が記憶した遺伝子情報から前記検索情報を含む遺伝子情報を検索させるクエリータグ送信部と
を備えることを特徴とする遺伝子情報検索システム。
【請求項２】
前記暗号化タグ生成部は、前記遺伝子情報を暗号化して暗号化遺伝子情報を生成するとともに、前記遺伝子タグ抽出部が抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを生成し、
前記遺伝子情報記憶部は、（Ｎ−Ｗ＋１）個の暗号化タグを、前記暗号化遺伝子情報と関連付けて記憶する
ことを特徴とする請求項１に記載の遺伝子情報検索システム。
【請求項３】
前記遺伝子情報記憶部は、前記暗号化タグと前記遺伝子情報とを記憶する場合、可逆圧縮方式により圧縮して記憶し、
前記遺伝子情報検索部は、前記遺伝子情報記憶部が圧縮して記憶した暗号化タグを展開して、展開した暗号化タグと前記クエリータグとに基づき、前記検索情報を含む遺伝子情報を検索する
ことを特徴とする請求項１又は２に記載の遺伝子情報検索システム。
【請求項４】
遺伝子情報を記憶する遺伝子情報記憶装置であり、
Ｎ個（Ｎは１以上の整数）の単位情報が順に並んだ遺伝子情報から、連続するＷ個（Ｗは１以上Ｎ以下の整数）の単位情報を遺伝子タグとして、先頭から順に１単位情報づつずらしながら（Ｎ−Ｗ＋１）個抽出する遺伝子タグ抽出部と、
前記遺伝子タグ抽出部が抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを生成する暗号化タグ生成部と、
前記暗号化タグ生成部が生成した（Ｎ−Ｗ＋１）個の暗号化タグを、前記遺伝子情報と関連付けて記憶装置に記憶する遺伝子情報記憶部と
を備えることを特徴とする遺伝子情報記憶装置。
【請求項５】
Ｌ個（Ｌは１以上の整数）の単位情報が順に並んだ検索情報を入力する検索情報入力部と、
前記検索情報入力部が入力した検索情報から、連続するＷ個（Ｗは１以上Ｌ以下の整数）の単位情報を検索タグとして、先頭から順に１単位情報づつずらしながら（Ｌ−Ｗ＋１）個抽出する検索タグ抽出部と、
前記検索タグ抽出部が抽出した（Ｌ−Ｗ＋１）個の検索タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個のクエリータグを生成するクエリータグ生成部と、
前記クエリータグ生成部が生成した（Ｌ−Ｗ＋１）個のクエリータグを所定の装置へ送信して、送信したクエリータグに基づき、前記検索情報を含む遺伝子情報を検索させるクエリータグ送信部と
を備えることを特徴とする遺伝子情報検索装置。
【請求項６】
遺伝子情報を記憶する遺伝子情報記憶プログラムであり、
Ｎ個（Ｎは１以上の整数）の単位情報が順に並んだ遺伝子情報から、連続するＷ個（Ｗは１以上Ｎ以下の整数）の単位情報を遺伝子タグとして、先頭から順に１単位情報づつずらしながら（Ｎ−Ｗ＋１）個抽出する遺伝子タグ抽出処理と、
前記遺伝子タグ抽出処理で抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを生成する暗号化タグ生成処理と、
前記暗号化タグ生成処理で生成した（Ｎ−Ｗ＋１）個の暗号化タグを、前記遺伝子情報と関連付けて記憶装置に記憶する遺伝子情報記憶処理と
をコンピュータに実行させることを特徴とする遺伝子情報記憶プログラム。
【請求項７】
Ｌ個（Ｌは１以上の整数）の単位情報が順に並んだ検索情報を入力する検索情報入力処理と、
前記検索情報入力処理で入力した検索情報から、連続するＷ個（Ｗは１以上Ｌ以下の整数）の単位情報を検索タグとして、先頭から順に１単位情報づつずらしながら（Ｌ−Ｗ＋１）個抽出する検索タグ抽出処理と、
前記検索タグ抽出処理で抽出した（Ｌ−Ｗ＋１）個の検索タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個のクエリータグを生成するクエリータグ生成処理と、
前記クエリータグ生成処理で生成した（Ｌ−Ｗ＋１）個のクエリータグを所定の装置へ送信して、送信したクエリータグに基づき、前記検索情報を含む遺伝子情報を検索させるクエリータグ送信処理と
をコンピュータに実行させることを特徴とする遺伝子情報検索プログラム。
【請求項８】
遺伝子情報を記憶する遺伝子情報記憶方法であり、
処理装置が、Ｎ個（Ｎは１以上の整数）の単位情報が順に並んだ遺伝子情報から、連続するＷ個（Ｗは１以上Ｎ以下の整数）の単位情報を遺伝子タグとして、先頭から順に１単位情報づつずらしながら（Ｎ−Ｗ＋１）個抽出する遺伝子タグ抽出ステップと、
処理装置が、前記遺伝子タグ抽出ステップで抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを生成する暗号化タグ生成ステップと、
記憶装置が、前記暗号化タグ生成ステップで生成した（Ｎ−Ｗ＋１）個の暗号化タグを、前記遺伝子情報と関連付けて記憶する遺伝子情報記憶ステップと
を備えることを特徴とする遺伝子情報記憶方法。
【請求項９】
入力装置が、Ｌ個（Ｌは１以上の整数）の単位情報が順に並んだ検索情報を入力する検索情報入力ステップと、
処理装置が、前記検索情報入力ステップで入力した検索情報から、連続するＷ個（Ｗは１以上Ｌ以下の整数）の単位情報を検索タグとして、先頭から順に１単位情報づつずらしながら（Ｌ−Ｗ＋１）個抽出する検索タグ抽出ステップと、
処理装置が、前記検索タグ抽出ステップで抽出した（Ｌ−Ｗ＋１）個の検索タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個のクエリータグを生成するクエリータグ生成ステップと、
通信装置が、前記クエリータグ生成ステップで生成した（Ｌ−Ｗ＋１）個のクエリータグを所定の装置へ送信して、送信したクエリータグに基づき、前記検索情報を含む遺伝子情報を検索させるクエリータグ送信ステップと
を備えることを特徴とする遺伝子情報検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、遺伝子情報を記憶装置に記憶する記憶技術と、前記記憶技術により記憶装置に記憶された遺伝子情報から所定の遺伝子情報を検索する検索技術とに関する。
【背景技術】
【０００２】
塩基配列、アミノ酸配列等の遺伝子情報については、既に発見され、その意味等が解明されている既存データ（既存遺伝子情報）と、新たに発見された新規データ（サンプル遺伝子情報）とが照合され分析されて、研究が進められる。既存遺伝子情報とサンプル遺伝子情報とを照合する際、既存遺伝子情報が蓄積されたＤＢ（ＤａｔａＢａｓｅ）からサンプル遺伝子情報と一致あるいは類似するデータを、ＢＬＡＳＴ（Ｂａｓｉｃ  Ｌｏｃａｌ  Ａｌｉｇｎｍｅｎｔ  Ｓｅａｒｃｈ  Ｔｏｏｌ）等の手法を用いて検索する。
なお、ＤＢからサンプル遺伝子情報と一致あるいは類似するデータを検索する検索システムは、インハウス（企業内）で構築される場合もあるが、公的な検索サービス機関が提供するシステムを利用する場合もある。
サンプル遺伝子情報は、研究開発の成果であり、一般に機密データである。また、ＤＢに蓄積された既存遺伝子情報も同様に機密データである場合もある。さらに、ＤＢに蓄積された既存遺伝子情報は、人の遺伝子情報である場合もあり、漏洩してはならない個人情報である場合もある。
【０００３】
ＤＢに蓄積されたデータと検索キーワードとを暗号化した状態で、ＤＢに蓄積されたデータから検索キーワードを含むデータを検索可能とする検索可能暗号がある。
この検索可能暗号では、ＤＢにデータを蓄積する際、そのデータを検索する場合に用いられると想定される検索キーワードをタグとして抽出しておく。そして、データとタグとをそれぞれ暗号化し、暗号化したデータに暗号化したタグを添付してＤＢに蓄積する。
ＤＢに蓄積されたデータから検索キーワードを含むデータを検索する場合、暗号化された検索キーワードが入力される。そして、暗号化された検索キーワードに対応する暗号化されたタグが検索される。検索キーワードに対応するタグが見つかった場合、そのタグが添付されたデータが検索キーワードを含むデータであると特定される。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Ｂｏｎｅｈ、Ｄｉ  Ｃｒｅｓｃｅｎｚｏ、Ｏｓｔｒｏｖｓｋｉ、ａｎｄ  Ｐｅｒｓｉａｎｏ“Ｐｕｂｌｉｃ  ｋｅｙ  ｅｎｃｒｙｐｔｉｏｎ  ｗｉｔｈ  ｋｅｙｗｏｒｄ  ｓｅａｒｃｈ”  ＥＵＲＯＣＲＹＰＴ  ２００４、ｐｐ５０６−５２２
【発明の概要】
【発明が解決しようとする課題】
【０００５】
遺伝子情報の検索システムにおいて、既存遺伝子情報は暗号化されずにＤＢに蓄積されており、サンプル遺伝子情報も暗号化されずに検索システムに入力される。仮に、既存遺伝子情報が暗号化された状態でＤＢに蓄積されており、サンプル遺伝子情報も暗号化された状態で検索システムに入力されたとしても、ＤＢからデータを検索する際、既存遺伝子情報とサンプル遺伝子情報とは少なくとも一時的に復号されてしまう。
そのため、機密データである既存遺伝子情報やサンプル遺伝子情報が漏洩する虞がある。たとえ、検索システムがインハウスで構築されていたとしても、既存遺伝子情報やサンプル遺伝子情報が暗号化されていない以上、既存遺伝子情報やサンプル遺伝子情報は漏洩する虞がある。
【０００６】
検索可能暗号を利用して、遺伝子情報の検索システムを構築した場合、既存遺伝子情報とサンプル遺伝子情報との両方を暗号化した状態で検索処理を行えるため、既存遺伝子情報とサンプル遺伝子情報との漏洩を防ぐことができる。
しかし、遺伝子情報の検索は特殊であり、適切なタグを抽出しなければ有効な遺伝子情報の検索システムを構築することはできない。
【０００７】
この発明は、遺伝子情報の検索システムにおいて、既存遺伝子情報やサンプル遺伝子情報の漏洩を防ぐことを目的とする。
【課題を解決するための手段】
【０００８】
この発明に係る遺伝子情報検索システムは、
遺伝子情報を記憶する遺伝子情報記憶装置と、前記遺伝子情報記憶装置が記憶した遺伝子情報から検索情報を含む遺伝子情報を検索する遺伝子情報検索装置とを備える遺伝子情報検索システムであり、
前記遺伝子情報記憶装置は、
Ｎ個（Ｎは１以上の整数）の単位情報が順に並んだ遺伝子情報から、連続するＷ個（Ｗは１以上Ｎ以下の整数）の単位情報を遺伝子タグとして、先頭から順に１単位情報づつずらしながら（Ｎ−Ｗ＋１）個抽出する遺伝子タグ抽出部と、
前記遺伝子タグ抽出部が抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを生成する暗号化タグ生成部と、
前記暗号化タグ生成部が生成した（Ｎ−Ｗ＋１）個の暗号化タグを、前記遺伝子情報と関連付けて記憶装置に記憶する遺伝子情報記憶部と
を備え、
前記遺伝子情報検索装置は、
Ｌ個（Ｌは１以上の整数）の単位情報が順に並んだ検索情報を入力する検索情報入力部と、
前記検索情報入力部が入力した検索情報から、連続する前記Ｗ個の単位情報を検索タグとして、先頭から順に１単位情報づつずらしながら（Ｌ−Ｗ＋１）個抽出する検索タグ抽出部と、
前記検索タグ抽出部が抽出した（Ｌ−Ｗ＋１）個の検索タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個のクエリータグを生成するクエリータグ生成部と、
前記クエリータグ生成部が生成した（Ｌ−Ｗ＋１）個のクエリータグを送信して、送信したクエリータグに基づき、前記遺伝子情報記憶部が記憶した遺伝子情報から前記検索情報を含む遺伝子情報を検索させるクエリータグ送信部と
を備えることを特徴とする。
【０００９】
前記暗号化タグ生成部は、前記遺伝子情報を暗号化して暗号化遺伝子情報を生成するとともに、前記遺伝子タグ抽出部が抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを生成し、
前記遺伝子情報記憶部は、（Ｎ−Ｗ＋１）個の暗号化タグを、前記暗号化遺伝子情報と関連付けて記憶する
ことを特徴とする。
【００１０】
前記遺伝子情報記憶部は、前記暗号化タグと前記遺伝子情報とを記憶する場合、可逆圧縮方式により圧縮して記憶し、
前記遺伝子情報検索部は、前記遺伝子情報記憶部が圧縮して記憶した暗号化タグを展開して、展開した暗号化タグと前記クエリータグとに基づき、前記検索情報を含む遺伝子情報を検索する
ことを特徴とする。
【００１１】
この発明に係る遺伝子情報記憶装置は、
遺伝子情報を記憶する遺伝子情報記憶装置であり、
Ｎ個（Ｎは１以上の整数）の単位情報が順に並んだ遺伝子情報から、連続するＷ個（Ｗは１以上Ｎ以下の整数）の単位情報を遺伝子タグとして、先頭から順に１単位情報づつずらしながら（Ｎ−Ｗ＋１）個抽出する遺伝子タグ抽出部と、
前記遺伝子タグ抽出部が抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを生成する暗号化タグ生成部と、
前記暗号化タグ生成部が生成した（Ｎ−Ｗ＋１）個の暗号化タグを、前記遺伝子情報と関連付けて記憶装置に記憶する遺伝子情報記憶部と
を備えることを特徴とする。
【００１２】
この発明に係る遺伝子情報検索装置は、
Ｌ個（Ｌは１以上の整数）の単位情報が順に並んだ検索情報を入力する検索情報入力部と、
前記検索情報入力部が入力した検索情報から、連続するＷ個（Ｗは１以上Ｌ以下の整数）の単位情報を検索タグとして、先頭から順に１単位情報づつずらしながら（Ｌ−Ｗ＋１）個抽出する検索タグ抽出部と、
前記検索タグ抽出部が抽出した（Ｌ−Ｗ＋１）個の検索タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個のクエリータグを生成するクエリータグ生成部と、
前記クエリータグ生成部が生成した（Ｌ−Ｗ＋１）個のクエリータグを所定の装置へ送信して、送信したクエリータグに基づき、前記検索情報を含む遺伝子情報を検索させるクエリータグ送信部と
を備えることを特徴とする。
【００１３】
この発明に係る遺伝子情報記憶プログラムは、
遺伝子情報を記憶する遺伝子情報記憶プログラムであり、
Ｎ個（Ｎは１以上の整数）の単位情報が順に並んだ遺伝子情報から、連続するＷ個（Ｗは１以上Ｎ以下の整数）の単位情報を遺伝子タグとして、先頭から順に１単位情報づつずらしながら（Ｎ−Ｗ＋１）個抽出する遺伝子タグ抽出処理と、
前記遺伝子タグ抽出処理で抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを生成する暗号化タグ生成処理と、
前記暗号化タグ生成処理で生成した（Ｎ−Ｗ＋１）個の暗号化タグを、前記遺伝子情報と関連付けて記憶装置に記憶する遺伝子情報記憶処理と
をコンピュータに実行させることを特徴とする。
【００１４】
この発明に係る遺伝子情報検索プログラムは、
Ｌ個（Ｌは１以上の整数）の単位情報が順に並んだ検索情報を入力する検索情報入力処理と、
前記検索情報入力処理で入力した検索情報から、連続するＷ個（Ｗは１以上Ｌ以下の整数）の単位情報を検索タグとして、先頭から順に１単位情報づつずらしながら（Ｌ−Ｗ＋１）個抽出する検索タグ抽出処理と、
前記検索タグ抽出処理で抽出した（Ｌ−Ｗ＋１）個の検索タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個のクエリータグを生成するクエリータグ生成処理と、
前記クエリータグ生成処理で生成した（Ｌ−Ｗ＋１）個のクエリータグを所定の装置へ送信して、送信したクエリータグに基づき、前記検索情報を含む遺伝子情報を検索させるクエリータグ送信処理と
をコンピュータに実行させることを特徴とする。
【００１５】
この発明に係る遺伝子情報記憶方法は、
遺伝子情報を記憶する遺伝子情報記憶方法であり、
処理装置が、Ｎ個（Ｎは１以上の整数）の単位情報が順に並んだ遺伝子情報から、連続するＷ個（Ｗは１以上Ｎ以下の整数）の単位情報を遺伝子タグとして、先頭から順に１単位情報づつずらしながら（Ｎ−Ｗ＋１）個抽出する遺伝子タグ抽出ステップと、
処理装置が、前記遺伝子タグ抽出ステップで抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを生成する暗号化タグ生成ステップと、
記憶装置が、前記暗号化タグ生成ステップで生成した（Ｎ−Ｗ＋１）個の暗号化タグを、前記遺伝子情報と関連付けて記憶する遺伝子情報記憶ステップと
を備えることを特徴とする。
【００１６】
この発明に係る遺伝子情報検索方法は、
入力装置が、Ｌ個（Ｌは１以上の整数）の単位情報が順に並んだ検索情報を入力する検索情報入力ステップと、
処理装置が、前記検索情報入力ステップで入力した検索情報から、連続するＷ個（Ｗは１以上Ｌ以下の整数）の単位情報を検索タグとして、先頭から順に１単位情報づつずらしながら（Ｌ−Ｗ＋１）個抽出する検索タグ抽出ステップと、
処理装置が、前記検索タグ抽出ステップで抽出した（Ｌ−Ｗ＋１）個の検索タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個のクエリータグを生成するクエリータグ生成ステップと、
通信装置が、前記クエリータグ生成ステップで生成した（Ｌ−Ｗ＋１）個のクエリータグを所定の装置へ送信して、送信したクエリータグに基づき、前記検索情報を含む遺伝子情報を検索させるクエリータグ送信ステップと
を備えることを特徴とする。
【発明の効果】
【００１７】
この発明に係る遺伝子情報検索システムでは、検索可能暗号技術を用いるとともに、適切な暗号化タグとクエリータグとを設定した。そのため、既存遺伝子情報やサンプル遺伝子情報の流出を防ぐとともに、有効な遺伝子情報の検索を行うことができる。
【図面の簡単な説明】
【００１８】
【図１】検索可能暗号の説明図。
【図２】実施の形態１に係る遺伝子情報検索システム１００の構成図。
【図３】実施の形態１に係る遺伝子情報検索システム１００の既存遺伝子情報を記憶する処理を示すフローチャート。
【図４】遺伝子タグを抽出する処理の説明図。
【図５】実施の形態１に係る遺伝子情報検索システム１００のサンプル遺伝子情報を検索する処理を示すフローチャート。
【図６】検索タグを抽出する処理の説明図。
【図７】遺伝子情報記憶装置１０、遺伝子情報検索装置２０のハードウェア構成の一例を示す図。
【発明を実施するための形態】
【００１９】
以下、図に基づき、発明の実施の形態を説明する。
以下の説明において、処理装置は後述するＣＰＵ９１１等である。記憶装置は後述するＲＯＭ９１３、ＲＡＭ９１４、磁気ディスク９２０等である。入力装置はキーボード９０２、マウス９０３等である。通信装置は後述する通信ボード９１５等である。つまり、処理装置、記憶装置、入力装置、通信装置はハードウェアである。
【００２０】
実施の形態１．
まず、遺伝子技術に関する背景について説明する。
【００２１】
塩基配列、アミノ酸配列等の遺伝子情報は、人間や動物では創薬や再生医療に利用され、植物や家畜・ペットなどでは品種改良や飼料、除草剤などの薬の開発に利用される、貴重で価値の高い情報である。
【００２２】
具体的には、遺伝子情報には以下のような利用方法がある。
例えば、遺伝子技術を人間や動物に適用した場合、遺伝子の操作や組み換え技術を利用して、優れた形質であると判明した遺伝子を挿入することで、優れた生命体を誕生させることや、大腸菌内でインシュリンを大量生産するなど、生物の体内で有用物質を多量に生産させたりすることができる。また、例えば、病気を引き起こしている遺伝子を特定できれば、その遺伝子を取り除く（その病気を発現しなくする）薬の開発に資することができる。
また、遺伝子技術を植物に適用した場合、例えば遺伝子発現を制御するスイッチが解明されれば、開花時期や、花の色や模様、或いは紅葉を生じさせたりできるようになる。また、害虫に強い、気象ストレスに強い、そして生産性の高い作物を作り出す事も可能であり、これは世界的な食糧不足の時代にとって重要である。
【００２３】
遺伝子技術では、対象となる遺伝子情報（サンプル遺伝子情報）を、既知の遺伝子情報（既存遺伝子情報）と比較して、サンプル遺伝子情報と一致するあるいは類似する既存遺伝子情報を特定することが基本であり、重要である。一致するあるいは類似する既存遺伝子情報が特定されると、その既存遺伝子情報に基づき、サンプル遺伝子情報を分類するとともに、サンプル遺伝子情報の性質を予見して、科学的な分析が行われる。
したがって、既存遺伝子情報をＤＢに蓄積しておき、サンプル遺伝子情報と一致するあるいは類似する既存遺伝子情報を検索する検索システムが、遺伝子技術においては重要である。
【００２４】
また、遺伝子情報の解析を行うシーケンサーの発展により、人間個々人の遺伝子情報（ＤＮＡ）を短時間でかつ安価に解読可能である。そのため、例えば、患者の遺伝子情報を保管しておき、保管した患者の遺伝子情報から、病気の原因となる遺伝子情報を検索し、治療することも可能となる。その意味でも、遺伝子情報を蓄積しておき、蓄積した遺伝子情報から所定の遺伝子情報を検索する検索システムは重要である。
【００２５】
なお、個々人の遺伝子情報は、流出することが許されない個人情報であり、安全に保管する必要がある。また、遺伝子情報は、個々人の遺伝子情報以外であっても非常に高価で、貴重なため、競争会社に漏れないようにしなければならない。
また、検索キーワードとして使用されるサンプル遺伝子情報は、多大な時間と費用をかけ、研究や実験の成果として取得したものであり、企業や研究者にとって最高機密に当たる貴重なものである。
したがって、ＤＢに蓄積しておく遺伝子情報や、検索キーワードとして使用する遺伝子情報が漏洩しないように注意しなければならない。
【００２６】
そのため、検索システムをインハウスで構築することなどが考えられる。しかしながら遺伝子情報は多量で、例えば一人分の遺伝子情報は３ギガバイトある。例えば、病院で全ての患者の遺伝子情報を保管するためのＩＴ設備を独自に持つ事は資金面等から困難である。
したがって、クラウド等、外部の計算機資源を利用しつつ、情報の漏洩を防止した検索システムを構築することが望ましい。なお、クラウドでは、自前で計算機やストレージ（ＤＢ）やソフトウェア等の計算機資源を持たず、インターネットの中に共同利用できる形で計算機資源を持つ。クラウドを利用する場合、ユーザは、このインターネット上に置かれた計算機資源を、使用時間や使用容量を使用料という形で共同利用することになる。
【００２７】
クラウド等を利用しつつ、情報の漏洩を防止する手段として、情報を暗号化することが考えられる。つまり、既存遺伝子情報を暗号化した上でＤＢに蓄積しておき、検索を実行する際、サンプル遺伝子情報を暗号化した上で入力することが考えられる。
しかし、通常の検索システムでは、情報を暗号化したまま検索を実行することはできない。つまり、通常の検索システムでは、暗号化された既存遺伝子情報から、暗号化されたサンプル遺伝子情報と一致あるいは類似する遺伝子データを検索することはできない。そのため、既存遺伝子情報を暗号化した上でＤＢに蓄積しておき、サンプル遺伝子情報を暗号化した上で入力したとしても、検索を実行する場合には両方を一旦復号しなければならず、このときに情報漏洩のリスクを伴う。
【００２８】
そこで、ＤＢに蓄積されたデータと検索キーワードとを暗号化した状態で、ＤＢに蓄積されたデータから検索キーワードを含むデータを検索可能とする検索可能暗号を用いることが考えられる。
図１は、検索可能暗号の説明図である。
検索可能暗号では、ＤＢにデータを記憶する際、そのデータを検索する場合に用いられると想定される検索キーワードをタグとして抽出する。次に、データを暗号化して暗号化データとするとともに、抽出した各タグを暗号化して暗号化タグとする。そして、暗号化データに各暗号化タグを添付してＤＢに記憶する。
図１では、データＡを記憶する際、データＡを検索する場合に用いられると想定される検索キーワードとして、データＡからタグＡ１、タグＡ２、・・・が抽出される。次に、データＡが暗号化され暗号化データＡとされ、各タグが暗号化され暗号化タグＡ１、暗号化タグＡ２、・・・とされる。そして、暗号化データＡに、暗号化タグＡ１、暗号化タグＡ２、・・・が添付されて、ＤＢに記憶される。
ＤＢに蓄積されたデータから検索キーワードを含むデータを検索する場合、検索キーワードを暗号化してクエリータグとした上で入力する。そして、クエリータグに対応する暗号化タグをＤＢから検索する。クエリータグに対応する暗号化タグが見つかった場合、その暗号化タグが添付された暗号化データが検索キーワードを含むデータであると特定される。
なお、データやタグを暗号化する方法、検索キーワードを暗号化する方法は、用いる検索可能暗号の方式による。例えば、公開鍵暗号方式に基づく検索可能暗号であれば、データやタグは公開鍵で暗号化され、検索キーワードは秘密鍵で暗号化される場合もある。
同様に、クエリータグに対応する暗号化タグを見つける方法は、用いる検索可能暗号の方式による。例えば、暗号化タグとクエリータグとが一致した場合、その暗号化タグはそのクエリータグに対応すると判定する場合や、暗号化タグとクエリータグとについて、所定の演算を行った結果が１になれば、その暗号化タグはそのクエリータグに対応すると判定する場合等がある。
【００２９】
ここで、遺伝子情報における検索処理は、ＢＬＡＳＴ等のホモロジー検索と呼ばれる特殊な検索処理である。そのため、検索可能暗号を用いて検索システムを構築する場合、データに添付するタグの作り方（抽出の仕方）に工夫が必要である。また、クエリータグも、単に検索したいサンプル遺伝子情報をそのまま暗号化して用いることはできず、工夫が必要である。
ホモロジー検索では、例えば、サンプル遺伝子情報に含まれる連続するＷ個の単位情報（塩基やアミノ酸）が、既存遺伝子情報に連続して含まれる場合、検索ヒットとしている。ここで、塩基であればＷは例えば１１であるし、アミノ酸であればＷは例えば３である。なお、以下の説明では、例として塩基を用いて説明する。
以下に説明する実施の形態１に係る遺伝子情報検索システム１００では、このホモロジー検索を可能とする暗号化タグやクエリータグを生成する。
【００３０】
実施の形態１に係る遺伝子情報検索システム１００について説明する。
図２は、実施の形態１に係る遺伝子情報検索システム１００の構成図である。
図２に示すように、遺伝子情報検索システム１００は、遺伝子情報記憶装置１０と遺伝子情報検索装置２０とを備える。
遺伝子情報記憶装置１０は、遺伝子情報入力部１１、遺伝子タグ抽出部１２、暗号化部１３（暗号化タグ生成部）、遺伝子情報記憶部１４、遺伝子情報検索部１５を備える。
遺伝子情報検索装置２０は、検索情報入力部２１、検索タグ抽出部２２、クエリータグ生成部２３、クエリータグ送信部２４、遺伝子情報取得部２５を備える。
【００３１】
図３は、実施の形態１に係る遺伝子情報検索システム１００の既存遺伝子情報を記憶する処理を示すフローチャートである。図４は、遺伝子タグを抽出する処理の説明図である。
（Ｓ１１：遺伝子情報入力ステップ）
遺伝子情報入力部１１は、Ｎ個（Ｎは１以上の整数）の塩基を表す文字（Ａ、Ｃ、Ｇ、Ｔのいずれか）が順に並んだ遺伝子情報を入力装置により入力する。
（Ｓ１２：遺伝子タグ抽出ステップ）
遺伝子タグ抽出部１２は、遺伝子情報入力部１１が入力した遺伝子情報から、連続するＷ個（Ｗは１以上Ｎ以下の整数）の文字列を遺伝子タグとして、先頭から順に１文字づつずらしながら（Ｎ−Ｗ＋１）個、処理装置により抽出する（図４参照）。例えば、Ｎが２０、Ｗが１１であれば、遺伝子タグ抽出部１２は、入力された遺伝子情報の１文字目から１１文字目までと、２文字目から１２文字目までと、・・・１０文字目から２０文字目までとの１０（＝２０−１１＋１）個の文字列を遺伝子タグとして抽出する。
（Ｓ１３：暗号化タグ生成ステップ）
次に、暗号化部１３は、遺伝子タグ抽出部１２が抽出した（Ｎ−Ｗ＋１）個の遺伝子タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個の暗号化タグを処理装置により生成する。また、暗号化部１３は、遺伝子情報入力部１１が入力した遺伝子情報を暗号化して暗号化遺伝子情報を生成する。なお、暗号化の方法は、用いる検索可能暗号の方式による。
（Ｓ１４：遺伝子情報記憶ステップ）
遺伝子情報記憶部１４は、暗号化部１３が生成した（Ｎ−Ｗ＋１）個の暗号化タグを、暗号化部１３が生成した暗号化遺伝子情報に添付して（関連付けて）ＤＢに記憶する。
なお、暗号化タグと暗号化遺伝子情報とを記憶するＤＢは、遺伝子情報記憶装置１０の外部に備えていてもよいし、内部に備えていてもよい。例えば、クラウドを利用する場合には、前記ＤＢはクラウド上、つまりインターネット等のネットワークを介して接続されたデータセンタ等のサーバに存在することになる。
【００３２】
図５は、実施の形態１に係る遺伝子情報検索システム１００のサンプル遺伝子情報を検索する処理を示すフローチャートである。図６は、検索タグを抽出する処理の説明図である。
まず、遺伝子情報検索装置２０側の処理が実行される。
（Ｓ２１：検索情報入力ステップ）
検索情報入力部２１は、Ｌ個（Ｌは１以上の整数）の塩基を表す文字が順に並んだサンプル遺伝子情報を検索情報として入力装置により入力する。
（Ｓ２２：検索タグ抽出ステップ）
検索タグ抽出部２２は、検索情報入力部２１が入力した検索情報から、連続するＷ個の文字列を検索タグとして、先頭から順に１文字づつずらしながら（Ｌ−Ｗ＋１）個、処理装置により抽出する（図６参照）。例えば、Ｌが１５、Ｗが１１であれば、検索タグ抽出部２２は、入力された遺伝子情報の１文字目から１１文字目までと、２文字目から１２文字目までと、・・・５文字目から１５文字目までとの５（１５−１１＋１）個の文字列を遺伝子タグとして抽出する。
（Ｓ２３：クエリータグ生成ステップ）
クエリータグ生成部２３は、検索タグ抽出部２２が抽出した（Ｌ−Ｗ＋１）個の検索タグそれぞれを、暗号化して（Ｎ−Ｗ＋１）個のクエリータグを生成する。なお、暗号化の方法は、用いる検索可能暗号の方式による。
（Ｓ２４：クエリータグ送信ステップ）
クエリータグ送信部２４は、クエリータグ生成部２３が生成した（Ｌ−Ｗ＋１）個のクエリータグそれぞれを、遺伝子情報記憶装置１０へ通信装置を介して送信する。
【００３３】
クエリータグが送信されると、遺伝子情報記憶装置１０側の処理が実行される。
（Ｓ２５：遺伝子情報検索ステップ）
遺伝子情報検索部１５は、上述した既存遺伝子情報を記憶する処理で、遺伝子情報記憶部１４が記憶した暗号化タグと、クエリータグ送信部２４が送信したクエリータグとに基づき、遺伝子情報記憶部１４が記憶した暗号化遺伝子情報からサンプル遺伝子情報を含む暗号化遺伝子情報を処理装置により検索する。ここでは、クエリータグ送信部２４が送信したクエリータグのうち、いずれかのクエリータグに対応する暗号化タグが添付された暗号化遺伝子情報を検索する。
そして、検索された暗号化遺伝子情報を、遺伝子情報検索装置２０へ通信装置を介して送信する。なお、検索ヒットした暗号化遺伝子情報がなければ、遺伝子情報検索部１５は、検索ヒットするデータがないことを遺伝子情報検索装置２０へ通知する。
【００３４】
暗号化遺伝子情報が送信されると、再び遺伝子情報検索装置２０側の処理が実行される。
（Ｓ２６：遺伝子情報取得ステップ）
遺伝子情報取得部２５は、送信された暗号化遺伝子情報を受信する。そして、遺伝子情報取得部２５は、受信した暗号化遺伝子情報を復号して、遺伝子情報を取得する。なお、復号の方法は、用いる検索可能暗号の方式による。
【００３５】
以上のように、遺伝子情報検索システム１００は、遺伝子情報を暗号化した上で、遺伝子情報記憶部１４に蓄積する。そのため、遺伝子情報記憶部１４に蓄積されたデータが漏洩したとしても、遺伝子情報が漏洩することを防止できる。
また、遺伝子情報検索システム１００は、サンプル遺伝子情報も暗号化した上で送信する。そのため、サンプル遺伝子情報が漏洩することも防止できる。
特に、遺伝子情報検索システム１００は、遺伝子情報記憶部１４に蓄積された遺伝子情報と、サンプル遺伝子情報とのどちらも暗号化されたままで、検索処理を行う。つまり、検索処理を行う際に、一時的に遺伝子情報やサンプル遺伝子情報が復号され、漏洩する危険性がない。
【００３６】
なお、ここでは、遺伝子情報記憶装置１０が遺伝子情報検索部１５を備えるものとして説明した。しかし、遺伝子情報検索部１５は、遺伝子情報記憶装置１０とは別の設けられていてもよい。例えば、暗号化タグと暗号化遺伝子情報とを記憶するＤＢがクラウド上に設けられている場合、遺伝子情報検索部１５もクラウド上に設けてもよい。
この場合であっても、ネットワークを介して送受信されるデータはどれも暗号化されているため、遺伝子情報やサンプル遺伝子情報が漏洩することはない。
また、このように、暗号化タグと暗号化遺伝子情報とを記憶するＤＢや、遺伝子情報検索部１５をクラウド上に設けても、クラウドに設けられた機能では、暗号化遺伝子情報やクエリータグを復号することはできない。したがって、遺伝子情報やサンプル遺伝子情報が漏洩することはない。
【００３７】
また、ここでは、（Ｓ１３）で遺伝子タグだけでなく、遺伝子情報も暗号化し、（Ｓ１４）でＤＢに記憶するとした。しかし、遺伝子情報については、一般に公開されており、秘密にする必要がない場合も考えられる。この場合、（Ｓ１３）で遺伝子タグだけを暗号化し、遺伝子情報は暗号化せず平文のままとし、（Ｓ１４）でＤＢに記憶してもよい。この場合であっても、検索時において、検索キーワードとして使用されるサンプル遺伝子情報は暗号化した上で送信されるため、サンプル遺伝子情報が漏洩することを防止できる。
【００３８】
ここで、暗号化遺伝子情報に暗号化タグを添付してＤＢに記憶した場合、ＤＢに記憶されるデータのサイズが非常に大きくなる虞がある。例えば、人の場合、一人分の遺伝子情報のデータサイズが約３ギガバイトである。そのため、上述したように、遺伝子情報に、暗号化タグを添付する場合、仮に暗号化前と暗号化後とでデータサイズが変わらないとしても、「３ギガバイト＋（３ギガ＋１１−１）×１１バイト」になる。つまり、約３×１２（＝３６）ギガバイトになる。例えば、病院で全ての患者の遺伝子情報を記憶する場合、「約３６ギガバイト×患者の人数」のＤＢ容量が必要となる。
記憶装置が安価になっており、実現することも可能であるかもしれないが、できる限りデータサイズを抑えることが望ましい。そこで、暗号化遺伝子情報と暗号化タグとをそれぞれ、圧縮前のデータに復元可能な可逆式の圧縮方式で圧縮した上で、ＤＢに記憶してもよい。また、塩基はＡ、Ｔ、Ｃ、Ｇの４種であるため、各塩基を２ビット表記に変換した上で、ＤＢに記憶してもよい。
【００３９】
また、植物や人間以外の動物の遺伝子情報のように、個人情報が含まれない遺伝子情報には、一般に公開されているものもある。この場合、一般に公開されているのであるから、遺伝子情報は暗号化されずにＤＢに記憶されている。
しかし、このように一般に公開された遺伝子情報からサンプル遺伝子情報を検索する場合であっても、サンプル遺伝子情報は企業や研究者にとって貴重なものであり、漏洩を防ぐ必要がある。そのため、サンプル遺伝子情報は暗号化した上で送信する必要がある。
この場合、サンプル遺伝子情報を上述したクエリータグとして暗号化した上で送信するとともに、暗号化されずにＤＢに記憶されている遺伝子情報に対して、事前に、あるいは、検索実行時に、上述した暗号化タグを生成し添付する。これにより、サンプル遺伝子情報の漏洩を防止しつつ、一般に公開されている遺伝子情報からサンプル遺伝子情報の検索をすることが可能となる。
【００４０】
次に、実施の形態における遺伝子情報記憶装置１０、遺伝子情報検索装置２０のハードウェア構成について説明する。
図７は、遺伝子情報記憶装置１０、遺伝子情報検索装置２０のハードウェア構成の一例を示す図である。
図７に示すように、遺伝子情報記憶装置１０、遺伝子情報検索装置２０は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、ＬＣＤ９０１（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、キーボード９０２（Ｋ／Ｂ）、通信ボード９１５、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置９２０（固定ディスク装置）の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。磁気ディスク装置９２０は、所定の固定ディスクインタフェースを介して接続される。
【００４１】
磁気ディスク装置９２０又はＲＯＭ９１３などには、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００４２】
プログラム群９２３には、上記の説明において「遺伝子情報入力部１１」、「遺伝子タグ抽出部１２」、「暗号化部１３」、「遺伝子情報記憶部１４」、「遺伝子情報検索部１５」、「検索情報入力部２１」、「検索タグ抽出部２２」、「クエリータグ生成部２３」、「クエリータグ送信部２４」、「遺伝子情報取得部２５」等として説明した機能を実行するソフトウェアやプログラムやその他のプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、上記の説明において「遺伝子情報」、「遺伝子タグ」、「暗号化遺伝子情報」、「暗号化タグ」、「サンプル遺伝子情報」、「検索タグ」、「クエリータグ」等の情報やデータや信号値や変数値やパラメータが、「データベース」の各項目として記憶される。「データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵ９１１の動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵ９１１の動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【００４３】
また、上記の説明におけるフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、その他光ディスク等の記録媒体やＩＣチップに記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体や電波によりオンライン伝送される。
また、上記の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。また、「〜装置」として説明するものは、「〜回路」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。さらに、「〜処理」として説明するものは「〜ステップ」であっても構わない。すなわち、「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、ＲＯＭ９１３等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、上記で述べた「〜部」としてコンピュータ等を機能させるものである。あるいは、上記で述べた「〜部」の手順や方法をコンピュータ等に実行させるものである。
【符号の説明】
【００４４】
１００  遺伝子情報検索システム、１０  遺伝子情報記憶装置、１１  遺伝子情報入力部、１２  遺伝子タグ抽出部、１３  暗号化部、１４  遺伝子情報記憶部、１５  遺伝子情報検索部、２０  遺伝子情報検索装置、２１  検索情報入力部、２２  検索タグ抽出部、２３  クエリータグ生成部、２４  クエリータグ送信部、２５  遺伝子情報取得部。
【図１】
2012073693.tif 000003
【図２】
2012073693.tif 000004
【図３】
2012073693.tif 000005
【図４】
2012073693.tif 000006
【図５】
2012073693.tif 000007
【図６】
2012073693.tif 000008
【図７】
2012073693.tif 000009