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

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

▶ コーニンクレッカ フィリップス エヌ ヴェの特許一覧

特表2024-528667分散型台帳ベースのクエリロギングシステムにおける研究者のプライバシーが改善されたシステム及び方法
<>
  • 特表-分散型台帳ベースのクエリロギングシステムにおける研究者のプライバシーが改善されたシステム及び方法 図1
  • 特表-分散型台帳ベースのクエリロギングシステムにおける研究者のプライバシーが改善されたシステム及び方法 図2
  • 特表-分散型台帳ベースのクエリロギングシステムにおける研究者のプライバシーが改善されたシステム及び方法 図3
  • 特表-分散型台帳ベースのクエリロギングシステムにおける研究者のプライバシーが改善されたシステム及び方法 図4
  • 特表-分散型台帳ベースのクエリロギングシステムにおける研究者のプライバシーが改善されたシステム及び方法 図5
  • 特表-分散型台帳ベースのクエリロギングシステムにおける研究者のプライバシーが改善されたシステム及び方法 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-07-30
(54)【発明の名称】分散型台帳ベースのクエリロギングシステムにおける研究者のプライバシーが改善されたシステム及び方法
(51)【国際特許分類】
   G06F 21/62 20130101AFI20240723BHJP
   H04L 9/32 20060101ALI20240723BHJP
   G06F 21/64 20130101ALI20240723BHJP
   G06F 16/182 20190101ALI20240723BHJP
   G06F 16/28 20190101ALI20240723BHJP
