JP4121134B2 - プログラム、分類方法およびシステム - Google Patents

プログラム、分類方法およびシステム Download PDF

Info

Publication number
JP4121134B2
JP4121134B2 JP2005160528A JP2005160528A JP4121134B2 JP 4121134 B2 JP4121134 B2 JP 4121134B2 JP 2005160528 A JP2005160528 A JP 2005160528A JP 2005160528 A JP2005160528 A JP 2005160528A JP 4121134 B2 JP4121134 B2 JP 4121134B2
Authority
JP
Japan
Prior art keywords
party
data
representative
target
parties
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
JP2005160528A
Other languages
English (en)
Other versions
JP2006339895A (ja
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2005160528A priority Critical patent/JP4121134B2/ja
Priority to US11/443,624 priority patent/US7814323B2/en
Publication of JP2006339895A publication Critical patent/JP2006339895A/ja
Application granted granted Critical
Publication of JP4121134B2 publication Critical patent/JP4121134B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、プログラム、分類方法およびシステムに関する。特に、本発明は、複数のパーティが保有する複数のプライベートデータを種類毎に分類するプログラム、分類方法およびシステムに関する。
近年、遺伝子配列と、薬の副作用や疾患などの形質(特徴)とを対応付けることにより、疾患の原因遺伝子を発見する研究が行われている。特に、遺伝子配列中で、1塩基が置換・欠損して起こる1塩基遺伝子多型性(SNP)は、個体の形質を特徴付けるものであり、個人の体質にあった医療(テーラーメード医療)や連鎖解析の目的である疾患原因遺伝子探索のための重要な手がかりとなる。
SNPの中から疾患原因となる遺伝子座位を同定するためには、疾患を抱える個体の遺伝子情報と、そうでない個体の遺伝子情報とを大量に取得して、それらの違いを統計的に分析する必要がある。これには、従来、代表的な技術として、罹患同胞対解析(affected sib-pair analysis)が用いられている(非特許文献1参照。)。また、その解析用ソフトウェアが公開されている(非特許文献2参照。)。
上述の技術によって遺伝子情報を解析するためには、様々な個体から遺伝子情報を取得して集計する必要がある。しかしながら、人の遺伝子情報は、その人の疾患の原因となり得る情報を含むので、プライバシー保護の観点から第三者に開示できない場合がある。このため、従来は、全ての情報提供者から信頼された特別な機関によってのみ、これらの情報を収集し、処理することができた(非特許文献3参照。)。また、従来、そのような特別な機関が準備できない場合においては、疾患の情報および遺伝子情報を、患者の氏名から切り離して収集することも考えられていた。
しかしながら、全ての情報提供者から信頼された特別の機関を準備することは困難な場合が多い。また、遺伝子情報等を患者の氏名から切り離したとしても、患者が極めて特殊な疾患を有している場合等には、その患者を特定できてしまう場合があった。これに対して、遺伝子情報自体を開示することなく、遺伝子情報をその種類毎に分類して、罹患同胞対解析等に必要な統計的な情報を得る技術が提案されている(非特許文献4参照。)。
図14は、遺伝子情報を開示することなく遺伝子情報を種類毎に分類する処理の概念図である。本図の処理によって、遺伝子情報の受信者は、自己の遺伝子情報が送信者の遺伝子情報と同じ種類か否かを判断できる。その処理を説明する。
VSは、送信者の遺伝子情報を示し、VRは、受信者の遺伝子情報を示す。送信者および受信者は、共に、自らの遺伝子情報に共通のハッシュ関数を適用してハッシュ値を得る(S1)。これをXSおよびXRとする。送信者は、ハッシュ値XSを自らの暗号鍵で暗号化することにより暗号化済データYSを得る(S2)。また、受信者は、ハッシュ値XRを自らの暗号鍵で暗号化することにより暗号化済みデータYRを得る(S2)。送信者および受信者はYSおよびYRを交換する(S3)。そして、送信者は、取得したYRを更に自らの暗号鍵で暗号化して受信者に送信する(S4)。また、受信者は、取得したYSを更に自らの暗号鍵で暗号化する(S5)。受信者は、これらの暗号化済データが同一であれば、自らの遺伝子情報および送信者の遺伝子情報の種類が同一と判断する(S6)。なお、送信者および受信者の暗号は、暗号化の順序によらず同一の暗号データを得ることができるという性質を有する(より詳しくは、非特許文献6を参照。)。
情報提供者が3以上の場合には、情報提供者の任意の組について、上記の処理を行う。これにより、各々の情報提供者は、他の情報提供者の中で自己と同一の遺伝子情報を保有する者の数を求めることができる。一方で、各々の情報提供者は、他の情報提供者と遺伝子情報が異なる場合には、当該他の情報提供者が保有する遺伝子情報を知ることはできない。各々の情報提供者について求めた当該数を集計することによって、遺伝子情報自体を開示することなく、各情報提供者によって保有されている遺伝子情報の数をその種類毎に求めることができる。
また、非特許文献5によって提案されている技術によっても、同様に、各々の情報提供者が他の情報提供者と同一種類の遺伝子情報を保有していることを、その内容を開示することなく判断できる。
「形質マッピングホームページ」ホームページURL「http://www.genstat.net/ 」鎌谷 直之他著。平成17年5月10日検索。 Mapmaker/sibs,「http://linkage.rockefeller.edu/soft/」平成17年5月10日検索。 A Proposed Architecture for Trusted Third Party Services, N Jefferies, C Mitchell, M Walker, in Cryptography:Policy and Algorithms, Springer LNCS v 1029 pp 98-104 (1995). R. Agrawal, A. Evfimievski, and R. Srikant. Information sharing across private databases. In Proc. of SIGMOD 2003. 沼尾雅之 著,「プライバシーを保持したリストマッチングプロトコル」CSS '2001 予稿集. T. ElGamal, A public key cryptosystem and a signature scheme based on discrete logarithms, IEEE Transactions on Information Theory, IT-31(4):469・72, July 1985.
非特許文献4に記載の技術において、各々の情報提供者は、他の各々の情報提供者との間で、暗号化された遺伝子情報を交換する必要がある。この交換処理の回数は、概ね、情報提供者の数の2乗に比例する。このため、情報提供者が膨大な数となれば、その遺伝子情報の集計処理は、現実的な処理時間で完了できなくなってしまう場合があった。本発明は、遺伝子情報等のプライベートデータを、その具体的な内容を開示することなく、かつ現実的な処理時間で完了できるアルゴリズムによって集計し、上述の罹患同胞対解析等の統計的手法を適用可能とすることを課題とする。
上記課題を解決するために、本発明の第1の形態においては、複数のパーティが保有する複数のプライベートデータを種類毎に分類するシステムとして、情報システムを機能させるプログラムであって、複数のパーティのそれぞれは、暗号化の順序によらず同一の暗号データを得ることができる複数の暗号鍵のそれぞれを有し、既に分類されたプライベートデータの種類毎に、当該種類のプライベートデータを保有するパーティを代表する代表パーティを選択する代表パーティ選択部と、各々の代表パーティと、新たに分類の対象とするプライベートデータを保有する対象パーティとの間で、各々の暗号鍵で当該パーティのプライベートデータを暗号化した暗号データを交換させる交換部と、対象パーティが各々の代表パーティから取得した暗号データを、対象パーティの暗号鍵で更に暗号化することにより生成された第1相互暗号データを取得する第1取得部と、各々の代表パーティが対象パーティから取得した暗号データを、代表パーティの暗号鍵で更に暗号化することにより生成された第2相互暗号データを取得する第2取得部と、各々の代表パーティについて、当該代表パーティについて生成された第1相互暗号データが第2相互暗号データと一致することを条件として、当該代表パーティおよび当該対象パーティが共に同一種類のプライベートデータを有すると判断する判断部として機能させるプログラム、当該プログラムによってプライベートデータを分類する分類方法、および、当該プログラムによって動作するシステムを提供する。
本発明の第2の形態においては、各々のパーティが保有する複数のプライベートデータを種類毎に分類するシステムとして、情報システムを機能させるプログラムであって、複数のパーティのそれぞれは、暗号化の順序によらず同一の暗号データを得ることができる複数の暗号鍵のそれぞれを有し、既にプライベートデータの種類が分類されたパーティである基準パーティについて、当該基準パーティが有する複数のプライベートデータの種類毎に、当該種類のプライベートデータの組を代表する代表データを選択する代表データ選択部と、基準パーティ以外のパーティの中から、新たに分類の対象とするプライベートデータを保有する対象パーティを順次選択する対象パーティ選択部と、基準パーティと対象パーティとの間で、各々の代表データを基準パーティの暗号鍵で暗号化した暗号データの各々と、対象パーティが有する少なくとも1つのプライベートデータを対象パーティの暗号鍵で暗号化した暗号データの各々とを交換させる交換部と、基準パーティが対象パーティから取得した各々の暗号データを、基準パーティの暗号鍵で更に暗号化することにより生成された各々の第1相互暗号データを取得する第1取得部と、対象パーティが基準パーティから取得した各々の暗号データを、対象パーティの暗号鍵で更に暗号化することにより生成された各々の第2相互暗号データを取得する第2取得部と、各々の第1相互暗号データが、何れかの第2相互暗号データに一致することを条件として、基準パーティと対象パーティとが同一種類のプライベートデータを保有していると判断する判断部として機能させるプログラム、当該プログラムによってプライベートデータを分類する分類方法、および、当該プログラムによって動作するシステムを提供する。
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
本発明によれば、これまでよりも効率的に、各保有者が保有するプライベートデータを、他の保有者に知られることなく分類することができる。
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
(第1実施例)
図1は、遺伝子情報分類システム10の全体構成を示す(第1実施例)。遺伝子情報分類システム10は、パーティ20−1〜Nを備える。パーティ20−1〜Nの各々は、情報の機密性を保持できる組織毎に設けられている。例えば、パーティ20−1〜Nの各々は、複数の組織の各々に対応する複数の端末装置の各々であってもよい。より詳しくは、パーティ20−1〜Nの各々は、各個人所有のパーソナルコンピュータであってもよい。また、パーティ20−1〜Nの各々は、各病院に設けられた患者管理用のサーバコンピュータであってもよい。この場合、各患者がその患者の遺伝子情報を記録した磁気記録カードを保有し、サーバコンピュータは、その磁気記録カードから遺伝子情報をカードリーダによって読み出して保持してもよい。
パーティ20−1〜Nの各々は、遺伝子情報を有する。本図では、遺伝子情報の種類毎に番号を付して示す。例えば、パーティ20−1の遺伝子情報の種類v1は1であり、パーティ20−2の遺伝子情報の種類v2は1である。パーティ20−1〜4の遺伝子情報は既に分類されているのでその種類は判明している。一方で、パーティ20−5の遺伝子情報はこれから分類するのでその種類は不明であるが、実際には2である。
本例において、パーティ20−1〜Nの各々は、当該パーティの遺伝子情報の種類が他の遺伝子情報の種類と一致するか否かを順次この順に解析していく。この解析処理の過程においては、既に分類された遺伝子情報を有する全てのパーティとの間で一致を判断するのではなく、既に分類された遺伝子情報を有するパーティを代表するパーティのみとの間で一致を判断する。例えば、パーティ20−5は、パーティ20−1〜4の各々に代えて、パーティ20−1およびパーティ20−3との間においてのみ、遺伝子情報の種類が一致するか否かを判断する。これにより、これまでより効率的に遺伝子情報を分類することを目的とする。
なお、パーティ20−1〜Nの各々は、遺伝子情報に代えて、他のプライベートデータを有していてもよい。本実施例に示す構成によれば、どのようなプライベートデータをも、各々のパーティが他のパーティにその内容を知らせることなく分類することができる。
図2は、パーティ20−5の機能構成の一例を示す。パーティ20−5を除くパーティ20−1〜Nの各々も、本図で説明するパーティ20−5と略同一の機能を有するが、本図においてはパーティ20−1〜Nを代表してパーティ20−5の機能を説明する。パーティ20−5は、遺伝子情報記録部200と、暗号処理部210と、管理装置30とを有する。遺伝子情報記録部200は、パーティ20−5が保有する遺伝子情報を保有する。暗号処理部210は、管理装置30から受けた指示に応じて、パーティ20−5が有する暗号鍵でその遺伝子情報を暗号化してパーティ20−1〜Nの少なくとも1つに送信する。なお、遺伝子情報を更に漏洩しにくくするために、遺伝子情報に対してハッシュ関数を適用した適用後のデータを暗号化してもよい。また、暗号処理部210は、パーティ20−1〜Nの少なくとも1つから受信した暗号化データを更に暗号化して第1相互暗号化データを生成し、管理装置30に出力する。管理装置30は、暗号処理部210を制御することにより、パーティ20−5および他のパーティが共に同一種類の遺伝子情報を有するか否かを判断する。
図3は、管理装置30の機能を機能ブロック毎に示す。管理装置30は、記録部300と、代表パーティ選択部310と、対象パーティ選択部320と、交換部330と、第1取得部340と、第2取得部350と、判断部360と、登録部370とを有する。本機能の説明にあたり、パーティ20−1〜4の各々における遺伝子情報は、既にその種類毎に分類されているとする。記録部300は、既に分類された遺伝子情報の種類毎に、その種類の遺伝子情報を保有しているパーティを代表する代表パーティを記録する。記録部300は、これら代表パーティを示す情報をパーティ20−4の記録部300から受信して記録してもよい。
より具体的には、記録部300は、種類1の遺伝子情報を保有する代表パーティとしてパーティ20−1を記録し、種類2の遺伝子情報を保有する代表パーティとしてパーティ20−3を記録している。記録部300は、パーティ20−2およびパーティ20−4は記録していない。また、記録部300は、代表パーティのみを記録し、その代表パーティが保有する遺伝子情報の種類は記録しない。即ち、パーティ20−5の管理者は、記録部300の記録内容を解析しても、各々の代表パーティが有している遺伝子情報の種類を知ることはできない。
代表パーティ選択部310は、既に分類された遺伝子情報の種類毎に、その種類の遺伝子情報を保有するパーティを代表する代表パーティを選択する。具体的には、代表パーティ選択部310は、遺伝子情報の各々の種類に対応する代表パーティを記録部300から検索して特定する。本実施例においては、代表パーティ選択部310は、パーティ20−1およびパーティ20−3を代表パーティとして選択する。対象パーティ選択部320は、未だに分類されていない遺伝子情報を有する複数のパーティの中から、予め定められた順序に従って対象パーティを順次選択する。本例において、当該予め定められた順序はパーティ20−1〜Nをこの順序で指定する順序とする。対象パーティ選択部320は、例えば、パーティ20−4の対象パーティ選択部320から指示を受けて、当該予め定められた順序においてパーティ20−4の次に配列されるパーティ20−5(つまり自分自身)を対象パーティとして選択する。更に、対象パーティ選択部320は、次の対象パーティとしてパーティ20−6を指定する旨をパーティ20−6の対象パーティ選択部320に通知してもよい。
交換部330は、各々の代表パーティと対象パーティとの間で、各々の暗号鍵で当該パーティのプライベートデータを暗号化した暗号データを交換させる。即ち交換部330は、暗号処理部210に指示してパーティ20−5の遺伝子情報を暗号化させる。また、交換部330は、パーティ20−1およびパーティ20−3に指示して、パーティ20−1の遺伝子情報をパーティ20−1で暗号化させ、パーティ20−3の遺伝子情報をパーティ20−3の暗号鍵で暗号化させる。そして、交換部330は、暗号処理部210において得られた暗号データと、パーティ20−1およびパーティ20−3の各々において得られた暗号データとを交換させる。
第1取得部340は、対象パーティが各々の代表パーティから取得した暗号データを、対象パーティの暗号鍵で更に暗号化することにより生成された第1相互暗号データを取得する。即ち、第1取得部340は、パーティ20−1の遺伝子情報をパーティ20−1の暗号鍵で暗号化し、かつパーティ20−5の暗号鍵で更に暗号化した暗号データを、パーティ20−1についての第1相互暗号データとして取得する。また、第1取得部340は、パーティ20−3の遺伝子情報をパーティ20−3の暗号鍵で暗号化し、かつパーティ20−5の暗号鍵で更に暗号化した暗号データを、パーティ20−3についての第1相互暗号データとして取得する。
第2取得部350は、各々の代表パーティが対象パーティから取得した暗号データを、その代表パーティの暗号鍵で更に暗号化することにより生成された第2相互暗号データを取得する。即ち、第2取得部350は、パーティ20−5の遺伝子情報をパーティ20−5の暗号鍵で暗号化し、かつパーティ20−1の暗号鍵で更に暗号化した暗号データを、パーティ20−1についての第2相互暗号データとして取得する。また、第2取得部350は、パーティ20−5の遺伝子情報をパーティ20−5の暗号鍵で暗号化し、かつパーティ20−3の暗号鍵で更に暗号化した暗号データを、パーティ20−3についての第2相互暗号データとして取得する。
判断部360は、各々の代表パーティについて、その代表パーティについて生成された第1相互暗号データが第2相互暗号データと一致することを条件として、その代表パーティおよび対象パーティが共に同一種類の遺伝子情報を有すると判断する。図1に示したように、パーティ20−5は種類2の遺伝子情報を有する。従って、判断部360は、パーティ20−3について生成された第1相互暗号データが第2相互暗号データと一致すると判断する。この結果、判断部360は、パーティ20−3およびパーティ20−5が共に同一種類の遺伝子情報を有すると判断し、判断結果を出力する。
登録部370は、対象パーティの遺伝子情報の種類が、何れの代表パーティの遺伝子情報の種類にも一致しなかったことを条件として、その対象パーティを新たな代表パーティとして記録部300に登録する。例えば、登録部370は、パーティ20−5の遺伝子情報の種類が、パーティ20−1およびパーティ20−3の何れの遺伝子情報の種類とも一致しなければ、パーティ20−5を新たな代表パーティとして登録する。これを受けて、記録部300は、次の対象パーティであるパーティ20−6の記録部300に対して、新たに登録された代表パーティを含めた全ての代表パーティの情報を送信する。
以上、本図で説明した機能をパーティ20−1〜Nの各々が有しているので、パーティ20−1〜Nの各々は、自らが有する遺伝子情報の種類が他の何れのパーティと同一であるか否かを判断できる。この判断の判断結果を集計することにより、各々の遺伝子情報をその種類毎に分類できる。更に、この分類結果を利用すれば、遺伝子情報の母集団全体に対する各種類の遺伝子情報が占める割合等の、各種の統計情報を得ることができる。統計情報の利用・分析方法については、上述の罹患同胞対解析の文献(非特許文献1)等に詳しいので、説明を省略する。
また、本図で説明した機能によれば、パーティ20−1〜Nの各々は、自らが有する遺伝子情報の種類を他のパーティに知らせる必要がない。また、上記判断結果を集計する場合においても、同一種類の遺伝子情報を共有するパーティの組が判明するのみで、各々のパーティが保有する遺伝子情報の具体的な内容は漏洩しない。これにより、疾患の原因として疑われる遺伝子情報等のプライベートデータを第三者から保護して秘密を保持できる。
図4は、管理装置30が遺伝子情報を分類する処理の一例を示す。パーティ20−1〜Nの各々において、管理装置30は、これより述べる処理を、1つの遺伝子座位について1回ずつ実行する。まず、対象パーティ選択部320は、未だに分類されていない遺伝子情報を有する複数のパーティの中から、予め定められた順序に従って対象パーティを選択する(S400)。
代表パーティ選択部310は、既に分類された遺伝子情報の種類毎に、その種類の遺伝子情報を保有するパーティを代表する代表パーティを選択する(S410)。代表パーティの選択処理には、以下の2つのバリエーションが考えられる。
(1)代表パーティを登録する方法
図3で述べたように、記録部300は、既に分類された遺伝子情報の種類毎に、その種類の遺伝子情報を保有しているパーティを代表する代表パーティを記録する。代表パーティ選択部310は、記録部300に記録されている代表パーティを検索して読み出すことによって、代表パーティを選択できる。記録部300の記録内容を変数Yとすれば、Y={P1,P3}と表記できる。
(2)パーティの組を遺伝子情報の種類毎に登録する方法
図3で述べた構成とは異なり、記録部300は、既に分類された遺伝子情報の種類の各々に対応付けて、その種類の遺伝子情報を保有しているパーティの組を記録する。即ち図1を例に採れば、記録部300は、種類1の遺伝子情報を保有しているパーティの組として、パーティ20−1、パーティ20−2、およびパーティ20−4を記録する。そして、記録部300は、種類2の遺伝子情報を保有しているパーティの組としてパーティ20−3のみを記録する。記録部300の記録内容を変数Yとすれば、Y={{P1,P2,P4},{P3}}と表記できる。
この場合、代表パーティ選択部310は、遺伝子情報の各々の種類に対応する代表パーティを、記録部300においてその種類に対応して記録されたパーティの中から選択する。即ち代表パーティ選択部310は、パーティ20−1、パーティ20−2、およびパーティ20−4の中から何れか1つの代表パーティを選択し、パーティ20−3を代表パーティとして選択する。このとき、好ましくは、代表パーティ選択部310は、少なくとも1つの遺伝子情報を保有するパーティの組の中から代表パーティを無作為に選択する。即ち、パーティ20−1、パーティ20−2、およびパーティ20−4の中から代表パーティが無作為に選択される。これにより、特定のパーティのみに通信トラフィックが集中することを防止できる。
更に好ましくは、代表パーティ選択部310は、少なくとも1つの種類の遺伝子情報について、対象パーティ選択部320によって対象パーティが選択される毎に、その種類に対応して記録されたパーティの組の中から、予め定められた順序で代表パーティを選択する。即ち、対象パーティがパーティ20−M、パーティ20−(M+1)、およびパーティ20−(M+2)の順に順次選択されるのに従って、パーティ20−1、パーティ20−2およびパーティ20−4が順次この順に代表パーティとして選択される。これによって、通信トラフィックを一層分散させることができる。
更に他の例として、代表パーティ選択部310は、少なくとも1つの種類のプライベートデータについて、対象パーティ選択部320によって対象パーティが選択される毎に、その種類に対応して記録されたパーティの組の中から、その対象パーティとの間の通信速度が所定の基準速度以上のパーティを代表パーティとして選択する。各パーティ間の通信速度は、見積もり速度として予め定められていてもよいし、対象パーティを選択する毎に測定されてもよい。
S410の説明を終わる。
交換部330は、各々の代表パーティと対象パーティとの間で、各々の暗号鍵で当該パーティのプライベートデータを暗号化した暗号データを交換させる(S420)。第1取得部340は、対象パーティが各々の代表パーティから取得した暗号データを、対象パーティの暗号鍵で更に暗号化することにより生成された第1相互暗号データを取得する(S430)。また、第2取得部350は、各々の代表パーティが対象パーティから取得した暗号データを、その代表パーティの暗号鍵で更に暗号化することにより生成された第2相互暗号データを取得する(S440)。
判断部360は、各々の代表パーティについて、その代表パーティについて生成された第1相互暗号データが第2相互暗号データと一致することを条件として、その代表パーティおよび対象パーティが共に同一種類の遺伝子情報を有すると判断する(S450)。このとき、遺伝子情報の分類処理を効率化するために、管理装置30は、以下の処理を行ってもよい。
判断部360は、対象パーティの遺伝子情報の種類が、何れの代表パーティの遺伝子情報の種類にも一致しなかったことを条件として、その対象パーティの遺伝子情報をその対象パーティの暗号鍵で暗号化した暗号データを生成して保持しておく。そして、判断部360は、その暗号データを、当該対象パーティが保持している遺伝子情報の代わりに公開される換字データとして、遺伝子情報の集計者に通知してもよい。一方で、判断部360は、何れかの代表パーティの遺伝子情報が対象パーティの遺伝子情報と一致したことを条件として、その代表パーティが公開する換字データを、対象パーティの換字データとして公開してもよい。これによって、遺伝子情報の集計者は、遺伝子情報の内容を知ることなく、各種類の遺伝子情報が保有されている数のみを知ることができる。
続いて、判断部360による判断結果に基づいて、登録部370は、パーティを記録部300に登録する(S460)。登録処理は、S410で述べた代表パーティの選択処理によって異なる。
(1)代表パーティを登録する方法の場合
登録部370は、対象パーティの遺伝子情報の種類が、何れの代表パーティの遺伝子情報の種類にも一致しなかったことを条件として、その対象パーティを新たな代表パーティとして記録部300に登録する。
(2)パーティの組を遺伝子情報の種類毎に登録する方法の場合
登録部370は、対象パーティの遺伝子情報の種類が各代表パーティの遺伝子情報の種類に一致するか否かに関わらず、判断部360によって判断された対象パーティの種類に基づいて、対象パーティを記録部300に追加して登録する。具体的には、登録部370は、何れかの代表パーティおよび対象パーティが共に同一種類の遺伝子情報を有する場合には、その代表パーティが属するパーティの組に対象パーティを追加して登録する。一方で、登録部370は、何れの代表パーティも対象パーティと同一種類の遺伝子情報を有しない場合には、その対象パーティを単一のパーティから成る新たなパーティの組として記録部300に登録する。
S460の説明を終わる。
以上に示す第1実施例によれば、これまでより効率的に、各保有者が保有するプライベートデータを、他の保有者に知られることなく分類することができる。特に、プライベートデータが対立遺伝子の情報である場合には、以下の仮定1が成り立つ。
仮定1:プライベートデータの種類は、対立遺伝子の種類であり、これは高々十数個であって、すべてが既知である(未知の対立遺伝子は存在しない)
ここで、代表パーティは対立遺伝子の種類毎に選択されるものであるから、代表パーティの数は、高々対立遺伝子の種類の数となる。従って、各々の対象パーティにおいて遺伝子情報を交換する処理は、高々対立遺伝子の種類数となる。このように、本実施例によれば、分析の対象となるパーティの数が増加しても、分類の処理時間が爆発的に増加することを防ぎ、効率的な処理を行うことができる。
なお、本実施例において、管理装置30は、パーティ20−5をはじめパーティ20−1〜Nの各々に設けられている。これに代えて、管理装置30は、パーティ20−1〜Nとは別体に設けられ、パーティ20−1〜Nによって共用されてもよい。このような構成における処理の流れを変形例として説明する。
図5は、第1実施例の変形例における処理の流れを説明する概念図である。パーティ20−1〜5の各々は、同一のハッシュ関数h(x)を有している。また、パーティ20−1は、種類1の遺伝子情報を有し、パーティ20−3は、種類2の遺伝子情報を有し、パーティ20−5は、種類2の遺伝子情報を有している。また、本例の管理装置30は、パーティ20−1〜Nの何れとも異なる管理者によって管理されている。交換部330の指示に基づいて、パーティ20−1およびパーティ20−5は暗号データを生成して交換する。具体的には、まず、パーティ20−5は、種類2の遺伝子情報にハッシュ関数を適用してハッシュ値h(2)を算出する(S1)。そして、パーティ20−5は、パーティ20−5の暗号鍵でh(2)を暗号化して暗号データk5(h(2))を得る(S2)。そして、交換部330は、k5(h(2))をパーティ20−5から取得し(S3)、パーティ20−1に送信し(S4)、パーティ20−3に送信する(S6)。
パーティ20−1は、受信したk5(h(2))を、自らの暗号鍵で更に暗号化することにより第1相互暗号データk1(k5(h(2)))を生成する。また、パーティ20−1は、種類1の遺伝子情報にハッシュ関数を適用した上で、自らの暗号鍵で暗号化することにより暗号データk1(h(1))を生成する。そして、第1取得部340は、k1(k5(h(2)))をパーティ20−1から取得し、交換部330は、k1(h(1))をパーティ20−1から取得する(S5)。
パーティ20−3は、受信したk5(h(2))を、自らの暗号鍵で更に暗号化することにより第1相互暗号データk3(k5(h(2)))を生成する。また、パーティ20−3は、種類2の遺伝子情報にハッシュ関数を適用してh(2)を算出し、算出したh(2)を自らの暗号鍵で暗号化することによりk3(h(2))を生成する。第1取得部340は、第1相互暗号データk3(k5(h(2)))をパーティ20−3から取得し、交換部330は、暗号データk3(h(2))をパーティ20−3から取得する(S7)。
交換部330は、取得したk1(h(1))およびk3(h(2))をパーティ20−5に送信する(S8)。パーティ20−5は、受信したk1(h(1))およびk3(h(2))の各々を自らの暗号鍵で暗号化して第2相互暗号データであるk5(k1(h(1)))およびk5(k3(h(2)))を生成する。第2取得部350は、k5(k1(h(1)))およびk5(k3(h(2)))をパーティ20−5から取得する(S9)。
判断部360は、k1(k5(h(2)))およびk5(k1(h(1)))が一致しないことから、パーティ20−1およびパーティ20−5は互いに異なる種類の遺伝子情報を有していると判断する(S10)。また、判断部360は、k3(k5(h(2)))およびk5(k3(h2)))が一致することから、パーティ20−3およびパーティ20−5が同一種類の遺伝子情報を有していると判断する。これらの判断結果に基づいて、分類処理が実現される。
以上、本変形例によっても、これまでより効率的に遺伝子情報を分類することができる。更に、本変形例によれば、同一種類の遺伝子情報を保有しているパーティの組は、管理装置30のみによって判定され、その判定結果はパーティ20−1〜Nの何れにも開示されない。更に、管理装置30においては、暗号データのみが処理の対象とされ、実際の遺伝子情報は用いられない。即ち、管理装置30においても、各々のパーティが保有する遺伝子情報は特定できない。このように、本変形例によれば、プライベートデータの漏洩量を一層少なくすることができる。
(第2実施例)
図6は、遺伝子情報分類システム10の全体構成を示す(第2実施例)。遺伝子情報分類システム10は、パーティ60−1〜Nと、管理装置70とを備える。パーティ60−1〜Nの各々は、情報の機密性を保持できる組織毎に設けられている。例えば、パーティ60−1〜Nの各々は、複数の組織の各々に設けられた複数の端末装置の各々であってもよい。一例として、パーティ60−1〜Nの各々は、各病院に設けられた患者管理用のサーバコンピュータであってもよい。
パーティ60−1〜Nの各々は、複数の遺伝子情報を有する。本図では、遺伝子情報の種類毎に番号を付して示す。例えば、パーティ60−1は、種類1の遺伝子情報、種類3の遺伝子情報、および、種類4の遺伝子情報その他を有する。パーティ60−1〜4の遺伝子情報は既に分類されているのでその種類は判明している。一方で、パーティ60−5の遺伝子情報はこれから分類するのでその種類は不明であるが、実際には、パーティ60−5は、種類2の遺伝子情報、種類11の遺伝子情報、および、種類12の遺伝子情報その他を有する。
また、パーティ60−1〜Nの各々は、暗号化の順序によらず同一の暗号データを得ることができる複数の暗号鍵をそれぞれ有する。
管理装置70は、パーティ60−1〜Nの何れとも異なる管理者によって管理されている。そして、管理装置70は、パーティ60−1〜Nの各々によって保有されている遺伝子情報を分類して所定の判断を行い、判断結果を出力する。
図7は、管理装置70の機能を機能ブロック毎に示す。管理装置70は、代表データ選択部700と、対象パーティ選択部710と、交換部720と、キャッシュ部730と、第1取得部740と、第2取得部750と、判断部760とを有する。代表データ選択部700は、既に遺伝子情報の種類が分類されたパーティである基準パーティについて、その基準パーティが有する複数の遺伝子情報の種類毎に、その種類の遺伝子情報の組を代表する代表データを選択する。本例では、パーティ60−1が基準パーティとして予め定められている。従って、代表データ選択部700は、パーティ60−1が有する種類1の遺伝子情報について代表データを選択し、種類3の遺伝子情報について代表データを選択し、種類4の遺伝子情報から代表データを選択する。なお、パーティ60−1内における遺伝子情報の分類は、第1実施例で述べた方法のほか、従来公知の方法によって実現される。
対象パーティ選択部710は、基準パーティ以外のパーティの中から、新たに分類の対象とする遺伝子情報を保有する対象パーティを順次選択する。ここで、対象パーティの選択順序は、予め定められている。例えば、この選択順序によれば、パーティ60−1〜Nは、順次この順に対象パーティとして選択される。この場合、対象パーティ選択部710は、判断部760によって、ある対象パーティについて遺伝子情報が分類されたことに応答して、その次の対象パーティを選択してもよい。いま、パーティ60−1〜4における遺伝子情報は既に分類されているので、対象パーティ選択部710は、パーティ60−5を対象パーティとして選択する。
交換部720は、基準パーティと対象パーティとの間で、各々の代表データを基準パーティの暗号鍵で暗号化した暗号データの各々と、対象パーティが有する少なくとも1つの遺伝子情報を対象パーティの暗号鍵で暗号化した暗号データの各々とを交換させる。例えば、まず、交換部720は、各々の代表データをパーティ60−1の暗号鍵で暗号化させて暗号データの各々を生成させる。また、交換部720は、パーティ60−5が有する全ての遺伝子情報をパーティ60−5の暗号鍵で暗号化させて暗号データの各々を生成させる。そして、交換部720は、パーティ60−1において生成された暗号データの各々と、パーティ60−5において生成された暗号データの各々とを交換させる。
キャッシュ部730は、交換部720の処理において、基準パーティから対象パーティに対して送信される暗号データをキャッシュする。ここで、対象パーティがパーティ60−2〜Nの何れの場合であっても、基準パーティであるパーティ60−1から他のパーティに送信される暗号データは同一である。このため、キャッシュ部730は、この暗号データを一旦取得すれば、それをキャッシュして再利用することで、暗号データを再度取得する処理を不要とすることができる。従って例えば、キャッシュ部730は、パーティ60−1からパーティ60−2に対して送信される暗号データを取得してキャッシュする。そして、交換部720は、キャッシュ部730にキャッシュされた各々の暗号データを、他の各々の対象パーティ(パーティ60−3〜N)に送信する。これにより、交換部720は、暗号データを取得する処理を一部省略して効率的に、基準パーティおよび各々の対象パーティとの間で暗号データを順次交換することができる。
第1取得部740は、基準パーティが対象パーティから取得した各々の暗号データを、基準パーティの暗号鍵で更に暗号化することにより生成された各々の第1相互暗号データを取得する。即ち例えば、第1取得部740は、パーティ60−1がパーティ60−5から取得した各々の暗号データを、パーティ60−1の暗号鍵で更に暗号化させ、暗号化されたデータを第1相互暗号データとして取得する。
第2取得部750は、対象パーティが基準パーティから取得した各々の暗号データを、対象パーティの暗号鍵で更に暗号化することにより生成された各々の第2相互暗号データを取得する。即ち例えば、第2取得部750は、パーティ60−5がパーティ60−1から取得した各々の暗号データを、パーティ60−5の暗号鍵で更に暗号化させ、暗号化されたデータを第2相互暗号データとして取得する。
判断部760は、各々の第1相互暗号データが、何れかの第2相互暗号データと一致することを条件として、基準パーティと対象パーティとが同一種類の遺伝子情報を保有していると判断する。即ち例えば、判断部760は、パーティ60−1から取得した第1相互暗号データと、パーティ60−5から取得した第2相互暗号データとが一致するので、パーティ60−1およびパーティ60−5が共に同一種類の遺伝子情報を保有していると判断し、判断結果を出力する。図3で既に説明したように、判断結果の活用技術は従来公知であるので説明を省略する。
なお、本実施例において、管理装置70は、パーティ60−1〜Nの何れとも異なる管理者によって管理され、パーティ60−1〜Nとは別体に設けられている。これに代えて、管理装置70は、パーティ60−1〜Nの少なくとも何れか1つに設けられていてもよい。このような構成によっても、各々のパーティに他のパーティの遺伝子情報を開示することなく、かつ効率的に、遺伝子情報を分類することができる。
図8は、管理装置70が遺伝子情報を分類する処理の一例を示す。管理装置70は、各々の対象パーティについて以下の処理を繰り返す。代表データ選択部700は、既に遺伝子情報の種類が分類されたパーティである基準パーティについて、その基準パーティが有する複数の遺伝子情報の種類毎に、その種類の遺伝子情報の組を代表する代表データを選択する(S800)。対象パーティ選択部710は、基準パーティ以外のパーティの中から、新たに分類の対象とする遺伝子情報を保有する対象パーティを選択する(S810)。更にこの場合、代表データ選択部700は、当該対象パーティに保有される遺伝子情報から少なくとも1つの代表データを選択してもよい。
交換部720は、基準パーティと対象パーティとの間で、各々の代表データを基準パーティの暗号鍵で暗号化した暗号データの各々と、対象パーティが有する少なくとも1つの遺伝子情報を対象パーティの暗号鍵で暗号化した暗号データの各々とを交換させる(S820)。上記S810において対象パーティからも代表データを選択した場合においては、各々のパーティの代表データを交換させてもよい。即ち、交換部720は、基準パーティと対象パーティとの間で、基準パーティの各々の代表データを基準パーティの暗号鍵で暗号化した暗号データの各々と、対象パーティの各々の代表データを対象パーティの暗号鍵で暗号化した暗号データの各々とを交換させてもよい。
第1取得部740は、基準パーティが対象パーティから取得した各々の暗号データを、基準パーティの暗号鍵で更に暗号化することにより生成された各々の第1相互暗号データを取得する(S830)。第2取得部750は、対象パーティが基準パーティから取得した各々の暗号データを、対象パーティの暗号鍵で更に暗号化することにより生成された各々の第2相互暗号データを取得する(S840)。
判断部760は、各々の第1相互暗号データが、何れかの第2相互暗号データと一致することを条件として、基準パーティと対象パーティとが同一種類の遺伝子情報を保有していると判断する(S850)。例えば、判断部760は、各代表データについて、第1相互暗号データが第2相互暗号データと一致する数に基づいて、当該代表データと同一種類の遺伝子情報の数を求めてもよい。キャッシュ部730は、交換部720の処理において、基準パーティから対象パーティに対して送信される暗号データをキャッシュし、次回以降の処理において交換部720に利用させる(S860)。
図9は、第2実施例における処理の流れを説明する概念図である。パーティ60−1〜5の各々は、同一のハッシュ関数h(x)を有している。また、パーティ60−1は、種類1の遺伝子情報を有し、パーティ60−5は、種類2の遺伝子情報を有している。交換部720の指示に基づいて、パーティ60−1およびパーティ60−5は暗号データを生成して交換する。具体的には、まず、パーティ60−5は、種類2の遺伝子情報にハッシュ関数を適用してハッシュ値h(2)を算出する(S1)。そして、パーティ60−5は、パーティ60−5の暗号鍵でh(2)を暗号化してk5(h(2))を得る(S2)。そして、パーティ60−5は、k5(h(2))を管理装置70に送信する(S3)。
次に、管理装置70は、k5(h(2))をパーティ60−1に送信する(S4)。そして、パーティ60−1は、受信したk5(h(2))をパーティ60−1の暗号鍵で暗号化したk1(k5(h(2)))を管理装置70に送信する(S5)。更に、パーティ60−1は、自らが保有する種類1の遺伝子情報にハッシュ関数を適用してハッシュ値h(1)を算出し、算出したh(1)を暗号化して暗号データk1(h(1))を求め、管理装置70に送信する。
管理装置70は、受信した暗号データのうちk1(h(1))のみをパーティ60−5に送信する(S6)。パーティ60−5は、受信したk1(h(1))を自らの暗号鍵で暗号化してk5(k1(h(1)))を生成し、管理装置70に送信する(S7)。管理装置70は、k1(k5(h(2)))と、k5(k1(h(1)))とを比較し、比較結果に基づいて遺伝子情報を分類する(S8)。
以上に示す第2実施例によっても、これまでより効率的に、各保有者が保有するプライベートデータを、他の保有者に知られることなく分類することができる。特に、プライベートデータが対立遺伝子の情報であって、各々のパーティが遺伝子研究を行う病院である場合には、上述の仮定1に加えて以下の仮定2が成り立つ。
仮定2:患者は、自分の遺伝子情報を自ら検査して秘密情報として自身で管理することはなく、信用ある医療機関にて遺伝子情報を調査し、それを医療機関が保持するデータベースに登録する。この場合、遺伝子情報はある程度のデータ量が単一の医療機関に集約される。このため、パーティの数は患者の全数にくらべ少ない。また一つの医療機関に保有されたデータにおいて、すべての対立遺伝子が現れる。
この仮定によれば、処理の対象となるパーティの数を減少させ、分類処理を更に効率化することができる。また、医療機関が相互に遺伝子情報の内容を開示する必要が無いので、患者のプライバシーを保護することができる。
(第3実施例)
図10は、遺伝子情報分類システム10の全体構成を示す(第3実施例)。遺伝子情報分類システム10は、パーティ100−1〜Nと、管理装置110とを備える。パーティ100−1〜Nの各々は、情報の機密性を保持できる組織毎に設けられている。例えば、パーティ100−1〜Nの各々は、当該パーティに対応して当該パーティにおける暗号化処理を行う複数の端末装置によって実現されてもよい。
パーティ100−1〜Nの各々は、遺伝子情報を有する。本図では、遺伝子情報の種類毎に番号を付して示す。例えば、パーティ100−1は、種類1の遺伝子情報を有し、パーティ100−2は、種類2の遺伝子情報を有する。パーティ100−1、パーティ100−3およびパーティ100−6の遺伝子情報は既に分類されているのでその種類は判明している。一方で、パーティ100−2、パーティ100−4およびパーティ100−5の遺伝子情報はこれから分類するのでその種類は不明である。実際には、パーティ100−2は、種類2の遺伝子情報を有し、パーティ100−4は、種類2の遺伝子情報を有し、パーティ100−5は、種類3の遺伝子情報を有する。
管理装置110は、パーティ100−1〜Nの何れとも異なる管理者によって管理されている。そして、管理装置110は、パーティ100−1〜Nの各々によって保有されている遺伝子情報を分類して所定の判断を行い、判断結果を出力する。
図11は、管理装置110の機能を機能ブロックにより示す。管理装置110は、基準パーティ選択部1000と、未分類パーティ選択部1010と、交換部1020と、第1取得部1030と、第2取得部1040と、判断部1050とを有する。基準パーティ選択部1000は、既に分類された遺伝子情報を保有するパーティを基準パーティとして順次選択する。未分類パーティ選択部1010は、未だに分類されていない遺伝子情報を保有している未分類パーティを順次選択する。交換部1020は、各々の未分類パーティと基準パーティとの間で、各々の暗号鍵で当該パーティの遺伝子情報を暗号化した暗号データを交換させる。
第1取得部1030は、基準パーティが各々の未分類パーティから取得した暗号データを、前記基準パーティの暗号鍵で更に暗号化することにより生成された第1相互暗号データを取得する。第2取得部1040は、各々の未分類パーティが基準パーティから取得した暗号データを、当該未分類パーティの暗号鍵で更に暗号化することにより生成された第2相互暗号データを取得する。判断部1050は、各々の未分類パーティについて、当該未分類パーティについて生成された第1相互暗号データが第2相互暗号データに一致することを条件として、当該未分類パーティのおよび基準パーティが共に同一種類の遺伝子情報を保有していると判断する。
判断部1050による判断結果を受けて、基準パーティ選択部1000は、次の基準パーティを選択し、未分類パーティ選択部1010は、次の未分類パーティを選択する。具体的には、未分類パーティ選択部1010は、基準パーティの遺伝子情報の種類と一致しなかった未分類パーティの各々を、次の未分類パーティとして選択する。また、基準パーティ選択部1000は、基準パーティの遺伝子情報の種類と一致した未分類パーティの何れかを、次の基準パーティとして選択する。
図12は、管理装置110が遺伝子情報を分類する処理の一例を示す。基準パーティ選択部1000は、既に分類された遺伝子情報を保有するパーティを基準パーティとして選択する(S1200)。未分類パーティ選択部1010は、未だに分類されていない遺伝子情報を保有している未分類パーティを選択する(S1210)。交換部1020は、各々の未分類パーティと基準パーティとの間で、各々の暗号鍵で当該パーティの遺伝子情報を暗号化した暗号データを交換させる(S1220)。
第1取得部1030は、基準パーティが各々の未分類パーティから取得した暗号データを、基準パーティの暗号鍵で更に暗号化することにより生成された第1相互暗号データを取得する(S1230)。第2取得部1040は、各々の未分類パーティが基準パーティから取得した暗号データを、当該未分類パーティの暗号鍵で更に暗号化することにより生成された第2相互暗号データを取得する(S1240)。判断部1050は、各々の未分類パーティについて、当該未分類パーティについて生成された第1相互暗号データが第2相互暗号データに一致することを条件として、当該未分類パーティのおよび基準パーティが共に同一種類の遺伝子情報を保有していると判断する(S1250)。
全てのパーティについて、その遺伝子情報が既に分類できた場合には(S1260:YES)、管理装置110は、本図の処理を終了する。一方で、何れかのパーティが依然として未分類パーティである場合には(S1260:NO)、管理装置110は、S1200に処理を戻す。S1200において、基準パーティ選択部1000は、基準パーティの遺伝子情報の種類と一致した未分類パーティの何れかを、次の基準パーティとして選択する(S1200)。また、未分類パーティ選択部1010は、基準パーティの遺伝子情報の種類と一致しなかった未分類パーティの各々を、次の未分類パーティとして選択する(S1210)。これらの基準パーティおよび未分類パーティについて、交換部1020は、交換処理を行う(S1220)。以降の処理は既に述べた処理と同一であるので説明を省略する。
以上、本図の処理によっても、第1実施例および第2実施例と同様に、各保有者が保有するプライベートデータを、他の保有者に知られることなく分類することができる。更に、第1実施例および第2実施例と同様に、分類処理に要する処理時間をこれまでよりも短縮して処理を効率化できる。
図13は、以上の各々の実施例においてパーティ20−5、管理装置70または管理装置110として機能する情報システム500のハードウェア構成の一例を示す。情報システム500は、ホストコントローラ1382により相互に接続されるCPU1300、RAM1320、及びグラフィックコントローラ1375を有するCPU周辺部と、入出力コントローラ1384によりホストコントローラ1382に接続される通信インターフェイス1330、ハードディスクドライブ1340、及びCD−ROMドライブ1360を有する入出力部と、入出力コントローラ1384に接続されるROM1310、フレキシブルディスクドライブ1350、及び入出力チップ1370を有するレガシー入出力部とを備える。
ホストコントローラ1382は、RAM1320と、高い転送レートでRAM1320をアクセスするCPU1300及びグラフィックコントローラ1375とを接続する。CPU1300は、ROM1310及びRAM1320に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ1375は、CPU1300等がRAM1320内に設けたフレームバッファ上に生成する画像データを取得し、表示装置1380上に表示させる。これに代えて、グラフィックコントローラ1375は、CPU1300等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
入出力コントローラ1384は、ホストコントローラ1382と、比較的高速な入出力装置である通信インターフェイス1330、ハードディスクドライブ1340、及びCD−ROMドライブ1360を接続する。通信インターフェイス1330は、ネットワークを介して外部の装置と通信する。ハードディスクドライブ1340は、情報システム500が使用するプログラム及びデータを格納する。CD−ROMドライブ1360は、CD−ROM1395からプログラム又はデータを読み取り、RAM1320又はハードディスクドライブ1340に提供する。
また、入出力コントローラ1384には、ROM1310と、フレキシブルディスクドライブ1350や入出力チップ1370等の比較的低速な入出力装置とが接続される。ROM1310は、情報システム500の起動時にCPU1300が実行するブートプログラムや、情報システム500のハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ1350は、フレキシブルディスク1390からプログラム又はデータを読み取り、入出力チップ1370を介してRAM1320またはハードディスクドライブ1340に提供する。入出力チップ1370は、フレキシブルディスク1390や、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して各種の入出力装置を接続する。
情報システム500に提供されるプログラムは、フレキシブルディスク1390、CD−ROM1395、又はICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、入出力チップ1370及び/又は入出力コントローラ1384を介して、記録媒体から読み出され情報システム500にインストールされて実行される。プログラムが情報システム500等に働きかけて行わせる動作は、図1から図12において説明したパーティ20−5、管理装置70または管理装置110における動作と同一であるから、説明を省略する。
以上に示したプログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク1390、CD−ROM1395の他に、DVDやPD等の光学記録媒体、MD等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムを情報システム500に提供してもよい。
以下、上述の各実施例において説明した処理の詳細について補足説明する。
(1)罹患同胞対解析について
第1実施例において、パーティ20−1〜Nは、自らが有する遺伝子情報の種類が他の何れのパーティと同一であるかを判断できる。この判断結果を集計することにより、各々の遺伝子情報をその種類毎に分類することができる。この分類結果は、罹患同胞対解析に活用できる。以下、罹患同胞対解析について説明する。
罹患同胞対解析は、例えば以下のようなデータを解析の対象とする。
家族ID=1 個体ID=21 父親ID=0 母親ID=0 性別ID=1 疾患ID=1 対立遺伝子1=1/1 対立遺伝子2=3/5
家族ID=1 個体ID=22 父親ID=0 母親ID=0 性別ID=2 疾患ID=1 対立遺伝子1=1/1 対立遺伝子2=4/7
家族ID=1 個体ID=23 父親ID=21 母親ID=22 性別ID=1 疾患ID=2 対立遺伝子1=1/1 対立遺伝子2=5/7
家族ID=1 個体ID=24 父親ID=21 母親ID=22 性別ID=2 疾患ID=2 対立遺伝子1=1/1 対立遺伝子2=3/4
このデータにおいて、対立遺伝子1とは、ある遺伝子座における対立遺伝子の組を示す。また、対立遺伝子2とは、対立遺伝子1とは異なる他の遺伝子座における対立遺伝子の組を示す。罹患同胞対解析においては、IBD(Identity By Descent)というパラメータが用いられる。IBD とは、二個体の対立遺伝子が、祖先と同じものを共有する状態をいう。罹患同胞対解析では、血縁関係にあるに個体の間のIBD を考える。例えば、ある遺伝子座において、父親F の遺伝型が1/2、母親M の遺伝子型が3/4 であるする。両者の四人の子Ck, (i = 1, ..., 4) の遺伝型がそれぞれ、1/3, 1/3, 1/4, 2/4 であるとすると、F,Ck およびM,Ck はそれぞれ一つの対立遺伝子を共有しているので、IBD = 1 である。なお、親子間のIBD は必ず1 である。
一方、兄弟間のIBD は、C1(1/3), C1(1/3) では、1, 3 を共有しているので、IBD = 2, C1(1/3), C3(1/4) では、1 のみを共有しているので、IBD = 1, C1(1/3), C4(2/4)では、一つも共有していないので、IBD = 0 である。この場合、兄弟同士のIBD は、IBD = 0, 2 である確率が0.25、IBD = 1 である確率が0.5 である。
続いて、罹患同胞対解析の原理を簡単に説明する。罹患同胞対(疾患が発症している兄弟)のデータを集めてきて、この集団について同じように調べたとき、もし観察したマーカー遺伝子が疾患と連鎖している場合はこの比(1:2:1)がずれる(IBD=2 のペアの数が増え、IBD=0 のペアの数が減る)と考えられる。一方、疾患遺伝子と連鎖してい
ないマーカー遺伝子では、任意な兄弟と同じ配分(=1:2:1)になると考えられる。
罹患同胞対解析においてはこの仮説を利用し、罹患同胞対における対立遺伝子の共有する割合のズレを指標に観察データの尤度を算出する。尤度は、次のように表される。
Figure 0004121134
ここで、wij はj 番目の家系の罹患同胞対がIBD = i である確率である。変数はz = (z0, z1, z2) であり、自由度は2(z2 = 1−z1−z0)ゆえ独立変数はz0, z1 の2つである。マーカー遺伝子と、疾患遺伝子が連鎖していないとき(即ち、z0 = 0.25、z1 = 0.5、z2 = 0.25 の場合) の尤度との比をとり、最尤法により、尤度最大となるz を求める。家系データと各個人の遺伝子情報から,尤度最大となるz を求めるソフトウェアが公開されている(非特許文献2を参照)。
(2)暗号化の順序によらず同一の暗号データを得ることができる暗号鍵について
既に述べたように、本実施例において各パーティが用いる暗号の暗号化関数は、暗号化の順序によらず同一の暗号データを得ることが必要である。即ち例えば、暗号化関数f, g およびメッセージx について、f(g(x)) = g(f(x)) となる必要がある。このような暗号化方式は、Commutative encruption(CE)と呼ばれている。以下に、Commutative Encryptionを構成するために必要な性質を示す(より詳細には、非特許文献6を参照。)。
(2−1)indistinguishability
有限の定義域Ωk ⊆ {0, 1}k における分布をD1,D2 とし、x ∈ Ωk が与えられたときにtrue,false を返すk に関する多項式時間アルゴリズムをAk(x)、任意の多項式をp(k) とし、全ての十分大きいk について、
Figure 0004121134
を満たすとする。このときD1 はD2 に対してcomputationally indistinguishable である、という。
(2−2)Communicative Encryption
Communicative Encryption は、以下の性質を満たす有限の定義域における関数f : KeyF ×DomF → DomFである。
(a) 全てのe, e' ∈ Key において、fe・fe = fe'・fe'
(b) fe について、DomF → DomF は全単射
(c) インバースfe −1 はe が与えられれば多項式時間で計算可能
(d) 分布<x, fe(x), y, fe(x)> は分布<x, fe(x), y, z> とindistinguishable である。ここで、x, y, z ∈r DomF, e ∈rDomF である。∈r は定義域からの一様ランダムな選択を意味する。
(3−3) Example of Commutative Encryption
ドメインF を全てのmodulo p における平方剰余数とする。つまり、p, q = (p−1)/2 は両方とも素数であり、これを安全な素数(safe prime) と呼ぶ。またKeyF を{1, 2,…q−1} とする。このとき、DecisionaDiffie-Hellman 仮説を想定すると、
Figure 0004121134
はcommutative encryption である。たとえば、
Figure 0004121134
である。またそのほかの条件も満足している(非特許文献4を参照のこと)。
以上、上記の各実施例によれば、各保有者が保有するプライベートデータを他の保有者に知られることなく、全ての保有者が保有するプライベートデータを効率的に分類することができる。この分類処理は、処理時間が保有者数の2乗に比例するこれまでの方法よりも、極めて短い処理時間によって実現される。実際に保有者が1000である場合について実験したところ、第1実施例の方法では従来の70分の1程度の処理時間を要した。更に、第2実施例の方法で病院の数を10とした場合には、従来の1000分の1程度の処理時間を要した。このように、上記の各実施例によれば、罹患同胞対解析等の各種解析処理に適用可能な分類結果を、これまでより極めて効率的に求めることができる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
図1は、遺伝子情報分類システム10の全体構成を示す(第1実施例)。 図2は、パーティ20−5の機能構成の一例を示す。 図3は、管理装置30の機能を機能ブロック毎に示す。 図4は、管理装置30が遺伝子情報を分類する処理の一例を示す。 図5は、第1実施例の変形例における処理の流れを説明する概念図である。 図6は、遺伝子情報分類システム10の全体構成を示す(第2実施例)。 図7は、管理装置70の機能を機能ブロック毎に示す。 図8は、管理装置70が遺伝子情報を分類する処理の一例を示す。 図9は、第2実施例における処理の流れを説明する概念図である。 図10は、遺伝子情報分類システム10の全体構成を示す(第3実施例)。 図11は、管理装置110の機能を機能ブロックにより示す。 図12は、管理装置110が遺伝子情報を分類する処理の一例を示す。 図13は、以上の各々の実施例においてパーティ20−5、パーティ60およびパーティ100として機能する情報システム500のハードウェア構成の一例を示す。 図14は、遺伝子情報を開示することなく遺伝子情報を種類毎に分類する処理の概念図である。
符号の説明
10 遺伝子情報分類システム
20 パーティ
30 管理装置
60 パーティ
70 管理装置
100 パーティ
110 管理装置
200 遺伝子情報記録部
210 暗号処理部
300 記録部
310 代表パーティ選択部
320 対象パーティ選択部
330 交換部
340 第1取得部
350 第2取得部
360 判断部
370 登録部
500 情報システム
700 代表データ選択部
710 対象パーティ選択部
720 交換部
730 キャッシュ部
740 第1取得部
750 第2取得部
760 判断部
1000 基準パーティ選択部
1010 未分類パーティ選択部
1020 交換部
1030 第1取得部
1040 第2取得部
1050 判断部

