JP7545073B2 - 処理装置、処理方法およびプログラム - Google Patents

処理装置、処理方法およびプログラム Download PDF

Info

Publication number
JP7545073B2
JP7545073B2 JP2022545217A JP2022545217A JP7545073B2 JP 7545073 B2 JP7545073 B2 JP 7545073B2 JP 2022545217 A JP2022545217 A JP 2022545217A JP 2022545217 A JP2022545217 A JP 2022545217A JP 7545073 B2 JP7545073 B2 JP 7545073B2
Authority
JP
Japan
Prior art keywords
processing
data
user terminal
processing data
unit
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.)
Active
Application number
JP2022545217A
Other languages
English (en)
Other versions
JPWO2022044281A1 (ja
JPWO2022044281A5 (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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2022044281A1 publication Critical patent/JPWO2022044281A1/ja
Publication of JPWO2022044281A5 publication Critical patent/JPWO2022044281A5/ja
Application granted granted Critical
Publication of JP7545073B2 publication Critical patent/JP7545073B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Description

本発明は、処理装置、処理方法およびプログラムに関する。
近年、様々な業界においてAI(Artificial Intelligence)またはアルゴリズムを用いたデータ分析の利用が進んでいる。IoT(Internet of Things)の普及により、各企業が、様々な機器またはセンサ等から収集したデータを、自社独自のアルゴリズムまたは学習モデル等で分析する機会が増えている。自社内でのデータ利用にとどまらず、企業間でデータを共有し、利活用を推進する動きが活発化している(非特許文献1参照)。
各企業は、自社のノウハウとして、他社に公開せずに管理したいデータがある。データを他社に公開せずに、他社が提供するアルゴリズムを実装したデータ分析基盤を利用してデータを分析する方法として、秘密計算を用いる方法がある(非特許文献2参照)。秘密計算は、データを暗号化したまま任意の関数を計算する方法である。秘密計算により、プライバシーの問題または企業の秘密のために外に出すことが難しいデータを、アルゴリズム提供者に秘密にしたまま安全に分析することができる。
外部からの攻撃によるデータ流出に対する安全性を高めるため、メモリ上のデータを暗号化し、CPUの内部でのみ暗号化を解除する機能を備えたメモリならびにCPUがある(非特許文献3)。
総務省、"第2節 データ流通・利活用における課題"、[online]、平成29年、[令和2年8月18日検索]、インターネット〈URL:https://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h29/pdf/n2200000.pdf〉 池亮、五十嵐大、"秘密計算の発展"、[online]、2018年7月1日、電子情報通信学会 基礎・境界ソサイエティ Fundamentals Review Vol.12 No.1、[令和2年8月18日検索]、インターネット〈URL:https://www.jstage.jst.go.jp/article/essfr/12/1/12_12/_pdf/-char/en〉 Costan, Victor, and Srinivas Devadas、" Intel SGX Explained "、[online]、[令和2年8月18日検索]、インターネット〈URL:http://css.csail.mit.edu/6.858/2020/readings/costan-sgx.pdf〉
非特許文献1は、企業間でデータを共有し、利活用する動向について開示するに止まる。非特許文献1は、各企業が、自社のノウハウとしてデータまたはアルゴリズムを秘匿したまま、企業間でデータを共有可能な技術について、開示も示唆もない。
非特許文献2に開示される秘密計算は、データに依存する分岐を含むアルゴリズムなどを暗号化したままのデータに適用することができず、一部の処理を秘密計算向けの処理に書き換えなければならない場合がある。つまり秘密計算を想定せずに作られたアルゴリズムをそのまま暗号化したままのデータに適用することが難しく、一部の処理を秘密計算用に書き換えなければならないという問題がある。
また秘密計算技術を用いる場合、分析対象となるデータは暗号化されたままのために秘匿できても、分析を行うアルゴリズム及び処理プログラムは分析実行者に対して秘匿できないという課題がある。
本発明は、上記事情に鑑みてなされたものであり、本発明の目的は、コンピュータ処理で参照されるデータ、またはコンピュータ処理を実行するプログラムデータを、秘匿したまま他者が利用可能な技術を提供することである。
本発明の一態様の処理装置は、第1のユーザ端末から第1の処理データを取得し、第2のユーザ端末から第2の処理データを取得する取得部と、前記第1のユーザ端末から、前記第1の処理データと前記第2の処理データによる処理の結果データの共有の要求を受信し、前記第2のユーザ端末から、前記第1のユーザ端末による前記第2の処理データの使用の許諾を受信するマッチング部と、前記第2のユーザ端末から許諾を受信すると、前記第1の処理データと前記第2の処理データを処理して、前記結果データを出力する処理部と、前記結果データを、前記第1のユーザ端末に提供する提供部を備える。
本発明の一態様の処理方法は、コンピュータが、第1のユーザ端末から第1の処理データを取得し、第2のユーザ端末から第2の処理データを取得するステップと、前記コンピュータが、前記第1のユーザ端末から、前記第1の処理データと前記第2の処理データによる処理の結果データの共有の要求を受信し、前記第2のユーザ端末から、前記第1のユーザ端末による前記第2の処理データの使用の許諾を受信するステップと、前記コンピュータが、前記第2のユーザ端末から許諾を受信すると、前記第1の処理データと前記第2の処理データを処理して、前記結果データを出力するステップと、前記コンピュータが、前記結果データを、前記第1のユーザ端末に提供するステップを備える。
本発明の一態様は、上記処理装置として、コンピュータを機能させる処理プログラムである。
本発明によれば、コンピュータ処理で参照されるデータ、またはコンピュータ処理を実行するプログラムデータ等のデータを、秘匿したまま他者が利用可能な技術を提供することができる。
図1は、本発明の実施の形態に係る処理システムのシステム構成と、処理装置およびユーザ端末の機能ブロックを説明する図である。 図2は、処理データ蓄積部のデータ構造の一例を説明する図である。 図3は、ポリシーデータのデータ構造の一例を説明する図である。 図4は、処理システムにおける処理を説明するシーケンス図である。 図5は、暗号化された処理データを用いる処理を説明するシーケンス図である。 図6は、処理装置およびユーザ端末に用いられるコンピュータのハードウエア構成を説明する図である。
以下、図面を参照して、本発明の実施形態を説明する。図面の記載において同一部分には同一符号を付し説明を省略する。
(処理システム)
図1を参照して、本発明の実施の形態に係る処理装置1が用いられる処理システム7を説明する。処理システム7は、処理装置1、複数のユーザ端末3を備える。処理装置1は、通信ネットワーク5を介して、第1のユーザ端末3aおよび第2のユーザ端末3bのそれぞれと、相互に通信可能に接続される。図1に示す例において、複数のユーザ端末3は、第1のユーザ端末3aおよび第2のユーザ端末3bの2つのユーザ端末3を備える場合を説明するが、2以上のユーザ端末3を備えれば良く、ユーザ端末の数は問わない。
処理システム7は、各ユーザのポリシーに従って、各ユーザ端末3が提供する処理データの他ユーザとの共有および他ユーザによる利活用を支援する。処理データは、コンピュータ処理で参照されるデータ、またはコンピュータ処理を実行するプログラムデータである。処理システム7は、処理データそのものを他ユーザに提供することなく、処理データを用いて処理した結果データをユーザに提供する。
例えば、プログラムデータを提供する第1のユーザが、参照データを提供する第2のユーザに対して、プログラムで参照データを処理した結果の共有を要求すると、処理システム7は、ユーザ間の共有の合意を支援する。ユーザ間で参照データの処理および結果の共有が合意されると、処理装置1は、参照データをプログラムデータで処理して、その処理結果を第1のユーザに提供する。参照データを提供するユーザが、プログラムデータを提供するユーザに対して、プログラムデータの共有を要求する場合も同様である。なお処理結果は、合意に基づき共有を許可されたユーザに提供される。
従来、ユーザは、自身の持つデータを他社に公開したくないが、他ユーザのプログラムで自身のデータを処理した結果を得たいというニーズを持っている。他方で、プログラムを持つユーザは、他ユーザにプログラムを公開したくないが、自身のプログラムを利用したサービスを提供したいというニーズがある。
そこで処理装置1は、各ユーザに対して中立な立場となる第三者によって運営される。処理装置1は、例えば、クラウド上に実装される。処理装置1は、各ユーザがそれぞれ有する処理データを安全に管理し、各ユーザの合意に従って、処理データを処理し、その処理結果をユーザに返す。処理装置1は、各ユーザの有する処理データを、他ユーザに開示することなく、その利用を促すことができる。
(ユーザ端末)
ユーザ端末3は、それぞれ、処理装置1によるサービスを利用するユーザの端末である。ユーザは、個人であっても良いし、企業、団体等であっても良い。ユーザ端末3は、処理システム7の管理対象となる処理データを提供する。ユーザが企業の場合、またユーザ端末3は、企業に属する1以上の担当者が利用する端末であっても良い。
図1に示すように第1のユーザ端末3aは、第1の処理データDaと制御部31aを有する。第1の処理データDaは、第2のユーザ端末3bなどの他ユーザの利用のために、処理装置1に提供されるデータである。第1の処理データDaは、例えば、各ユーザが利用するストレージサービスに格納されても良い。
制御部31aは、第1の処理データDaを処理装置1に送信する。また制御部31aは、処理装置1に、例えば第2のユーザ端末3bが提供する第2の処理データDbなどの、他ユーザ端末が提供する処理データの利用を要求し、その結果データ13を取得する。制御部31aは、各ユーザの拠点に配置されても良いし、処理装置1が配置されたクラウド上に配置されても良い。その場合、各ユーザの拠点に配置された端末からAPI(Application Programming Interface)等を介してクラウド上の制御部31aにアクセスする。
また制御部31aは、処理データの利用に際し、他ユーザとポリシーを合意するためのインタフェースを提供する。制御部31aは、他ユーザが提供する処理データの利用を要求する際、その処理データを利用するポリシーを送信するインタフェースを表示し、入力されたポリシーのデータを処理装置1に送信する。また制御部31aは、他ユーザから、自身が提供する処理データの利用が要求される際、他ユーザからポリシーを受信したポリシーに対して許諾するか否かを応答するインタフェースを表示し、入力された応答のデータを処理装置1に送信する。制御部31aは、インタフェースの表示およびデータの送信を、他ユーザとポリシーが合意できるまで複数回繰り返す場合もある。
第2のユーザ端末3bは、第2の処理データDbと制御部31bを有する。第2の処理データDbおよび制御部31bは、それぞれ、第1の処理データDaおよび制御部31aと同様である。
本発明の実施の形態において第1のユーザ端末3aが、コンピュータ処理で参照されるデータを第1の処理データDaとして提供し、第2のユーザ端末3bが、コンピュータ処理を実行するプログラムデータを第2の処理データDbとして提供する場合を説明する。第1のユーザ端末3aが第2のユーザ端末3bに、第1の処理データDaを第2の処理データDbで処理した結果の共有を要求し、処理装置1は、第2のユーザ端末3bが提供するプログラムデータで、第1のユーザ端末3aが提供する参照データを処理して、その結果データを第1のユーザ端末3aに提供する。この例の他にも、プログラムデータを提供するユーザが、参照データを提供するユーザに、参照データをプログラムデータで処理した結果の共有を要求して、処理結果を受領する例もある。また結果のデータは、要求ユーザが指定したユーザに提供されても良い。
また本発明の実施の形態において、第1の処理データDaおよび第2の処理データDbのうち、一方がコンピュータ処理で参照されるデータで、一方がコンピュータ処理を実行するプログラムデータである場合を説明するが、これに限らない。例えば、第1の処理データDaおよび第2の処理データDbの両方がコンピュータ処理で参照されるデータの場合、処理装置1が所有するプログラムまたは一般に公開されるプログラムで第1の処理データDaおよび第2の処理データDbを処理する。第1の処理データDaおよび第2の処理データDbの両方がコンピュータ処理を実行するプログラムデータの場合、第1の処理データDaおよび第2の処理データDbが処理装置1の有するデータまたは一般に公開されるデータを処理する。
(処理装置)
処理装置1は、ユーザ端末3が提供する処理データを、そのユーザが定めるポリシーに従って管理する。処理装置1は、結果データの共有時のユーザ間のポリシーの合意を支援する。処理装置1は、ユーザ端末3の要求に従って、指定された処理データを処理して、その結果をユーザ端末3に返す。
処理装置1は、1つの拠点に配置されるが、複数の拠点に配置されても良い。またスケールアウトを考慮して処理装置1は、複数の装置で構成されても良い。
図1に示すように処理装置1は、処理データ蓄積部11、ポリシーデータ12、結果データ13、揮発性メモリ14、取得部21、マッチング部22、管理部23、処理部24および提供部25を備える。処理データ蓄積部11は、メモリ902またはストレージ903に実装される。ポリシーデータ12および結果データ13は、メモリ902またはストレージ903に記憶されるデータである。揮発性メモリ14は、RAM(Random Access Memory)等の揮発性記憶領域であって、後述するように、処理部24からのみアクセスされる領域である。取得部21、マッチング部22、管理部23、処理部24および提供部25は、CPU901の実行によって処理装置1に実装される機能部である。
処理データ蓄積部11は、ユーザ端末3から取得した複数の処理データのデータセットを蓄積する記憶領域である。処理データ蓄積部11は、例えば、図2に示すように、複数の処理データを含む。本発明の実施の形態において処理データ蓄積部11は、第1のユーザ端末3aが提供する第1の処理データDaと、第2のユーザ端末3bが提供する第2の処理データDbを含む。処理データ蓄積部11は、少なくとも処理装置1が処理するデータであって、各ユーザ端末から提供されるデータを含んでいればよい。処理データは、処理装置1による処理前に、各ユーザの管理するストレージに記憶され、処理が決定される際に処理データ蓄積部11に格納されても良い。
また処理データ蓄積部11は、処理データを提供したユーザ毎に、データ領域が区分され、各ユーザ端末3は、ユーザ自身に割り当てられたデータ領域にアクセス出来ても良い。ユーザ端末3は、他ユーザに処理データを利用させる場合のみならず、ユーザ自身が処理データを利用する際に処理データ蓄積部11のユーザのデータ領域にアクセスしても良い。
ポリシーデータ12は、各ユーザ端末3から提供されたポリシーのデータである。ポリシーデータ12は、合意ポリシーデータ12a、公開ポリシーデータ12b等の各種ポリシーデータを含む。ポリシーデータ12は、JSON(JavaScript Object Notation(Javaは登録商標))等の任意の形式で表現されても良い。
図3(a)を参照して、合意ポリシーデータ12aを説明する。合意ポリシーデータ12aは、あるユーザが、他のユーザが提供する処理データの処理結果の共有を要求する際、要求したユーザと要求されたユーザの間で合意される使用条件のポリシーのデータである。処理装置1は、合意ポリシーデータ12aに従って、要求ユーザと許諾ユーザの各ユーザが提供するデータを管理する。
合意ポリシーデータ12aは、ポリシーの識別子、要求ユーザの識別子、許諾ユーザの識別子、使用ユーザの識別子、処理データの識別子および使用期間等を含む。要求ユーザの識別子は、他ユーザの提供する処理データに対して、使用を要求したユーザの識別子である。許諾ユーザの識別子は、他ユーザから使用を要求された処理データを提供するユーザの識別子であって、他ユーザの要求に対して許諾または拒否するユーザの識別子である。使用ユーザの識別子は、結果データが提供されるユーザの識別子であって、要求ユーザの識別子と同一であっても良いし、異なっても良い。処理データの識別子は、要求ユーザの要求対象の処理データの識別子である。使用期間は、要求ユーザが要求対象の処理データを使用する期間である。
合意ポリシーデータ12aは、図3(a)に含む項目以外の項目を備えても良い。合意ポリシーデータ12aは、処理装置1が、要求ユーザと許諾ユーザのポリシーの合意状況を示す状況の項目等を備えても良い。合意状況は、例えばユーザ双方が合意するポリシーを調整している最中か、調整が終了しているかなどを示す。また合意ポリシーデータ12aは、要求ユーザと許諾ユーザの各担当者の識別子の項目を備えても良い。
図3(b)を参照して、公開ポリシーデータ12bを説明する。公開ポリシーデータ12bは、処理データを提供するユーザが設定する、処理データの公開条件となるポリシーのデータである。処理装置1は、公開ポリシーデータ12bに従って、各ユーザが提供した処理データを他ユーザに公開する。
公開ポリシーデータ12bは、公開ポリシーの識別子、公開ユーザの識別子、公開先ユーザの識別子、処理データの識別子および公開期間等を含む。公開ユーザの識別子は、公開対象の処理データを提供するユーザの識別子である。公開先ユーザの識別子は、公開ユーザが、公開対象の処理データを公開するユーザの識別子である。公開ユーザの識別子の代わりに、公開ユーザの属性または条件等が設定されても良い。処理データの識別子は、公開対象の処理データの識別子である。公開期間は、公開ユーザが公開先ユーザに処理データを公開する期間である。
公開ポリシーデータ12bは、図3(b)に含む項目以外の項目を備えても良い。公開ポリシーデータ12bは、処理装置1が、公開先ユーザが公開対象の処理条件を使用する際の用途等の項目を備えても良い。
結果データ13は、処理データ蓄積部11に蓄積される処理データを用いて処理した結果のデータである。結果データ13は、処理データの使用を要求したユーザ端末3に提供される。
取得部21は、第1のユーザ端末3aから第1の処理データDaを取得し、第2のユーザ端末3bから第2の処理データDbを取得する。取得部21は、第1の処理データDaおよび第2の処理データDbを、処理データ蓄積部11に蓄積する。
マッチング部22は、第1のユーザ端末3aからの第2の処理データDbの処理の結果データの共有の要求について、第1のユーザと第2のユーザ間の合意を支援する。マッチング部22は、第1のユーザ端末3aから、第1の処理データDaと第2の処理データDbによる処理の結果データの要求を受信する。ここで第1の処理データDaは、第1のユーザ端末3aから提供されたデータであるので、マッチング部22は、第2のユーザ端末3bから、第1のユーザ端末3aによる第2の処理データDbの許諾を受信する。
マッチング部22は、第1のユーザ端末3aから要求とともにポリシーを受信する場合がある。例えば第2のユーザ端末3bが第2の処理データDbについて設定した公開ポリシーを参照し、変更を希望する場合、第1のユーザ端末3aは、その変更内容を含むポリシーを処理装置1に送信する。または第2のユーザ端末3bが公開ポリシーを設定していない場合でも、第1のユーザ端末3aは、第2の処理データDbを利用するためのポリシーを処理装置1に送信する。マッチング部22は、第1のユーザ端末3aから要求とポリシーを受信すると、ポリシーを第2のユーザ端末3bに通知し、第1のユーザ端末3aおよび第2のユーザ端末3bが承諾したポリシーを特定する。処理装置1は、第1のユーザ端末3aおよび第2のユーザ端末3bの双方が合意するまで、ポリシーの送受信を繰り返す。
ここで合意されるポリシーは、図3に示す項目のほか、使用するデータの範囲、使用目的等を含んでも良い。例えば要求対象の第2の処理データDbがセンサの測定値の場合、そのセンサが測定された期間を含んでも良い。この場合、処理装置1は、第2の処理データDbのうち、ポリシーで設定された期間のデータを抽出して処理する。
管理部23は、マッチング部22によって特定されたポリシーに従って、第1の処理データDaおよび第2の処理データDbを管理する。管理部23は、処理データ蓄積部11に蓄積された各処理データを、ポリシーデータ12に従って制御する。
例えば管理部23は、ポリシーデータ12で設定された公開先ユーザに対して処理データを公開し、それ以外のユーザに対して処理データを公開しないなど、アクセス制御を行う。
管理部23は、ポリシーデータ12で設定された公開期間を徒過した処理データの公開を停止する。
また管理部23は、第2のユーザ端末3bから第2の処理データDbを削除する要請を受信すると、ポリシーデータ12を参照して、第2の処理データDbの利用に関する合意ポリシー、より具体的には使用期間の残存する合意ポリシーの有無を確認する。合意ポリシーがない場合、管理部23は、第2の処理データDbを、処理データ蓄積部11から削除する。第2の処理データDbの利用に関する合意ポリシーがある場合、具体的には第2のユーザ端末3bから第1のユーザ端末3aに対する第2の処理データDbの使用の許諾を受信し、使用期間が残存するときに、第2のユーザ端末3bから、第2の処理データDbの削除の要求がある場合がある。この場合、マッチング部22が、第1のユーザ端末3aに第2の処理データDbの削除の要求を通知し、第1のユーザ端末3aから承諾を受信すると、管理部23は、第2の処理データDbを削除する。管理部23は、合意ポリシーを確認の上、処理データを削除することにより、処理データを利用するユーザに不都合が生じないように、処理データ蓄積部11を管理する。なお、合意ポリシーとして、処理データを削除する際の条件等が予め定められている場合、管理部23は、その条件に従って処理データを削除する。
また管理部23は、処理データ蓄積部11に蓄積された各処理データについて、他ユーザから利用された回数、期間、日時、利用したユーザ名等を記録しても良い。この記録は、処理データを提供したユーザ端末3から、処理データを利用したユーザに対する費用の請求に用いられる。これにより、処理システム7を用いた処理データの利活用を促進することができる。また処理データが利用された回数は、処理装置1によるセキュリティ管理および監査の対価として、処理データを提供したユーザに対する費用の請求に用いられても良い。
処理部24は、第2のユーザ端末3bから許諾を受信すると、第1の処理データDaと第2の処理データDbを処理して、結果データ13を出力する。処理部24は、揮発性メモリ14を用いて処理する。処理部24は、結果データ13を出力した後、揮発性メモリ14のデータを削除する。処理が終了すると、処理部24は、その処理に用いたデータを削除する。
ここで揮発性メモリ14および処理部24は、保護領域10と称する。保護領域10に、ユーザ間で処理データの共有の合意がなされると、その合意に基づいて処理を行うコンテナ等の作業領域が生成され、その合意に基づく処理が終了すると、その作業領域が消去される。保護領域10は、ユーザ端末3等の外部端末からは接続できず、処理装置1内から接続可能に形成される。ユーザ間の合意毎にコンテナ等の個別の作業領域が生成され、処理後に作業領域が消去されるので、処理データの流出を防止することができる。
処理部24が、複数の合意に従って処理する際、各合意においてプログラムデータが共通し、参照データが異なる場合、処理部24は、各処理が終了した後に、揮発性メモリ14からプログラムデータを削除しても良い。同様に、処理部24が、各合意において参照データが共通し、プログラムデータが異なる場合、処理部24は、各処理が終了した後に、揮発性メモリ14から参照データを削除しても良い。
処理部24はさらに、処理データを処理する際、検証スクリプトで、処理データを検証しても良い。処理部24は、プログラムに入力される参照データである処理データのデータ形式、構造、メタデータ、処理データの単位、作成時刻などの付加情報に齟齬がなく、当該処理データを、プログラムデータで処理が可能であるかを確認する。確認した後、処理部24は、処理データを揮発性メモリ14に書き出し、処理を開始する。検証スクリプトのデータは、例えば、ユーザ端末3が処理データを処理装置1に提供する際、他ユーザとの処理の合意がなされた際など、処理部24が処理データを処理する前に、ユーザ端末3から処理装置1に提供される。
処理部24が検証した結果、処理をすることができない場合、参照データを提供したユーザ端末3に処理ができないことを通知する。処理をすることができる場合、処理部24は、参照データを揮発性メモリ14に読み出して、処理を行い、結果データ13を出力する。
ユーザ毎に任意の形式でデータを記憶する場合でも、処理部24が事前に検証することにより、不正確な処理結果の出力を回避することができる。
提供部25は、結果データ13を、使用ユーザに提供する。提供部25は、結果データ13が生成されると、合意ポリシーデータ12aを参照して使用ユーザの識別子を取得し、その使用ユーザのユーザ端末3に結果データ13を送信する。あるいは、提供部25は、結果データ13の取得の要請があった際に、合意ポリシーデータ12aを参照して使用ユーザの識別子を取得し、要請元がその使用ユーザである場合、その使用ユーザのユーザ端末3に結果データ13を送信しても良い。提供部25は、合意ポリシーデータ12aで設定される使用ユーザがアクセス可能な記憶領域に、結果データ13を記憶しても良い。また第1のユーザ端末3aに結果データを提供したことをトリガーとして、外部のAPIをキックするなどのアクチュエーションが発生しても良い。
図4を参照して、処理システム7における処理を説明する。
ステップS11において第1のユーザ端末3aは、第1の処理データDaを処理装置1に送信する。ステップS12において第2のユーザ端末3bは、第2の処理データDbを処理装置1に送信する。ステップS13において処理装置1の取得部21は、ステップS11およびステップS12で取得した第1の処理データDaおよび第2の処理データDbを、処理データ蓄積部11に記憶する。ここで、ステップS11およびステップS12において、各処理データの公開ポリシーが送信された場合、取得部21は、公開ポリシーをポリシーデータ12に蓄積し、管理部23は、送信された公開ポリシーに従って、各処理データを管理する。
ステップS14において第1のユーザ端末3aが、第2の処理データDbを使って、第1の処理データとともに処理し、処理の結果データ13を第1のユーザ端末3aが共有する要求を、処理装置1に送信する。このとき第1のユーザ端末3aは、第2の処理データの使用に伴うポリシーも、処理装置1に送信する。処理装置1のマッチング部22は、要求を受信すると、その要求を第2のユーザ端末3bに送信する。第2のユーザ端末3bは、受信した要求の内容を表示し、ユーザからその要求を許諾するか否かの指示を待機する。許諾する指示が入力されると、第2のユーザ端末3bは、許諾する旨をマッチング部22に返す。マッチング部22は、第2のユーザ端末3bの許諾に従って、合意ポリシーデータ12aにポリシーを設定する。
なお、第1のユーザ端末3aが提示したポリシーに対して第2のユーザ端末3bのユーザが許諾しない場合、第2のユーザ端末3bは、ユーザがから入力されたポリシーの変更内容をマッチング部22に送信し、マッチング部22は、ポリシーの変更内容を第1のユーザ端末3aに送信する。第1のユーザ端末3aは、受信したポリシーの変更内容を表示し、ユーザからその変更を許諾するか否かの指示を待機する。許諾する指示が入力されると、第1のユーザ端末3aは、許諾する旨をマッチング部22に返す。マッチング部22は、第1のユーザ端末3aの許諾に従って、合意ポリシーデータ12aにポリシーを設定する。第1のユーザ端末3aおよび第2のユーザ端末3b間のポリシーの送受信は、双方が合意するまで複数回繰り返されても良い。
第1のユーザ端末3aおよび第2のユーザ端末3b間でポリシーが合意されると、ステップS18において処理部24は、第1の処理データDaと第2の処理データを揮発性メモリ14に書き込む。ステップS19において処理部24は、揮発性メモリ14の処理データを処理して結果データ13を生成する。結果データ13が生成されると、ステップS20において処理部24は、ステップS19の処理で読み書きされた揮発性メモリ14のデータを削除する。
ステップS21において提供部25は、結果データ13を第1のユーザ端末3aに提供する。
このような処理システム7によれば、複数のユーザ間で秘匿したいプログラムデータおよびプログラムの参照データそのものを共有することなく、ユーザ間で合意した処理の結果のみを共有することができる。処理システム7は、高度なノウハウを含むプログラムおよび参照データをサービスとして提供することが可能になる。また、機密性の高い参照データを持つユーザは、他ユーザのプログラムによる処理結果を得ることが可能となり、精度の向上や複雑な処理の外部サービス利用による実現が可能となる。
処理システム7は、プログラムデータおよび参照データそのものを、他ユーザに公開することなく、安全にユーザ間で利用することが可能となる。様々なユーザが提供するプログラムを使った高精度な分析、およびより広範囲のデータの利活用が、推進される。処理システム7は、ユーザ自身の利用のみに留めていたプログラムデータおよび参照データを、他ユーザが複製できない形で、他ユーザに処理結果のみを提供し、またデータを提供したユーザは利用に応じた料金を得ることも可能になる。データを提供するユーザおよびそのデータを活用するユーザの双方が、データの利活用のメリットを享受することができる。
また本発明の実施の形態において、参照データとプログラムデータについて、それぞれ1つのデータセットのデータを処理部24が処理する場合を説明したが、これに限らない。処理部24は、少なくとも一方が複数のデータセットのデータを処理しても良い。またこれらのデータセットは、3以上のユーザにより提供されてもよく、その場合、マッチング部22は、これらのデータセットを提供する各ユーザ間で、処理の合意を支援する。
(変形例)
変形例において、処理装置1の処理データ蓄積部11は、暗号化された処理データを蓄積し、処理部24は、暗号化された処理データを、処理部24の中でのみ暗号化を解除して、処理データを処理する場合を説明する。ここで用いられる処理部24は、非特許文献3で開示される方法で実装される。具体的には処理部24は、処理部24を実装するCPU内のレジスタ内でのみ、暗号化されたデータを復号して、その復号されたデータを処理する。
変形例において、第1のユーザ端末3aの制御部31aは、第1の処理データDaを、処理装置1の処理部24のCPU内で復号可能な公開鍵で暗号化して、処理装置1に送信する。第1のユーザ端末3aの制御部31aは、処理装置1の処理部24のCPU内で復号可能な公開鍵で暗号化した第1の処理データDaをさらに、第1のユーザ端末3aの公開鍵で二重に暗号化しても良い。第2のユーザ端末3bの制御部31bも同様に、第2の処理データDbを、処理装置1の処理部24のCPU内で復号可能な公開鍵で暗号化して、処理装置1に送信する。第2のユーザ端末3bの制御部31bは、処理装置1の処理部24のCPU内で復号可能な公開鍵で暗号化した第2の処理データDbをさらに、第2のユーザ端末3bの公開鍵で二重に暗号化しても良い。なお、処理装置1は、ポリシーの合意時など、第1のユーザ端末3aの秘密鍵および第2のユーザ端末3bの秘密鍵を、処理部24による処理前に、保持する。
処理装置1の取得部21は、各ユーザ端末3の公開鍵と処理部24のCPU内で復号可能な公開鍵で暗号化された第1の処理データDaおよび第2の処理データDbを取得する。取得部21は、暗号化された第1の処理データDaおよび第2の処理データDbを処理データ蓄積部11に蓄積する。処理データ蓄積部11に蓄積された処理データは、各ユーザ端末3の公開鍵と処理部24で復号可能な公開鍵で暗号化されているので、この処理データが流出しても、データが解読されるのは難しい。
第1のユーザ端末3aおよび第2のユーザ端末3b間で処理の合意がなされると、処理部24は、暗号化された第1の処理データDaを第1のユーザ端末3aの秘密鍵で復号し、第2の処理データDbを第2のユーザ端末3bの秘密鍵で復号して、揮発性メモリ14に記憶する。揮発性メモリ14に記憶された処理データは、処理部24のCPU内で復号可能な公開鍵で暗号化されているので、揮発性メモリ14内の処理データが流出しても、データが解読されるのは難しい。
処理部24は、暗号化された第1の処理データDaおよび第2の処理データDbをCPU内で復号して、復号された第1の処理データDaおよび第2の処理データDbを処理して、結果データ13を出力する。復号された第1の処理データDaおよび第2の処理データDbは、CPUのレジスタ内でのみ存在するので、データの流出が困難になる。変形例において復号された第1の処理データDaおよび第2の処理データDbは、処理装置1内において、処理部24のみがアクセスできる揮発性メモリ14のみに記憶される。結果データ13は、第1のユーザ端末3aに提供される。また処理部24は、処理に用いた揮発性メモリ14のデータを削除する。
図5を参照して、変形例に係る処理システム7における処理を説明する。
ステップS31において第1のユーザ端末3aは、第1の処理データDaを、第1のユーザ端末3aの公開鍵と処理部24の公開鍵で二重に暗号化して、処理装置1に送信する。ステップS32において第2のユーザ端末3bは、第2の処理データDbを、第2のユーザ端末3bの公開鍵と処理部24の公開鍵で二重に暗号化して、処理装置1に送信する。
ステップS33において処理装置1の取得部21は、ステップS31で取得した第1の処理データDaとステップS32で取得した第2の処理データDbを、処理データ蓄積部11に記憶する。なお、処理データ蓄積部11に蓄積された第1の処理データDaおよび第2の処理データDbは、各ユーザ端末3の公開鍵と処理部24で復号可能な公開鍵で暗号化されたままである。
ステップS34において処理システム7は、第1のユーザ端末3aおよび第2のユーザ端末3bの間で、処理の結果データ13を共有するポリシーの合意を行う。詳細は、図4のステップS14ないしS17で説明したとおりである。
第1のユーザ端末3aおよび第2のユーザ端末3b間でポリシーが合意されると、ステップS35において処理部24は、処理データ蓄積部11の暗号化された処理データを、各ユーザ端末3の秘密鍵で復号する。ステップS36において処理部24は、復号した第1の処理データDaと第2の処理データを揮発性メモリ14に書き込む。揮発性メモリ14に記憶された処理データは、処理部24のCPU内で復号可能な公開鍵で暗号化されている。
ステップS37において処理部24は、CPUのレジスタ内で、処理部24の秘密鍵で処理データを復号して、処理データを処理して結果データ13を生成する。結果データ13が生成されると、ステップS38において処理部24は、ステップS37の処理で読み書きされた揮発性メモリ14のデータを削除する。
ステップS39において提供部25は、結果データ13を第1のユーザ端末3aに提供する。
変形例において、処理データ蓄積部11に蓄積される処理データは、各ユーザ端末3の公開鍵と処理部24が復号可能な暗号鍵で暗号化され、揮発性メモリ14に記憶される処理データは、処理部24が復号可能な暗号鍵で暗号化される。処理データ蓄積部11および揮発性メモリ14に記憶されたデータは、外部からの攻撃によるデータ流出に対する安全性を高めることができる。また揮発性メモリ14に記憶されるデータが暗号化されていても、CPUのレジスタ内でのみ復号可能な技術(非特許文献3)を用いることにより、CPUはデータを処理することができる。処理システム7は、サービスを提供する各ユーザに対しても処理データが暗号化された状態で保持し、処理部24の内部でのみ復号されるので、処理データを安全に流通させることができる。
(適用例)
本発明の実施の形態および変形例に係る処理システム7が適用例として3例を説明する。
まず、製造業におけるコスト予測に用いる例を説明する。
ある製品の設計図を有する企業Aと、設計図のデータからコストを予測するプログラムを有する企業Bがある。企業Aは、新しく作成した非公開の設計図でどの程度の生産コストが発生するかを知るために、企業Bの持つプログラムを使用してコスト予測結果を得たい。
一方企業Bは、企業Aなどの他社にプログラムを使用した結果を教えることでプログラムの利用料をとるなどのサービスを提供しビジネスを拡大したい。しかし、企業Aのコスト予測プログラムは、自社のノウハウとして他社に公開できない情報であるため、企業Bは企業Aとの間で社外秘のデータやアルゴリズムを安全に流通させる手段を持たない。
一方製造業界、あるいは企業Aまたは企業Bに利害関係のない中立な第三者が提供する処理システム7が、企業間でプログラムデータとプログラムに入力される参照データを用いた処理結果を共有する基盤を提供する。企業Bは、自社の持つコスト予測プログラムを用いたコスト予測サービスを、処理システム7を利用して開発し提供する。企業Aが企業Bの提供するコスト予測サービスを利用すると、処理装置1は、企業Aと企業Bの合意のもと、企業Aの設計図データと企業Bのコスト予測プログラムを暗号化して受け取り、処理する。処理装置1は、処理結果のみを企業Aに送り、企業Aは、設計図を公開することなく、生産コストの予測を把握することができる。また処理装置1は、企業Bに対してプログラムを使用した処理の回数等の情報を共有することで、企業Bは、プログラムを公開せずにプログラムの使用料金を企業Aに対して請求可能となる。
具体的には、企業Bの第2のユーザ端末3bは、コスト予測プログラムである第2の処理データDbを、暗号化して処理装置1に送信する。企業Bの提供するコスト予測サービスを利用する企業Aの第1のユーザ端末3aは、設計図データである第1の処理データDaを、暗号化して処理装置1に送信する。処理装置1はコスト予測プログラムおよび設計図データを処理データ蓄積部11に保存する。企業Aは、コスト予測プログラムを設計図データに適用した処理結果を得るために、企業Bに対するコスト予測プログラムの処理要求、および設計図データに関するポリシーを、処理装置1に送信する。処理装置1のマッチング部22は、企業Bの第2のユーザ端末3bに、企業Aから送られた処理要求に基づくコスト予測プログラムの使用許諾条件を表示する。企業Bの許諾を得ると、マッチング部22は、許諾された使用条件を表すポリシーをポリシーデータ12に登録する。
処理部24は、許諾されたコスト予測プログラムおよび設計図データを処理データ蓄積部11から保護領域10に送って保護領域10内で復号し、コスト予測プログラムおよび設計図データを用いた処理の結果データ13を得る。処理装置1は、結果データ13を、提供部25を通して企業Aに送信する。あるいは処理装置1は、企業Aが参照可能なデータベース(図示せず)に、結果データ13を保存しても良い。保護領域10内で復号されたコスト予測プログラムおよび復号された設計図データは、削除される。企業Aは、処理結果を用いることで、自社内での分析よりも高精度なコスト予測を実施し生産計画や設計図の改良に役立てることができる。企業Bは、コスト予測プログラムの使用回数等に応じて企業Aから使用料金を得るほか、自社サービスを利用する顧客に無料で提供するなどにより、顧客満足度を高め顧客獲得や囲い込みを行うことができる。
次に、医療機関との保険等級算出に用いる例を説明する。
病院である医療機関Aと、保険会社である企業Bと、医療機関Aの患者がある。医療機関Aは、ある患者の健康診断結果を非公開の情報として持つ。企業Bは、自社の保険商品を契約している患者の情報と、健康診断結果に基づき保険等級を算出するプログラムを持つ。患者は、企業Bの保険を契約しようとしている。
患者が保険契約の変更や申し込みを行う際、企業Bは、自社の保険商品を契約する患者の最新の健康診断結果に応じた保険等級を計算したいと考えているが、個人情報保護のため患者の健康診断結果を直接受け取ることはできない。
健康診断を受信した患者に対し、企業Bは、健康診断結果データを提供すれば保険商品の見積もりや申し込みが可能であることを知らせる。患者自身が保険の申し込みや保険料金の見積もり等を行うために、患者の健康診断結果のデータを提供することについて、処理装置1は、医療機関A、企業Bおよび患者の三者から合意を得る。処理装置1は、医療機関Aの持つ患者の健康診断結果データと、企業Bの保険等級算出プログラムを、それぞれ暗号化して受け取り、処理結果のみを企業Bに送る。これにより患者は、健康診断結果を企業Bに公開せずに企業Bによる保険等級を算出でき、保険商品の契約変更や新規申し込みを行うことができる。企業Bは保険等級算出プログラムを公開することなく、正確な患者の保険等級の情報を得ることができる。
具体的には、患者が、自身の健康診断データの公開条件を設定し、または企業Bの保険等級算出プログラムによる自身の健康診断データの使用に同意する。患者もしくは患者の許諾を得た医療機関Aの持つ第1のユーザ端末3aは、当該患者の健康診断データである第1の処理データDaを、暗号化して処理装置1に送信する。企業Bの持つ第2のユーザ端末3bは、保険等級算出プログラムである第2の処理データDbを、暗号化して処理装置1に送信する。処理装置1は、保険等級算出プログラムおよび健康診断データを処理データ蓄積部11に保存する。この際、患者の医療情報の流出に対するセキュリティをさらに高めるために保護領域10に、CPUのレジスタ内でのみ復号可能な機能を持つCPUおよびメモリが用いられても良い。患者は、保険等級算出プログラムを自身の健康診断データに適用した処理結果を得るために、企業Bに対する保険等級算出プログラムを使用した処理要求、および自身の健康診断データに関するポリシーを、処理装置1に送信する。処理装置1のマッチング部22は、企業Bの第2のユーザ端末3bに、企業Aから送られた処理要求に基づく保険等級算出プログラムの使用許諾条件を表示する。企業Bの許諾を得ると、マッチング部22は、許諾された使用条件に対応するポリシーをポリシーデータ12に登録する。患者の同意があれば保険等級算出プログラムを使用した処理を自動的に許可する場合、患者からの処理要求を自動的に許諾するポリシーが設定されてもよい。
処理部24は、許可された保険等級算出プログラムおよび健康診断データを処理データ蓄積部11から取得し、保護領域10内で復号化して保険等級算出プログラムおよび健康診断データを用いた処理の結果の結果データ13を得る。処理装置1は、結果データ13を、提供部25を通して患者に送信する。あるいは処理装置1は、患者が参照可能なデータベース(図示せず)に、結果データ13を保存しても良い。保護領域10内で復号された保険等級算出プログラムおよび復号された健康診断データは、削除される。患者は、処理結果を参考にして保険等級を把握し、企業Bの保険商品の中で自身が申し込み可能な商品を確認することなどができる。企業Bは、保険等級算出プログラムを提供することで顧客となる可能性のある患者に対し自社の商品を紹介したり、商品の選択や申し込み手続きを簡単にしたりすることができる。
最後に、小売業界における仕入れ予測に用いる例を説明する。
全国にスーパーマーケットを展開する小売企業Aと、メーカーの企業Bがある。企業Aは、全国のスーパーマーケットチェーンの売り上げ情報を非公開のデータとして持っている。企業Bは、地域ごとの高精度な仕入れ量予測プログラムを持っている。企業Aは、ある地域の店舗の仕入れ予測精度を高めるため、企業Bの持つ仕入れ量予測プログラムを使用したいと考えている。企業Bは、非公開のプログラムを使った予測結果を企業Aに提供することで利益を得たいと考えている。しかし、企業Aの持つ売上情報も、企業Bの持つ予測プログラムも非公開であるため、企業Aおよび企業Bの希望を実現する方法がなかった。
処理装置1が、企業Aと企業Bの合意のもと、企業Aの売り上げデータと企業Bの仕入れ量予測プログラムを暗号化して受け取り、処理する。処理装置1は、処理結果のみを企業Aに送り、企業Aは、売り上げデータを公開することなく、企業Bのアルゴリズムで処理した地域ごとの高精度な仕入れ量予測結果を得ることができる。処理装置1は、企業Bに対してプログラムを使用した処理の回数等の情報を共有することで、企業Bは、プログラムを公開せずにプログラムの使用料金を企業Aに対して請求可能となる。
具体的には、企業Bの第2のユーザ端末3bは、仕入れ量予測プログラムである第2の処理データDbを、暗号化した処理装置1に送信する。企業Bの提供する高精度の仕入れ量予測サービスを利用する企業Aの第1のユーザ端末3aは、売り上げデータである第1の処理データDaを、暗号化して処理装置1に送信する。処理装置1は仕入れ量予測プログラムおよび売り上げデータを処理データ蓄積部11に保存する。企業Aは、仕入れ量予測プログラムを自社の売り上げデータに適用した処理結果を得るために、企業Bに対する仕入れ量予測プログラムの処理要求、および売り上げデータに関するポリシーを、処理装置1に送信する。処理装置1のマッチング部22は、企業Bの第2のユーザ端末3bに、企業Aから送られた処理要求に基づく仕入れ量予測プログラムの使用許諾条件を表示する。企業Bの許諾を得ると、マッチング部22は、許諾された使用条件を表すポリシーをポリシーデータ12に登録する。
処理部24は、許諾された仕入れ量予測プログラムおよび売り上げデータを処理データ蓄積部11から保護領域10に送って保護領域10内で復号し、仕入れ量予測プログラムおよび売り上げデータを用いた処理の結果データ13を得る。処理装置1は、結果データ13を、提供部25を通して企業Aに送信する。あるいは処理装置1は、企業Aが参照可能なデータベース(図示せず)に、結果データ13を保存しても良い。保護領域10内で復号された仕入れ量予測プログラムおよび復号された売り上げデータは、削除される。企業Aは受信した処理結果を用いることで、自社の分析方法による予測よりも高精度な仕入れ量の予測が可能となる。企業Bは仕入れ量予測プログラムの使用回数等に応じて企業Aにプログラム使用量を請求する、自社サービスの利用に伴う特典として仕入れ量予測プログラムの使用を許可するなどの方法により、企業Aを顧客として利益を生じさせたり、顧客満足度を高めたりといった効果が得られる。
上記説明した本実施形態の処理装置1およびユーザ端末3は、それぞれ、例えば、CPU(Central Processing Unit、プロセッサ)901と、メモリ902と、ストレージ903(HDD:Hard Disk Drive、SSD:Solid State Drive)と、通信装置904と、入力装置905と、出力装置906とを備える汎用的なコンピュータシステムが用いられる。このコンピュータシステムにおいて、CPU901がメモリ902上にロードされた所定のプログラムを実行することにより、処理装置1およびユーザ端末3の各機能が実現される。
なお、処理装置1およびユーザ端末3は、それぞれ1つのコンピュータで実装されてもよく、あるいは複数のコンピュータで実装されても良い。また処理装置1およびユーザ端末3は、それぞれ、コンピュータに実装される仮想マシンであっても良い。
処理装置1およびユーザ端末3のそれぞれのプログラムは、HDD、SSD、USB(Universal Serial Bus)メモリ、CD (Compact Disc)、DVD (Digital Versatile Disc)などのコンピュータ読取り可能な記録媒体に記憶することも、ネットワークを介して配信することもできる。
なお、本発明は上記実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
1 処理装置
3 ユーザ端末
5 通信ネットワーク
7 処理システム
10 保護領域
11 処理データ蓄積部
12 ポリシーデータ
13 結果データ
14 揮発性メモリ
21 取得部
22 マッチング部
23 管理部
24 処理部
25 提供部
31 制御部
901 CPU
902 メモリ
903 ストレージ
904 通信装置
905 入力装置
906 出力装置
Da 第1の処理データ
Db 第2の処理データ

Claims (8)

  1. 第1のユーザ端末が提供する第1の処理データと、第2のユーザ端末が提供する第2の処理データを含む、複数の処理データを取得する取得部と、
    前記第1のユーザ端末から、前記第1の処理データと前記第2の処理データによる処理の結果データの共有の要求を受信し、前記第2のユーザ端末から、前記第1のユーザ端末による前記第2の処理データの使用の許諾と、前記第1のユーザ端末および前記第2のユーザ端末から、第3のユーザ端末への結果データの共有の合意を受信するマッチング部と、
    前記第2のユーザ端末から許諾を受信すると、前記第1のユーザ端末からの共有の要求で指定された前記第1の処理データと前記第2の処理データを処理して、前記第3のユーザ端末に、前記結果データを出力する処理部と、
    前記結果データを、前記第1のユーザ端末に提供する提供部
    を備える処理装置。
  2. 処理データは、コンピュータ処理で参照されるデータ、またはコンピュータ処理を実行するプログラムデータである
    請求項1に記載の処理装置。
  3. 前記取得部は、前記処理部のCPU内で復号可能な暗号鍵で暗号化された第1の処理データおよび第2の処理データを取得し、
    前記処理部は、暗号化された第1の処理データおよび第2の処理データを前記CPU内で復号して、復号された前記第1の処理データおよび前記第2の処理データを処理して、前記結果データを出力する
    請求項1または2に記載の処理装置。
  4. 前記取得部は、前記処理装置で復号可能な暗号鍵で暗号化された第1の処理データおよび第2の処理データを取得し、
    前記処理部は、暗号化された第1の処理データおよび第2の処理データを復号して前記処理部がアクセス可能な揮発性メモリに記憶し、復号された前記第1の処理データおよび前記第2の処理データを処理して、前記結果データを出力する
    請求項1ないし3のいずれか1項に記載の処理装置。
  5. 前記処理部は、前記結果データを出力した後、前記揮発性メモリのデータを削除する
    請求項4に記載の処理装置。
  6. 前記マッチング部は、共有の要求とポリシーを受信すると、前記ポリシーを前記第2のユーザ端末に通知し、前記第1のユーザ端末および前記第2のユーザ端末が承諾したポリシーを特定し、
    特定されたポリシーに従って、前記第1の処理データおよび前記第2の処理データを管理する管理部
    をさらに備える請求項1ないし3のいずれか1項に記載の処理装置。
  7. コンピュータが、第1のユーザ端末が提供する第1の処理データと、第2のユーザ端末が提供する第2の処理データを含む、複数の処理データを取得するステップと、
    前記コンピュータが、前記第1のユーザ端末から、前記第1の処理データと前記第2の処理データによる処理の結果データの共有の要求を受信し、前記第2のユーザ端末から、前記第1のユーザ端末による前記第2の処理データの使用の許諾と、と、前記第1のユーザ端末および前記第2のユーザ端末から、第3のユーザ端末への結果データの共有の合意を受信するステップと、
    前記コンピュータが、前記第2のユーザ端末から許諾を受信すると、前記第1のユーザ端末からの共有の要求で指定された前記第1の処理データと前記第2の処理データを処理して、前記第3のユーザ端末に、結果データを出力するステップと、
    前記コンピュータが、前記結果データを、前記第1のユーザ端末に提供するステップ
    を備える処理方法。
  8. コンピュータを、請求項1ないし請求項6のいずれか1項に記載の処理装置として機能させるためのプログラム。
JP2022545217A 2020-08-28 2020-08-28 処理装置、処理方法およびプログラム Active JP7545073B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/032697 WO2022044281A1 (ja) 2020-08-28 2020-08-28 処理装置、処理方法およびプログラム

Publications (3)

Publication Number Publication Date
JPWO2022044281A1 JPWO2022044281A1 (ja) 2022-03-03
JPWO2022044281A5 JPWO2022044281A5 (ja) 2023-06-09
JP7545073B2 true JP7545073B2 (ja) 2024-09-04

Family

ID=80352980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022545217A Active JP7545073B2 (ja) 2020-08-28 2020-08-28 処理装置、処理方法およびプログラム

Country Status (5)

Country Link
US (1) US12401645B2 (ja)
EP (1) EP4206970B1 (ja)
JP (1) JP7545073B2 (ja)
CN (1) CN116075825A (ja)
WO (1) WO2022044281A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023179028A (ja) * 2022-06-07 2023-12-19 弁護士ドットコム株式会社 プログラム、情報処理装置、情報処理システム、情報処理方法、情報処理端末
WO2025187037A1 (ja) * 2024-03-08 2025-09-12 Ntt株式会社 データ共有装置およびデータ共有方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005512170A (ja) 2001-11-12 2005-04-28 ネットワーク リサーチ ラブ リミテッド 不正使用に対する情報保護の方法および装置
JP2017167748A (ja) 2016-03-15 2017-09-21 オムロン株式会社 データフロー制御装置およびデータフロー制御方法
JP2019168590A (ja) 2018-03-23 2019-10-03 Kddi株式会社 情報処理方法及び情報処理システム
JP2019215512A (ja) 2017-10-13 2019-12-19 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 予測モデル分散方法および予測モデル分散システム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874745B2 (en) * 2010-03-26 2014-10-28 Fujitsu Limited Method and system for providing services
KR101515629B1 (ko) 2012-01-07 2015-04-27 삼성전자주식회사 플렉서블 표시부를 갖는 휴대단말의 이벤트 제공 방법 및 장치
WO2015114947A1 (ja) * 2014-01-28 2015-08-06 日本電信電話株式会社 秘密計算方法、秘密計算システム、秘密計算サーバ、登録者端末、利用者端末及びプログラム
US9992231B2 (en) 2015-12-14 2018-06-05 International Business Machines Corporation Method and apparatus for data protection in cloud-based matching system
JP7069631B2 (ja) 2017-10-16 2022-05-18 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
US12026219B2 (en) 2019-12-13 2024-07-02 TripleBlind, Inc. Systems and methods for efficient computations on split data and split algorithms

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005512170A (ja) 2001-11-12 2005-04-28 ネットワーク リサーチ ラブ リミテッド 不正使用に対する情報保護の方法および装置
JP2017167748A (ja) 2016-03-15 2017-09-21 オムロン株式会社 データフロー制御装置およびデータフロー制御方法
JP2019215512A (ja) 2017-10-13 2019-12-19 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 予測モデル分散方法および予測モデル分散システム
JP2019168590A (ja) 2018-03-23 2019-10-03 Kddi株式会社 情報処理方法及び情報処理システム

Also Published As

Publication number Publication date
EP4206970B1 (en) 2026-03-04
US12401645B2 (en) 2025-08-26
JPWO2022044281A1 (ja) 2022-03-03
US20230353571A1 (en) 2023-11-02
CN116075825A (zh) 2023-05-05
EP4206970A4 (en) 2024-05-22
EP4206970A1 (en) 2023-07-05
WO2022044281A1 (ja) 2022-03-03

Similar Documents

Publication Publication Date Title
Panda et al. Drug traceability and transparency in medical supply chain using blockchain for easing the process and creating trust between stakeholders and consumers
US11144660B2 (en) Secure data sharing
Hynes et al. A demonstration of sterling: a privacy-preserving data marketplace
US10074088B2 (en) Methods, apparatus and computer program products for securely accessing account data
US20200058023A1 (en) Decentralized Data Marketplace
JP2023535927A (ja) デジタル台帳ベースのヘルスデータ共有および管理
KR102456676B1 (ko) 3d 모형 설계데이터 플랫폼 서비스 제공 시스템 및 그 방법
US12136074B2 (en) Digital network marketplace
JP7660787B2 (ja) 情報処理方法、情報処理システムおよび情報処理プログラム
CN111709029A (zh) 基于区块链和可信计算网络的数据运算和隐私交易方法
JP7545073B2 (ja) 処理装置、処理方法およびプログラム
Gabrielli et al. Kraken: a secure, trusted, regulatory-compliant, and privacy-preserving data sharing platform
Vinothkumar et al. Hybrid cryptosystem based healthcare data sharing with access control policy in cloud environment
Singh et al. Smart contract empowered dynamic consent: decentralized storage and access control for healthcare applications
Subirana et al. Legal programming
TWI636415B (zh) 基於區塊鏈智能合約的去中心化kyc系統及其方法
Srinivas et al. A novel nft framework for pharmaceutical asset ownership and trading: Tokenpharma
Dandotiya et al. An impact of cyber security and blockchain in healthcare industry: an implementation through AI
US12254471B1 (en) Method for encrypting NFT's using dynamic key exchange on the blockchain
Loizou et al. Measuring the impact of blockchain on healthcare applications
JP2019046262A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
Chhabra et al. Blockchain, ai, and data protection in healthcare: A comparative analysis of two blockchain data marketplaces in relation to fair data processing and the ‘data double-spending’problem
Jain et al. HRCM: An Approach using Blockchain Technology in Healthcare-Record Chain Management.
Jagadamba et al. Adaptive electronic health records management and secure distribution using blockchain
Rocha et al. Secure Data Marketplaces

Legal Events

Date Code Title Description
A529 Written submission of copy of amendment under article 34 pct

Free format text: JAPANESE INTERMEDIATE CODE: A5211

Effective date: 20230210

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240620

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240805

R150 Certificate of patent or registration of utility model

Ref document number: 7545073

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350