IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社東芝の特許一覧 ▶ 東芝ソリューション株式会社の特許一覧

特許7504805端末装置、データ処理方法、及びプログラム
<>
  • 特許-端末装置、データ処理方法、及びプログラム 図1
  • 特許-端末装置、データ処理方法、及びプログラム 図2
  • 特許-端末装置、データ処理方法、及びプログラム 図3
  • 特許-端末装置、データ処理方法、及びプログラム 図4
  • 特許-端末装置、データ処理方法、及びプログラム 図5
  • 特許-端末装置、データ処理方法、及びプログラム 図6
  • 特許-端末装置、データ処理方法、及びプログラム 図7
  • 特許-端末装置、データ処理方法、及びプログラム 図8
  • 特許-端末装置、データ処理方法、及びプログラム 図9
  • 特許-端末装置、データ処理方法、及びプログラム 図10
  • 特許-端末装置、データ処理方法、及びプログラム 図11
  • 特許-端末装置、データ処理方法、及びプログラム 図12
  • 特許-端末装置、データ処理方法、及びプログラム 図13
  • 特許-端末装置、データ処理方法、及びプログラム 図14
  • 特許-端末装置、データ処理方法、及びプログラム 図15
  • 特許-端末装置、データ処理方法、及びプログラム 図16
  • 特許-端末装置、データ処理方法、及びプログラム 図17
  • 特許-端末装置、データ処理方法、及びプログラム 図18
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-14
(45)【発行日】2024-06-24
(54)【発明の名称】端末装置、データ処理方法、及びプログラム
(51)【国際特許分類】
   G16B 50/40 20190101AFI20240617BHJP