Claims (16)

  1. 複数のパーティが保有する複数のプライベートデータを種類毎に分類するシステムとして、情報システムを機能させるプログラムであって、
    前記複数のパーティのそれぞれは、暗号化の順序によらず同一の暗号データを得ることができるアルゴリズムにおいて用いられる複数の暗号鍵のそれぞれを有し、
    既に種類が分類されたプライベートデータを保有する前記パーティについて、同一種類の前記プライベートデータを保有しているパーティを、前記プライベートデータの種類毎にパーティの組として記録する記録部と、
    同一種類の前記プライベートデータを保有している前記パーティの組を代表するパーティである代表パーティを、前記パーティの組ごとに選択する代表パーティ選択部と、
    各々の前記代表パーティと、新たに分類の対象とするプライベートデータを保有する対象パーティとの間で、各々の暗号鍵で当該パーティのプライベートデータを暗号化した暗号データを交換させる交換部と、
    前記対象パーティが各々の前記代表パーティから取得した暗号データを、前記対象パーティの暗号鍵で更に暗号化することにより生成された第1相互暗号データを取得する第1取得部と、
    各々の前記代表パーティが前記対象パーティから取得した暗号データを、前記代表パーティの暗号鍵で更に暗号化することにより生成された第2相互暗号データを取得する第2取得部と、
    各々の前記代表パーティについて、当該代表パーティについて生成された第1相互暗号データが第2相互暗号データと一致することを条件として、当該代表パーティおよび当該対象パーティが共に同一種類のプライベートデータを有すると判断する判断部と
    して機能させるプログラム。
  2. 前記情報システムを、
    前記対象パーティのプライベートデータの種類が、何れの代表パーティのプライベートデータの種類にも一致しなかったことを条件として、前記対象パーティを新たな代表パーティとして前記記録部に登録する登録部として更に機能させる
    請求項1に記載のプログラム。
  3. 前記情報システムを、前記判断部によって判断された前記対象パーティの種類に基づいて、前記対象パーティを前記記録部に追加して登録する登録部として更に機能させる
    請求項1に記載のプログラム。
  4. 前記情報システムを、未だに分類されていないプライベートデータを有する複数のパーティの中から、予め定められた順序に従って、前記対象パーティを順次選択する対象パーティ選択部として更に機能させ、
    前記代表パーティ選択部は、少なくとも1つの種類のプライベートデータについて、前記対象パーティ選択部によって対象パーティが選択される毎に、当該種類に対応して記録されたパーティの組の中から、予め定められた順序で代表パーティを選択する
    請求項3に記載のプログラム。
  5. 前記情報システムを、
    未だに分類されていないプライベートデータを有する複数のパーティの中から、予め定められた順序に従って、前記対象パーティを順次選択する対象パーティ選択部として更に機能させ、
    前記代表パーティ選択部は、少なくとも1つの種類のプライベートデータについて、前記対象パーティ選択部によって対象パーティが選択される毎に、当該種類に対応して記録されたパーティの組の中から、当該対象パーティとの間の通信速度が所定の基準速度以上のパーティを前記代表パーティとして選択する
    請求項3に記載のプログラム。
  6. 前記代表パーティ選択部は、少なくとも1つのプライベートデータを保有するパーティの組の中から前記代表パーティを無作為に選択する
    請求項1に記載プログラム。
  7. 前記複数のパーティの各々は、互いに異なる個体の遺伝子情報を、前記プライベートデータとして保有し、
    前記代表パーティ選択部は、既に分類された遺伝子情報の種類の各々について、当該種類の遺伝子情報を保有しているパーティを代表する代表パーティを選択し、
    前記交換部は、前記代表パーティ選択部によって選択された各々の前記代表パーティと、新たに分類の対象とする遺伝子情報を保有する対象パーティとの間で、各々の暗号鍵で当該パーティの遺伝子情報を暗号化した暗号データを交換させ、
    前記判断部は、各々の前記代表パーティについて、当該代表パーティについて生成された第1相互暗号データが第2相互暗号データに一致することを条件として、当該代表パーティおよび前記対象パーティが共に同一種類の遺伝子情報を有すると判断する
    請求項1に記載のプログラム。
  8. 各々のパーティが保有する複数のプライベートデータを種類毎に分類するシステムとして、情報システムを機能させるプログラムであって、
    前記複数のパーティのそれぞれは、暗号化の順序によらず同一の暗号データを得ることができるアルゴリズムにおいて用いられる複数の暗号鍵のそれぞれを有し、
    既にプライベートデータの種類が分類されたパーティである基準パーティについて、当該基準パーティが有する複数のプライベートデータの種類毎に、当該種類に分類されたプライベートデータの組を代表するプライベートデータである代表データを選択する代表データ選択部と、
    前記基準パーティ以外のパーティの中から、新たに分類の対象とするプライベートデータを保有する対象パーティを順次選択する対象パーティ選択部と、
    前記基準パーティと前記対象パーティとの間で、前記基準パーティにおける前記プライベートデータの各々の種類毎の前記代表データを前記基準パーティの暗号鍵で暗号化した暗号データの各々と、前記対象パーティが有する少なくとも1つのプライベートデータを前記対象パーティの暗号鍵で暗号化した暗号データの各々とを交換させる交換部と、
    前記基準パーティが前記対象パーティから取得した各々の暗号データを、前記基準パーティの暗号鍵で更に暗号化することにより生成された各々の第1相互暗号データを取得する第1取得部と、
    前記対象パーティが前記基準パーティから取得した各々の暗号データを、前記対象パーティの暗号鍵で更に暗号化することにより生成された各々の第2相互暗号データを取得する第2取得部と、
    各々の第1相互暗号データが、何れかの第2相互暗号データに一致することを条件として、前記基準パーティと前記対象パーティとが同一種類のプライベートデータを保有していると判断する判断部と
    して機能させるプログラム。
  9. 前記代表データ選択部は、更に、各々の前記対象パーティについて、当該対象パーティに保有されるプライベートデータから少なくとも1つのプライベートデータを選択し、
    前記交換部は、前記基準パーティと前記対象パーティとの間で、前記基準パーティの各々の前記代表データを前記基準パーティの暗号鍵で暗号化した暗号データの各々と、前記対象パーティの各々の前記プライベートデータを前記対象パーティの暗号鍵で暗号化した暗号データの各々とを交換させる
    請求項8に記載のプログラム。
  10. 前記システムは、各々のパーティに対応して当該パーティにおける暗号化処理を行う複数の端末装置と、何れのパーティとも異なる管理者によって管理された管理装置を有し、
    前記管理装置を、前記代表データ選択部、前記対象パーティ選択部、前記交換部、前記第1取得部、および前記第2取得部として機能させる
    請求項8に記載のプログラム。
  11. 前記管理装置を、前記交換部の処理において、前記基準パーティから前記対象パーティに対して送信される前記暗号データをキャッシュするキャッシュ部として更に機能させ、
    前記交換部は、前記キャッシュ部にキャッシュされた各々の暗号データを、他の各々の前記対象パーティに対して送信することにより、前記基準パーティおよび各々の前記対象パーティとの間で暗号データを順次交換する
    請求項10に記載のプログラム。
  12. 前記複数のパーティの各々は、少なくとも1つの個体の遺伝子情報を、少なくとも1つの前記プライベートデータとして保有し、
    前記代表データ選択部は、前記基準パーティが有する複数の遺伝子情報の種類毎に、当該種類に分類された遺伝子情報を代表する代表データを選択し、
    前記対象パーティ選択部は、前記基準パーティ以外のパーティの中から、新たに分類の対象とする遺伝子情報を保有する対象パーティを順次選択し、
    前記交換部は、前記基準パーティと前記対象パーティとの間で、前記基準パーティにおける前記遺伝子情報の各々の種類毎の前記代表データを前記基準パーティの暗号鍵で暗号化した暗号データの各々と、前記対象パーティが有する少なくとも1つの遺伝子情報を前記対象パーティの暗号鍵で暗号化した暗号データの各々とを交換し、
    前記判断部は、各々の第1相互暗号データが、何れかの第2相互暗号データに一致することを条件として、前記基準パーティおよび前記対象パーティが共に同一種類の遺伝子情報を保有していると判断する
    請求項8に記載のプログラム。
  13. コンピュータにより、複数のパーティが保有する複数のプライベートデータを種類毎に分類する分類方法であって、
    前記複数のパーティのそれぞれは、暗号化の順序によらず同一の暗号データを得ることができるアルゴリズムにおいて用いられる複数の暗号鍵のそれぞれを有し、
    既に種類が分類されたプライベートデータを保有する前記パーティについて、同一種類の前記プライベートデータを保有しているパーティを、前記プライベートデータの種類毎にパーティの組として、前記コンピュータの記録部により記録する記録段階と、
    前記コンピュータの代表パーティ選択部により、同一種類の前記プライベートデータを保有している前記パーティの組を代表するパーティである代表パーティを、前記パーティの組ごとに選択する選択する代表パーティ選択段階と、
    前記コンピュータの交換部により、各々の前記代表パーティと、新たに分類の対象とするプライベートデータを保有する対象パーティとの間で、各々の暗号鍵で当該パーティのプライベートデータを暗号化した暗号データを交換させる交換段階と、
    前記コンピュータの第1取得部により、前記対象パーティが各々の前記代表パーティから取得した暗号データを、前記対象パーティの暗号鍵で更に暗号化することにより生成された第1相互暗号データを取得する第1取得段階と、
    前記コンピュータの第2取得部により、各々の前記代表パーティが前記対象パーティから取得した暗号データを、前記代表パーティの暗号鍵で更に暗号化することにより生成された第2相互暗号データを取得する第2取得段階と、
    前記コンピュータの判断部により、各々の前記代表パーティについて、当該代表パーティについて生成された第1相互暗号データが第2相互暗号データと一致することを条件として、当該代表パーティおよび当該対象パーティが共に同一種類のプライベートデータを有すると判断する判断段階と
    を有する分類方法。
  14. 複数のパーティが保有する複数のプライベートデータを種類毎に分類するシステムであって、
    前記複数のパーティのそれぞれは、暗号化の順序によらず同一の暗号データを得ることができるアルゴリズムにおいて用いられる複数の暗号鍵のそれぞれを有し、
    既に種類が分類されたプライベートデータを保有する前記パーティについて、同一種類の前記プライベートデータを保有しているパーティを、前記プライベートデータの種類毎にパーティの組として記録する記録部と、
    同一種類の前記プライベートデータを保有している前記パーティの組を代表するパーティである代表パーティを、前記パーティの組ごとに選択する選択する代表パーティ選択部と、
    各々の前記代表パーティと、新たに分類の対象とするプライベートデータを保有する対象パーティとの間で、各々の暗号鍵で当該パーティのプライベートデータを暗号化した暗号データを交換させる交換部と、
    前記対象パーティが各々の前記代表パーティから取得した暗号データを、前記対象パーティの暗号鍵で更に暗号化することにより生成された第1相互暗号データを取得する第1取得部と、
    各々の前記代表パーティが前記対象パーティから取得した暗号データを、前記代表パーティの暗号鍵で更に暗号化することにより生成された第2相互暗号データを取得する第2取得部と、
    各々の前記代表パーティについて、当該代表パーティについて生成された第1相互暗号データが第2相互暗号データと一致することを条件として、当該代表パーティおよび当該対象パーティが共に同一種類のプライベートデータを有すると判断する判断部と
    を備えるシステム。
  15. コンピュータにより、各々のパーティが保有する複数のプライベートデータを種類毎に分類する分類方法であって、
    前記複数のパーティのそれぞれは、暗号化の順序によらず同一の暗号データを得ることができるアルゴリズムにおいて用いられる複数の暗号鍵のそれぞれを有し、
    既にプライベートデータの種類が分類されたパーティである基準パーティについて、当該基準パーティが有する複数のプライベートデータの種類毎に、当該種類に分類されたプライベートデータの組を代表するプライベートデータである代表データを、前記コンピュータの代表データ選択部により選択する代表データ選択段階と、
    前記コンピュータの対象パーティ選択部により、前記基準パーティ以外のパーティの中から、新たに分類の対象とするプライベートデータを保有する対象パーティを順次選択する対象パーティ選択段階と、
    前記コンピュータの交換部により、前記基準パーティと前記対象パーティとの間で、前記基準パーティにおける前記プライベートデータの各々の種類毎の前記代表データを前記基準パーティの暗号鍵で暗号化した暗号データの各々と、前記対象パーティが有する少なくとも1つのプライベートデータを前記対象パーティの暗号鍵で暗号化した暗号データの各々とを交換させる交換段階と、
    前記コンピュータの第1取得部により、前記基準パーティが前記対象パーティから取得した各々の暗号データを、前記基準パーティの暗号鍵で更に暗号化することにより生成された各々の第1相互暗号データを取得する第1取得段階と、
    前記コンピュータの第2取得部により、前記対象パーティが前記基準パーティから取得した各々の暗号データを、前記対象パーティの暗号鍵で更に暗号化することにより生成された各々の第2相互暗号データを取得する第2取得段階と、
    前記コンピュータの判断部により、各々の第1相互暗号データが、何れかの第2相互暗号データに一致することを条件として、前記基準パーティと前記対象パーティとが同一種類のプライベートデータを保有していると判断する判断段階と
    を有する分類方法。
  16. 各々のパーティが保有する複数のプライベートデータを種類毎に分類するシステムであって、
    前記複数のパーティのそれぞれは、暗号化の順序によらず同一の暗号データを得ることができるアルゴリズムにおいて用いられる複数の暗号鍵のそれぞれを有し、
    既にプライベートデータの種類が分類されたパーティである基準パーティについて、当該基準パーティが有する複数のプライベートデータの種類毎に、当該種類に分類されたプライベートデータの組を代表するプライベートデータである代表データを選択する代表データ選択部と、
    前記基準パーティ以外のパーティの中から、新たに分類の対象とするプライベートデータを保有する対象パーティを順次選択する対象パーティ選択部と、
    前記基準パーティと前記対象パーティとの間で、前記基準パーティにおける前記プライベートデータの各々の種類毎の前記代表データを前記基準パーティの暗号鍵で暗号化した暗号データの各々と、前記対象パーティが有する少なくとも1つのプライベートデータを前記対象パーティの暗号鍵で暗号化した暗号データの各々とを交換させる交換部と、
    前記基準パーティが前記対象パーティから取得した各々の暗号データを、前記基準パーティの暗号鍵で更に暗号化することにより生成された各々の第1相互暗号データを取得する第1取得部と、
    前記対象パーティが前記基準パーティから取得した各々の暗号データを、前記対象パーティの暗号鍵で更に暗号化することにより生成された各々の第2相互暗号データを取得する第2取得部と、
    各々の第1相互暗号データが、何れかの第2相互暗号データに一致することを条件として、前記基準パーティと前記対象パーティとが同一種類のプライベートデータを保有していると判断する判断部と
    を備えるシステム。