【FI】
G06F21/62 327
H04L9/32 200C
G06F21/64
G06F16/182
G06F16/28
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024503443
(86)(22)【出願日】2022-07-08
(85)【翻訳文提出日】2024-02-06
(86)【国際出願番号】 EP2022069094
(87)【国際公開番号】W WO2023001591
(87)【国際公開日】2023-01-26
(31)【優先権主張番号】PCT/CN2021/107283
(32)【優先日】2021-07-20
(33)【優先権主張国・地域又は機関】CN
(31)【優先権主張番号】21200624.1
(32)【優先日】2021-10-04
(33)【優先権主張国・地域又は機関】EP
(81)【指定国・地域】
(71)【出願人】
【識別番号】590000248
【氏名又は名称】コーニンクレッカ フィリップス エヌ ヴェ
【氏名又は名称原語表記】Koninklijke Philips N.V.
【住所又は居所原語表記】High Tech Campus 52, 5656 AG Eindhoven,Netherlands
(74)【代理人】
【識別番号】110001690
【氏名又は名称】弁理士法人M&Sパートナーズ
(72)【発明者】
【氏名】ラルミュゾ アドリアーン ジョリス エイチ.
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175AA01
(57)【要約】
データシステム200に対して行われたクエリをロギングするための方法100であって、方法100が、データシステムにおいて、正規クエリエンティティから暗号化されたクエリを受信するステップ(120)であって、暗号化されたクエリが、デジタル署名方式を使用して正規クエリエンティティによってデジタル署名されており、さらに、デジタル署名が、暗号認証方式を使用して暗号化されている、受信するステップ(120)と、データシステムのクエリロギングデータベースにおいて、暗号化されたクエリの少なくとも一部分をロギングするステップ(130)とを有する。
【特許請求の範囲】
【請求項1】
データシステムに対して行われたクエリをロギングするための方法であって、前記方法が、
前記データシステムにおいて、正規クエリエンティティから暗号化されたクエリを受信するステップであって、前記暗号化されたクエリが、デジタル署名方式を使用して前記正規クエリエンティティによってデジタル署名されており、さらに、前記デジタル署名が、暗号認証方式を使用して暗号化されている、受信するステップと、
前記データシステムのクエリロギングデータベースにおいて、前記暗号化されたクエリの少なくとも一部分をロギングするステップと
を有する、方法。
【請求項2】
前記デジタル署名方式が、Camenisch-Lysyanskaya署名(CLS)デジタル署名方式である、請求項1に記載の方法。
【請求項3】
前記暗号認証方式が、ゼロ知識の簡潔で非対話的な知識の論証(zk-SNARK)方式又はゼロ知識のスケーラブルで透明な知識の論証(zk-STARK)方式である、請求項1に記載の方法。
【請求項4】
前記暗号化されたクエリが、(i)前記デジタル署名のための公開鍵と、(ii)前記暗号認証のための公開鍵とをさらに備える、請求項1に記載の方法。
【請求項5】
前記暗号化されたクエリが、(iii)前記正規クエリエンティティのための暗号化された一意の識別子と、(iv)前記暗号化されたクエリのための暗号化されたタイムスタンプとをさらに備える、請求項4に記載の方法。
【請求項6】
前記データシステムによって、前記正規クエリエンティティが正規クエリエンティティであることを検証するステップをさらに有し、前記検証するステップが、前記暗号認証方式及び前記デジタル署名方式を介した非特定化を使用する暗号化された前記デジタル署名の分析を有し、前記検証するステップが、前記正規クエリエンティティの身元を明らかにしない、請求項1に記載の方法。
【請求項7】
前記データシステムによって、受信した前記暗号化されたクエリを修正して、身元を特定する情報を削除し、それにより、修正した暗号化されたクエリを生成するステップであって、前記修正した暗号化されたクエリの少なくとも一部分が、前記データシステムの前記クエリロギングデータベースにロギングされる、前記生成するステップをさらに有する、請求項1に記載の方法。
【請求項8】
前記データシステムの施行者によって、前記データシステムの前記クエリロギングデータベースにロギングされた1つ又は複数のロギングされたクエリにアクセスするステップと、
前記施行者によって、前記暗号認証方式及び前記デジタル署名方式を使用して前記1つ又は複数のロギングされたクエリを特定するステップとをさらに有し、
前記特定するステップが、前記1つ又は複数のロギングされたクエリの各々の身元を明らかにする、請求項1に記載の方法。
【請求項9】
前記データシステムが、分散型ゲノムデータシステムである、請求項1に記載の方法。
【請求項10】
行われたクエリをロギングするための分散型データベースシステムあって、前記分散型データベースシステムが、
正規クエリエンティティによって前記分散型データベースシステムに対して行われたクエリの少なくとも一部分を保存するクエリロギングデータベースと、
複数の分散型データベースと、
(i)前記正規クエリエンティティから暗号化されたクエリを受信することであって、前記暗号化されたクエリが、デジタル署名方式を使用して前記正規クエリエンティティによってデジタル署名されており、さらに、前記デジタル署名が、暗号認証方式を使用して暗号化されている、前記受信することと、(ii)受信した前記暗号化されたクエリを前記クエリロギングデータベースに保存させることとを行うプロセッサと
を備える、分散型データベースシステム。
【請求項11】
前記デジタル署名方式が、Camenisch-Lysyanskaya署名(CLS)デジタル署名方式である、請求項10に記載の分散型データベースシステム。
【請求項12】
前記暗号認証方式が、ゼロ知識の簡潔で非対話的な知識の論証(zk-SNARK)方式又はゼロ知識のスケーラブルで透明な知識の論証(zk-STARK)方式である、請求項10に記載の分散型データベースシステム。
【請求項13】
前記暗号化されたクエリが、(i)前記デジタル署名のための公開鍵と、(ii)前記暗号認証のための公開鍵とをさらに備える、請求項10に記載の分散型データベースシステム。
【請求項14】
前記暗号化されたクエリが、(iii)前記正規クエリエンティティのための暗号化された一意の識別子と、(iv)前記暗号化されたクエリのための暗号化されたタイムスタンプとさらに備える、請求項13に記載の分散型データベースシステム。
【請求項15】
分散型ゲノムデータシステムである、請求項10に記載の分散型データベースシステム。
【発明の詳細な説明】
【技術分野】
【0001】
[0001] 本開示は、一般に、台帳ベースのクエリロギングシステムを用いてクエリを行い、それらをロギングする際の研究者のプライバシーを保護するための方法及びシステムを対象とする。
【背景技術】
【0002】
[0002] 多くのデータシステムは、分散型コホートなど、複数のステークホルダーにわたって分散されたデータを備える。データシステムは、各々がシステムのデータの一部を含む多数のデータベースを備える。データシステムのクエリインタフェースは、正規研究者が、研究者のクエリに関係のあるデータを特定及び/又は取得するために、分散されたデータについて問い合わせることを可能にする。
【0003】
[0003] しかし、悪意のある研究者、又は正規研究者の資格証明書を不正に取得した者が、巧妙に設計されたクエリのセットを使用し、データシステム上で、再特定攻撃などの推論攻撃を行うことができる。したがって、攻撃が疑われ、問い合わせを実行する必要がある場合に、データシステムによって受信したクエリをロギングすることが極めて重要となる。クエリをロギングするための1つのやり方として、ブロックチェーンを使用するものがあり、これは、異なるステークホルダーが、トランザクション(例えば、クエリ)を追跡し、イミュータブルな分散型台帳にそれらを保存することを可能にし、任意選択で、ステークホルダーの各々が台帳の完全なコピーを持つことができる。そのため、ブロックチェーンは、魅力的な解決策である。
【発明の概要】
【発明が解決しようとする課題】
【0004】
[0004] しかし、データシステムにおいてクエリをロギングすることは、少なくとも1つのプライバシーの問題、すなわち、クエリを行う研究者又は他の正規クエリエンティティの特定という問題を生み出す。典型的には、(研究者又は他の正規クエリエンティティに加えて)データシステムにおけるすべての参加者が、システムにおけるすべてのデータへの完全なアクセスを持ち、それらのデータを閲覧することができる。したがって、これらの参加者は、台帳内のすべてのロギングされたデータを読むことができ、それにより、研究者又は他の正規クエリエンティティの身元、関心、及び/又は意図についての実体情報の漏出が可能となるおそれがある。許可型ブロックチェーンを介してなど、台帳へのアクセスを正規ユーザに限定することは1つの選択肢であるが、このアプローチは、許可されたユーザへの信用に完全に依拠している。分散型ロギングのための既存のセキュリティ解決策は、真正性やセキュアな保存などの側面を保証することに焦点を定めている。しかし、これらの解決策は、クエリを行う研究者又は他の正規クエリエンティティのクエリ及び身元が、データシステム内で公開されたままであるという懸念に対処しておらず、不十分である。
【0005】
[0005] 正規クエリ実行エンティティの身元を明らかにすることなく、正規クエリ実行エンティティの認証を行うセキュアなデータシステム及び方法に対する継続的なニーズが存在する。本開示は、クエリシステムを使用して暗号化されたクエリを受信、認証、及びロギングする発明的方法及びシステムを対象とする。本明細書の様々な実施形態及び実装形態は、分散型データ及びクエリ台帳を備えるデータシステムを対象とする。データシステムは、正規クエリエンティティから暗号化されたクエリを受信し、暗号化されたクエリは、Camenisch-Lysyanskaya署名(CLS)デジタル署名方式を使用して正規クエリエンティティによってデジタル署名されており、さらに、デジタル署名は、暗号認証方式を使用して暗号化されている。データシステムは、データシステムのクエリロギングデータベース(台帳又はログ)に暗号化されたクエリの少なくとも一部分をロギングする。一実施形態によれば、データシステムは、潜在的なセキュリティ侵害に対して1つ若しくは複数の受信したクエリをレビューすることができ、且つ/又はデータシステムは、暗号認証方式及びCLSデジタル署名方式を介した非特定化を使用して正規クエリエンティティが正規クエリエンティティであることを検証することができ、検証は、正規クエリエンティティの身元を明らかにしない。一実施形態によれば、データシステムは、受信した暗号化されたクエリを修正して身元を特定する情報を削除し、それにより、修正した暗号化されたクエリを生成することができ、クエリロギングデータベースに修正した暗号化されたクエリをロギングすることができる。一実施形態によれば、データシステムの施行者は、クエリロギングデータベース内の1つ又は複数のロギングされたクエリにアクセスすることができ、暗号認証方式及びCLSデジタル署名方式を使用してアクセスしたロギングされたクエリを特定することができ、特定は、セキュリティレビュー又は他の目的のためにアクセスしたロギングされたクエリの身元を明らかにする。一実施形態によれば、データシステムは、分散型ゲノムデータシステムであるが、多くの他のシステムも可能である。
【課題を解決するための手段】
【0006】
[0006] 一般に、一態様において、データシステムに対して行われたクエリをロギングするための方法が提供される。本方法は、(i)データシステムにおいて、正規クエリエンティティから暗号化されたクエリを受信するステップであって、暗号化されたクエリが、デジタル署名方式を使用して正規クエリエンティティによってデジタル署名されており、さらに、デジタル署名が、暗号認証方式を使用して暗号化されている、受信するステップと、(ii)データシステムのクエリロギングデータベースにおいて、暗号化されたクエリの少なくとも一部分をロギングするステップとを有する。
【0007】
[0007] 一実施形態によれば、デジタル署名方式は、Camenisch-Lysyanskaya署名(CLS)デジタル署名方式である。
【0008】
[0008] 一実施形態によれば、暗号認証方式は、ゼロ知識の簡潔で非対話的な知識の論証(zk-SNARK)方式又はゼロ知識のスケーラブルで透明な知識の論証(zk-STARK)方式である。
【0009】
[0009] 一実施形態によれば、暗号化されたクエリは、(i)デジタル署名のための公開鍵と、(ii)暗号認証のための公開鍵とをさらに備える。一実施形態によれば、暗号化されたクエリは、(iii)正規クエリエンティティのための暗号化された一意の識別子と、(iv)暗号化されたクエリのための暗号化されたタイムスタンプとをさらに備える。
【0010】
[0010] 一実施形態によれば、本方法は、データシステムによって、正規クエリエンティティが正規クエリエンティティであることを検証するステップであって、検証するステップが、暗号認証方式及びデジタル署名方式を介した非特定化を使用する暗号化されたデジタル署名の分析を有する、検証するステップをさらに有し、検証するステップは、正規クエリエンティティの身元を明らかにしない。
【0011】
[0011] 一実施形態によれば、本方法は、データシステムによって、受信した暗号化されたクエリを修正して身元を特定する情報を削除し、それにより、修正した暗号化されたクエリを生成するステップであって、修正した暗号化されたクエリの少なくとも一部分が、データシステムのクエリロギングデータベースにロギングされる、生成するステップをさらに有する。
【0012】
[0012] 一実施形態によれば、本方法は、データシステムの施行者によって、データシステムのクエリロギングデータベースにロギングされた1つ又は複数のロギングされたクエリにアクセスするステップと、施行者によって、暗号認証方式及びデジタル署名方式を使用して1つ又は複数のロギングされたクエリを特定するステップとをさらに有し、特定するステップは、1つ又は複数のロギングされたクエリの各々の身元を明らかにする。
【0013】
[0013] 一実施形態によれば、データシステムは、分散型ゲノムデータシステムである。
【0014】
[0014] 別の態様によれば、データシステムは、行われたクエリをロギングするための分散型データベースシステムである。分散型データベースシステムは、正規クエリエンティティによって分散型データベースシステムに対して行われたクエリの少なくとも一部分を保存するように構成されたクエリロギングデータベースと、複数の分散型データベースと、(i)正規クエリエンティティから暗号化されたクエリを受信することであって、暗号化されたクエリが、デジタル署名方式を使用して正規クエリエンティティによってデジタル署名されており、さらに、デジタル署名が、暗号認証方式を使用して暗号化されている、受信することと、(ii)受信した暗号化されたクエリをクエリロギングデータベースに保存させることとを行うように構成されたプロセッサとを備える。
【0015】
[0015] 様々な実装形態において、プロセッサ又はコントローラは、1つ又は複数の記憶媒体に関連付けられる(本明細書では、「メモリ」として総称される、例えば、RAM、PROM、EPROM、及びEEPROM、フロッピーディスク、コンパクトディスク、光ディスク、磁気テープ等の揮発性及び不揮発性のコンピュータメモリ)。いくつかの実装形態では、記憶媒体は、1つ又は複数のプロセッサ及び/又はコントローラによって実行されると、本明細書で説明する機能の少なくとも一部を実行する1つ又は複数のプログラムを用いて符号化される。様々な記憶媒体が、プロセッサ又はコントローラ内に固定されてもよいし、持ち運び可能にされてもよく、それにより、本明細書で説明する様々な態様を実施するために、記憶媒体上に保存された1つ又は複数のプログラムをプロセッサ又はコントローラにロードすることができる。本明細書で使用される、「プログラム」又は「コンピュータプログラム」という用語は、1つ又は複数のプロセッサ又はコントローラをプログラムするために採用可能なあらゆるタイプのコンピュータコード(例えば、ソフトウェア又はマイクロコード)を指すために、総称的な意味で使用される。
【0016】
[0016] 以下でさらに詳細に説明する上述の概念及び追加の概念のすべての組合せは(そのような概念が相互に矛盾しないならば)、本明細書で開示される発明的主題の一部であることが企図されることを諒解されたい。特に、本開示の最後に登場する特許請求される主題のすべての組合せは、本明細書で開示される発明的主題の一部であることが企図される。また、参照によって組み込まれる任意の開示にも登場する、本明細書で明示的に採用される技術用語は、本明細書で開示される特定の概念と最も一致する意味が与えられるべきであることも諒解されたい。
【0017】
[0017] 様々な実施形態のこれら及び他の態様は、以下で説明される実施形態を参照して明らかとなり、解明されるであろう。
【0018】
[0018] 図面において、同様の参照符号は、一般に、様々な図を通して同じ部分を指す。また、図面は、縮尺通りである必要はなく、その代わり、一般に、様々な実施形態の原理を例示することに強調が置かれる。
【図面の簡単な説明】
【0019】
図1】[0019] 一実施形態による、データシステムに対して行われたクエリをロギングするための方法のフローチャートである。
図2】[0020] 一実施形態による、データシステムの概略図である。
図3】[0021] 一実施形態による、データシステムの概略図である。
図4】[0022] 一実施形態による、データシステムの概略図である。
図5】[0023] 一実施形態による、データシステムの概略図である。
図6】[0024] 一実施形態による、データシステムの概略図である。
【発明を実施するための形態】
【0020】
[0025] 本開示は、台帳ベースのクエリロギングシステムを用いてクエリを行い、それらをロギングするためのシステム及び方法の様々な実施形態について説明する。正規クエリエンティティが台帳ベースのクエリロギングシステムを使用する際に、正規クエリエンティティのプライバシーを保護する方法及びシステムを提供することは、有益であると認められ、評価されている。データシステムは、正規クエリエンティティから暗号化されたクエリを受信し、暗号化されたクエリは、Camenisch-Lysyanskaya署名(CLS)デジタル署名方式を使用して正規クエリエンティティによってデジタル署名されており、さらに、デジタル署名は、暗号認証方式を使用して暗号化されている。データシステムは、データシステムのクエリロギングデータベース(台帳又はログ)に暗号化されたクエリの少なくとも一部分をロギングする。一実施形態によれば、データシステムは、潜在的なセキュリティ侵害に対して1つ若しくは複数の受信したクエリをレビューすることができ、且つ/又はデータシステムは、暗号認証方式及びCLSデジタル署名方式を介した非特定化を使用して正規クエリエンティティが正規クエリエンティティであることを検証することができ、検証は、正規クエリエンティティの身元を明らかにしない。一実施形態によれば、データシステムは、受信した暗号化されたクエリを修正して身元を特定する情報を削除し、それにより、修正した暗号化されたクエリを生成することができ、クエリロギングデータベースに修正した暗号化されたクエリをロギングすることができる。一実施形態によれば、データシステムの施行者は、クエリロギングデータベース内の1つ又は複数のロギングされたクエリにアクセスすることができ、暗号認証方式及びCLSデジタル署名方式を使用してアクセスしたロギングされたクエリを特定することができ、特定は、セキュリティレビュー又は他の目的のためにアクセスしたロギングされたクエリの身元を明らかにする。一実施形態によれば、データシステムは、分散型ゲノムデータシステムであるが、多くの他のシステムも可能である。
【0021】
[0026] 図1を参照すると、一実施形態では、分散型データシステムに対して行われたクエリをロギングするための方法100のフローチャートである。図に関して説明する方法は、例としてのみ提供され、本開示の範囲を限定するものではないことが理解されるべきである。分散型データシステムは、本明細書で説明されるか又は別法で想定されるシステムのいずれかとすることができる。分散型データシステムは、単一のシステム又は複数の異なるシステムとすることができる。
【0022】
[0027] 本方法のステップ110において、分散型データシステムが提供される。例えば、図2に示す分散型データシステム200の一実施形態を参照すると、システムは、1つ又は複数のシステムバス212を介して相互接続された、プロセッサ220、メモリ230、ユーザインタフェース240、通信インタフェース250、及びストレージ260のうちの1つ又は複数を備える。図2は、いくつかの点において、抽象化を構成し、システム200のコンポーネントの実際の編成は、例示のものと異なり、より複雑となる場合もあることが理解されよう。また、分散型データシステム200は、本明細書で説明されるか又は別法で想定されるシステムのいずれかとすることができる。分散型データシステム200の他の要素及びコンポーネントは、本明細書の他の場所で開示及び/又は想定される。
【0023】
[0028] 一実施形態によれば、分散型データシステムは、複数のデータベースにわたって分散されたデータを備える。正規ユーザ(クエリ実行エンティティ)は、複数のデータベースのうちの1つ又は複数からデータを特定及び/又は取得するために分散型データシステムにクエリすることができる。一実施形態によれば、分散型データシステムは、分散型ゲノムデータシステムであり、クエリは、ゲノムデータのためのクエリであるが、多くの他のシステムも可能である。
【0024】
[0029] 本方法のステップ120において、分散型データシステムは、正規ユーザからクエリを受信する。正規ユーザの身元及びプライバシーを保護するために、クエリはデジタル署名され、暗号化されている。一実施形態によれば、暗号化されたクエリは、Camenisch-Lysyanskaya署名(CLS)デジタル署名方式を使用してクエリエンティティによってデジタル署名されているが、他のデジタル署名方式も可能である。一実施形態によれば、暗号化されたクエリは、暗号認証方式を使用して暗号化されている。
【0025】
[0030] 一実施形態によれば、Camenisch-Lysyanskaya署名(CLS)デジタル署名方式は、セキュアなデジタル署名のために利用される。CLS方式は、例えば、「Signature schemes and anonymous credentials from bilinear maps」、Camenisch及びLysyanskaya、Advances in Cryptology Vol.3152:56-72(Springer Verlag、2004)に記載されている。一実施形態によれば、暗号認証方式は、ゼロ知識の簡潔で非対話的な知識の論証(zk-SNARK)方式であり、この方式は、通信のために使用される帯域幅の量を最小限に抑えながら機密性を保持するような形で、知識又は所有権を確立するための暗号証明技法である。zk-SNARKを用いて、証明鍵へのアクセスを持つ側は、検証鍵を所有する側が検証可能である暗号プルーフを作成することができる。代替として、ゼロ知識のスケーラブルで透明な知識の論証(zk-STARK)方式が同様に利用され得る。
【0026】
[0031] 一実施形態によれば、本方法は、研究者の身元及びロギングされたクエリの両方を匿名化し、それにより、システムの各参加者を、システムの機能を可能にするためにアクセスする必要がある最小限の情報に限定する。図3を参照すると、これは、一実施形態における、データシステム300の概略図である。この例では、システムは、ゲノムデータシステムであるが、他の多くのデータシステムも可能である。このシステムでは、ゲノムデータベース(ビーコン)は、匿名のクエリを受信する。ビーコンは、クエリの内容を知っており、クエリが、送信の許可を持つ研究者によって送信されたことを知っているが、すべての可能性のある許可された研究者のうち、どの研究者がクエリを送信したのかについては分からない。このシステムでは、匿名のクエリは、データベースに保存される前にクエリ自体におけるあらゆる可能性のある個人特定可能な情報がさらに削ぎ落とされているため、ロギングシステムに接続された他のデータベースは、完全に非特定化されたクエリのみを見ることができる。このシステムでは、規則施行者は、規則を破った研究者を追放したり、罰したりすることを可能にするために、研究者の身元を突き止めることが可能な唯一の当事者である。
【0027】
[0032] 図4を参照すると、一実施形態において、これは、システムの正規ユーザから分散型データシステムのビーコンへの暗号化されたクエリの概略図である。正規ユーザの身元及びプライバシーを保護するために、クエリは、デジタル署名され、暗号化されている。一実施形態によれば、暗号化されたクエリは、CLSデジタル署名方式を使用してクエリエンティティによってデジタル署名されているが、他のデジタル署名方式も可能である。一実施形態によれば、暗号化されたクエリは、暗号認証方式を使用して暗号化されている。
【0028】
[0033] 一実施形態によれば、データシステムは、次のことを可能にする。(i)正規研究者/エンティティは、秘密鍵xのためにCLS署名方式を使用してクエリに署名し、対応する公開鍵Rはクエリに含まれており、研究者/エンティティは、自身の(その)一意なID(UUID)及びタイムスタンプ(Ti)を、Yを用いて暗号化し、Yは、規則施行側の公開鍵である。また、データシステムは、次のことも可能にする。(ii)正規研究者/エンティティは、暗号化が正しい暗号化であるというzk-SNARK(又はzk-STARK)プルーフを持ち、正規研究者/エンティティは、リング署名などの匿名化署名スキームを用いて少なくとも公開鍵R及び暗号化に署名する。
【0029】
[0034] このデジタル署名及び暗号化プロセスにより、研究者/エンティティが自身の(その)身元を隠すことが可能となる。本方法はまた、データシステムが、そのクエリを処理して、そのクエリのいくつかの部分を、完全性が保持されるような形で非特定化することも可能にする。例えば、データシステムは、データの推論に対してセンシティブな情報を通してクエリが暴露される可能性があると考えている、理解している、又は疑念を抱いている。とりわけ、データシステムは、単一のクエリによって何が明らかにされ得るのかについて主として懸念を持たないが(応答はロギングされないため)、特定のパターンにより、知識豊富な読み手には、データベースの個人特定可能な情報が明らかになることがあるため、連続するクエリに対して主として懸念を持っている。実際、継続は、前の要求に対する肯定的な応答を示唆している。
【0030】
[0035] 本方法のステップ130において、暗号化されたクエリの一部又はすべては、分散型データシステムのクエリロギングデータベースなどの台帳にロギングされる。暗号化されたクエリは、暗号化されたデータを保存するための任意の方法を使用してクエリロギングデータベースに保存することができる。クエリデータをロギングすることにより、潜在的な又は知られたセキュリティ又はプライバシーの問題が生じた場合に、クエリ実行エンティティの特定など、クエリデータの将来的な取得が可能となる。ただし、クエリは暗号化されたままであるため、分散型データシステムの施行者のみが、復号後に暗号化されたクエリデータにアクセスし、それを利用することができる。施行者は、例えば、分散型データシステム及び/又はシステムのクエリロギングデータベースのセキュリティ及び/又はプライバシーを保証する責任を担うエンティティとすることができる。例えば、施行者は、潜在的に非正規の目的で、悪意のある正規ユーザ又は正規ユーザの資格証明書を不正に取得した者が、分散型データシステムにアクセスしたという懸念又は疑いがある場合に復号されたクエリデータにアクセスして、それを利用することが必要となる。
【0031】
[0036] 任意選択のステップ140において、分散型データシステムは、クエリ実行エンティティの身元を明らかにすることなく、クエリ実行エンティティが分散型データシステムの正規ユーザであることを検証する。一実施形態によれば、検証することは、暗号認証方式及びデジタル署名方式を介した非特定化を使用する暗号化されたデジタル署名の分析を含む。
【0032】
[0037] 図5を参照すると、一実施形態において、これは、受信したクエリの部分的な特定又は認証の概略図であり、特定又は認証は、認証を行うが、1人(1つ)又は複数のクエリ実行エンティティの保護された個人特定可能な情報を明らかにしないような形で行われる。例えば、システムは、クエリが、研究者によって送信された元のクエリの正確な表現となることを可能にする。これを行うために、システムは、クエリを送信する際に研究者によって提供される公開鍵R及びCLS署名を利用する。これらの2つの要素が与えられると、システムは、元のオブジェクトを開示することなく、より詳細度の低いオブジェクト(検証すべきクエリ)が、元のオブジェクト、すなわち元のクエリの正確な部分集合であることを証明する逆CLS zk-プルーフを作成することができる。
【0033】
[0038] 一実施形態によれば、分散型データシステムが、クエリ実行エンティティがシステムの正規ユーザであることを検証する前又は後に、本方法のステップ130において、分散型データシステムのクエリロギングデータベースにクエリをロギングすることができる。
【0034】
[0039] 本方法の任意選択のステップ150において、分散型データシステムは、受信した暗号化されたクエリを修正して、身元を特定する情報を削除し、それにより、修正した暗号化されたクエリを生成する。一実施形態によれば、分散型データシステムが、暗号化されたクエリを修正し、修正した暗号化されたクエリを作成した後で、本方法のステップ130において、分散型データシステムのクエリロギングデータベースに修正した暗号化されたクエリをロギングすることができる。
【0035】
[0040] 本方法の任意選択のステップ160において、分散型データシステム又は分散型データシステムのユーザは、潜在的なセキュリティ侵害に対して、1つ又は複数のロギングした暗号化されたクエリなど、1つ又は複数の暗号化されたクエリをレビューする。この分析又はレビューは、クエリを復号することなく、また、1つ又は複数の暗号化されたクエリの各々を行ったクエリ実行エンティティの身元を知ることなく実行することができる。例えば、ユーザ又はアルゴリズムは、暗号化されたクエリをレビューして、潜在的なプライバシー又はセキュリティ上の懸念又は侵害を示すパターン等のフラグ又は識別子を特定することができる。このパターン等のフラグ又は識別子は、潜在的に非正規の目的で、悪意のある正規ユーザ又は正規ユーザの資格証明書を不正に取得した者が、分散型データシステムにアクセスしたことを示す。パターン等のフラグ又は識別子が見つかった場合、ユーザ又は分散型データシステムは、分散型データシステム及び/又はシステムのクエリロギングデータベースのセキュリティ及び/又はプライバシーを保証する責任を担う施行者又は他のエンティティに警告することができる。
【0036】
[0041] 本方法のステップ170において、分散型データシステムの施行者は、システムのクエリロギングデータベースにロギングされた1つ又は複数のクエリにアクセスする。一実施形態によれば、施行者は、分散型データシステム及び/又はシステムのクエリロギングデータベースのセキュリティ及び/又はプライバシーを保証する責任を担う任意のエンティティである。システムには、システムのクエリロギングデータベースへの限定されたセキュアなアクセスを保証するために、広範なセキュリティ及び/又は他の認証プロトコルを持つ限られた数の施行者が存在する。分散型データシステムの施行者のみが、暗号化されたクエリデータにアクセスし、それを利用することができる。施行者は、潜在的に非正規の目的で、悪意のある正規ユーザ又は正規ユーザの資格証明書を不正に取得した者が、分散型データシステムにアクセスしたという懸念又は疑いがある場合に復号されたクエリデータにアクセスして、それを利用することが必要となる。一実施形態によれば、施行者は、潜在的なプライバシー又はセキュリティ上の懸念又は侵害を示すパターン等のフラグ又は識別子が特定されると、暗号化されたクエリデータにアクセスし、それを利用することが必要となる。このパターン等のフラグ又は識別子は、潜在的に非正規の目的で、悪意のある正規ユーザ又は正規ユーザの資格証明書を不正に取得した者が、分散型データシステムにアクセスしたことを示す。施行者は、ローカル又は遠隔でデータにアクセスすることができる。
【0037】
[0042] 本方法のステップ180において、施行者は、暗号認証方式及びデジタル署名方式を使用してアクセスした1つ又は複数のロギングされたクエリに関連付けられた1人(1つ)又は複数のクエリエンティティを特定する。当然ながら、この特定は、1つ又は複数のロギングされたクエリの各々を行った1人(1つ)又は複数のエンティティを明らかにする。
【0038】
[0043] 図6を参照すると、一実施形態において、これは、アクセスした1つ又は複数のロギングされたクエリに関連付けられた1人(1つ)又は複数のエンティティの施行者による特定の概略図である。施行者は、公開鍵暗号化技法を使用する。1人(1つ)又は複数のエンティティは、規則施行者の公開鍵を使用してタイムスタンプと共に自身の(その)身元を暗号化している。次に、規則施行者はその情報を復号し、それにより、規則施行者のみが、身元がシステム内のすべてのデータベースから隠されたままである1人(1つ)又は複数のクエリエンティティが、所望の目標及びポリシーに従っているかどうかを追跡できるようになる。
【0039】
[0044] 一実施形態によれば、システムは、xjSNARKなどの高レベルの論理回路コンパイラと組み合わせたMITのlibsnarkなどのライブラリを使用して提案されたzk-SNARKを実施することができる。xjSNARKとlibsnarkとの組合せは、高レベルのプルーフを二次算術プログラムにコンパイルする。この二次スパンプログラムは、ランダムな秘密要素と共にzk-SNARK生成器に入力される。この結果が、公開証明鍵及び検証鍵である。検証鍵は、規制者、監査者、又は他の当事者と共有される。証明鍵は、パブリックフォーラム上などで、自由に共有することができる。
【0040】
[0045] 一実施形態によれば、CLS方式の実施は、楕円曲線ペアリング関数eを使用する。この方式の実施は、256ビットのBarreto-Naehrig(BN)曲線上のペアリングなどの、タイプ3の楕円曲線ペアリングを利用する。BN曲線上のペアリングは、次のように形式的に示される。
e:G×G2→G
【0041】
[0046] 生成元は、ナッシングアップマイスリーブ法(点に到達するまでG1のベースとなる生成元をハッシュ化する)で生成されたG1の生成元である。このBarreto-Naehrig曲線下で、署名は、32バイトの大きさとなる。規則施行者のプルーフによって使用される公開暗号鍵は、書類や同意書に署名するためのECDSAを使用して、例えば、非対称暗号鍵ペアを実装するためのsecp256r1曲線など、楕円曲線暗号によって達成することができる。代替として、従来のRSA及びDSAを使用して同様の結果を得ることができる。
【0042】
[0047] 図2を参照すると、これは、分散型データシステム200の概略図である。システム200は、本明細書で説明されるか又は別法で想定されるシステムのいずれかであり、本明細書で説明されるか又は別法で想定されるコンポーネントのいずれかを備える。図2は、いくつかの点で、抽象化を構成し、システム200のコンポーネントの実際の編成は、例示のものと異なり、より複雑となる場合もあることが理解されよう。
【0043】
[0048] 一実施形態によれば、システム200は、例えば、本方法の1つ又は複数のステップを実行するために、メモリ230若しくはストレージ260に保存された命令を実行するか又は別法でデータを処理することが可能なプロセッサ220を備える。プロセッサ220は、1つ又は複数のモジュールで形成される。プロセッサ220は、限定されないが、マイクロプロセッサ、マイクロコントローラ、複数のマイクロコントローラ、回路構成、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、単一のプロセッサ、複数のプロセッサを含む、任意の好適な形態を取る。
【0044】
[0049] メモリ230は、不揮発性メモリ及び/又はRAMを含む任意の好適な形態を取ることができる。メモリ230は、例えば、L1、L2、若しくはL3キャッシュ又はシステムメモリなどの様々なメモリを含む。そのため、メモリ230は、スタティックランダムアクセスメモリ(SRAM)、ダイナミックRAM(DRAM)、フラッシュメモリ、リードオンリーメモリ(ROM)、又は他の同様のメモリデバイスを含む。メモリは、とりわけ、オペレーティングシステムを保存することができる。RAMは、データの一時的保存のためにプロセッサによって使用される。一実施形態によれば、オペレーティングシステムは、プロセッサによって実行されると、システム200の1つ又は複数のコンポーネントの動作を制御するコードを含む。プロセッサが、本明細書に説明する機能のうちの1つ又は複数をハードウェアで実施する実施形態では、他の実施形態ではそのような機能に対応するものとして説明するソフトウェアを省略できることは明らかである。
【0045】
[0050] ユーザインタフェース240は、ユーザとの通信を可能にするための1つ又は複数のデバイスを含む。ユーザインタフェースは、情報を伝達及び/又は受信することを可能にする任意のデバイス又はシステムとすることができ、ユーザコマンドを受信するためのディスプレイ、マウス、及び/又はキーボードを含む。いくつかの実施形態では、ユーザインタフェース240は、通信インタフェース250を介して遠隔端末に提示されるコマンドラインインタフェース又はグラフィカルユーザインタフェースを含む。ユーザインタフェースは、システムの1つ又は複数のコンポーネントと共に配置されてもよいし、システムから遠隔に配置されて、有線及び/又は無線通信ネットワークを介して通信してもよい。
【0046】
[0051] 通信インタフェース250は、他のハードウェアデバイスとの通信を可能にするための1つ又は複数のデバイスを含む。例えば、通信インタフェース250は、イーサネットプロトコルに従って通信するように構成されたネットワークインタフェースカード(NIC)を含む。また、通信インタフェース250は、TCP/IPプロトコルに従って通信するためのTCP/IPスタックを実装してもよい。通信インタフェース250のための様々な代替又は追加のハードウェア又は構成が明らかであろう。
【0047】
[0052] ストレージ260は、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、又は他の記憶媒体などの1つ又は複数の機械可読記憶媒体を含む。様々な実施形態において、ストレージ260は、プロセッサ220による実行のための命令又はプロセッサ220が動作するデータを保存する。例えば、ストレージ260は、システム200の様々な動作を制御するためのオペレーティングシステム261を保存する。
【0048】
[0053] ストレージ260に保存されるものとして説明される様々な情報が、追加又は代替としてメモリ230に保存されることは明らかであろう。この点において、メモリ230は、ストレージデバイスを構成するものとも見なされ、ストレージ260は、メモリと見なされる。様々な他の配置構成も明らかであろう。さらに、メモリ230及びストレージ260は共に、非一時的機械可読媒体と見なされる。本明細書で使用する場合、非一時的という用語は、一時的信号を除外するが、揮発性及び不揮発性メモリの両方を含むあらゆる形態のストレージを含むものとして理解されよう。
【0049】
[0054] システム200は、説明される各コンポーネントの1つを含むものとして示されているが、様々な実施形態において、種々のコンポーネントが、複製されてもよい。例えば、プロセッサ220は、複数のマイクロプロセッサを含み、これらのマイクロプロセッサは、本明細書で説明する方法を独立して実行するように構成されるか、又は本明細書で説明する方法のステップ若しくはサブルーチンを実行することで、複数のプロセッサが協働して本明細書で説明する機能を達成するように構成される。さらに、システム200の1つ又は複数のコンポーネントが、クラウドコンピューティングシステムに実装される場合、様々なハードウェアコンポーネントが、別個の物理的システムに属してもよい。例えば、プロセッサ220は、第1のサーバにある第1のプロセッサと、第2のサーバにある第2のプロセッサとを含んでもよい。多くの他の変形例及び構成が可能である。
【0050】
[0055] 一実施形態によれば、システム200は、データシステムによって保存されたデータの一部又はすべてを含む、複数のデータベース、すなわち、分散型データベースシステム270を備える。データシステムは、分散型データベースシステム270内の複数のデータベースの検索を可能にする。ゲノムデータシステムの場合、分散型データベースの各々が、いくらかのゲノムデータを含む。
【0051】
[0056] 一実施形態によれば、システム200のストレージ260は、本明細書で説明されるか又は別法で想定される方法の1つ又は複数の機能又はステップを実行するための1つ又は複数のアルゴリズム、モジュール、及び/又は命令を保存する。例えば、システムは、命令又はデータの中でもとりわけ、ロギング命令262、レビュー命令263、検証命令264、修正命令265、及び/又はクエリロギングデータベース266を備える。
【0052】
[0057] 一実施形態によれば、ロギング命令262は、システムに指示して、暗号化されたクエリの一部又はすべてを、分散型データシステムのクエリロギングデータベース266などの台帳にロギングさせる。暗号化されたクエリは、暗号化されたデータを保存するための任意の方法を使用してクエリロギングデータベース266に保存することができる。クエリデータをロギングすることにより、潜在的な又は知られたセキュリティ又はプライバシーの問題が生じた場合に、クエリ実行エンティティの特定など、クエリデータの将来的な取得が可能となる。
【0053】
[0058] 一実施形態によれば、レビュー命令263は、システムに指示して、潜在的なセキュリティ侵害に対して、1つ又は複数のロギングした暗号化されたクエリなど、1つ又は複数の暗号化されたクエリをレビューさせる。この分析又はレビューは、クエリを復号することなく、また、1つ又は複数の暗号化されたクエリの各々を行ったクエリ実行エンティティの身元を知ることなく実行することができる。例えば、アルゴリズムは、暗号化されたクエリをレビューして、潜在的なプライバシー又はセキュリティ上の懸念又は侵害を示すパターン等のフラグ又は識別子を特定することができる。このパターン等のフラグ又は識別子は、潜在的に非正規の目的で、悪意のある正規ユーザ又は正規ユーザの資格証明書を不正に取得した者が、分散型データシステムにアクセスしたことを示す。パターン等のフラグ又は識別子が見つかった場合、ユーザ又は分散型データシステムは、分散型データシステム及び/又はシステムのクエリロギングデータベースのセキュリティ及び/又はプライバシーを保証する責任を担う施行者又は他のエンティティに警告することができる。
【0054】
[0059] 一実施形態によれば、検証命令264は、システムに指示して、クエリ実行エンティティの身元を明らかにすることなく、クエリ実行エンティティが分散型データシステムの正規ユーザであることを検証させる。一実施形態によれば、検証することは、暗号認証方式及びデジタル署名方式を介した非特定化を使用する暗号化されたデジタル署名の分析を含む。
【0055】
[0060] 一実施形態によれば、修正命令265は、システムに指示して、受信した暗号化されたクエリを修正させて、身元を特定する情報を削除させ、それにより、修正した暗号化されたクエリを生成させる。修正は、暗号化されたクエリを修正するための任意の方法を使用して実行することができる。
【0056】
[0061] 本明細書で定義及び使用されるすべての定義は、定義された用語の辞書の定義、参照によって組み込まれる文献の定義、及び/又は一般的な意味よりも優先されるものとして理解されるべきである。
【0057】
[0062] 明細書部分及び特許請求の範囲において、本明細書で使用する不定冠詞「1つの(a)」及び「1つの「an」)は、明確にそうでないことを示していない限り、「少なくとも1つ」を意味するものとして理解されるべきである。
【0058】
[0063] 明細書部分及び特許請求の範囲において、本明細書で使用する「及び/又は」という語句は、そのように結合された要素の「いずれか又は両方」、すなわち、ある場合には結合して存在し、他の場合には分離して存在する要素を意味するものとして理解されるべきである。「及び/又は」を用いて挙げられる複数の要素も、同じように、すなわち、そのように結合された要素のうちの「1つ又は複数」として解釈されるべきである。「及び/又は」節によって具体的に特定された要素以外に、具体的に特定されたそのような要素に関係しているか関係していないかに関わらず、他の要素が任意選択で存在してもよい。
【0059】
[0064] 明細書部分及び特許請求の範囲において、本明細書で使用する場合、「又は」は、上で定義した「及び/又は」と同じ意味を持つものとして理解されるべきである。例えば、リスト内の項目を分ける場合、「又は」又は「及び/又は」は、包括的である、すなわち、いくつかの要素又は要素のリストのうちの少なくとも1つを包むだけでなく、それらの2つ以上を含み、任意選択でリストにない追加の項目も含むものとして解釈されるべきである。「のうちの1つのみ」若しくは「のうちの厳密に1つ」などの明確にそうでないことを示す用語、又は特許請求の範囲において「から成る」が使用される場合のみ、いくつかの要素又は要素のリストのうちの厳密に1つの要素の包含を指す。一般に、本明細書で使用される「又は」という用語は、「いずれか」、「のうちの1つ」、「のうちの1つのみ」又は「のうちの厳密に1つ」などの排他性の用語が先行するときにのみ、排他的な代替(すなわち、「一方又は他方であるが、両方でない」)を示すものとして解釈されるべきである。
【0060】
[0065] 明細書部分及び特許請求の範囲において、本明細書で使用する場合、1つ又は複数の要素のリストへの言及における「少なくとも1つ」という語句は、要素のリストにおける要素のうちの任意の1つ又は複数から選択されるが、要素のリスト内で具体的に挙げられたそれぞれの要素の少なくとも1つを必ずしも含むわけではなく、要素のリストにおける要素の任意の組合せを除外するものではないことを意味するものとして理解されるべきである。この定義はまた、「少なくとも1つ」という語句が指す要素のリスト内で具体的に特定された要素以外の要素が、具体的に特定されたそのような要素に関係しているか関係していないかに関わらず、任意選択で存在することを可能にする。
【0061】
[0066] また、明確にそうでないことを示していない限り、2つ以上のステップ又は動作を含む、本明細書で特許請求される任意の方法において、方法のステップ又は動作の順序は、方法のステップ又は動作が記載されている順序に必ずしも限定されないことが理解されるべきである。
【0062】
[0067] 特許請求の範囲、並びに上記明細書部分において、「備える」、「含む」、「搬送する」、「有する」、「含有する」、「関与する」、「保持する」、「構成される」等のすべての移行句は、オープンエンドである、すなわち、含むが限定されないことを意味するものとして理解されるべきである。「から成る」及び「から本質的に成る」という移行句のみが、それぞれ、クローズド又はセミクローズドの移行句であるべきである。
【0063】
[0068] いくつかの発明的実施形態について説明及び例示してきたが、当業者であれば、機能を実行し、且つ/又は結果及び/又は本明細書で説明する利点のうちの1つ若しくは複数を得るための様々な他の手段及び/又は構造を容易に思い付き、そのような変形例及び/又は修正例の各々は、本明細書で説明する発明的実施形態の範囲内であるものと見なされる。より一般的には、当業者であれば、本明細書で説明するすべてのパラメータ、寸法、材料、及び構成が、例示的なものであり、実際のパラメータ、寸法、材料、及び/又は構成が、発明的教示が使用される1つ又は複数の特定の用途に依存するということを容易に諒解するであろう。当業者であれば、本明細書で説明する特定の発明的実施形態に対する多くの等価物を認識するか、又は日常的な実験以外のことを行わずに確認できるであろう。したがって、上記実施形態は、例示のみのために提示され、添付の請求項及びそれに相当するものの範囲内において、発明的実施形態は、具体的に説明され、特許請求される以外のやり方で実践されてもよいものとして理解されるべきである。本開示の発明的実施形態は、本明細書で説明した各々の個々の特徴、システム、物品、材料、キット及び/又は方法を対象としている。また、2つ以上のそのような特徴、システム、物品、材料、キット及び/又は方法の任意の組合せは、そのようなシステム、物品、材料、キット及び/又は方法が相互に矛盾しない場合、本開示の発明的範囲内に含まれる。
図1
図2
図3
図4
図5
図6
【国際調査報告】