【FI】
G16B50/40
【請求項の数】 10
(21)【出願番号】P 2020569711
(86)(22)【出願日】2020-01-30
(86)【国際出願番号】 JP2020003327
(87)【国際公開番号】W WO2020158842
(87)【国際公開日】2020-08-06
【審査請求日】2023-01-19
(31)【優先権主張番号】P 2019017395
(32)【優先日】2019-02-01
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(73)【特許権者】
【識別番号】301063496
【氏名又は名称】東芝デジタルソリューションズ株式会社
(74)【代理人】
【識別番号】110001634
【氏名又は名称】弁理士法人志賀国際特許事務所
(72)【発明者】
【氏名】宮崎 真悟
(72)【発明者】
【氏名】小池 正修
(72)【発明者】
【氏名】佐野 文彦
(72)【発明者】
【氏名】池田 竜朗
(72)【発明者】
【氏名】花谷 嘉一
(72)【発明者】
【氏名】山口 泰平
【審査官】塩田 徳彦
(56)【参考文献】
【文献】特開2016-206918(JP,A)
【文献】特開2014-119486(JP,A)
【文献】特開2014-098990(JP,A)
【文献】米国特許出願公開第2016/0085916(US,A1)
【文献】米国特許出願公開第2013/0044876(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G16B 5/00-99/00
(57)【特許請求の範囲】
【請求項1】
一以上の利用者のゲノムデータに関する問い合わせを受け付ける受付部と、
前記ゲノムデータに一方向性関数を適用して秘匿値を生成する秘匿値生成部と、
前記秘匿値生成部により生成された秘匿値と、前記問い合わせの内容とに基づいて、前記問い合わせに対する応答データを生成する応答データ生成部と、
前記応答データ生成部によって生成された応答データを出力する出力部と、
を備え
前記ゲノムデータは、塩基配列に関するデータであり、
前記問い合わせは、前記ゲノムデータの所定位置における配列に関する問い合わせであり、
前記受付部は、前記所定位置における配列と比較される比較データを含む問い合わせを受け付け、
前記秘匿値生成部は、前記所定位置の配列を示す情報に前記一方向性関数を適用して秘匿値を生成し、前記比較データに前記一方向性関数を適用して秘匿比較値を生成し、
前記応答データ生成部は、前記秘匿値生成部によって生成された秘匿値と秘匿比較値とが一致するか否かの応答データを生成する、
端末装置。
【請求項2】
前記ゲノムデータを記憶するゲノムデータ記憶部を更に備え、
前記秘匿値生成部は、前記ゲノムデータ記憶部にゲノムデータが記憶される際に、ゲノムデータに前記一方向性関数を適用して秘匿値を生成する、
請求項1に記載の端末装置。
【請求項3】
前記秘匿値生成部により生成された秘匿値を記憶する秘匿値記憶部を更に備え、
前記応答データ生成部は、前記秘匿値記憶部に記憶された秘匿値の中から、前記問い合わせに対応する秘匿値を読み出して、前記応答データを生成する、
請求項1または2に記載の端末装置。
【請求項4】
前記ゲノムデータを記憶するゲノムデータ記憶部を更に備え、
前記ゲノムデータ記憶部にゲノムデータが記憶されると、当該ゲノムデータの外部出力が禁止される、
請求項1~のいずれか一項に記載の端末装置。
【請求項5】
前記ゲノムデータ記憶部は、ハードウェア上の仕組みによりゲノムデータの外部出力が禁止されるように構成されている、
請求項に記載の端末装置。
【請求項6】
前記一方向性関数を更新する更新部と、
をさらに備え、
前記秘匿値生成部は、前記一方向性関数が更新されると、当該一方向性関数をゲノムデータに適用して秘匿値を生成し、生成した秘匿値を前記秘匿値記憶部に記憶させる、
請求項に記載の端末装置。
【請求項7】
記問い合わせは、前記ゲノムデータにおける特定の塩基の値に関する問い合わせであり、
前記受付部は、前記特定の塩基の値と比較される比較データを含む問い合わせを受け付け、
前記秘匿値生成部は、前記特定の塩基の値に前記一方向性関数を適用して秘匿値を生成し、前記比較データに前記一方向性関数を適用して秘匿比較値を生成し
前記応答データ生成部は、前記秘匿値生成部によって生成された秘匿値と秘匿比較値との比較結果に基づく応答データを生成する、
請求項1~のいずれか一項に記載の端末装置。
【請求項8】
記問い合わせは、前記ゲノムデータのうちの全塩基の値に関する問い合わせであり、
前記受付部は、前記全塩基のうちの各塩基の値と比較される各比較データを含む問い合わせを受け付け、
前記秘匿値生成部は、前記各塩基の値のそれぞれに前記一方向性関数を適用して各秘匿値を生成し、前記各比較データのそれぞれに前記一方向性関数を適用して各秘匿比較値を生成し、
前記応答データ生成部は、前記秘匿値生成部によって生成された各秘匿値と各秘匿比較値とが、それぞれ一致するか否かに応じて重み付けを行った値に基づいて、応答データを生成する、
請求項1~のいずれか一項に記載の端末装置。
【請求項9】
コンピューターが、
一以上の利用者のゲノムデータに関する問い合わせを受け付ける受付ステップと
前記ゲノムデータに一方向性関数を適用して秘匿値を生成する秘匿値生成ステップと
前記秘匿値生成ステップにおいて生成した秘匿値と、前記問い合わせの内容とに基づいて、前記問い合わせに対する応答データを生成する応答データ生成ステップと
前記応答データ生成ステップにおいて生成した応答データを出力する出力ステップと、
を含む処理を実行し、
前記ゲノムデータは、塩基配列に関するデータであり、
前記問い合わせは、前記ゲノムデータの所定位置における配列に関する問い合わせであり、
前記受付ステップでは、前記所定位置における配列と比較される比較データを含む問い合わせを受け付け、
前記秘匿値生成ステップでは、前記所定位置の配列を示す情報に前記一方向性関数を適用して秘匿値を生成し、前記比較データに前記一方向性関数を適用して秘匿比較値を生成し、
前記応答データ生成ステップでは、前記秘匿値生成ステップにおいて生成された秘匿値と秘匿比較値とが一致するか否かの応答データを生成する、
データ処理方法。
【請求項10】
コンピューターに、
一以上の利用者のゲノムデータに関する問い合わせを受け付ける受付処理と
前記ゲノムデータに一方向性関数を適用して秘匿値を生成する秘匿値生成処理と
前記秘匿値生成処理により生成された秘匿値と、前記問い合わせの内容とに基づいて、前記問い合わせに対する応答データを生成する応答データ生成処理と
前記生成した応答データを出力する処理と
を含む処理を実行させ、
前記ゲノムデータは、塩基配列に関するデータであり、
前記問い合わせは、前記ゲノムデータの所定位置における配列に関する問い合わせであり、
前記受付処理では、前記所定位置における配列と比較される比較データを含む問い合わせを受け付け、
前記秘匿値生成処理では、前記所定位置の配列を示す情報に前記一方向性関数を適用して秘匿値を生成し、前記比較データに前記一方向性関数を適用して秘匿比較値を生成し、
前記応答データ生成処理では、前記秘匿値生成処理において生成された秘匿値と秘匿比較値とが一致するか否かの応答データを生成する、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、端末装置、データ処理方法、及びプログラムに関する。
【背景技術】
【0002】
従来、様々な分野で、利用者固有の個人情報が管理されている。例えば、医療分野や医薬品の分野においては、遺伝的な特徴を推定するために、患者や被検者のゲノムデータが用いられる。特に、ゲノムデータは、機密性を最重要とした情報セキュリティを強固にして管理される。しかしながら、例えば、利用者自身のゲノムデータをそのまま用いて、利用者の遺伝的な特徴などの利用者が所望する内容を推定したとすると、ゲノムデータが外部に流出してしまうおそれがあり、すなわち、セキュリティを保持できないおそれがあった。可逆の暗号化関数で当該ゲノムデータを暗号化し、記録或いは通信授受した場合、暗号関数の危殆化や、コンピューターの計算能力或いは分散コンピューティングの進化に鑑み、恒久的な個人情報であるゲノムデータが復号され、当該利用者の一生涯に渡り、ゲノムデータが露呈するおそれがあった。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2018-503167号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の実施形態が解決しようとする課題は、機密性を要する利用者のデータのセキュリティを保持しつつ、当該データに基づく所望の内容を提示することができる端末装置、データ処理方法、及びプログラムを記憶した非一時的記憶媒体を提供することである。
【課題を解決するための手段】
【0005】
実施形態の端末装置は、受付部と、秘匿値生成部と、応答データ生成部と、出力部と、を持つ。受付部は、一以上の利用者のゲノムデータに関する問い合わせを受け付ける。秘匿値生成部は、前記ゲノムデータに一方向性関数を適用して秘匿値を生成する。応答データ生成部は、前記秘匿値生成部により生成された秘匿値と、前記問い合わせの内容とに基づいて、前記問い合わせに対する応答データを生成する。出力部は、前記応答データ生成部によって生成された前記応答データを出力する。前記ゲノムデータは、塩基配列に関するデータである。前記問い合わせは、前記ゲノムデータの所定位置における配列に関する問い合わせである。前記受付部は、前記所定位置における配列と比較される比較データを含む問い合わせを受け付ける。前記秘匿値生成部は、前記所定位置の配列を示す情報に前記一方向性関数を適用して秘匿値を生成し、前記比較データに前記一方向性関数を適用して秘匿比較値を生成する。前記応答データ生成部は、前記秘匿値生成部によって生成された秘匿値と秘匿比較値とが一致するか否かの応答データを生成する。
【図面の簡単な説明】
【0006】
図1】本実施形態に係る封緘システム1の全体構成の一例を示す図。
図2】本実施形態に係る封緘システム1の機能ブロックの構成を示す概略ブロック図。
図3】秘匿値記憶部106に記憶される利用者データテーブル70の一例を示す図。
図4】クライアント装置20に記憶されている問い合わせ内容テーブル80の一例を示す図。
図5】ゲノムデータを登録する処理の一例を示すフローチャート。
図6】単一の塩基配列を用いた応答データの生成の一例を示す図。
図7】単一の塩基配列を用いて応答データを生成する処理の一例を示すフローチャート。
図8】一塩基多型を用いたゲノムワイド関連解析の解析結果の一例を示す図。
図9】一塩基多型を用いたゲノムワイド関連解析に基づく応答データの生成の一例を示す図。
図10】一塩基多型を用いたゲノムワイド関連解析に基づいて応答データを生成する処理の一例を示すフローチャート。
図11】ポリジェネリックスコアの一例を示す図。
図12】ポリジェニックスコアに基づく応答データの生成の一例を示す図。
図13】ポリジェニックスコアに基づいて応答データを生成する処理の一例を示すフローチャート。
図14】利用者種別ごとの問い合わせの態様の一例を示す図。
図15】ブロック化した塩基配列の一例を示す図。
図16】利用者間の遺伝的な特徴の比較結果に基づく応答データの生成の一例を示す図。
図17】利用者間の遺伝的な特徴の比較結果に基づいて応答データを生成する処理の一例を示すフローチャート。
図18】本実施形態に係る封緘システム2の機能ブロックの構成を示す概略ブロック図。
【発明を実施するための形態】
【0007】
以下、実施形態の端末装置、データ処理方法、及びプログラムを、図面を参照して説明する。
【0008】
(第1の実施形態)
図1は、本実施形態に係る封緘システム1の全体構成の一例を示す図である。封緘システム1は、セキュリティデータ封緘デバイス10と、クライアント装置20と、を備える。セキュリティデータ封緘デバイス10と、クライアント装置20とは、ネットワーク30を介して互いに通信する。ネットワーク30は、例えば、インターネット、WAN(Wide Area Network)、LAN(Local Area Network)、セルラー網、Wi-Fi(登録商標)、Bluetooth(登録商標)、NFC(Near field communication)、赤外線通信、ボディエリアネットワークなどを含む。
【0009】
セキュリティデータ封緘デバイス10-1~10-vは、例えば、それぞれ異なる利用者が所有するものである。また、クライアント装置20-1~20-wについても、それぞれ異なる利用者が所有するものである。セキュリティデータ封緘デバイス10-1~10-vと、クライアント装置20-1~20-wとは、1対1で対応していてもよい。さらには、セキュリティデータ封緘デバイス10-1~10-vと、クライアント装置20-1~20-wの利用者は一致しない形態でもよい。例えば、クライアント装置20-1~20-wは、健康診断受診者や患者のセキュリティデータ封緘デバイス10-1~10-vに、接触或いは非接触通信でアクセスする、医療機関のセキュリティデータ封緘デバイス接続端末でもよい。
【0010】
なお、以下の説明において、共通の事項を説明する場合など、個々のセキュリティデータ封緘デバイス10-1~10-vを区別しない場合には、セキュリティデータ封緘デバイス10-1~10-vを、単にセキュリティデータ封緘デバイス10と称する。また、クライアント装置20-1~20-wについても、同様に、単にクライアント装置20と称する。
【0011】
セキュリティデータ封緘デバイス10は、端末装置の一例である。セキュリティデータ封緘デバイス10は、例えば、可搬型のコンピューター装置である。セキュリティデータ封緘デバイス10は、専用のコンピューター装置であってもよいし、所定のアプリケーションソフトウェア(以下、「アプリ」という)をインストールすることが可能なスマートフォンやタブレット装置など汎用性のあるコンピューター装置であってもよい。セキュリティデータ封緘デバイス10は、UIM(User Identity Module)形状で、スマートフォンやタブレット装置に離脱着可能な接続する形態でもよい。クライアント装置20は、スマートフォン、タブレット装置、パーソナルコンピューター、ノートパソコン、施設据付端末などのコンピューター装置である。クライアント装置20には、所定のアプリがインストールされている。
【0012】
図2は、本実施形態に係る封緘システム1の機能ブロックの構成を示す概略ブロック図である。セキュリティデータ封緘デバイス10は、デバイス通信部101と、認証処理部102と、データ登録部103と、ゲノムデータ記憶部104と、秘匿値生成部105と、秘匿値記憶部106と、応答データ生成部107とを備える。
【0013】
デバイス通信部101は、通信インターフェースである。デバイス通信部101は、ネットワーク30を介して、クライアント装置20と通信する。デバイス通信部101は、例えば、クライアント装置20との間で近距離通信を行うことも可能である。デバイス通信部101は、クライアント装置20の認証に用いられる認証データや、クライアント装置20から受け付けた利用者のゲノムデータに関する問い合わせの内容や、初期登録時における利用者のゲノムデータの原本データを受信する。
【0014】
ゲノムデータは、塩基配列に関するデータを含む。利用者のゲノムデータに関する問い合わせは、例えば、利用者の遺伝的な特徴についての問い合わせである。具体的には、利用者のゲノムデータに関する問い合わせは、利用者の、体質、性格、能力、疾患(例えば、喘息、不安症、糖尿病、癌、認知症など)に対するリスクなどについての問い合わせである。より具体的には、利用者のゲノムデータに関する問い合わせは、ゲノムデータの所定位置における配列に関する問い合わせや、ゲノムデータにおける特定の塩基または全塩基の値に関する問い合わせである。なお、本実施形態ではゲノムデータを原本データとして記憶する場合について説明するが、原本データは、ゲノムデータに限らず、数字や記号が配列された個人情報(利用者データ)であってもよい。
【0015】
また、本実施形態では、利用者のゲノムデータに関する問い合わせの内容や認証データは、デバイス通信部101からの受信によって受け付けることとするが、これに限らず、利用者からの入力によって受け付けてもよい。具体的には、セキュリティデータ封緘デバイス10が有する不図示の表示部に、問い合わせ可能な内容や認証データの入力画面を表示し、利用者の選択に応じて、利用者のゲノムデータに関する問い合わせの内容や認証データを受け付けてもよい。なお、デバイス通信部101は、受付部および出力部の一例である。
【0016】
認証処理部102と、データ登録部103と、秘匿値生成部105と、応答データ生成部107とは、例えば、CPU(Central Processing Unit)などのハードウェアプロセッサがプログラム(ソフトウェア)を実行することにより実現される。これらの構成要素のうち一部または全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、GPU(Graphics Processing Unit)などのハードウェア(回路部;circuitryを含む)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予めHDD(Hard Disk Drive)やフラッシュメモリなどの記憶装置(非一過性の記憶媒体を備える記憶装置)に格納されていてもよいし、DVDやCD-ROMなどの着脱可能な記憶媒体(非一過性の記憶媒体)に格納されており、記憶媒体がドライブ装置に装着されることでインストールされてもよい。プログラムは、非一時的に記憶するストレージに記憶されていてもよい。プロセッサが記憶部110に記憶されているプログラムを実行することによって、セキュリティデータ封緘デバイス10の機能が実現される。
【0017】
次に、原本データの初期登録について説明する。デバイス通信部101は、クライアント装置20から認証データやゲノムデータを受信すると、受信したデータを認証処理部102へ出力する。認証処理部102は、デバイス通信部101から出力された認証データを用いて認証を行う。認証データは、ゲノムデータの発行主体であることを示すデータや、利用者のID(Identification)やパスワードを含む。ここで、認証データには、当該利用者の本人認証を行うための生体認証データを含んでもよい。
【0018】
認証処理部102は、ゲノムデータの発行主体であることを示すデータを用いた発行主体の正当性の判定や、利用者のIDやパスワードの正当性の判定を行う。認証処理部102は、当該2つの判定のいずれもが肯定判定である場合に、認証に成功したと判定する。
【0019】
一方、認証処理部102は、当該2つの判定のうちの少なくともいずれか一方が否定判定である場合には、認証に失敗したと判定する。認証に失敗した場合、認証処理部102は、認証に失敗した旨を示す情報を、デバイス通信部101へ出力する。なお、認証に失敗した旨を示す情報には、認証に失敗した理由を含めてもよい。認証に失敗した理由は、例えば、当該2つの判定のうちのいずれが否定判定となったのかを示す内容である。デバイス通信部101は、認証処理部102から出力された、認証に失敗した旨を示す情報(エラー情報)をクライアント装置20へ送信する。そして、クライアント装置は、認証に失敗した旨を表示する。
【0020】
なお、認証処理部102による認証は、原本データの初期登録時においてのみ行われることとするが、これに限らず、その後に行われるゲノムデータに関する問い合わせがあったときにも行われてもよい。その際、認証データに含まれる生体認証データを用いて、当該セキュリティデータ封緘デバイスの所有者か否かを確認する本人認証の判定を行う形態でもよい。
【0021】
認証処理部102は、認証に成功した場合、利用者のIDや原本データをデータ登録部103へ送信する。
【0022】
データ登録部103は、ゲノムデータ記憶部104に利用者のIDおよび原本データが記憶されていない場合に、認証処理部102から出力された利用者のIDおよび原本データをゲノムデータ記憶部104に記憶させる。一方で、データ登録部103は、ゲノムデータ記憶部104に利用者のIDおよび原本データが記憶されている場合には、利用者のIDおよび原本データをゲノムデータ記憶部104に記憶させない。すなわち、ゲノムデータ記憶部104にゲノムデータが記憶されていない場合に限って、データ登録部103からの書き込みが有効になるように設定されている。
【0023】
このため、ゲノムデータ記憶部104は、1人の利用者のゲノムデータのみを記憶する。ただし、ゲノムデータ記憶部104は、複数人の利用者のゲノムデータを記憶してもよい。この場合、同一人のゲノムデータが既に記憶されている場合にはゲノムデータの書き込みを無効とし、異なる利用者のゲノムデータ(未登録のゲノムデータ)についてはゲノムデータの書き込みを有効にすればよい。なお、ゲノムデータは、各利用者のIDに対応付けて記憶されればよい。また、本実施形態において、ゲノムデータ記憶部104は、セキュリティデータ封緘デバイス10に設けられているが、これに限らず、例えば、外部のサーバーなど、外部の装置に設けられていてもよい。
【0024】
ゲノムデータ記憶部104は、磁気ハードディスク装置や半導体記憶装置等の記憶装置である。ゲノムデータ記憶部104に一度記憶された原本データは、その後、外部出力(読み出し)が禁止される。例えば、ゲノムデータ記憶部104は、ハードウェア上の仕組みにより原本データの外部出力が禁止されるように構成されている。具体的には、ゲノムデータ記憶部104には、データ登録部103のみが接続可能に配線されており、データ登録部103のみがゲノムデータ記憶部104へ書き込み可能となっている。
【0025】
また、ゲノムデータ記憶部104は、データ登録部103を含む全ての機能部からの読み取りが不可能になっている。なお、データ登録部103以外の機能部についてもゲノムデータ記憶部104に接続可能に配線されていてもよい。ただし、この場合でも、データ登録部103のみがゲノムデータ記憶部104へアクセスする権限を有していればよく、また、ゲノムデータ記憶部104に記憶された原本データの外部出力(読み出し)が禁止されていればよい。
【0026】
また、データ登録部103は、ゲノムデータ記憶部104へ原本データを記憶させると、IDと、原本データのうちの一部(または全て)のデータである抽出データXとを、秘匿値生成部105へ出力する。抽出データXは、利用者の遺伝的な特徴を推定するためのデータである。具体的には、抽出データXは、ゲノムデータにおける所定位置の配列を示す情報や、ゲノムデータにおける特定の塩基(または全塩基)の値(影響力の強さ)を含む。
【0027】
秘匿値生成部105は、データ登録部103から出力された抽出データXの秘匿値として、秘匿関数値F(X)を生成する。秘匿関数値F(X)の生成においては、不可逆な一方向性関数が用いられる。秘匿値生成部105は、複数のデータ列から成る抽出データXに、それぞれ同一の一方向性関数を適用して、秘匿関数値F(X)を生成する。ただし、抽出データXに含まれる複数のデータ列に、それぞれに異なる一方向性関数を適用してもよい。
【0028】
ここで、例えば、アルコールの耐性についての問い合わせに備えて、応答データ生成部107は、アルコールの耐性の判別において着目されるデータ位置pの配列を示す情報xの秘匿関数値f(x)を生成する。また、例えば、喘息などの疾患についての問い合わせに備えて、応答データ生成部107は、抽出データXに含まれる複数(例えばk個)の塩基の値のそれぞれに一方向性関数を適用して各秘匿関数値f(x)、f(x)、…、f(x)を生成する。なお、kは、ゲノムデータのうちの全塩基分の数でもよいし、利用者の遺伝的な特徴を推定する際に着目される特定の塩基の数でもよい。
【0029】
秘匿値生成部105は、生成した秘匿関数値F(X)と、データ登録部103から出力されたIDとを対応付けて、秘匿値記憶部106に記憶させる。また、秘匿値生成部105は、各データ位置pの情報xごとに異なる一方向性関数fを適用して秘匿関数値f(x)を生成した場合には、各データ位置pと、各情報xに適用した各一方向性関数fとを対応付けて、秘匿値記憶部106に記憶させればよい。秘匿値記憶部106に記憶されるデータの一例については、図3を用いて後述する。
【0030】
なお、秘匿値生成部105は、ゲノムデータの初期登録時に秘匿関数値F(X)を生成して、秘匿値記憶部106に記憶させることとするが、これに限らない。例えば、秘匿値生成部105は、秘匿値記憶部106に秘匿関数値F(X)を記憶させずに、問い合わせの都度、秘匿関数値F(X)を生成するようにしてもよい。この場合、セキュリティデータ封緘デバイス10は、原本データの一部のデータであり且つ問い合わせに備えたデータを、原本データの初期登録の際に記憶する一部データ記憶部(不図示)を備えることとしてもよい。そして、秘匿値生成部105は、問い合わせがあったタイミングで、一部データ記憶部を参照し、当該一部のデータの秘匿関数値F(X)を生成すればよい。
【0031】
秘匿値記憶部106は、磁気ハードディスク装置や半導体記憶装置等の記憶装置である。秘匿値記憶部106は、ゲノムデータ記憶部104とは異なり、記憶された情報(秘匿関数値F(X))の外部出力(読み出し)が可能である。また、秘匿値記憶部106に秘匿関数値F(X)が記憶されている場合でも、秘匿値生成部105による書き込みも可能である。なお、秘匿値記憶部106は、セキュリティデータ封緘デバイス10に設けられることに限らず、例えば、外部のサーバーなど、外部の装置に設けられていてもよい。
【0032】
秘匿値生成部105は、IDおよび秘匿関数値F(X)を秘匿値記憶部106に記憶させると、登録処理が成功した旨を示す情報をデータ登録部103に出力する。登録処理が成功した旨を示す情報は、データ登録部103およびデバイス通信部101を介して、クライアント装置20へ送信される。そして、クライアント装置20は、登録処理が成功した旨を表示する。
【0033】
次に、ゲノムデータに関する問い合わせについて説明する。デバイス通信部101は、クライアント装置20から問い合わせの内容を受信すると、受信した内容を応答データ生成部107へ出力する。
【0034】
応答データ生成部107は、デバイス通信部101から出力された問い合わせの内容を秘匿値生成部105へ出力する。問い合わせの内容には、比較データが含まれる。比較データは、例えば、ゲノムデータの所定位置における配列と比較されるデータを含む。所定位置における配列は、例えば、問い合わせの内容をアルコールの耐性とした場合、アルコールの耐性の有無の判別において着目されるデータ位置pにおける配列である。また、比較データは、アルコールの耐性を有することを示す配列(またはアルコールの耐性を有しないことを示す配列)を示す比較用のデータである。
【0035】
また、比較データは、ゲノムデータにおける特定の塩基と比較されるデータを含む。特定の塩基は、例えば、問い合わせの内容を「喘息のリスク」とした場合、「喘息のリスク」の判別において着目される複数の塩基である。また、比較データは、各塩基において喘息のリスクがあること(または喘息のリスクがないこと)を示す比較用の値である。
【0036】
また、問い合わせの内容は、ゲノムデータにおける全塩基の値と比較される各比較データを含む。全塩基は、例えば、問い合わせの内容を「不安症のリスク」とした場合、「不安症のリスク」の判別において着目される全塩基である。また、各比較データは、各塩基において不安症のリスクがあること(または不安症のリスクがないこと)を示す比較用の値である。
【0037】
また、秘匿値生成部105は、問い合わせの内容に含まれる比較データYに一方向性関数を適用して、秘匿された秘匿比較値F(Y)を生成する。秘匿比較値F(Y)の生成では、秘匿関数値F(X)の生成に用いられた一方向性関数と同じ関数が用いられる。比較データYが複数の比較データyを含む場合、秘匿値生成部105は、各比較データyのそれぞれに一方向性関数を適用して各秘匿比較値f(y)、f(y)、…、f(y)を生成する。ここで、各データ位置pの情報xごとに異なる一方向性関数fを適用して秘匿関数値f(x)が生成することも可能であり、この場合には、秘匿値記憶部106は、各データ位置pと、情報xに適用した各一方向性関数fとを対応付けて記憶する。また、この場合、秘匿値生成部105は、データ位置pに対応付けられて記憶されている一方向性関数を、比較データyのうちのデータ位置pの比較データyに適用して、秘匿比較値f(y)を生成すればよい。秘匿値生成部105は、秘匿比較値F(Y)を生成すると、生成した秘匿比較値F(Y)を応答データ生成部107へ出力する。
【0038】
応答データ生成部107は、秘匿値記憶部106に記憶されている秘匿関数値F(X)と、秘匿値生成部105から出力された秘匿比較値F(Y)とに基づいて、問い合わせに対する応答データを生成する。応答データは、例えば、秘匿関数値F(X)と秘匿比較値F(Y)とが一致するか否かを示すデータである。例えば、アルコールの耐性を判定する場合には、応答データは、アルコールの判別において着目されるデータ位置pの配列を示す情報xの秘匿関数値f(x)と、データ位置pの配列を示す比較データyの秘匿比較値f(y)とが一致するか否かを示すデータである。応答データ生成部107は、秘匿関数値f(x)と秘匿比較値f(y)とが一致した場合に、「アルコールの耐性あり」を示す応答データを生成し、一致しない場合に「アルコールの耐性なし」を示す応答データを生成する。
【0039】
また、応答データは、秘匿関数値F(X)と秘匿比較値F(Y)との比較結果に基づく応答データである。例えば、問い合わせの内容を「喘息のリスク」とし、「喘息のリスク」の判別において着目される特定の塩基の数が、例えばs個であるとする。この場合、応答データ生成部107は、各秘匿値f(x)、f(x)、…、f(x)と、各秘匿比較値f(y)、f(y)、…、f(y)とについてそれぞれの一致した数(一致度合い)や一致した割合(一致率)などの応答データを生成する。
【0040】
また、問い合わせの内容を「不安症のリスク」とし、「不安症のリスク」の判別において着目される全塩基の数が例えばt個であるとする。この場合、応答データ生成部107は、各秘匿値f(x)、f(x)、…、f(x)と、各秘匿比較値f(y)、f(y)、…、f(y)とが、それぞれ一致するか否かに応じて重み付けを行った値に基づく応答データである。重み付けを行った値に基づく応答データは、例えば、各秘匿値f(x)、f(x)、…、f(x)と、各秘匿比較値f(y)、f(y)、…、f(y)とについて、それぞれが一致した場合に、重み付けを行うことによって得られる累計値である。重み付けは、例えば、所定数の加算や所定数の乗算である。
【0041】
なお、上述した説明では、応答データ生成部107による応答データの生成において用いる秘匿関数値F(X)は、秘匿値記憶部106に記憶されている秘匿関数値F(X)としたが、これに限らない。例えば、外部の装置で生成された秘匿関数値F(X)を用いることも可能である。また、利用者からの問い合わせの都度、秘匿値生成部105が秘匿関数値F(X)を生成するようにした場合、応答データ生成部107は、秘匿値生成部105によってその都度生成された秘匿関数値F(X)を用いてもよい。
【0042】
また、セキュリティをより向上させるという観点から、一方向性関数を適宜更新するようにしてもよい。具体的には、セキュリティデータ封緘デバイス10は、一方向性関数を更新する不図示の更新部を備えていてもよい。秘匿値生成部105は、更新部によって一方向性関数が更新されると、当該一方向性関数をゲノムデータに適用して秘匿関数値F(X)を生成し、生成した秘匿関数値F(X)を秘匿値記憶部106に記憶させればよい。
【0043】
この場合、セキュリティデータ封緘デバイス10は、原本データの初期登録の際に、原本データの一部のデータであり且つ更新が見込まれるデータを記憶する更新用データ記憶部(不図示)を備えることとしてもよい。そして、秘匿値生成部105は、更新用データ記憶部を参照し、当該一部のデータに、更新された一方向性関数を適用して、秘匿関数値F(X)を生成(更新)してもよい。
【0044】
また、秘匿値生成部105による秘匿関数値F(X)の生成(更新)において、更新用データ記憶部を参照することに限らず、ゲノムデータ記憶部104を参照してもよい。具体的には、更新部によって一方向性関数が更新された場合に限って、秘匿値生成部105が、ゲノムデータ記憶部104にアクセス可能としてもよい。この場合、秘匿値生成部105は、ゲノムデータ記憶部104の中から更新対象のデータを抽出して、抽出したデータに、更新された一方向性関数を適用して、秘匿関数値F(X)を生成してもよい。
【0045】
また、ゲノムの解析技術の進歩などに応じて、問い合わせの内容のバリエーションの増加が見込めるという観点から、秘匿値記憶部106に記憶される秘匿関数値F(X)についても更新可能としてもよい。この場合、例えば、デバイス通信部101は、外部の装置から、更新情報を受信する。更新情報には、原本データのうちの対象となるデータ位置の情報が含まれる。また、データ位置ごとに異なる一方向性関数が適用される場合には、更新情報には、各データ位置に対応する一方向性関数の情報が含まれていてもよい。このため、秘匿値生成部105は、デバイス通信部101が更新情報を受信した場合に限って、ゲノムデータ記憶部104にアクセス可能としてもよい。具体的には、秘匿値生成部105は、更新情報に基づいて、ゲノムデータ記憶部104の中から新たなデータを抽出して、抽出したデータに一方向性関数を適用して、新たな秘匿関数値F(X)を生成すればよい。
【0046】
秘匿値生成部105がゲノムデータ記憶部104にアクセスするには、秘匿値生成部105とゲノムデータ記憶部104とが接続されており、且つ、更新のタイミングで秘匿値生成部105がゲノムデータ記憶部104にアクセス可能に設定されていればよい。
【0047】
図3は、秘匿値記憶部106に記憶される利用者データテーブル70の一例を示す図である。利用者データテーブル70は、利用者IDごとに、抽出データと、データ位置と、秘匿関数値F(X)とを対応付けたデータテーブルである。利用者IDは、利用者を識別するための識別情報である。抽出データは、原本データのうち、利用者の遺伝的な特徴を推定する際に着目される一部または全てのデータである。
【0048】
データ位置は、塩基配列されている原本データのうちの抽出データの位置(例えば、遺伝子座やReference SNP ID Number:RSID)である。秘匿関数値F(X)は、抽出データに一方向性関数を適用した秘匿値である。なお、抽出データや秘匿関数値F(X)は、利用者の遺伝的な特徴を推定する対象に応じて異なるが(データ位置の配列を示す情報と、塩基の値とで異なるが)、説明の便宜上、図3では、同様のものとする。また、各データ位置の抽出データごとに異なる一方向性関数を適用して秘匿関数値を生成する場合には、利用者データテーブル70は、各データ位置の抽出データに適用した一方向性関数についても、抽出データと、データ位置と、秘匿関数値F(X)とに対応付けて記憶しておけばよい。
【0049】
図4は、クライアント装置20に記憶されている問い合わせ内容テーブル80の一例を示す図である。図4に示すように、問い合わせ内容テーブル80は、推定対象と、比較データと、データ位置とを対応付けたデータテーブルである。推定対象は、利用者が所望する、利用者の遺伝的な特徴である。比較データは、推定対象に応じた判定用のデータである。データ位置は、塩基配列される原本データのうちの比較データの位置(例えば、遺伝子座)を示す。クライアント装置20は、所定のアプリがインストールされることにより、問い合わせ内容テーブル80を記憶する。
【0050】
図5は、ゲノムデータを登録する処理の一例を示すフローチャートである。図5において、セキュリティデータ封緘デバイス10は、クライアント装置20から、デバイス通信部101が初期登録の要求を受信したか否かを判定する(ステップS101)。セキュリティデータ封緘デバイス10は、デバイス通信部101が初期登録の要求を受信するまで待機する(ステップS101:NO)。デバイス通信部101が初期登録の要求を受信すると(ステップS101:YES)、認証処理部102は、初期登録の要求に含まれる認証データを用いて、認証を行う(ステップS102)。
【0051】
認証に失敗すると(ステップS103:NO)、セキュリティデータ封緘デバイス10は、デバイス通信部101からエラー情報をクライアント装置20へ送信し(ステップS104)、そのまま処理を終了する。一方、認証に成功すると(ステップS103:YES)、データ登録部103は、ゲノムデータ記憶部104にゲノムデータが記憶されているか否かを示す封緘フラグを参照し、ゲノムデータが封緘されているか否かを判定する(ステップS105)。ゲノムデータが既に封緘されている場合(ステップS105:NO)、具体的には、封緘フラグが「1(オン)」の場合、セキュリティデータ封緘デバイス10は、そのまま処理を終了する。
【0052】
一方、ゲノムデータが未封緘の場合(ステップS105:YES)、具体的には、封緘フラグが「0(オフ)」の場合、データ登録部103は、ゲノムデータ記憶部104に原本データを記憶させる(ステップS106)。そして、データ登録部103は、原本データの一部(または全部)を抽出する(ステップS107)。次に、秘匿値生成部105は、原本データの一部(または全部)を一方向性関数に適用して秘匿関数値F(X)を生成する(ステップS108)。
【0053】
そして、秘匿値生成部105は、秘匿関数値F(X)を含む利用者データを秘匿値記憶部106に記憶させる(ステップS109)。そして、セキュリティデータ封緘デバイス10は、デバイス通信部101から処理結果をクライアント装置20へ送信し、処理を終了する(ステップS110)。
【0054】
次に、単一の塩基配列を用いた一致判定に基づいて、利用者の遺伝的な特徴を推定する場合について説明する。
【0055】
図6は、単一の塩基配列を用いた応答データの生成の一例を示す図である。図7は、単一の塩基配列を用いて応答データを生成する処理の一例を示すフローチャートである。図6において、クライアント装置20は、利用者の操作により所定のアプリが起動し、利用者から問い合わせの内容が選択されたとする。例えば、利用者自身がお酒に強い体質であるか否か(アルコールの耐性)の問い合わせの内容が選択されたとする。この場合、クライアント装置20は、アルコールの耐性の推定に用いられる塩基配列の位置を示すデータ位置の情報(adr)と、データ位置における比較データyadrとを、セキュリティデータ封緘デバイス10に送信する。
【0056】
すると、図7に示すように、セキュリティデータ封緘デバイス10は、クライアント装置20から、デバイス通信部101が問い合わせの内容を受信したか否かを判定する(ステップS121)。問い合わせの内容には、データ位置(adr)の情報と、データ位置における比較データyadrとが含まれる。セキュリティデータ封緘デバイス10は、デバイス通信部101が問い合わせ内容を受信するまで待機する(ステップS121:NO)。
【0057】
デバイス通信部101が問い合わせ内容を受信すると(ステップS121:YES)、応答データ生成部107は、秘匿値記憶部106の利用者データテーブル70(図3)を参照し、秘匿関数値F(X)の中から、指定されたデータ位置(adr)に対応する秘匿関数値f(xadr)を選択する(ステップS122)。そして、秘匿値生成部105は、問い合わせの内容に含まれる比較データyadrに一方向性関数を適用して、秘匿比較値f(yadr)を生成する(ステップS123)。
【0058】
次いで、応答データ生成部107は、秘匿関数値f(xadr)と、秘匿比較値f(yadr)とが一致するか否かを示す応答データを生成する(ステップS124)。そして、セキュリティデータ封緘デバイス10は、デバイス通信部101から応答データをクライアント装置20へ送信し、処理を終了する(ステップS125)。これにより、図6に示すように、クライアント装置20は、問い合わせに対する応答データを利用者に提示することができる。
【0059】
次に、一塩基多型を用いたゲノムワイド関連解析に基づいて、利用者の遺伝的な特徴として疾患に対するリスク(危険性)を推定する場合について説明する。一塩基多型は、個体間においてゲノムの塩基配列上の一塩基の異なる現象をいう。ゲノムワイド関連解析は、一塩基多型(SNP:single nucleotide polymorphism)の遺伝子型を用いて、主にSNPの頻度(遺伝子型等)と疾患等との関連を統計的に調べる解析方法である。
【0060】
図8は、一塩基多型を用いたゲノムワイド関連解析の解析結果の一例を示す図である。図8において、横軸は、一塩基多型(SNP:Single Nucleotide Polymorphism)が存在する染色体上の位置(染色体番号)を示す。縦軸は、疾患(例えば、喘息)の関連の強さを示す値である。図8に示す、CRP(C-reactive protein)遺伝子、IL6遺伝子(インターロイキン:interleukin-6)およびIKZF4(IKAROS family zinc finger 4)遺伝子は、いずれも、喘息に関連する遺伝子を示す。
【0061】
なお、CRP遺伝子は、炎症反応の強さに相関する値であり、炎症の指標を示す遺伝子である。また、IL6遺伝子は、CRPの値の個人差に関連する遺伝子である。IKZF4遺伝子は、特定の細胞の分化に働く遺伝子である。
【0062】
図9は、一塩基多型を用いたゲノムワイド関連解析に基づく応答データの生成の一例を示す図である。図10は、一塩基多型を用いたゲノムワイド関連解析に基づいて応答データを生成する処理の一例を示すフローチャートである。図9において、クライアント装置20は、利用者の操作により所定のアプリが起動し、利用者から問い合わせの内容が選択されたとする。例えば、利用者自身の疾患(例えば喘息)のリスクについての問い合わせの内容が選択されたとする。この場合、クライアント装置20は、喘息のリスクについての推定に用いられる塩基配列の位置(染色体番号)を示すデータ位置(adr(i=1~k))の情報と、各データ位置におけるk個の各比較データyとを、セキュリティデータ封緘デバイス10に送信する。
【0063】
すると、図10に示すように、セキュリティデータ封緘デバイス10は、クライアント装置20から、デバイス通信部101が問い合わせの内容を受信したか否かを判定する(ステップS141)。問い合わせの内容には、複数(k個)のデータ位置(染色体番号)の情報(adr)と、k個の比較データyとが含まれる。セキュリティデータ封緘デバイス10は、デバイス通信部101が問い合わせ内容を受信するまで待機する(ステップS141:NO)。
【0064】
デバイス通信部101が問い合わせ内容を受信すると(ステップS141:YES)、応答データ生成部107は、秘匿値記憶部106の利用者データテーブル70(図3参照)を参照し、秘匿関数値F(X)の中から、複数(k個)の指定されたデータ位置群(adr)のそれぞれに応じたk個の秘匿関数値f(x)を選択する(ステップS142)。そして、秘匿値生成部105は、問い合わせの内容に含まれるk個の比較データyにそれぞれ一方向性関数を適用して、秘匿比較値f(y)を生成する(ステップS143)。
【0065】
次いで、応答データ生成部107は、データの個数およびデータ位置に対応するi(1~kのいずれかの値)に「1」を設定する(ステップS144)。そして、応答データ生成部107は、秘匿関数値f(x)と、秘匿比較値f(y)とを比較し(ステップS145)、秘匿関数値f(x)と、秘匿比較値f(y)とが一致するか否かを判定する(ステップS146)。秘匿関数値f(x)と、秘匿比較値f(y)とが一致しない場合(ステップS146:NO)、ステップS148に進む。秘匿関数値f(x)と、秘匿比較値f(y)とが一致する場合(ステップS146:YES)、応答データ生成部107は、比較結果に「1」を加算する(ステップS147)。
【0066】
そして、応答データ生成部107は、i=kであるか否かを判定する(ステップS148)。i=kではない場合(ステップS148:NO)、応答データ生成部107は、iをインクリメントし(ステップS149)、ステップS145に戻る。i=kの場合(ステップS148:YES)、応答データ生成部107は、比較結果の総和を用いて応答データを生成する(ステップS150)。応答データは、秘匿関数値f(x)と秘匿比較値f(y)とビット比較し、一致した個数mとしてもよいし、一致した個数mを総数kで除算した一致率m/kとしてもよい。
【0067】
そして、セキュリティデータ封緘デバイス10は、デバイス通信部101から応答データをクライアント装置20へ送信し、処理を終了する(ステップS151)。これにより、図9に示すように、クライアント装置20は、問い合わせに対する応答データを利用者に提示することができる。
【0068】
次に、ポリジェネリックスコアに基づいて、利用者の遺伝的な特徴として、疾患に対するリスク(危険性)を推定する場合について説明する。ポリジェニックスコアは、一般的な疾患の場合には小さな効果(影響力)をもつ多数の遺伝子座が疾患に関与しているという仮説を前提とし、全ゲノムの解析結果を用いて個々の多型に重み付けをして、ゲノム全体での分析を行う解析手法である。
【0069】
図11は、ポリジェネリックスコアの一例を示す図である。図11において、横軸は、図8と同様に、一塩基多型(SNP)が存在する染色体上の位置(染色体番号)を示す。縦軸についても、図8と同様に、疾患の関連(影響力)の強さを示す値である。図11に示すように、ポリジェニックスコアは、個々の遺伝子多型に重み付けをし、それぞれの和を算出することによって、遺伝子多型の全体を用いて得られる値である。
【0070】
図12は、ポリジェニックスコアに基づく応答データの生成の一例を示す図である。図13は、ポリジェニックスコアに基づいて応答データを生成する処理の一例を示すフローチャートである。なお、図13の処理は、図10の処理と比較して、ステップS167の処理や、比較するデータの数が全データ数(m個)である点で異なる。図13についての説明では、図10の処理と異なる点について説明する。
【0071】
図12において、クライアント装置20は、利用者の操作により所定のアプリが起動し、利用者から問い合わせの内容が選択されたとする。例えば、利用者自身の疾患(例えば、不安症)のリスクについての問い合わせの内容が選択されたとする。この場合、クライアント装置20は、問い合わせに対するリスクの推定に用いられる塩基配列の位置(染色体番号)を示すデータ位置の情報(adr)と、データ位置における比較データyadrとを、セキュリティデータ封緘デバイス10に送信する。
【0072】
ステップS141:図13に示すように、セキュリティデータ封緘デバイス10は、クライアント装置20から、デバイス通信部101が問い合わせの内容を受信する(ステップS141:YES)。問い合わせの内容には、複数(m個)のデータ位置(染色体番号)の情報(adr(j=1~m))と、各データ位置におけるm個の比較データYと、各データ位置の重みα(j=1~m)が含まれる。なお、図4に示した問い合わせ内容テーブル80において、重みαについては、図示していない。
【0073】
ステップS167:応答データ生成部107は、秘匿関数値f(x)と、秘匿比較値f(y)とが一致する場合(ステップS146:YES)、比較結果に「α」を加算し、ステップS148に進む。
【0074】
図13に示す処理により、図12に示すように、クライアント装置20は、問い合わせに対する応答データを利用者に提示することができる。
【0075】
次に、本実施形態では、問い合わせ内容などの問い合わせの態様が利用者種別ごとに異なるが、この点について、以下に説明する。
【0076】
図14は、利用者種別ごとの問い合わせの態様の一例を示す図である。図14において、利用者種別ごとの問い合わせの態様の一覧90は、利用者種別と、問い合わせの態様とを対応付けた表である。利用者種別は、医療従事者と、一般サービスとのいずれかを示す。医療従事者は、例えば、医師、看護士、薬剤師、医療研究者などである。一般サービスは、例えば、医療従事者以外の一般利用者である。各利用者種別は、利用者本人自身の認証も含め、クライアント装置20からの認証データを入力として、セキュリティデータ封緘デバイス10内にある、認証処理部102で判定する。利用者種別の判定には、ID・パスワードや生体認証、利用者種別ごとの共通認証コード、利用者種別のメンバであることを示すグループ署名を用いたグループ認証といった、複数の認証技術を用いて構成してよい。問い合わせの態様は、シーン1と、シーン2と、シーン3と、連続要求数と、コマンド受信復帰時間とを含む。
【0077】
シーン1は、単一の塩基配列を用いて、利用者の遺伝的な特徴を推定する態様を示す。シーン2は、一塩基多型を用いたゲノムワイド関連解析の解析結果を用いて、利用者の遺伝的な特徴を推定する態様を示す。シーン3は、ポリジェネリックスコア値を用いて、利用者の遺伝的な特徴を推定する態様を示す。連続質問要求数は、連続して受け付けることが可能な問い合わせの数である。コマンド受信復帰時間は、問い合わせをしてから、次に問い合わせができるようになるまでに要する時間を示す。
【0078】
医療従事者の場合、シーン1~3のいずれについても、問い合わせが可能である。また医療従事者の場合、一般サービスの場合と比較して、連続質問要求数については多く、また、コマンド受信復帰時間については短い。一方、一般サービスの場合、シーン1についての問い合わせは可能であるが、シーン2については染色体の番号が3種類までという制約があり、シーン3については問い合わせが不可能になっている。
【0079】
このように、医療従事者に比べて一般サービスの方が、シーン1以外の各項目について許容されていない。これは、ゲノムデータを用いた遺伝的な特徴についての詳細な推定結果は、医療従事者などの専門家が多面的に考察する必要があるためである。また、仮に、詳細な推定結果が一般利用者に開示されると、一般利用者によって誤った解釈がなされることや、倫理的に好ましくないことがあるためである。医療従事者の中でも、医師、看護師、薬剤師、医療研究者と各資格や種別で分類し、前記シーン別の対応可否や、連続質問要求数の上限に差がある態様でもよい。
【0080】
以上説明したように、第1の実施形態に係るセキュリティデータ封緘デバイス10(端末装置)は、ゲノムデータ(原本データ)に一方向性関数を適用して生成した秘匿関数値(秘匿値)と、問い合わせの内容とに基づいて、応答データを生成して出力することとした。したがって、原本データを参照せずに、応答データを生成することができるため、原本データが外部に流出することを抑制することができる。これにより、セキュリティを強固にしつつ、医療従事者以外の一般利用者に対しても、利用者の遺伝的な特徴など、自身のゲノムデータに基づく所望の内容を提示することができる。
【0081】
また、第1の実施形態に係るセキュリティデータ封緘デバイス10は、ゲノムデータ記憶部104を備え、ゲノムデータ記憶部104に記憶される際にゲノムデータに一方向性関数を適用して、秘匿関数値を生成することとした。したがって、ゲノムデータ記憶部104にアクセスしなくても、秘匿関数値を生成することができるため、ゲノムデータのセキュリティをより強固にすることができる。
【0082】
また、第1の実施形態に係るセキュリティデータ封緘デバイス10は、問い合わせに含まれる比較データに一方向性関数を適用して秘匿比較値を生成し、秘匿関数値と秘匿比較値とに基づいて、応答データを生成することとした。したがって、外部の装置から秘匿比較値を取得しなくても、比較データを取得するだけで、応答データを生成できるため、セキュリティデータ封緘デバイス10の利便性を向上させることができる。
【0083】
また、第1の実施形態に係るセキュリティデータ封緘デバイス10は、秘匿値記憶部106を備え、秘匿値記憶部106に記憶された秘匿関数値の中から、問い合わせに対応する秘匿関数値を読み出して、応答データを生成することとした。したがって、応答データの生成において、その都度、秘匿関数値を生成しなくてもよいため、応答データを生成する際の処理に係る負担を軽減することができる。
【0084】
また、第1の実施形態に係るセキュリティデータ封緘デバイス10は、ゲノムデータ記憶部104を備え、ゲノムデータ記憶部104にゲノムデータ(原本データ)が記憶されると、当該ゲノムデータの外部出力が禁止されることとした。特に、ゲノムデータ記憶部104は、ハードウェア上の仕組みによりゲノムデータの外部出力が禁止されるように構成されることとした。このため、ゲノムデータのセキュリティをより強固にすることができる。
【0085】
また、第1の実施形態に係るセキュリティデータ封緘デバイス10は、単一の塩基配列に基づく秘匿関数値と秘密比較値とを用いて、応答データを生成することとした。したがって、単一の塩基配列のそのもののデータを参照せずに、利用者の遺伝的な特徴を提示することができる。
【0086】
また、第1の実施形態に係るセキュリティデータ封緘デバイス10は、一塩基多型を用いたゲノムワイド関連解析の解析結果に基づく秘匿関数値と秘密比較値とを用いて、応答データを生成することとした。したがって、一塩基多型のそのものの値を参照せずに、利用者の遺伝的な特徴を提示することができる。
【0087】
また、第1の実施形態に係るセキュリティデータ封緘デバイス10は、ポリジェネリックスコアに基づく秘匿関数値と秘密比較値とを用いて、応答データを生成することとした。したがって、ポリジェネリックスコアのそのものの値を参照せずに、利用者の遺伝的な特徴を提示することができる。
【0088】
また、第1の実施形態に係るセキュリティデータ封緘デバイス10は、一方向性関数を更新し、更新した一方向性関数をゲノムデータに適用して秘匿関数値を更新することとしてもよい。これにより、一方向性関数が第3者に解読されてしまうようなことを抑えることができ、原本データのセキュリティをより強固にすることができる。
【0089】
(第1の実施形態の変形例1)
次に、第1の実施形態の変形例1について説明する。第1の実施形態の変形例1では、一方向性関数を記憶しない構成とする場合について説明する。一方向性関数への入力空間が小さい場合、入力空間を総当りすることで、原本データを推測することが可能となってしまう。係る課題を解決するために、第1の実施形態に係るセキュリティデータ封緘デバイス10は、一方向性関数fを記憶していたが、以下に説明するように、一方向性関数を記憶しないように構成しても良い。
【0090】
具体的に説明すると、初期登録において、デバイス通信部101は、ゲノムデータの原本データに加えて一方向性関数fを受信し、認証処理部102およびデータ登録部103を介して、秘匿値生成部105に送信する。秘匿値生成部105は、データ登録部103より送付される全ての抽出値Xの秘匿処理が完了すると、一方向性関数fを消去する。
【0091】
ゲノムデータに関する問い合わせにおいて、デバイス通信部101は、問い合わせ内容Yに加えて一方向性関数gを受信し、それらを応答データ生成部107に送信する。応答データ生成部107は、一方向性関数gを用いて計算される秘匿値G(Y)に基づいて応答データを生成する。
【0092】
初期登録時に用いた一方向性関数fと、問い合わせ時に用いた一方向性関数gが同一である場合、正しい応答データとなる。例えば、一方向性関数fは、SHA-2やSHA-3などの暗号学的ハッシュ関数hと乱数値rを用いて、f=(h、r)として構成できる。ただし、f(*)=h(r||*)。ここで、「||」はビット連結を示す。
【0093】
このように、一方向性関数fをセキュリティデータ封緘デバイスに記憶しないように構成することで、秘匿値記憶部106および秘匿値生成部105が記憶した全ての情報が漏えいしたとしても、ゲノムデータの原本データを推測することが困難となる。具体的には、万一、封緘デバイス内のデータを読み出されたとしても、マッチングに必要なデータがそろっていないため、原本データの特定が困難となる。
【0094】
また、一方向関数f=(h、r)のうち、hのみを記憶するように構成しても良い。この場合、初期登録時およびゲノムデータに関する問い合わせ時に、デバイス通信部101は、rを受信するものとする。
【0095】
また、初期登録時に、セキュリティデータ封緘デバイス10は、ゲノムデータの原本データに加えてhのみを受信した後、rをランダムに生成し、初期登録の完了時にrを外部出力した後、rを消去するように構成しても良い。このような構成とする場合、セキュリティデータ封緘デバイス10は、ランダム要素情報を生成するランダム要素生成部を具備するようにすればよい。
【0096】
このような構成としたとしても、秘匿値記憶部106および秘匿値生成部105が記憶した全ての情報が漏えいした場合に、ゲノムデータの原本データを推測することを困難にすることができる。
【0097】
(第2の実施形態)
次に、第2の実施形態について説明する。上述した第1の実施形態では、利用者の遺伝的な特徴を推定する構成について説明した。第2の実施形態では、利用者同士の遺伝的な特徴を比較する構成について説明する。
【0098】
図15は、ブロック化した塩基配列の一例を示す図である。図15に示すように、利用者301aは、第1記憶装置としてのICカード300aを所有する。利用者301bは、第2記憶装置としてのICカード300bを所有する。IC300aには、一方向性関数が適用された利用者301aのゲノムデータ(秘匿関数値)が記憶されている。同様に、ICカード300bには、一方向性関数が適用された利用者301bのゲノムデータ(秘匿関数値)が記憶されている。秘匿化されたゲノムデータは、例えば、ブロック化されている。例えば、図15の(A)では、秘匿化されたゲノムデータの全体が4分割されてブロック化されている。例えば、n個にブロック化されているとすると、秘匿化されたゲノムデータは、利用者301aについては秘匿関数値F(XU[g](g=1~n))として記憶されており、また、利用者301bについては秘匿関数値F(XUg)として記憶されている。n個にブロック化された秘匿関数値F(XU[g](g=1~n))は、f(xU[1])、f(xU [2])、f(xU [n])で構成される。例えば、利用者同士の遺伝的な類似度を比較する構成として、第1ブロック、第2ブロック、第3ブロック、第4ブロック単位(g=1、2、3、4)で、秘匿関数を用いた出力値の一致度を算出し、ブロック単位の一致度を合算することで、0%、25%、50%、75%以上といった全体の一致率を算出する態様としてもよい。
【0099】
なお、ブロック化の態様は、ゲノムデータの全体を4分割に限らない。例えば、図15の(B)の上段に示すように、指定の領域がブロック化された態様としてもよいし、(B)の下段に示すように、4種類の指定の領域について、それぞれ異なる秘匿関数を適用して、4種類にブロック化された態様としてもよい。4種類の分け方については、例えば、国籍や関係疾病、性別、体質といった入力或いは既設定の情報から、関連する遺伝子座や関連SNPsでグループ化するといった所定の規則で分類する態様でもよい。また、気象情報や時刻、場所といった実施時の変動状態によって、毎回グループ化の規則を変更してもよい。さらに、ランダム要素生成部108(図18参照)で生成したランダム要素情報を入力として、ゲノムデータの各遺伝子座或いはSNPを、どの4種類のどのブロックに割り当てるかを毎回決定する態様でもよい。また、図15では、秘匿関数値を記憶する記憶装置(第1記憶装置および第2記憶装置)の一例として、ICカード300を示したが、記憶装置は、ICカード300に限らず、スマートフォン、携帯電話などであってもよい。
【0100】
図16は、利用者間の遺伝的な特徴の比較結果に基づく応答データの生成の一例を示す図である。図17は、利用者間の遺伝的な特徴の比較結果に基づいて応答データを生成する処理の一例を示すフローチャートである。
【0101】
図18は、本実施形態に係る封緘システム2の機能ブロックの構成を示す概略ブロック図である。セキュリティデータ封緘デバイス10は、デバイス通信部101と、認証処理部102と、データ登録部103と、ゲノムデータ記憶部104と、秘匿値生成部105と、秘匿値記憶部106と、応答データ生成部107と、ランダム要素生成部108とを備える。
【0102】
図16において、表示装置400は、端末装置の一例である。表示装置400は、例えば、スマートフォンやタブレット装置、表示デバイスを備えた店舗据付の端末装置である。表示装置400は、ICカード300a、300bからの演算処理結果値を読み取る機能(デバイス通信部101の機能)や、読み取った演算処理値をもう方々のICカード300a、300bに送信する機能を有する。また、表示装置400は、ICカード300a及び300b内に格納された、相互のゲノムデータの秘匿関数値と共通のランダム要素値と合成算出した、各カードの算出値を比較して、その一致度を算出した値を表示する表示部を有する。表示装置400には、これらの機能を実現するための、所定のアプリがインストールされている。なお、表示装置400は、これらの機能を有する専用のコンピューター装置であってもよい。図16では、相互のゲノムデータの秘匿関数値と共通のランダム要素値と合成算出した、各カードの算出値比較及びその一致度の算出を、各カード内で処理する形態を示しているが、各カードの算出値比較及びその一致度の算出を表示装置400で実行する形態でもよい。以下では、表示装置400で、各カードの算出値比較及びその一致度の算出を実行する形態について、処理の流れを示す。
【0103】
表示装置400は、利用者301の操作により所定のアプリが起動し、利用者301から、利用者301a、301b間の一致度合いの判定を行う旨が選択されたとする。そして、表示装置400は、表示画面に、ICカード300a、300bを、表示装置400が有する所定の読取部に読みとらせる旨の通知を行う。
【0104】
すると、図17に示すように、表示装置400は、デバイス通信部101の機能により読み取りが完了したか否かを判定する(ステップS181)。読み取りが完了すると、応答データ生成部107は、ゲノムデータのブロック数を示すg(1~nのいずれかの値)に「1」を設定する(ステップS182)。そして、応答データ生成部107は、利用者301aの秘匿関数値F(XU1)に基づく関数値H(F(XU1)、r1、r2)と、利用者301bの秘匿関数値F(XU2)に基づく関数値H(F(XU2)、r1、r2)との比較を行う。なお、r1は、ICカード300aのランダム要素生成部108で生成した、ランダム要素値である。r2は、ICカード300bのランダム要素生成部108で生成した、ランダム要素値である。そして、応答データ生成部107は、秘匿関数値f(xU1[g])(g=1~n)に基づく関数値h(f(xU1[g])、r1、r2)=HU1[g]と、秘匿関数値f(xU2[g])に基づく関数値h(f(xU2[g])、r1、r2)=HU2[g]と、をそれぞれ比較する(ステップS183)。
【0105】
次いで、応答データ生成部107は、関数値h(f(xU1[g])、r1、r2)と、関数値h(f(xU2[g])、r1、r2)とが一致するか否かを判定する(ステップS184)。関数値h(f(xU1[g])、r1、r2)と、関数値h(f(xU2[g])、r1、r2)とが一致しない場合(ステップS184:NO)、ステップS186に進む。関数値h(f(xU1[g])、r1、r2)と、関数値h(f(xU2[g])、r1、r2)とが一致する場合(ステップS184:YES)、応答データ生成部107は、比較結果に「1」を加算する(ステップS185)。
【0106】
そして、応答データ生成部107は、g=nであるか否かを判定する(ステップS186)。g=nではない場合(ステップS186:NO)、応答データ生成部107は、gをインクリメントし(ステップS187)、ステップS183に戻る。g=nの場合(ステップS186:YES)、応答データ生成部107は、比較結果を用いて応答データを生成する(ステップS188)。応答データは、例えば、一致した個数(比較結果)を総数nで除算した一致率である。
【0107】
そして、表示装置400の表示部は、応答データを表示し、一連の処理を終了する(ステップS189)。これにより、図16に示すように、利用者301a、301bの一致率を表示することができる。なお、秘匿化されたゲノムデータを4分割したとし、各ブロックの秘匿関数値がそれぞれ一致したとすると、一致率は100%となる。ただし、利用者301a、301bの間で、ゲノムデータそのものの一致率が100%となることはあり得ない。このため、応答データ生成部107は、一致率が100%となった場合には、「75%以上」といった100%未満を示す一致率に変更して、応答データを生成すればよい。
【0108】
以上説明したように、第2の実施形態に係る表示装置400(端末装置)は、秘匿関数値が記憶されたICカード300a、300bの各秘匿値をそれぞれ比較して、比較結果に基づく応答データを生成して出力することとした。したがって、原本データを参照せずに、応答データを生成することができるため、原本データが外部に流出することを抑制することができる。このため、原本データのセキュリティを強固にしつつ、利用者の遺伝的な特徴の一致率など、利用者が所望する内容を提示することができる。また、利用者301a、301bのゲノムデータから、両者の相性などを利用者301a、301bに推測させることができるため、提示した内容(一致率)を、人選に役立てたり、遊びに適用したりすることができる。したがって、第2の実施形態によれば、斬新な表示装置400(端末装置)を提供することができる。
【0109】
なお、上述した実施形態における封緘システム1の機能の少なくとも一部をコンピューターで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録してもよい。また、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピューターシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。記憶装置は、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM、DVD-ROM、USBメモリー等の可搬媒体も含む。さらに「コンピューター読み取り可能な記録媒体」とは、短時間の間、動的にプログラムを保持するものでもよい。具体的には、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線等である。また、「コンピューター読み取り可能な記録媒体」は、一定時間プログラムを保持しているものも含んでもよい。具体的には、サーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー等である。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上記プログラムは、上述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【0110】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18