JP2005160528A 2005-05-31 2005-05-31 プログラム、分類方法およびシステム Expired - Fee Related JP4121134B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005160528A JP4121134B2 (ja) 2005-05-31 2005-05-31 プログラム、分類方法およびシステム
US11/443,624 US7814323B2 (en) 2005-05-31 2006-05-31 Program, classification method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005160528A JP4121134B2 (ja) 2005-05-31 2005-05-31 プログラム、分類方法およびシステム

Publications (2)

Publication Number Publication Date
JP2006339895A JP2006339895A (ja) 2006-12-14
JP4121134B2 true JP4121134B2 (ja) 2008-07-23

Family

ID=37560071

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005160528A Expired - Fee Related JP4121134B2 (ja) 2005-05-31 2005-05-31 プログラム、分類方法およびシステム

Country Status (2)

Country Link
US (1) US7814323B2 (ja)
JP (1) JP4121134B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6779700B2 (ja) * 2016-08-04 2020-11-04 古野電気株式会社 制御機器の認証システム、制御機器の認証方法、及び制御機器のプログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5212784A (en) * 1990-10-22 1993-05-18 Delphi Data, A Division Of Sparks Industries, Inc. Automated concurrent data backup system
US5196840A (en) * 1990-11-05 1993-03-23 International Business Machines Corporation Secure communications system for remotely located computers
AP626A (en) * 1994-01-13 1998-01-16 Certco Llc Cryptographic system and method with key escrow feature.
US5568556A (en) * 1994-05-26 1996-10-22 Graph-It, Inc. System and method for encrypting sensitive information
JPH10504150A (ja) * 1994-07-19 1998-04-14 バンカーズ トラスト カンパニー 商用暗号システムにおけるディジタル署名を安全に使用するための方法
US5966441A (en) * 1996-11-18 1999-10-12 Apple Computer, Inc. Method and apparatus for creating a secure autonomous network entity of a network component system
US5963642A (en) * 1996-12-30 1999-10-05 Goldstein; Benjamin D. Method and apparatus for secure storage of data
US6157917A (en) * 1997-07-11 2000-12-05 Barber; Timothy P. Bandwidth-preserving method of charging for pay-per-access information on a network
JP2000068864A (ja) 1998-08-04 2000-03-03 Ganho So 人間の属性データに基づく多方向コミュニケーションツ ールおよびシステム
US6760752B1 (en) * 1999-06-28 2004-07-06 Zix Corporation Secure transmission system

