(57)【要約】      （修正有）【課題】分散台帳技術ベースのデータ構造に対する暗号化データ共有管理のためのシステムを提供する。【解決手段】管理型データ共有環境１００において、分散台帳技術ベースのデータ構造１５０への計算データ１０４の配置をサポートする。計算データは、計算データに適用される処理演算の権限および協調をサポートするための複数レイヤの暗号化を有する。複数レイヤの暗号化は、計算当事者により処理される計算データの共有を、計算データの内容を計算当事者に漏洩することなく可能にする準同型レイヤを含む。準同型暗号化された形式のままで、準同型計算データ１０６は、基礎データの秘密性を維持しながら、処理演算の適用をサポートする。【選択図】図１
2020092414.tif 000002
【特許請求の範囲】
【請求項１】
分散台帳技術（ＤＬＴ）ベースのデータ構造に提供する基礎計算データを選択することと、
前記基礎計算データを暗号化することであって、
前記基礎計算データは準同型暗号化方式に従って暗号化され、
前記準同型暗号化方式は準同型計算データを生成する、
暗号化することと、
前記ＤＬＴベースのデータ構造に関連付けられた計算当事者を決定することであって、
前記計算当事者は、前記準同型計算データに１つまたは複数の処理演算を実行させるために選択され、
前記１つまたは複数の処理演算は、前記基礎計算データへの同時の復号されたアクセスなしで実行される、
決定することと、
前記準同型計算データを公開鍵で暗号化することであって、
前記公開鍵は発信当事者に関連付けられ、
前記公開鍵は保護された準同型計算データを生成する、
暗号化することと、
前記保護された準同型計算データを、前記ＤＬＴベースのデータ構造の現在のブロックに追加させることであって、
前記ＤＬＴベースのデータ構造の前記現在のブロックに前記追加することは、前記計算当事者との前記準同型計算データの管理された共有を実施し、
前記現在のブロックへの前記保護された準同型計算データの追加は、
以前のブロックの以前のハッシュの生成と、
前記現在のブロックへの前記以前のハッシュおよび前記保護された準同型計算データの配置と、
前記ＤＬＴベースのデータ構造への前記現在のブロックの追加と、
を含む、
追加させることと、
前記計算当事者による前記保護された準同型計算データへのアクセスを許可することであって、
前記アクセスは、前記保護された準同型計算データを復号することにより許可される、
許可することと、
を含む、方法。
【請求項２】
前記１つまたは複数の処理演算を通じて機械学習が適用された後に前記準同型計算データを復号することによって、導出された洞察を収集することをさらに含む、請求項１に記載の方法。
【請求項３】
前記計算当事者は、前記基礎計算データの暗号化された形式に対する処理演算の実行を指示する複数の当事者のうちの１つである、請求項１に記載の方法。
【請求項４】
前記保護された準同型計算データを復号することは、前記発信当事者により管理されるプライベート鍵を使用することを含み、
前記プライベート鍵は、前記公開鍵と非対称なペアを含む、
請求項１に記載の方法。
【請求項５】
前記計算当事者は、前記準同型暗号化方式を使用して暗号化されたままで、前記準同型計算データに前記処理演算を実行させる、請求項４に記載の方法。
【請求項６】
前記１つまたは複数の処理演算は、乗算演算（ＭＵＬＴ）、加算演算（ＡＤＤ）、またはこれらの組み合わせを含む、請求項１に記載の方法。
【請求項７】
前記基礎計算データの前記管理された共有を実施することは、前記基礎計算データ内の基礎となる値を前記計算当事者に開示しない、請求項１に記載の方法。
【請求項８】
準同型処理後データを受信することであって、前記準同型処理後データは、前記計算当事者の代わりに、前記準同型計算データに前記１つまたは複数の処理演算を実行することによって生成される、受信すること
をさらに含む、請求項１に記載の方法。
【請求項９】
基礎処理後データにアクセスするために、前記準同型計算データの復号に成功するはずのものと同一の復号パラメータを使用して前記準同型処理後データを復号することをさらに含む、請求項８に記載の方法。
【請求項１０】
前記計算当事者と許可を協調させることによって、前記基礎処理後データを共有することをさらに含む、請求項９に記載の方法。
【請求項１１】
前記現在のブロックの後続の共有ブロックにおいて、前記ＤＬＴベースのデータ構造に前記基礎処理後データを付加することによって、前記基礎処理後データの前記共有を実施することをさらに含む、請求項１０に記載の方法。
【請求項１２】
前記基礎計算データが、前記ＤＬＴベースのデータ構造の複数のインスタンスにわたって同一であることを確認することをさらに含む、請求項１に記載の方法。
【請求項１３】
分散台帳技術（ＤＬＴ）ベースのデータ構造をサポートする分散ネットワークとの通信リンクを確立するように構成されるネットワークインターフェース回路と、
管理型データ共有回路であって、
分散台帳技術（ＤＬＴ）ベースのデータ構造に提供する基礎計算データを選択し、
準同型暗号化方式に従って前記基礎計算データを暗号化して、準同型計算データを生成し、
前記ＤＬＴベースのデータ構造に関連付けられた計算当事者を決定し、前記計算当事者は、前記基礎計算データへの同時の復号されたアクセスなしで、前記準同型計算データに１つまたは複数の処理演算を実行させるために選択され、
発信当事者に関連付けられた公開鍵で前記準同型計算データを暗号化して、保護された準同型計算データを生成し、
前記保護された準同型計算データを、前記ＤＬＴベースのデータ構造の現在のブロックに追加させて、前記計算当事者との前記準同型計算データの管理された共有を実施し、前記現在のブロックへの前記保護された準同型計算データの追加は、
以前のブロックの以前のハッシュの生成と、
前記現在のブロックへの前記以前のハッシュおよび前記保護された準同型計算データの配置と、
前記ＤＬＴベースのデータ構造への前記現在のブロックの追加と、
を含み、
前記保護された準同型計算データを復号することによって、前記計算当事者による前記保護された準同型計算データのアクセスを許可する、
ように構成される管理型データ共有回路と、
を含む、システム。
【請求項１４】
前記管理型データ共有回路は、前記１つまたは複数の処理演算を通じて機械学習が適用された後に前記準同型計算データを復号することによって、導出された洞察を収集するようにさらに構成される、請求項１３に記載のシステム。
【請求項１５】
前記計算当事者は、前記基礎計算データの暗号化された形式に対する処理演算の実行を指示する複数の当事者のうちの１つである、請求項１３に記載のシステム。
【請求項１６】
前記管理型データ共有回路は、前記発信当事者により管理されるプライベート鍵を使用して、前記保護された準同型計算データを復号するように構成され、
前記プライベート鍵は、前記公開鍵と非対称なペアを含む、
請求項１３に記載のシステム。
【請求項１７】
前記計算当事者は、前記準同型暗号化方式を使用して暗号化されたままで、前記準同型計算データに前記処理演算を実行させる、請求項１６に記載のシステム。
【請求項１８】
前記１つまたは複数の処理演算は、乗算演算（ＭＵＬＴ）、加算演算（ＡＤＤ）、またはこれらの組み合わせを含む、請求項１３に記載のシステム。
【請求項１９】
前記管理型データ共有回路は、前記基礎計算データ内の基礎となる値を前記計算当事者に開示させずに、前記基礎計算データの前記管理された共有を実施するように構成される、請求項１３に記載のシステム。
【請求項２０】
一過性の信号以外の機械可読媒体と、
前記機械可読媒体に記憶された命令と、
を含む製品であって、前記命令は、実行された場合に、機械に、
分散台帳技術（ＤＬＴ）ベースのデータ構造に提供する基礎計算データを選択し、
準同型暗号化方式に従って前記基礎計算データを暗号化して、準同型計算データを生成し、
前記ＤＬＴベースのデータ構造に関連付けられた計算当事者を決定し、前記計算当事者は、前記基礎計算データへの同時の復号されたアクセスなしで、前記準同型計算データに１つまたは複数の処理演算を実行させるために選択され、
発信当事者に関連付けられた公開鍵で前記準同型計算データを暗号化して、保護された準同型計算データを生成し、
前記保護された準同型計算データを、前記ＤＬＴベースのデータ構造の現在のブロックに追加させて、前記計算当事者との前記準同型計算データの管理された共有を実施し、前記現在のブロックへの前記保護された準同型計算データの追加は、
以前のブロックの以前のハッシュの生成と、
前記現在のブロックへの前記以前のハッシュおよび前記保護された準同型計算データの配置と、
前記ＤＬＴベースのデータ構造への前記現在のブロックの追加と、
を含み、
前記保護された準同型計算データを復号することによって、前記計算当事者による前記保護された準同型計算データのアクセスを許可する、
ことを行わせるように構成される、
製品。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１８年１１月８日に出願された米国特許仮出願第６２／７５７，２７３号の優先権を主張し、その全体が本明細書に組み込まれている。また、本出願は、２０１９年１１月４日に出願された米国特許出願第１６／６７２，７６１号の優先権を主張し、その全体が本明細書に組み込まれている。
【０００２】
技術分野
本開示は、分散ネットワーク環境における管理型データ共有（ｃｏｎｔｒｏｌｌｅｄ  ｄａｔａｓｈａｒｉｎｇ）に関する。
【背景技術】
【０００３】
膨大な顧客需要によって推進されたエレクトロニクス技術および通信技術の急速な進歩により、電子取引、記録管理、およびデータ共有が広く採用されている。一例として、ビットコインなどの電子通貨が、年間数百万の取引において紙幣に置き換わっている。そのような電子取引に付随する追跡および／または知識管理の改善により、電子取引に従事する事業者に利用可能な機能およびオプションは増え続けるであろう。
【発明の概要】
【課題を解決するための手段】
【０００４】
いくつかの可能な実装形態によれば、方法は、分散台帳技術（ＤＬＴ：ｄｉｓｔｒｉｂｕｔｅｄ  ｌｅｄｇｅｒ  ｔｅｃｈｎｏｌｏｇｙ）ベースのデータ構造に提供する基礎計算データを選択することと、基礎計算データを暗号化することであって、基礎計算データは準同型暗号化方式に従って暗号化され、準同型暗号化方式は準同型計算データを生成する、暗号化することと、ＤＬＴベースのデータ構造に関連付けられた計算当事者を決定することであって、計算当事者は、準同型計算データに１つまたは複数の処理演算を実行させるために選択され、１つまたは複数の処理演算は、基礎計算データへの同時の復号されたアクセス（ｃｏｎｃｕｒｒｅｎｔ  ｄｅｃｒｙｐｔｅｄ  ａｃｃｅｓｓ）なしで実行される、決定することと、準同型計算データを公開鍵で暗号化することであって、公開鍵は発信当事者（ｏｒｉｇｉｎａｔｉｎｇ  ｐａｒｔｙ）に関連付けられ、公開鍵は保護された準同型計算データを生成する、暗号化することと、保護された準同型計算データを、ＤＬＴベースのデータ構造の現在のブロックに追加させることであって、ＤＬＴベースのデータ構造の現在のブロックに追加することは、計算当事者との準同型計算データの管理された共有を実施し、現在のブロックへの保護された準同型計算データの追加は、以前のブロックの以前のハッシュの生成と、現在のブロックへの以前のハッシュおよび保護された準同型計算データの配置と、ＤＬＴベースのデータ構造への現在のブロックの追加と、を含む、追加させることと、計算当事者による保護された準同型計算データへのアクセスを許可することであって、アクセスは、保護された準同型計算データを復号することにより許可される、許可することと、を含み得る。
【０００５】
いくつかの可能な実装形態によれば、システムは、分散台帳技術（ＤＬＴ）ベースのデータ構造をサポートする分散ネットワークとの通信リンクを確立するように構成されるネットワークインターフェース回路と、管理型データ共有回路であって、分散台帳技術（ＤＬＴ）ベースのデータ構造に提供する基礎計算データを選択し、準同型暗号化方式に従って基礎計算データを暗号化して、準同型計算データを生成し、ＤＬＴベースのデータ構造に関連付けられた計算当事者を決定し、計算当事者は、基礎計算データへの同時の復号されたアクセスなしで、準同型計算データに１つまたは複数の処理演算を実行させるために選択され、発信当事者に関連付けられた公開鍵で準同型計算データを暗号化して、保護された準同型計算データを生成し、保護された準同型計算データを、ＤＬＴベースのデータ構造の現在のブロックに追加させて、計算当事者との準同型計算データの管理された共有を実施し、現在のブロックへの保護された準同型計算データの追加は、以前のブロックの以前のハッシュの生成と、現在のブロックへの以前のハッシュおよび保護された準同型計算データの配置と、ＤＬＴベースのデータ構造への現在のブロックの追加と、を含み、保護された準同型計算データを復号することによって、計算当事者による保護された準同型計算データのアクセスを許可する、ように構成される管理型データ共有回路と、を含み得る。
【０００６】
いくつかの可能な実装形態によれば、製品は、一過性の信号以外の機械可読媒体と、機械可読媒体に記憶された命令と、を含み得、これら命令は、実行された場合に、機械に、分散台帳技術（ＤＬＴ）ベースのデータ構造に提供する基礎計算データを選択し、準同型暗号化方式に従って基礎計算データを暗号化して、準同型計算データを生成し、ＤＬＴベースのデータ構造に関連付けられた計算当事者を決定し、計算当事者は、基礎計算データへの同時の復号されたアクセスなしで、準同型計算データに１つまたは複数の処理演算を実行させるために選択され、発信当事者に関連付けられた公開鍵で準同型計算データを暗号化して、保護された準同型計算データを生成し、保護された準同型計算データを、ＤＬＴベースのデータ構造の現在のブロックに追加させて、計算当事者との準同型計算データの管理された共有を実施し、現在のブロックへの保護された準同型計算データの追加は、以前のブロックの以前のハッシュの生成と、現在のブロックへの以前のハッシュおよび保護された準同型計算データの配置と、ＤＬＴベースのデータ構造への現在のブロックの追加と、を含み、保護された準同型計算データを復号することによって、計算当事者による保護された準同型計算データのアクセスを許可する、ことを行わせるように構成される。
【図面の簡単な説明】
【０００７】
【図１】管理型データ共有環境の一例を示す図である。
【図２】管理型データ共有ロジックの一例を示す図である。
【図３】データ共有管理システムの一例を示す図である。
【図４】データをブロックチェーンに書き込むためのシステムの一例を示す図である。
【図５】準同型暗号化されたデータへの処理演算の適用をサポートするシステムの一例を示す図である。
【図６】データ共有をサポートするシステムの一例を示す図である。
【発明を実施するための形態】
【０００８】
ブロックチェーンはデータブロックのシリーズを含み得、これらのブロックは暗号化ハッシュまたはチェックサムなどのコードを含み、このコードはそのシリーズにおける以前のブロックの内容とコード化が一致し得る。一部のケースでは、同一の整合性コードを生成する複数の異なるブロックのセットを決定することは、解決不可能であり得、とてつもなく計算が複雑であり得、あるいは整合性コードの自己一貫性を維持しながら、ブロックチェーンの内容を改ざんする試みを阻止するのに十分に多大な労力を要し得る。さらに、ブロックチェーンに記憶された選択された情報へのアクセスを管理するために、ブロックチェーン内の内容は暗号化され得る。
【０００９】
様々なシステムにおいて、ブロックチェーンベースの共有データに対して管理が実施され得る。様々なケースにおいて、管理によって、「どの」情報が「誰と」および／または「いつ」および／または「どのくらいの間」共有され得るかを参加者が管理できるようになり得る。
【００１０】
プロセッサ設計などの一部の実世界のシナリオでは、チップの設計および製造における効率および技術的精度を高めるために、情報共有が望ましい場合がある。しかしながら、データ共有の管理なしでは、共有は実現不可能であり得る。データ要素レベルの共有アクセスを監査および管理できることは、データ共有構成の実現可能性を高め、管理されていない共有の結果として負担するコスト／非効率を削減し得る。
【００１１】
様々な実装形態において、ブロックチェーンのデータ共有の管理は、準同型暗号化（たとえば、暗号化技法）をブロックチェーン内の内容に適用することにより、実施され得る。準同型暗号化により、選択されたデータ、データ詳細、メタデータ、および／または他のデータ特徴の共有が、そのような選択されたデータ特徴が導出または後で再作成され得る元になる基礎データを必ずしも共有することなく、可能になり得る。基礎計算データは、計算または他の分析が実行され得る復号された／暗号化されていない形式のデータを指し得る。たとえば、基礎計算データには、実験データ、テストデータ、調査データ、収集データ、過去の利用データ、売上データ、環境データ、産業データ、製作仕様、または分析が実行され得る他のデータが含まれ得る。基礎となるブロックチェーンにより、（たとえば、信頼できない、または完全には信頼できない環境において）様々な参加者が同一の基礎データを用いて作業しており、ひいては有効なデータ特徴を用いて作業していることを参加者が検証できるようになる。
【００１２】
準同型暗号化方式は、ある部類の複数の異なる暗号化方式を含む。準同型暗号化方式は、Ｈｍ（ｘ）などの特定の暗号化アルゴリズムの準同型性を使用し、ここで、Ｈｍは準同型暗号化アルゴリズムを示す。準同型性により、暗号化された値の和は、値の和が暗号化されたものの値と等しくなり、たとえば、Ｈｍ（ｘ）＋Ｈｍ（ｙ）＝Ｈｍ（ｘ＋ｙ）となる。この準同型性は、準同型性から得られる様々な知られている数学的結果を使用して、たとえば、ｘおよびｙを開示せずに、ｘおよびｙなどの基礎データ値の様々な特徴を開示するために使用され得る。さらに、加算（たとえば、ＡＤＤ演算）および乗算（たとえば、ＭＵＬＴ演算）が、暗号化されたデータに対して復号なしで実行され得るので、数学演算またはモデリング演算などの処理演算が、データに対して暗号化された状態のままで実行され得る。同様に、減算演算が実行され得る（たとえば、反転加算であり、理由は、Ｈｍ（ｘ＋ｙ）＋−Ｈｍ（ｙ）＝Ｈｍ（ｘ））。したがって、基礎となる値を開示せずに、集約データから洞察（ｉｎｓｉｇｈｔ）が収集され得る。
【００１３】
一部のシステムでは、複数の参加者は、別の特定の参加者と共有されたデータ構造（たとえば、分散台帳に基づくもの）に暗号化された情報を入れ得、それによって、指定された当事者が機械学習／ＡＩまたは他のデータ分析を暗号化された形式で実行することが可能になる。各当事者は自身のデータを秘密にし得、洞察ジェネレータはそれらのアルゴリズム／洞察能力を秘密にする。分析の結果は、単一の参加者、複数の参加者、または全ての参加者の任意の組み合わせと共有することができる。
【００１４】
シリコンナノファブリケーションに関する実世界でのデータ共有のシナリオでは、部品の各製作者は、プロセスの特定の属性（熱、化合物、レシピ、または他の属性）および指定された評価者（たとえば、相手先商標製品製造会社（ＯＥＭ：ｏｒｉｇｉｎａｌ  ｅｑｕｉｐｍｅｎｔ  ｍａｎｕｆａｃｔｕｒｅｒ））に関する暗号化されたデータを共有し、相対性能を分析して、最良の結果をもたらす属性の性質を特定する。指定された評価者は、指定された評価者がどのように生産量を計算したか、生産量がどれほどあったかに関する詳細を必ずしも共有しなくてもよいが、個々のまたは複数の製作者に性能表示を提供することができる。製作者は、特定の属性の暗号化されていない値を必ずしも共有していない。したがって、製作者データは、必ずしも再共有可能な、または後で読み出し可能な形式でなくてもよい。テストおよび学習のプロセス、ならびに複数のインタラクションにおいて、製作者は属性別の改善に関する洞察を得ることができ、ＯＥＭはより良い結果を得ながら自身の生産量／結果情報を保護することができる。個々にまたはグループとして結果を改善するために協力しながら、情報が保護され得る。
【００１５】
一部のシステムでは、複数の参加者は暗号化された情報を共有データ構造に入れ得、１人または複数人の参加者（一部のケースでは、共有データ構造に関係しない参加者を含む）は、暗号化されたデータに対する自身の分析を実行することが可能になる。各洞察ジェネレータは自身の結果をプライベートにし得、またはグループと共有し得る。各洞察ジェネレータは、誰が「どの」データに関係していたかを必ずしも知らなくてもよく、その洞察ジェネレータは、暗号化されたデータの具体的な値を必ずしも知らなくてもよい。
【００１６】
様々なシステムにおいて、複数の当事者はＤＬＴベースのファイルまたは台帳を使用して、イベント、取引、または他の更新の改ざん防止記録を維持し得る。一部のケースでは、ブロックチェーンは、ブロックチェーンが変更された後に、改ざんを登録し得る。このようにして、当事者は、他の当事者による更新が有効であり、ブロックチェーンの以前のデータブロックとコード化が一致することを個別に検証し得る。整合性コードの自己一貫性により、基準として使用するブロックチェーンの保管バージョンを当事者が有さなくても、ブロックチェーンへの更新を検証することが可能になる。
【００１７】
様々なシステムにおいて、ブロックチェーン、より一般的には、分散台帳技術（ＤＬＴ）は、複数の当事者がデータへのアクセスを共有するためのプラットフォームを、そのデータの有効性および整合性を検証する能力と共に提供する。準同型暗号化は、複数の当事者がデータを共有し、暗号化されたデータに対してそのデータを復号せずに計算を実行する能力を提供する。準同型暗号化は非対称であり得、それによって、第１の当事者がアクセス権限を後で管理できるように、第２の当事者がデータを準同型暗号化することが可能になる。共有データシステムにおいてＤＬＴの内容に準同型暗号化を適用することにより、機密／秘密／プライベートの基礎データを流布させずに、機密／秘密／プライベート情報を包括的に使用することが可能になる。このように、論じている技術的アーキテクチャおよび技法を使用することにより、データを漏洩することは、必ずしもそのデータの協調分析の前提条件とならなくなり得る。
【００１８】
図１に１つの例示的な管理型データ共有環境（ＣＤＥ：ｃｏｎｔｒｏｌｌｅｄ  ｄａｔａｓｈａｒｅ  ｅｎｖｉｒｏｎｍｅｎｔ）１００を示す。ＣＤＥ１００において、管理型データ共有回路ＣＤＣ１０２は、基礎計算データ１０４を取得し、基礎計算データを準同型暗号化して、準同型計算データ１０６を生成し得る。ＣＤＣは、準同型計算データ１０６を第２の暗号化レイヤによって暗号化して、権限管理を追加することによって、保護された準同型計算データ１０８を生成し得る。次いで、ＣＤＣ１０２は、保護された準同型計算データ１０８を分散ネットワーク１９９に渡させて、ＤＬＴベースのデータ構造１５０に含めさせ得る。計算当事者１１０は、ＣＤＣから権限を得て、ＤＬＴベースのデータ構造１５０を介して保護された準同型計算データにアクセスし得る。一部のケースでは、ＣＤＣ１０２は、準同型レイヤより上の１つまたは複数の暗号化レイヤを復号することにより、準同型計算データ１０６へのアクセスを許可し得る。計算当事者は準同型処理後データに応答し得、ＣＤＣ１０２はこれを復号し、分析および／または再共有し得る。
【００１９】
図２に１つの例示的な管理型データ共有ロジック（ＣＤＬ：ｃｏｎｔｒｏｌｌｅｄ  ｄａｔａｓｈａｒｅ  ｌｏｇｉｃ）２００を示し、これはＣＤＣ１０２上で実行され、ＣＤＣ１０２の動作を統括し得る。ＣＤＬ２００は、ＤＬＴベースのデータ構造に提供する基礎計算データを選択し得る（２０２）。
【００２０】
様々な実装形態において、基礎計算データ１０４は、発信当事者からのデータを識別（または提供）する入力に基づいて選択され得る。たとえば、発信当事者は、暗号化されていない形式の基礎計算データにアクセス可能であり得るデータ所有当事者を含み得る。追加的または代替的に、発信当事者は、データの処理における利害関係者を含み得る。追加的または代替的に、基礎計算データは、様々な分析選択基準、選択ルール、または他の選択経験則に基づいて選択され得る。
【００２１】
一部のケースでは、基礎計算データ１０４は、処理が実施され得る様々なタイプのデータを含み得る。たとえば、データには、プロセッサ仕様、技術性能データ、調査データ、クライアントデータ、消費者データ、ソーシャルメディアデータ、独自データ、または他のデータタイプが含まれ得る。一部のケースでは、基礎データ自体が準同型暗号化され得る（たとえば、発信当事者が暗号化されていないデータにアクセスできないが、依然としてシステムへの第１段階の提供者としての役割を果たしている場合、複数レイヤの準同型暗号化により、なおも数学的処理が可能であり得る）。
【００２２】
様々な実装形態において、ＤＬＴベースのデータ構造１５０は、分散台帳を含み得る（たとえば、ブロックチェーンおよび／またはブロックチェーンのような技術であり、「ブロックチェーン」は用語の便宜上使用しているが、他の非ブロックチェーン分散台帳が使用され得る）。ＤＬＴベースのデータ構造１５０は、当事者間のデータ交換および協調のための媒介として機能し得る。ＤＬＴベースのデータ構造１５０は、当事者が操作または当事者間での変更なしで、一致するデータに作用するようにし得る。さらに、ＤＬＴベースのデータ構造の複数のインスタンスが使用される場合、ＣＤＬ２００は、複数のインスタンスにわたって一致するデータが使用されること検証し得る。
【００２３】
ＣＤＬ２００は、準同型暗号化方式を使用して基礎計算データ１０４を暗号化することによって、準同型計算データ１０６を生成し得る（２０４）。準同型計算データは、暗号化された形式の基礎計算データ１０４を含み得、これにより、処理時に（たとえば、処理と同時に）基礎計算データが復号される（ひいては漏洩する）ことを必ずしも必要とせずに、処理演算を基礎計算データに実行することが可能になる。基礎計算データは後で漏洩し得、または引き続き無期限に保留され得、準同型計算データへの演算は、後である当事者に基礎計算データへのアクセスが許可されることを必ずしも妨げない。
【００２４】
ＣＤＬ２００は計算当事者を決定し得る。たとえば、ＣＤＬ２００は所定の選択にアクセスして計算当事者を決定し得る。一部のケースでは、ＣＤＬ２００は、分散ネットワークに参加している当事者の様々な特徴に基づいて計算当事者を決定し得る。一部のケースでは、当事者のアクションにより、計算当事者を決定することが可能になり得る。たとえば、計算当事者は、計算当事者として指定される要求を転送する当事者を含み得る。
【００２５】
ＣＤＬ２００は、発信当事者に関連付けられた公開鍵を使用して準同型計算データを権限暗号化（ｐｅｒｍｉｓｓｉｏｎｓ  ｅｎｃｒｙｐｔ）することによって、保護された準同型計算データを生成し得る（２０６）。権限暗号化により、準同型計算データへのアクセスが制限されるようになり得、それによって発信当事者が準同型計算データを管理し、他の当事者（たとえば、プライベート鍵にアクセスできない／これを管理していない当事者）が必ずしもアクセスできなくなり得る。プライベート鍵は公開鍵の片割れに対応し得、それによってプライベート鍵および公開鍵が非対称な鍵ペアを形成する。たとえば、公開鍵が暗号化に使用される場合、プライベート鍵は復号に使用され得る（ただし、公開鍵は復号に使用されない場合がある）。
【００２６】
様々な実装形態において、権限暗号化および準同型暗号化は対応するプライベート鍵を管理している当事者によって解除され得るので、ＤＬＴベースのデータ構造に記憶された暗号化されたデータへのアクセスは、「アクセスごとの」許可を通じて管理され得る。たとえば、ＤＬＴベースのデータ構造を介して暗号化されたデータにアクセスしたい当事者は、その当事者がＤＬＴベースのデータ構造を介した暗号化されたデータへのアクセスを望むたびに、（一部のケースでは）プライベート鍵保有者がその暗号化（準同型暗号化か権限暗号化かによらない）を解除するように要求する必要があり得る。そのため、ＤＬＴベースのデータ構造を介して暗号化されたデータにアクセスする権限は、対応するプライベート鍵を管理している当事者が暗号化を解除するのに失敗したことにより、無効化され得る。一部のケースでは、サービス契約により、当事者がＤＬＴベースのデータ構造のデータをチェーン外にまたは暗号化されていない形式で記憶すること（たとえば、アクセス無効化試行を打破するため）が防止され得る。
【００２７】
一部のケースでは、この非対称な準同型暗号化は、ＣＤＬ２００が準同型計算データの管理を第２の当事者に渡すことを可能にするように動作し得る。たとえば、計算当事者は、基礎計算データと共に処理すべき二次データを追加し得る。二次データもまた、準同型暗号化され得る。計算の一貫性を維持するために、使用され得る準同型暗号化は、準同型計算データのものと同一であり得る。したがって、発信当事者の準同型公開鍵を使用して、計算当事者は二次データを準同型暗号化し得る。計算当事者は、一部のケースでは、（計算当事者が発信当事者の準同型プライベート鍵にアクセスできない限り）そのような暗号化を適用した後に、必ずしも二次データを復号できなくてもよい。
【００２８】
ＣＤＬ２００は、多様な非対称暗号化方式、たとえば、楕円曲線暗号化（ＥＣＣ：ｅｌｌｉｐｔｉｃ  ｃｕｒｖｅ  ｅｎｃｒｙｐｔｉｏｎ）または他の非対称暗号化方式などのうちの１つまたは複数を使用して、準同型計算データを権限暗号化し得る。
【００２９】
一部のケースでは、準同型暗号化の上で、複数レイヤの非対称暗号化が使用され得る。これを使用して、複数の当事者のそれぞれが、準同型計算データへのアクセスを取得する際に権限管理を行うようにすることによって、複数の当事者の協調を通じたアクセス管理を容易にし得る。さらに、複数の非対称なレイヤが存在しない場合でも、準同型暗号化と権限暗号化との両方を使用することによって、少なくとも２つの秘密鍵を管理している１つまたは複数の当事者が、（たとえば、自身のプライベート権限鍵およびプライベート準同型鍵でデータをそれぞれ復号することにより）許可を与えるようにし得、その後、基礎計算データ１０４が、ＤＬＴベースのデータ構造１５０に記録および／または記憶された形式を使用してアクセスできるようになる。いずれの当事者も、偶発的に基礎計算データにアクセスすることができる。たとえば、一部のケースでは、計算当事者はデータ所有者であり得、ローカルに記憶された（チェーン外の）バージョンを介して、基礎計算データまたは二次データにアクセスすることができる。それにもかかわらず、ＤＬＴベースのデータ構造に記憶／記録された保護された準同型データから基礎計算データにアクセスすることは、準同型プライベート鍵と権限プライベート鍵との両方の使用を強制する。追加の暗号化レイヤが存在する場合、基礎計算データを復号するには、追加の鍵が必須となり得る。
【００３０】
ＣＤＬ２００は、保護された準同型計算データをＤＬＴベースのデータ構造の現在のブロックに追加させ得る（２０８）。これにより、準同型計算データの管理された共有が実施され得る。様々な実装形態において、現在のブロックへの保護された準同型計算データの追加は、以前のブロックの以前のハッシュの生成と、現在のブロックへの保護された準同型計算データおよび以前のハッシュの配置と、ＤＬＴベースのデータ構造への現在のブロックの追加と、を含む。一部のケースでは、ＣＤＬ２００は、保護された準同型計算データをＤＬＴベースのデータ構造に追加する要求を生成し、その要求をＤＬＴベースのデータ構造の参加ノードに送信することによって、保護された準同型計算データを現在のブロックに追加させ得る。一部のケースでは、ＣＤＬ２００は、現在のブロックへの保護された準同型計算データの追加を構成するタスクの一部（または全部）を実行し得る参加ノード上で実行され得る。参加ノードは、ＤＬＴベースのデータ構造をサポートする分散ネットワークの一部であり得る。
【００３１】
ＣＤＬ２００は、権限暗号化レイヤを解除し、準同型計算データを計算当事者に提供することによって、計算当事者が１つまたは複数の処理演算を準同型計算データに実行することを許可し得る（２１０）。ＣＤＬ２００は、ＤＬＴベースのデータ構造から、保護された準同型計算データにアクセスし得る。
【００３２】
ＣＤＬ２００は、保護された準同型計算データをＤＬＴベースのデータ構造に追加し、計算当事者に権限を与えたことに応答して、準同型処理後データを受信し得る。準同型処理後データは、計算当事者により（または代理で）、１つまたは複数の処理演算を準同型計算データに適用することによって生成され得る。１つまたは複数の処理演算を適用した後、準同型処理後データは準同型暗号化された状態のままとなる。したがって、計算当事者は、１つまたは複数の処理演算を適用した後に、準同型処理後データの再暗号化を必ずしも指示する必要はない。準同型計算データにアクセスするために、計算当事者は発信当事者に権限を要求する。
【００３３】
一部のケースでは、準同型計算データを処理した後、計算当事者は自身の権限公開鍵によって準同型処理後データを権限暗号化し得る。これにより、発信当事者は、計算当事者からの権限なしでは、基礎処理後データにアクセスできなくなり得る。
【００３４】
権限を１つのインスタンスに与えた後、ＤＬＴベースのデータ構造上のデータは依然として保護された形式で記憶される。したがって、一度データにアクセスする権限が与えられた当事者は、必ずしも後でＤＬＴベースのデータ構造から同一のデータにアクセスできない。ＤＬＴベースのデータ構造からの各アクセスは、発信当事者からの新たな権限要求を強制し得る。
【００３５】
ＣＤＬ２００は、１つまたは複数の処理演算が適用される場合にはそれらの前に、準同型計算データの復号に成功するはずのものと同一の復号パラメータ（たとえば、技法、鍵、状態、または他のパラメータ）を使用して、準同型処理後データを復号し得る。準同型処理後データを復号することにより、基礎処理後データが生成され得る。
【００３６】
ＣＤＬ２００は、準同型処理後データへの準同型暗号化を解除し、基礎処理後データを対象の当事者に提供することによって、基礎処理後データへのアクセスを許可し得る。一部のケースでは、計算当事者が準同型処理後データを権限暗号化する場合、ＣＤＬは計算当事者と協調して、管理された共有を対象の当事者に提供し得る。
【００３７】
追加的または代替的に、ＣＤＬ２００は、準同型処理後データを第２の計算当事者と再共有し得、この場合、順次的な処理が使用される。一部のケースでは、準同型処理後データは、第１の計算当事者から第２の計算当事者に直接渡され得る。したがって、他の計算当事者のノードは、準同型処理後データにアクセスして処理演算を実行し得る。
【００３８】
図３に１つの例示的なデータ共有管理システム（ＤＣＳ：ｄａｔａｓｈａｒｅ  ｃｏｎｔｒｏｌ  ｓｙｓｔｅｍ）３００を示し、これはデータ共有管理および／または暗号化された形式のままでの共有データの操作を実現するための実行環境を提供し得る。ＤＣＳ３００は、たとえば、ブロックチェーン上のデータを共有し、および／またはブロック上の共有されたデータへの処理を実行する当事者によって使用され得る。ＤＣＳ３００は、準同型暗号化および復号、暗号化パラメータの生成、暗号化されたデータの操作（たとえば、得られた洞察を収集する処理）、共有するデータの指定、ならびに／あるいは他のデータ共有管理アクションをサポートするシステムロジック３１４を含み得る。システムロジック３１４は、プロセッサ３１６、メモリ３２０、および／または他の回路を含み得、これらを使用してＣＤＬ２００を実装することによってＣＤＣ１０２として機能し得る。
【００３９】
メモリ３２０は、データ共有管理において使用されるブロックチェーンメタデータ３２２および／またはブロックチェーンデータ３２４を記憶するために使用され得る。メモリ３２０は、暗号化パラメータ３２１、たとえば、暗号化鍵の値、準同型パラメータ、たとえば、１つの例示的な準同型暗号化方式のもの、楕円曲線の軸の値、またはデータの共有および操作を容易にし得る他の秘密の値をさらに記憶し得る。
【００４０】
メモリ３２０は、データ共有管理をサポートするための、アプリケーションおよび構造、たとえば、コード化オブジェクト、テンプレート、あるいは１つまたは複数の他のデータ構造をさらに含み得る。ＤＣＳ３００は１つまたは複数の通信インターフェース３１２をさらに含み得、これらは、無線、たとえば、Ｂｌｕｅｔｏｏｔｈ、Ｗｉ−Ｆｉ、ＷＬＡＮ、セルラー（３Ｇ、４Ｇ、ＬＴＥ／Ａ）、および／または有線、イーサネット、ギガビットイーサネット、光ネットワークプロトコルをサポートし得る。通信インターフェース３１２は、共有データに関係しているかまたはこれを処理する他の当事者との通信をサポートし得る。追加的または代替的に、通信インターフェース３１２は、安全な情報交換、たとえば、セキュアソケットレイヤ（ＳＳＬ：ｓｅｃｕｒｅ  ｓｏｃｋｅｔ  ｌａｙｅｒ）、またはプライベートデータを送受信するための公開鍵暗号化ベースのプロトコルをサポートし得る。ＤＣＳ３００は、電源管理回路３３４と、１つまたは複数の入力インターフェース３２８とを含み得る。
【００４１】
ＤＣＳ３００はユーザインターフェース３１８をさらに含み得、これはマンマシンインターフェースおよび／またはグラフィカルユーザインターフェース（ＧＵＩ：ｇｒａｐｈｉｃａｌ  ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ）を含み得る。ＧＵＩは、ＤＬＴベースの共有のデータをＤＣＳ３００の操作者に提示するために使用され得る。追加的または代替的に、ユーザインターフェース３１８は、データ共有管理を操作者に提供するために使用され得る。
【００４２】
例示的な実装形態
以下の例示的な実装形態は、上記の原理のうちの様々なものを例示するように説明している。しかしながら、以下の例は限定的なものではなく、むしろ、一部のケースでは、上述の技法およびアーキテクチャを例示するのに役立つ具体例である。以下の例示的な実装形態の様々な特徴は、他の実装形態に存在してもよく、さらに他の実装形態に存在しなくてもよい。以下の例示的な実装形態の特徴は、上述の技法およびアーキテクチャに従って、様々なグループで組み合わせられてもよい。
【００４３】
図４に、データをブロックチェーンに（たとえば、ブロックチェーンベースの構造内に）書き込むための１つの例示的なシステム４００を示す。このシステムでは、参加企業ＡおよびＢは、２対の非対称な暗号化鍵、すなわち、１組の準同型暗号化鍵ＨＥと、１組のＥＣＣ暗号化鍵とを生成する。各組は、公開鍵（ＰＫ：ｐｕｂｌｉｃ  ｋｅｙ）と、プライベート（秘密）鍵（ＳＫ：ｓｅｃｒｅｔ  ｋｅｙ）とを含み得る。公開鍵は、ブロックチェーン内に記憶され得る。たとえば、Ａ．ＨＥ．ＰＫはブロック００１  ４０２に記憶され、Ｂ．ＨＥ．ＰＫはブロック００２  ４０４に記憶される。ＨＥ公開鍵はブロック４０２、４０４に記憶される前にＥＣＣ公開鍵を使用して暗号化され得、それによって、ＨＥ公開鍵へのアクセスが、それぞれの企業からの権限を有するものに制限されるようになる。データをブロックチェーンに追加するために、参加企業はＨＥとＥＣＣとの両方を使用してデータを暗号化することによって、データにアクセス可能な当事者、および／または処理演算を実行可能な当事者を決定し得る。たとえば、ブロック３および４  ４０６、４０８は、ＨＥとＥＣＣとの２つ両方を使用して暗号化されたデータを含む。データセットの更新は、後続のブロックに記録され得る。たとえば、ブロック００５  ４１０は、ブロック００４  ４０８からの更新されたデータセットを含む。
【００４４】
図５に、準同型暗号化されたデータに適用される処理演算をサポートする１つの例示的なシステム５００を示す。発信当事者である企業Ａは、計算データをブロック００３および００５  ４０６、４１０に提供する。次いで、企業ＡはＥＣＣレイヤを解除し、計算のために計算データを企業Ｂに提供する（たとえば、企業Ｂに許可を与える）。また、企業Ｂは、自身が発信者である計算データを処理演算に組み込み得る（たとえば、ブロック００４  ４０８のデータ）。企業Ｂによって供給されるデータも、ＡのＨＥ公開鍵を使用して準同型暗号化され得、それによって処理で使用される全てのデータが一貫して準同型暗号化されるようになる。処理後データブロック００６  ５１２は企業ＢによってＥＣＣ暗号化され得、それによって出力は、計算当事者およびデータ発信者からの権限によってのみアクセスされ得る。
【００４５】
図６に、データ共有をサポートする１つの例示的なシステム６００を示す。ブロック００６  ５１２のデータは、企業Ｂによって（ＥＣＣレイヤの解除を通じて）、および企業Ａによって（ＨＥレイヤの解除を通じて）権限が与えられると、共有され得る。
【００４６】
上述の方法、デバイス、処理、およびロジックは、多くの異なる方法で、ハードウェアおよびソフトウェアの多くの異なる組み合わせで実装され得る。たとえば、実装形態の全部または一部は、命令プロセッサを含む回路、たとえば、中央処理装置（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、マイクロコントローラ、もしくはマイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ：Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、プログラマブルロジックデバイス（ＰＬＤ：Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）、もしくはフィールドプログラマブルゲートアレイ（ＦＰＧＡ：Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、またはアナログ回路部品、デジタル回路部品もしくはその両方を含む、ディスクリートロジックもしくは他の回路部品を含む回路、あるいはこれらの任意の組み合わせであり得る。この回路は、例として、個別の相互接続されたハードウェアコンポーネントを含み得、および／または単一の集積回路ダイ上で組み合わせられ得、複数の集積回路ダイ間に分散され得、または共通パッケージ内の複数の集積回路ダイの複数チップモデル（ＭＣＭ：Ｍｕｌｔｉｐｌｅ  Ｃｈｉｐ  Ｍｏｄｕｌｅ）で実装され得る。
【００４７】
この回路はさらに、この回路によって実行される命令を含むかまたはこれにアクセスし得る。命令は、信号および／またはデータストリームとして具現化され得、および／また一過性の信号以外の有形記憶媒体、たとえば、フラッシュメモリ、ランダムアクセスメモリ（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、読み出し専用メモリ（ＲＯＭ：Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、消去可能プログラム可能読み出し専用メモリ（ＥＰＲＯＭ：Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、または磁気もしくは光ディスク、たとえば、コンパクトディスク読み出し専用メモリ（ＣＤＲＯＭ：Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ハードディスクドライブ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、または他の磁気もしくは光ディスクに、あるいは別の機械可読媒体の中もしくは上に記憶され得る。製品、たとえば、コンピュータプログラム製品は、具体的には記憶媒体と、その媒体の中または上に記憶された命令とを含み得、命令は、デバイス内の回路によって実行された場合に、上述または図示した処理のうちのいずれかをデバイスに実施させ得る。
【００４８】
実装形態は、回路、たとえば、ハードウェア、および／またはハードウェアおよびソフトウェアの組み合わせとして、任意選択で複数の分散処理システムを含む複数のシステムコンポーネント間に、たとえば、複数のプロセッサおよびメモリの間に分散され得る。パラメータ、データベース、および他のデータ構造は、別々に記憶および管理され得、単一のメモリもしくはデータベースに組み込まれ得、多くの異なる方法で論理的かつ物理的に編成され得、多くの異なる方法で、たとえば、リンク付きリスト、ハッシュテーブル、アレイ、レコード、オブジェクト、もしくは暗黙的な記憶メカニズムなどで実装され得る。プログラムは、単一のプログラムの一部（たとえば、サブルーチン）、別々のプログラムであり得、いくつかのメモリおよびプロセッサに分散され得、または多くの異なる方法で、たとえば、共有ライブラリ（たとえば、ダイナミックリンクライブラリ（ＤＬＬ：Ｄｙｎａｍｉｃ  Ｌｉｎｋ  Ｌｉｂｒａｒｙ））などのライブラリで実装され得る。ＤＬＬは、たとえば、回路によって実行された場合に、上述または図示した処理のうちのいずれかを実行する命令を記憶し得る。
【００４９】
様々な実装形態が、上述の技法およびアーキテクチャを使用し得る。
【００５０】
Ａ１  一例では、方法は、分散台帳技術（ＤＬＴ）ベースのデータ構造に提供する基礎計算データを選択することと、基礎計算データを暗号化することであって、基礎計算データは準同型暗号化方式に従って暗号化され、準同型暗号化方式は準同型計算データを生成する、暗号化することと、ＤＬＴベースのデータ構造に関連付けられた計算当事者を決定することであって、計算当事者は、準同型計算データに１つまたは複数の処理演算を実行させるために選択され、１つまたは複数の処理演算は、基礎計算データへの同時の復号されたアクセスなしで実行される、決定することと、準同型計算データを公開鍵で暗号化することであって、公開鍵は発信当事者に関連付けられ、公開鍵は保護された準同型計算データを生成する、暗号化することと、保護された準同型計算データを、ＤＬＴベースのデータ構造の現在のブロックに追加させることであって、ＤＬＴベースのデータ構造の現在のブロックに追加することは、計算当事者との準同型計算データの管理された共有を実施し、現在のブロックへの保護された準同型計算データの追加は、以前のブロックの以前のハッシュの生成と、現在のブロックへの以前のハッシュおよび保護された準同型計算データの配置と、ＤＬＴベースのデータ構造への現在のブロックの追加と、を含む、追加させることと、計算当事者による保護された準同型計算データへのアクセスを許可することであって、アクセスは、保護された準同型計算データを復号することにより許可される、許可することと、を含む。
【００５１】
Ａ２  １つまたは複数の処理演算を通じて機械学習が適用された後に準同型計算データを復号することによって、導出された洞察を収集することをさらに含む、例Ａ１の方法。
【００５２】
Ａ３  計算当事者は、基礎計算データの暗号化された形式に対する処理演算の実行を指示する複数の当事者のうちの１つである、例Ａ１またはＡ２のいずれかの方法。
【００５３】
Ａ４  保護された準同型計算データを復号することは、発信当事者により管理されるプライベート鍵を使用することを含み、プライベート鍵は、公開鍵と非対称なペアを含む、例Ａ１からＡ３のいずれかの方法。
【００５４】
Ａ５  計算当事者は、準同型暗号化方式を使用して暗号化されたままで、準同型計算データに処理演算を実行させる、例Ａ１からＡ４のいずれかの方法。
【００５５】
Ａ６  １つまたは複数の処理演算は、乗算演算（ＭＵＬＴ）、加算演算（ＡＤＤ）、またはこれらの組み合わせを含む、例Ａ１からＡ５のいずれかの方法。
【００５６】
Ａ７  基礎計算データの管理された共有を実施することは、基礎計算データ内の基礎となる値を計算当事者に開示しない、例Ａ１からＡ６のいずれかの方法。
【００５７】
Ａ８  準同型処理後データを受信することであって、準同型処理後データは、計算当事者の代わりに、準同型計算データに１つまたは複数の処理演算を実行することによって生成される、受信することをさらに含む、例Ａ１からＡ７のいずれかの方法。
【００５８】
Ａ９  基礎処理後データにアクセスするために、準同型計算データの復号に成功するはずのものと同一の復号パラメータを使用して準同型処理後データを復号することをさらに含む、例Ａ１からＡ８のいずれかの方法。
【００５９】
Ａ１０  計算当事者と許可を協調させることによって、基礎処理後データを共有することをさらに含む、例Ａ１からＡ９のいずれかの方法。
【００６０】
Ａ１１  現在のブロックの後続の共有ブロックにおいて、ＤＬＴベースのデータ構造に基礎処理後データを付加することによって、基礎処理後データの共有を実施することをさらに含む、例Ａ１からＡ１０のいずれかの方法。
【００６１】
Ａ１２  基礎計算データが、ＤＬＴベースのデータ構造の複数のインスタンスにわたって同一であることを確認することをさらに含む、例Ａ１からＡ１１のいずれかの方法。
【００６２】
Ｂ１  一例では、システムは、分散台帳技術（ＤＬＴ）ベースのデータ構造をサポートする分散ネットワークとの通信リンクを確立するように構成されるネットワークインターフェース回路と、管理型データ共有回路であって、分散台帳技術（ＤＬＴ）ベースのデータ構造に提供する基礎計算データを選択し、準同型暗号化方式に従って基礎計算データを暗号化して、準同型計算データを生成し、ＤＬＴベースのデータ構造に関連付けられた計算当事者を決定し、計算当事者は、基礎計算データへの同時の復号されたアクセスなしで、準同型計算データに１つまたは複数の処理演算を実行させるために選択され、発信当事者に関連付けられた公開鍵で準同型計算データを暗号化して、保護された準同型計算データを生成し、保護された準同型計算データを、ＤＬＴベースのデータ構造の現在のブロックに追加させて、計算当事者との準同型計算データの管理された共有を実施し、現在のブロックへの保護された準同型計算データの追加は、以前のブロックの以前のハッシュの生成と、現在のブロックへの以前のハッシュおよび保護された準同型計算データの配置と、ＤＬＴベースのデータ構造への現在のブロックの追加と、を含み、保護された準同型計算データを復号することによって、計算当事者による保護された準同型計算データのアクセスを許可する、ように構成される管理型データ共有回路と、を含む。
【００６３】
Ｂ２  管理型データ共有回路は、１つまたは複数の処理演算を通じて機械学習が適用された後に準同型計算データを復号することによって、導出された洞察を収集するようにさらに構成される、例Ｂ１のシステム。
【００６４】
Ｂ３  計算当事者は、基礎計算データの暗号化された形式に対する処理演算の実行を指示する複数の当事者のうちの１つである、例Ｂ１またはＢ２のいずれかのシステム。
【００６５】
Ｂ４  管理型データ共有回路は、発信当事者により管理されるプライベート鍵を使用して、保護された準同型計算データを復号するように構成され、プライベート鍵は、公開鍵と非対称なペアを含む、例Ｂ１からＢ３のいずれかのシステム。
【００６６】
Ｂ５  計算当事者は、準同型暗号化方式を使用して暗号化されたままで、準同型計算データに処理演算を実行させる、例Ｂ１からＢ４のいずれかのシステム。
【００６７】
Ｂ６  １つまたは複数の処理演算は、乗算演算（ＭＵＬＴ）、加算演算（ＡＤＤ）、またはこれらの組み合わせを含む、例Ｂ１からＢ５のいずれかのシステム。
【００６８】
Ｂ７  管理型データ共有回路は、基礎計算データ内の基礎となる値を計算当事者に開示させずに、基礎計算データの管理された共有を実施するように構成される、例Ｂ１からＢ６のいずれかのシステム。
【００６９】
Ｃ１  一例では、製品は、一過性の信号以外の機械可読媒体と、機械可読媒体に記憶された命令と、を含み、これら命令は、実行された場合に、機械に、分散台帳技術（ＤＬＴ）ベースのデータ構造に提供する基礎計算データを選択し、準同型暗号化方式に従って基礎計算データを暗号化して、準同型計算データを生成し、ＤＬＴベースのデータ構造に関連付けられた計算当事者を決定し、計算当事者は、基礎計算データへの同時の復号されたアクセスなしで、準同型計算データに１つまたは複数の処理演算を実行させるために選択され、発信当事者に関連付けられた公開鍵で準同型計算データを暗号化して、保護された準同型計算データを生成し、保護された準同型計算データを、ＤＬＴベースのデータ構造の現在のブロックに追加させて、計算当事者との準同型計算データの管理された共有を実施し、現在のブロックへの保護された準同型計算データの追加は、以前のブロックの以前のハッシュの生成と、現在のブロックへの以前のハッシュおよび保護された準同型計算データの配置と、ＤＬＴベースのデータ構造への現在のブロックの追加と、を含み、保護された準同型計算データを復号することによって、計算当事者による保護された準同型計算データのアクセスを許可する、ことを行わせるように構成される。
【００７０】
Ｄ１  例Ａ１からＡ１２のいずれかのうちの方法のいずれかを実施するように構成される回路を含むシステム。
【００７１】
Ｅ１  機械可読媒体に記憶された命令であって、例Ａ１からＡ１２のいずれかのうちの方法のいずれかを機械に実施させるように構成される命令を含む、製品。
【００７２】
様々な実装形態を具体的に説明してきた。しかしながら、他の多くの実装形態が可能である。
【００７３】
本明細書で使用している見出しおよび小見出しは、読者が記載の実装形態を理解するのを支援するためのものにすぎない。
【図１】
2020092414.tif 000003
【図２】
2020092414.tif 000004
【図３】
2020092414.tif 000005
【図４】
2020092414.tif 000006
【図５】
2020092414.tif 000007
【図６】
2020092414.tif 000008
【外国語明細書】
2020092414000001.pdf
2020092414000002.pdf
2020092414000003.pdf
2020092414000004.pdf