Also Published As

Publication number Publication date
US20070283168A1 (en) 2007-12-06
US7814323B2 (en) 2010-10-12
JP2006339895A (ja) 2006-12-14

Similar Documents

Publication Publication Date Title
KR102403295B1 (ko) 동형적으로 암호화된 데이터의 유효성 확인 및 이에 대한 연산을 수행하기 위한 시스템 및 방법
US9536047B2 (en) Privacy-enhancing technologies for medical tests using genomic data
US9524370B2 (en) Method for privacy-preserving medical risk test
EP2895980B1 (en) Privacy-enhancing technologies for medical tests using genomic data
Ayday et al. {Privacy-Preserving} Computation of Disease Risk by Using Genomic, Clinical, and Environmental Data
US20160275308A1 (en) Method to manage raw genomic data in a privacy preserving manner in a biobank
Guo et al. A privacy-preserving online medical prediagnosis scheme for cloud environment
JP6250497B2 (ja) 情報管理システム
Dhanalakshmi et al. Security threats and approaches in E-Health cloud architecture system with big data strategy using cryptographic algorithms
KR102245886B1 (ko) 협력형으로 개인정보를 보호하는 통신환경에서의 분석서버 및 분석서버의 동작 방법, 서비스제공장치 및 서비스제공장치의 동작 방법
Singh et al. Practical personalized genomics in the encrypted domain
JP4822842B2 (ja) 匿名化識別情報生成システム、及び、プログラム。
JP4121134B2 (ja) プログラム、分類方法およびシステム
Singh et al. Towards Confidentiality-strengthened Personalized Genomic Medicine Embedding Homomorphic Cryptography.
Mahdi et al. Secure count query on encrypted heterogeneous data
JP7132506B2 (ja) 秘密情報検索システム、秘密情報検索プログラム、および秘密情報検索方法
JP7288194B2 (ja) 秘密情報管理プログラム、秘密情報管理方法、および秘密情報管理システム
Mahapatra et al. A secure health management framework with anti-fraud healthcare insurance using blockchain
Khan et al. Towards preserving privacy of outsourced genomic data over the cloud
Hao et al. Efficient and privacy-preserving multi-party skyline queries in online medical primary diagnosis
Nagaraja et al. Privacy preserving and data security—A survey
JP7469669B2 (ja) 秘密情報管理プログラム、秘密情報管理方法、および秘密情報管理システム
Nadpara et al. A Survey of Cryptographic Techniques to Secure Genomic Data
Mozumder et al. Towards privacy-preserving authenticated disease risk queries
Singh et al. Intelligent Cryptography Approach on Identity Based Encryption (IBE) for Secured Distributed EHR Data Storage in Cloud Computing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071204

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20071220

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20071228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080129

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080401

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: 20080422

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20080423

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080425

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110509

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees