JPWO2020255382A1 - コンテンツ取引システム、コンテンツ取引方法、鍵管理装置、及び鍵管理プログラム - Google Patents

コンテンツ取引システム、コンテンツ取引方法、鍵管理装置、及び鍵管理プログラム Download PDF

Info

Publication number
JPWO2020255382A1
JPWO2020255382A1 JP2021528602A JP2021528602A JPWO2020255382A1 JP WO2020255382 A1 JPWO2020255382 A1 JP WO2020255382A1 JP 2021528602 A JP2021528602 A JP 2021528602A JP 2021528602 A JP2021528602 A JP 2021528602A JP WO2020255382 A1 JPWO2020255382 A1 JP WO2020255382A1
Authority
JP
Japan
Prior art keywords
content
key
transaction
transfer
encrypted
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.)
Pending
Application number
JP2021528602A
Other languages
English (en)
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2020255382A1 publication Critical patent/JPWO2020255382A1/ja
Pending legal-status Critical Current

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords

Abstract

移転元と移転先との間におけるコンテンツの取引を実現するコンテンツ取引システムであって、コンテンツをコンテンツ鍵を用いて暗号化した暗号化コンテンツを生成する暗号化処理部と、コンテンツの移転元の公開鍵、コンテンツの移転先の公開鍵、及び、取引認証用公開鍵を用いてコンテンツ鍵を暗号化した暗号化コンテンツ鍵を生成する暗号化コンテンツ鍵生成部と、暗号化コンテンツ、及び、暗号化コンテンツ鍵を、預託先に移転させる移転処理部と、移転元から移転先への暗号化コンテンツの移転の完了を確認する確認部と、移転元から移転先への暗号化コンテンツの移転の完了が確認されない場合に、移転元へコンテンツを戻す取り戻し処理を実行する取り戻し処理部とを備える。

Description

本発明は、コンテンツ取引システム、コンテンツ取引方法、鍵管理装置、及び鍵管理プログラムに関する。
種々のブロックチェーン技術を用いたシステムが提案されており、これら複数のブロックチェーン技術を用いたシステムを跨って資産の取引を行なうサービスも開発されている。ここでは、このようなブロックチェーン技術を用いたシステムを単にブロックチェーンともいう。
特開2018−22346号公報 特開2017−50763号公報
しかしながら、このような従来のブロックチェーンを跨った資産取引の場合、取引が途中で失敗してしまった場合に、資産を取り戻すなどの取り消し処理が困難となる場合がある。
例えば、資産(以下、コンテンツという場合がある)の移転を行なう場合に、移転元ブロックチェーンでは、元の利用者が移転元のブロックチェーンで資産を使えなくするために当該資産の凍結、すなわち、コンテンツの暗号化を行なう。
一方で、コンテンツの受信者以外の利用者が許可なくコンテンツを復号できないように、移転されるコンテンツは、コンテンツ受信者の公開鍵で暗号化される。これにより、取引失敗時に、コンテンツの移転元である元の利用者が資産を使用するためには、コンテンツ受信者の秘密鍵を用いてコンテンツの復号を行なう必要がある。
しかしながら、コンテンツ受信者の秘密鍵を知らないコンテンツ送信者は、資産を取り戻すことができない。
また、鍵を断片として複数人に分割させ、一部の断片が揃った時にのみ鍵を復元できる秘密分散技術を用い、コンテンツ送信者とコンテンツ受信者以外にも1人以上の取引承認者等に鍵を分散させ、一部の鍵が揃うと復号できるような機構をとることも考えられる。しかしながら、このような秘密分散技術においては、コンテンツ送信者とコンテンツ受信者とが結託した場合や、複数の承認者同士が結託した場合に鍵を復元できる場合があり、処理に応じた適切な鍵の分散が難しい。
本発明は、このような課題に鑑み創案されたもので、取引失敗時にコンテンツを取り戻すことを目的とする。
上記の目的を達成するために、移転元と移転先との間におけるコンテンツの取引を実現するコンテンツ取引システムは、前記コンテンツをコンテンツ鍵を用いて暗号化した暗号化コンテンツを生成する暗号化処理部と、前記コンテンツの移転元の公開鍵、前記コンテンツの移転先の公開鍵、及び、取引認証用公開鍵を用いて前記コンテンツ鍵を暗号化した暗号化コンテンツ鍵を生成する暗号化コンテンツ鍵生成部と、前記暗号化コンテンツ、及び、前記暗号化コンテンツ鍵を、預託先に移転させる移転処理部と、前記移転元から前記移転先への前記暗号化コンテンツの移転の完了を確認する確認部と、前記移転元から前記移転先への前記暗号化コンテンツの移転の完了が確認されない場合に、前記移転元へ前記コンテンツを戻す取り戻し処理を実行する取り戻し処理部とを備える。
開示のコンテンツ取引システムによれば、取引失敗時にコンテンツを取り戻すことができる。
実施形態の一例としてのコンテンツ取引システムのハードウェア構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおける仲介システムのハードウェア構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおける連携ノードのハードウェア構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおけるクライアントコンピュータのハードウェア構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおける鍵管理システムのハードウェア構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおける承認者コンピュータのハードウェア構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおける仲介システムの機能構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおける連携ノードの機能構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおけるクライアントコンピュータの機能構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおける鍵管理システムの機能構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおける承認者コンピュータの機能構成を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおける鍵の利用を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおける暗号化を例示する図である。 実施形態の一例としてのコンテンツ取引システムにおけるブロックチェーンを跨った資産の移転処理を説明するための図である。 実施形態の一例としてのコンテンツ取引システムにおけるトランザクションを例示する図である。 実施形態の一例としてのコンテンツ取引システムにおけるトランザクションを例示する図である。 実施形態の一例としてのコンテンツ取引システムにおけるブロックチェーンを跨った資産の移転処理を説明するための図である。 実施形態の一例としてのコンテンツ取引システムにおけるブロックチェーンを跨った資産の移転処理を説明するための図である。 変形例に係るコンテンツ取引システムのハードウェア構成を例示する図である。
以下、図面を参照して本コンテンツ取引システムに係る実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形(実施形態および各変形例を組み合わせる等)して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
(A)構成
[一実施形態に係るコンテンツ取引システムのハードウェア構成例]
はじめに、図1は、実施形態の一例としてのコンテンツ取引システム1のハードウェア構成を例示する図である。
この図1に例示するように、コンテンツ取引システム1は、ブロックチェーン10,20,25を備える。これらのブロックチェーン10,20,25は、それぞれ、単に、BC10,BC20,BC25とも表す。なお、図1では、3つのブロックチェーンを備える場合を例示したが、コンテンツ取引システム1が備えるブロックチェーンは4つ以上であってもよい。
また、図1に例示するように、これらのBC10,BC20は、それぞれ、各ブロックチェーンの利用者が用いるクライアントコンピュータ50A,50Bを備える。以下、クライアントコンピュータを示す符号としては、複数のクライアントコンピュータのうち1つを特定する必要があるときには符号50A,50Bを用いるが、任意のクライアントコンピュータを指すときには符号50を用いる。
なお、図1は、BC10,BC20が、それぞれ1人の利用者を備える場合、すなわち、1つのクライアントコンピュータ50を備える場合を例示したが、それぞれ、2以上の利用者、すなわち、2つ以上のクライアントコンピュータ50を備えてもよい。各ブロックチェーン内では、ブロックチェーンを構成するノード間で、例えば、ピア・ツー・ピア技術(Peer-To-Peer;P2P)を用いた通信(ピア・ツー・ピア接続)が実行されることにより、ブロックチェーン10,20が実現される。
図1に例示するコンテンツ取引システム1は、BC10の利用者とBC20の利用者との間での資産の取引を実現するものである。なお、本実施形態では、図1に例示するように、資産の取引のうち資産(コンテンツ)の移転を取り上げ、BC10の利用者から、BC20の利用者に対する資産の移転を例示する。
なお、図1に例示するように、資産の移転元である利用者、又は、当該利用者が利用するコンピュータをコンテンツ送信者Aともいう。また、資産の移転先である利用者、又は、当該利用者が利用するコンピュータをコンテンツ受信者Bともいう。なお、移転対象の資産は、例えば通貨のような数値型のものに限られず、例えば、ライセンス情報のような非数値型の電子コンテンツであってもよい。
さらに、図1に例示するように、BC25は、当該BC25の利用者が用いる承認者コンピュータ70C1,70C2を備える。以下、承認者コンピュータを示す符号としては、複数の承認者コンピュータのうち1つを特定する必要があるときには符号70C1,70C2を用いるが、任意の承認者コンピュータを指すときには符号70を用いる。なお、本実施形態において、承認者コンピュータ70の利用者を承認者という。
また、図1は、BC25が、2人の承認者を備える場合、すなわち、2つの承認者コンピュータ70を備える場合を例示したが、これに限られない。
また、図1に例示するように、BC10,BC20は、それぞれ、連携ノード40A,40Bを備える。以下、連携ノードを示す符号としては、複数の連携ノードのうち1つを特定する必要があるときには符号40A,40Bを用いるが、任意の連携ノードを指すときには符号40を用いる。
この連携ノード40は、異なるブロックチェーン間でのコンテンツの移転処理を、利用者に代わって行なう。なお、これらの連携ノード40A,40Bは、それぞれ、移転元連携ノード40A,移転先連携ノード40Bともいい、連携ノード40は単にノードともいう。
さらに、これらBC10(連携ノード40A)とBC20(連携ノード40B)との間に仲介システム30を備える。この仲介システム30は、異なるブロックチェーン間(図1ではBC10とBC20との間)の通信を仲介する。また、連携ノード40と仲介システム30とは、それぞれ、インターネット等のネットワークを介して接続される。
例えば、BC10の利用者(コンテンツ送信者A)が、他のブロックチェーン(BC20)の利用者(コンテンツ受信者B)に対してコンテンツの移転処理を実行する場合を例にとる。この場合、連携ノード40Aは、自身が属するブロックチェーン(BC10)の利用者(コンテンツ送信者A)から移転処理の実行依頼を受け取る。そして、連携ノード40Aは、仲介システム30を介して移転処理を行なう。そして、仲介システム30は、移転先のブロックチェーン(BC20)に属する連携ノード40B(移転先連携ノード40B)を介して、コンテンツ受信者Bに対してコンテンツを移転する。
さらに、図1に例示するように、BC10,BC20は、それぞれ、鍵管理システム60A,60Bを備える。以下、鍵管理システムを示す符号としては、複数の鍵管理システムのうち1つを特定する必要があるときには符号60A,60Bを用いるが、任意の鍵管理システムを指すときには符号60を用いる。
鍵管理システム60は、暗号化に用いる鍵の生成や、後述するトランザクションの発行等を行なう。そして、鍵管理システム60は、例えば、インターネット等のネットワークを介して、連携ノード40、クライアントコンピュータ50、及び、仲介システム30と接続される。
なお、これら鍵管理システム60A,60Bは、それぞれ、移転元鍵管理システム60A,移転先鍵管理システム60Bともいう。
また、承認者コンピュータ70は、コンテンツの暗号化に必要な承認者の鍵を生成する。なお、本実施形態においては、これらの承認者コンピュータ70C1,70C2は、それぞれ、承認者C1,C2によって利用されるものとしたが、これに限られない。
なお、上述した連携ノード40、仲介システム30、鍵管理システム60、及び、承認者コンピュータ70は、サーバ機能を有するコンピュータによって実現されてもよい。また、この仲介システム30は、ブロックチェーンの公知のスマートコントラクト技術を用いて構築されてもよい。
[一実施形態に係るコンテンツ取引システムにおける各装置のハードウェア構成例]
上述したコンテンツ取引システム1における各装置(仲介システム30,連携ノード40,クライアントコンピュータ50,鍵管理システム60,承認者コンピュータ70)のハードウェア構成について説明する。
図2は、実施形態の一例としてのコンテンツ取引システム1における仲介システム30のハードウェア構成を例示する図である。
この図2を用いて、図1に示す仲介システム30のハードウェア構成を説明する。
仲介システム30は、例えば、サーバ機能を備えるコンピュータ(情報処理装置)であり、例示的に、CPU(Central Processing Unit)31、記憶部320、台帳記憶部321、鍵情報記憶部322を備えてよい。さらに、仲介システム30は、例えば、メモリ33、IF部34、入力部35、及び、表示部36を備えてよい。
CPU31は、後述する記憶部320に格納されるOS(Operating System)やプログラムを実行する。そして、CPU31は、例えば、連携ノード40Aや鍵管理システム60Aから入力された要求に応じ、例えば、連携ノード40Bへのアクセスを実行すべく仲介システム30を制御する。また、例えば、コンテンツ取引システム1における通信を実現すべく仲介システム30を制御する。本実施形態では、CPU31は、後述する仲介プログラム38を実行する。
記憶部320、台帳記憶部321、及び、鍵情報記憶部322は、種々のデータやプログラム等を格納するハードウェアの一例である。例えば、記憶部320、台帳記憶部321、及び、鍵情報記憶部322は、仲介システム30において二次記憶装置として使用されてよく、OSやファームウェア、アプリケーション等のプログラム、及び、各種データが格納されてよい。記憶部320、台帳記憶部321、及び、鍵情報記憶部322としては、例えば、HDD(Hard Disk Drive)等の磁気ディスク装置の他、SSD(Solid State Drive)やSCM(Storage Class Memory)等の半導体記憶装置が挙げられる。また、記憶部320は、仲介システム30の各種機能の全部若しくは一部を実現するプログラムを格納してもよい。なお、記憶部320、台帳記憶部321、及び、鍵情報記憶部322のうち、少なくとも2つが同一のハードウェアであってもよい。
メモリ33は、種々のデータやプログラムを格納するハードウェアの一例である。メモリ33としては、揮発性メモリ、例えば、DRAM(Dynamic RAM)等のRAMが挙げられる。なお、RAMはRandom Access Memoryの略称である。
IF部34は、インターネット等のネットワークを介して、連携ノード40や鍵管理システム60との間の各接続及び各通信の制御等を行なう通信インタフェースの一例である。例えば、IF部34としては、イーサネット(登録商標)、光通信(例えばFibre Channel)等に準拠したアダプタが挙げられる。なお、仲介システム30は、図示しない管理者の管理端末との間の接続及び通信の制御等を行なう通信インタフェースを備えてもよく、当該通信インタフェースを用いて仲介プログラム38をダウンロードしてもよい。
入力部35は、例えば、マウス、キーボード、タッチパネル、操作ボタン等の入力装置の少なくともいずれか一つを含んでよい。
表示部36は、例えば、ディスプレイや、プロジェクタ、スピーカ、プリンタ等の出力装置の少なくともいずれか一つを含んでよい。
次に、図3を用いて、図1に示す連携ノード40のハードウェア構成を説明する。
図3は、実施形態の一例としてのコンテンツ取引システム1における連携ノード40のハードウェア構成を例示する図である。
連携ノード40は、例えば、サーバ機能を備えるコンピュータ(情報処理装置)であり、例示的に、CPU41、記憶部42、メモリ43、IF部44、入力部45、及び、表示部46を備えてよい。なお、記憶部42、メモリ43、入力部45、及び、表示部46は、それぞれ、図2を用いて説明した仲介システム30の記憶部320、メモリ33、入力部35、及び、表示部36と概ね同様であるので説明を省略する。
CPU41は、記憶部42に格納されるOSやプログラムを実行し、例えば、鍵管理システム60から入力された要求に応じ、例えば、仲介システム30へのアクセスを実行すべく連携ノード40を制御する。本実施形態では、CPU41は、後述する連携プログラム47を実行する。
IF部44は、インターネット等のネットワークを介して、鍵管理システム60や仲介システム30との間の接続や通信の制御等を行なう通信インタフェースの一例である。なお、連携ノード40は、図示しない管理者の管理端末との間の接続及び通信の制御等を行なう通信インタフェースを備えてもよく、当該通信インタフェースを用いて連携プログラム47をダウンロードしてもよい。
次に、図4を用いて、図1に示すクライアントコンピュータ50のハードウェア構成を説明する。
図4は、実施形態の一例としてのコンテンツ取引システム1におけるクライアントコンピュータ50のハードウェア構成を例示する図である。
クライアントコンピュータ50は、例えば、携帯電話等のコンピュータ(情報処理装置)であり、例示的に、CPU51、記憶部52、メモリ53、IF部54、入力部55、及び、表示部56を備えてよい。なお、記憶部52、メモリ53、入力部55、及び、表示部56は、それぞれ、図2を用いて説明した仲介システム30の記憶部320、メモリ33、入力部35、及び、表示部36と概ね同様であるので説明を省略する。
CPU51は、記憶部52に格納されるOSやプログラムを実行し、例えば、当該クライアントコンピュータ50の利用者から入力された要求に応じ、例えば、クライアントコンピュータ50を制御する。本実施形態では、CPU51は、後述するクライアントプログラム57を実行する。
IF部54は、インターネット等のネットワークを介して、鍵管理システム60、及び、自身が属するブロックチェーン(の他のクライアントコンピュータ50)との間の各接続及び各通信の制御等を行なう通信インタフェースの一例である。なお、クライアントコンピュータ50は、図示しない管理者の管理端末との間の接続及び通信の制御等を行なう通信インタフェースを備えてもよく、当該通信インタフェースを用いクライアントプログラム57をダウンロードしてもよい。
次に、図5を用いて、図1に示す鍵管理システム60のハードウェア構成を説明する。
図5は、実施形態の一例としてのコンテンツ取引システム1における鍵管理システム60のハードウェア構成を例示する図である。
鍵管理システム60は、例えば、サーバ機能を備えるコンピュータ(情報処理装置)であり、例示的に、CPU61、記憶部62、メモリ63、IF部64、入力部65、及び、表示部66を備えてよい。なお、記憶部62、メモリ63、入力部65、及び、表示部66は、それぞれ、図2を用いて説明した仲介システム30の記憶部320、メモリ33、入力部35、及び、表示部36と概ね同様であるので説明を省略する。
CPU61は、記憶部62に格納されるOSやプログラムを実行し、例えば、連携ノード40、クライアントコンピュータ50、及び、仲介システム30から入力された要求に応じ、例えば、鍵管理システム60を制御する。本実施形態では、CPU61は、後述する鍵管理プログラム67を実行する。
IF部64は、インターネット等のネットワークを介して、連携ノード40、クライアントコンピュータ50、及び、仲介システム30との間の接続及び通信の制御等を行なう通信インタフェースの一例である。なお、鍵管理システム60は、図示しない管理者の管理端末との間の接続及び通信の制御等を行なう通信インタフェースを備えてもよく、当該通信インタフェースを用いて鍵管理プログラム67をダウンロードしてもよい。
次に、図6を用いて、図1に示す承認者コンピュータ70のハードウェア構成を説明する。
図6は、実施形態の一例としてのコンテンツ取引システム1における承認者コンピュータ70のハードウェア構成を例示する図である。
承認者コンピュータ70は、例えば、コンピュータ(情報処理装置)であり、例示的に、CPU71、記憶部72、メモリ73、IF部74、入力部75、及び、表示部76を備えてよい。なお、記憶部72、メモリ73、入力部75、及び、表示部76は、それぞれ、図2を用いて説明した仲介システム30の記憶部320、メモリ33、入力部35、及び、表示部36と概ね同様であるので説明を省略する。
CPU71は、記憶部72に格納されるOSやプログラムを実行し、例えば、仲介システム30から入力された要求に応じ、例えば、承認者コンピュータ70を制御する。本実施形態では、CPU71は、後述する承認プログラム77を実行する。
IF部74は、インターネット等のネットワークを介して、仲介システム30との間の接続や通信の制御等を行なう通信インタフェースである。なお、承認者コンピュータ70は、図示しない管理者の管理端末との間の接続及び通信の制御等を行なう通信インタフェースを備えてもよく、当該通信インタフェースを用いて承認プログラム77をダウンロードしてもよい。
[一実施形態に係るコンテンツ取引システムにおける各装置の機能構成例]
上述したコンテンツ取引システム1における各装置(仲介システム30,連携ノード40,クライアントコンピュータ50,鍵管理システム60,承認者コンピュータ70)の機能構成について説明する。
[仲介システム]
図7は、実施形態の一例としてのコンテンツ取引システム1における仲介システム30の機能構成を例示する図である。
この図7を用いて、図1に示す仲介システム30の機能構成を説明する。
この図7に例示するように、仲介システム30は、例示的に、ブロックチェーン通信部81、ブロックチェーン制御部82、及び、鍵管理部83を備えてもよい。また、仲介システム30の台帳記憶部321は台帳90Dを備えてもよく、仲介システム30の鍵情報記憶部322は鍵情報91を備えてもよい。また、これらの台帳90D、及び、鍵情報91は、同一の記憶部に備えられてもよい。
まず、仲介システム30のブロックチェーン通信部81は、当該コンテンツ取引システム1に備えられる、連携ノード40、鍵管理システム60、及び、承認者コンピュータ70との通信を行なう。
このブロックチェーン通信部81は、図7に例示するように、トランザクション送受信部811、及び、ブロック検知部812を備えてもよい。
ブロックチェーン通信部81のトランザクション送受信部811は、トランザクションの発行や送信、及び、トランザクションの受信(検知)を行なう。本実施形態において、トランザクションとは取引の履歴であり、資産を移転する取引が行なわれた場合に、例えば、移転元の利用者や移転先の利用者が履歴として記録される。なお、このトランザクション送受信部811が生成するトランザクションについては、図16を用いて後述する。
また、このトランザクション送受信部811は、トランザクションを送信する際、鍵情報記憶部322に格納される鍵情報91に含まれる情報を当該トランザクションに付加する機能も備える。なお、本実施形態において、後述する承認者の秘密鍵は、仲介システム30の鍵情報記憶部322に備えられる鍵情報91に格納されるものとする。なお、鍵情報91については後述する。
また、ブロックチェーン通信部81のブロック検知部812は、定期的に、または、必要に応じて(例えば、後述する、資産が凍結されていないことを確認する必要がある場合)、所定のブロックの検知を行なう。例えば、ブロック検知部812は、台帳90Dが備えられる自身の台帳記憶部321、及び、後述するBC10の台帳90Aや後述するBC20の台帳90Bが記憶される記憶部42を一定のタイミングで監視する。そして、ブロック検知部812は、所定のトランザクションを示す情報(所定のトランザクションが含まれるブロック)を検知してもよい。なお、ブロックとは、例えば、データの集合体である。以下、台帳を示す符号としては、複数の台帳のうち1つを特定する必要があるときには符号90A,90B,90Dを用いるが、任意の台帳を指すときには符号90を用いる。
さらに、ブロック検知部812は、例えば、所定のトランザクションが含まれるブロックを検知することにより、当該トランザクションが所定のブロックチェーンに取り込まれたかを判断する。言い換えると、ブロック検知部812は、台帳90D、後述するBC10の台帳90A、及び、後述するBC20の台帳90Bに所定のトランザクションを含むブロックを検知した場合、当該トランザクションが正常に終了(確定)したと判断する。すなわち、ブロック検知部812は、当該トランザクションが所定のブロックチェーンに正常に取り込まれたと判断する。そして、ブロック検知部812は、正常に終了しなかったと判断した場合、鍵管理システム60を介してその旨をコンテンツ送信者Aに通知する。
仲介システム30のブロックチェーン制御部82は、他のブロックチェーンに後述する口座間の資産の移転を行なわせ、例えば、供給口座(後述)から移転先口座(後述)への資産の移転や、預託口座(後述)から凍結口座(後述)への資産の移転を行なわせる。
また、ブロックチェーン制御部82は、台帳記憶部321に格納される台帳90D(後述)、または、当該台帳90Dの情報の制御も行なう。本実施形態において、台帳90とは、トランザクションが記録されたデータの集合であり、例えば、データベースのようなデータ管理システムを用いて管理されてもよく、また、HDDやSSDのような記憶装置に管理(記憶)で管理されてもよい。なお、台帳90には、後述する、利用者の口座、預託口座、凍結口座、及び、供給口座や、これら口座に関する情報が含まれてもよい。なお、後述するBC10の台帳90Aには、後述する、利用者の口座、預託口座、及び、凍結口座や、これらの口座に関する情報が含まれることが望ましいが、これに限られない。また、後述するBC20の台帳90Bには、供給口座や、供給口座に関する情報が含まれることが望ましいが、これに限られない。
利用者の口座(図示省略)とは、ブロックチェーンの利用者の保持する各自の資産が格納される領域であり、仮想的な領域であってもよい。また、コンテンツ送信者Aの口座を移転元口座ともいい、また、コンテンツ受信者Bの口座を移転先口座ともいう。
例えば、コンテンツ送信者Aからコンテンツ受信者Bへの資産の移転が成功した場合、コンテンツ送信者Aの資産が、当該コンテンツ送信者Aの口座(移転元口座)から、コンテンツ受信者Bの口座(移転先口座)に対して移転される。なお、この資産の格納や移転は物理的に実行されるものに限られず、例えばクラウドサービスを用いてサーバ上で仮想的に実現されるものであってもよい。
預託口座(図示省略)とは、仲介システム30において、移転対象の資産が一時的に格納される領域であり、仮想的な領域であってもよい。上述した例では、コンテンツ送信者Aがコンテンツ受信者Bに対して自身の資産を移転させるに際し、当該資産移転処理が実行される前に、コンテンツ送信者A(移転元口座)から移転対象の資産が一時的に預託口座に移転される。
預託口座(図示省略)とは、移転先の口座に移転されるまでの間、移転対象の資産が格納される領域であり、仮想的な領域であってもよい。この凍結口座に資産が移転されてしまうと、コンテンツ送信者Aは当該資産を取り戻せなくなる(利用できなくなる)が、預託口座に移転された資産については取り戻すことができる(利用できる)。すなわち、凍結口座だけでなく預託口座をも備えることにより、資産が移転先に移転される前の段階で、当該移転の処理が失敗した場合に、コンテンツ送信者Aが当該資産を取り戻すことができる。なお、預託口座は、預託先ともいう。
また、供給口座(図示省略)とは、資産を供給するために当該資産が格納される領域であり、仮想的な領域であってもよい。
また、図7に例示するように、このブロックチェーン制御部82は、台帳制御部821を備えてもよい。
この台帳制御部821は、上述した台帳90Dからデータを取得(リード)する。また、台帳制御部821は、台帳90Dに対してデータの書き込み(記録,更新,ライト)を行なう。
次に、仲介システム30の鍵管理部83は、自身の鍵情報記憶部322の鍵情報91に格納される暗号化や復号に用いる鍵の管理を行なう。なお、鍵情報91の詳細や、鍵情報91の管理については後述する。
また、図7に例示するように、鍵管理部83は、鍵送信部831を備えてもよい。
この鍵送信部831は、鍵管理システム60に対して、自身の鍵情報記憶部322の鍵情報91に格納される、承認者の秘密鍵を送信する。
[連携ノード]
次に、図8を用いて、図1に示す連携ノード40の機能構成を説明する。
連携ノード40は、ブロックチェーン間におけるコンテンツの移転処理を行なう。
図8は、実施形態の一例としてのコンテンツ取引システム1における連携ノード40の機能構成を例示する図である。
この図8に例示するように、連携ノード40は、例示的に、ブロックチェーン通信部48、及び、ブロックチェーン制御部49を備えてもよい。また、連携ノード40の記憶部42は、台帳90A又は台帳90Bを備えてもよい。ここでは一例として、BC10の連携ノード40Aが備える台帳を台帳90Aといい、BC20の連携ノード40Bが備える台帳を台帳90Bという。
まず、連携ノード40のブロックチェーン通信部48は、本コンテンツ取引システム1に備えられる、仲介システム30、及び、鍵管理システム60との通信を行なう。
そして、このブロックチェーン通信部48は、図8に例示するように、トランザクション送受信部481を備えてもよい。
このトランザクション送受信部481は、トランザクションを送信すると共に、後述する鍵管理システム60から送信されるトランザクションを受信(検知)する。
次に、連携ノード40のブロックチェーン制御部49は、自身の記憶部42に格納される台帳90A又は台帳90B、または当該台帳90A又は台帳90Bの情報を制御する。
なお、本実施形態では、BC10の連携ノード40Aの記憶部42に格納される台帳90Aには、BC10における取引のトランザクション情報が記録される。また、BC20の連携ノード40Bの記憶部42に格納される台帳90Bには、BC20における取引のトランザクション情報が記録される。すなわち、各装置に備えられる台帳90A,90Bには、それを保持するノードが属するブロックチェーンのノード間で同期をとって同様の情報が格納されるものとする。
また、図8に例示するように、このブロックチェーン制御部49は、台帳制御部491を備えてもよい。
この台帳制御部491は、上述のトランザクション送受信部481にて受信した情報に基づき、台帳90A,90Bからデータを取得(リード)したり、台帳90A,90Bに対してデータの書き込み(記録,更新,ライト)を行なう。
[クライアントコンピュータ]
次に、図9を用いて、図1に示すクライアントコンピュータ50の機能構成を説明する。
図9は、実施形態の一例としてのコンテンツ取引システム1におけるクライアントコンピュータ50の機能構成を例示する図である。
この図9に例示するように、クライアントコンピュータ50は、例示的に、鍵管理システム通信部58を備えてもよい。
クライアントコンピュータ50の鍵管理システム通信部58は、鍵管理システム60との通信を行ない、例えば、暗号化に用いる鍵の生成(発行)、トランザクションの発行、及び、コンテンツの復号を鍵管理システム60に依頼する。
[鍵管理システム]
次に、図10を用いて、図1に示す鍵管理システム60の機能構成を説明する。
この図10に例示するように、鍵管理システム60は、例示的に、ブロックチェーン通信部68、及び、暗号化制御部69を備えてもよい。また、鍵管理システム60の記憶部62は、鍵情報91を備えてもよい。
まず、鍵管理システム60のブロックチェーン通信部68は、本コンテンツ取引システム1に備えられる、仲介システム30、連携ノード40、及び、クライアントコンピュータ50との通信を行なう。
そして、このブロックチェーン通信部68は、図10に例示するように、トランザクション発行部681を備えてもよい。
このトランザクション発行部681は、所定のトランザクションを発行する。なお、このトランザクション発行部681によって発行されるトランザクションについては、図15を用いて後述する。
鍵管理システム60の暗号化制御部69は、後述する暗号化の処理を行なう。この暗号化制御部69は、例えば、暗号化に必要な鍵を生成し、生成した鍵を用いて所定の情報の暗号化を行なったり、鍵を用いて情報の復号を行なう。
また、図10に例示するように、暗号化制御部69は、暗号化・復号部691を備え、この暗号化・復号部691が、移転対象となるコンテンツを暗号化するために必要となる鍵の生成や、所定の情報の暗号化ならびに鍵を用いた情報の復号を行なってもよい。
具体的に、暗号化・復号部691は、移転対象となるコンテンツを暗号化するための共通鍵を生成すると共に、当該共通鍵の生成に必要な暗号鍵を生成する。この暗号化・復号部691によって行なわれる暗号化及び復号の処理については、図12,図13を用いて後述する。
また、暗号化・復号部691は、暗号化に用いる鍵を、記憶部62の後述する鍵情報91に格納する。
本実施形態において、鍵情報91は、暗号化・復号部691によって生成された鍵が格納されるものであり、例えば、データベースのようなデータ管理システムを用いて管理されてもよく、また、HDDやSSDのような記憶装置に管理(記憶)で管理されてもよい。したがって、鍵情報91に格納される鍵は、本コンテンツ取引システム1において、情報の暗号化や復号に用いられる。
具体的に、鍵管理システム60が自身の記憶部62に備える鍵情報91には、クライアントコンピュータ50の利用者の公開鍵と秘密鍵とが格納される。
図1を用いて上述した取引を例にとると、鍵管理システム60の備える鍵情報91には、一例として、コンテンツ送信者Aの公開鍵pk_Aと秘密鍵sk_A、及び、コンテンツ受信者Bの公開鍵pk_Bと秘密鍵sk_Bとが格納される。
なお、鍵管理システム60Aと鍵管理システム60Bとで、それぞれが属するブロックチェーンの利用者の公開鍵と秘密鍵とを、自身の鍵情報91に格納してもよい。その場合、鍵管理システム60Aは、コンテンツ送信者Aの公開鍵pk_Aと秘密鍵sk_Aとを自身の鍵情報91に格納し、鍵管理システム60Bは、コンテンツ受信者Bの公開鍵pk_Bと秘密鍵sk_Bとを自身の鍵情報91に格納する。そして、必要に応じて、鍵管理システム60Aと鍵管理システム60Bとで、それぞれが鍵情報91に格納する公開鍵の授受を行なってもよい。
また、各鍵の格納形態はこれに限られない。例えば、鍵管理システム60Aと鍵管理システム60Bとで、それぞれが属するブロックチェーンの利用者の秘密鍵を自身の鍵情報91に格納すると共に、自身が属するブロックチェーン以外の利用者の公開鍵も自身の鍵情報91に格納してもよい。
さらに、鍵管理システム60が備える鍵情報91には、承認者C1の公開鍵pk_C1、及び、承認者C2の公開鍵pk_C2が格納されてもよい。なお、本実施形態において、承認者C1の秘密鍵sk_C1、及び、承認者C2の秘密鍵sk_C2については、仲介システム30の鍵情報記憶部322に備えられる鍵情報91に格納されるものとする。
なお、本実施形態では、この鍵管理システム60の記憶部62に格納される鍵情報91が更新された場合、上述した仲介システム30の鍵情報記憶部322に備えられる鍵情報91のうち同様の情報が更新されてもよい。
[承認者コンピュータ]
次に、図11を用いて、図1に示す承認者コンピュータ70の機能構成を説明する。
図11は、実施形態の一例としてのコンテンツ取引システム1における承認者コンピュータ70の機能構成を例示する図である。
この図11に例示するように、承認者コンピュータ70は、例示的に、鍵管理システム通信部78を備えてもよい。
この鍵管理システム通信部78は、仲介システム30との通信を行ない、仲介システム30からの依頼を受けて、例えば、当該承認者コンピュータ70を利用する承認者の鍵を発行、または、送信する。
[一実施形態に係るコンテンツ取引システムにおける鍵の利用と暗号化の概要]
上述の如く構成された実施形態の一例として、コンテンツ取引システム1において暗号化に用いる鍵の利用と暗号化の概要について、図12、及び、図13を用いて説明する。
図12は、本実施形態におけるコンテンツ取引システム1に係る鍵の利用を例示する図であり、図13は、本実施形態におけるコンテンツ取引システム1における暗号化を例示する図である。
図12は、本コンテンツ取引システム1において、BC10の利用者(コンテンツ送信者A)が、自身のコンテンツを、他のブロックチェーン(BC20)の利用者(コンテンツ受信者B)に対して移転する場合を例示する。また、その際の承認者は、BC25に属する(の利用者である)、承認者C1と承認者C2との2人であるものとする。
本コンテンツ取引システム1では、コンテンツを安全に移転させるべく、秘密鍵や共通鍵を用いて移転対象のコンテンツを暗号化し、暗号化されたコンテンツ(暗号化コンテンツ)を復号する際にも鍵を必要とする。具体的には、この図12に例示するように、コンテンツ送信者Aの公開鍵pk_Aと秘密鍵sk_A、及び、コンテンツ受信者Bの公開鍵pk_Bと秘密鍵sk_Bを用いる。
さらに、本コンテンツ取引システム1では、コンテンツの暗号化や復号において、承認者C1の公開鍵pk_C1と秘密鍵sk_C1、及び、承認者C2の公開鍵pk_C2と秘密鍵sk_C2を用いる。これらの承認者C1の公開鍵pk_C1,承認者C2の公開鍵pk_C2を取引認証用公開鍵ともいい、承認者C1の秘密鍵sk_C1,承認者C2の秘密鍵sk_C1を取引認証用秘密鍵ともいう。なお、本実施形態において、承認者C1の公開鍵pk_C1、及び、承認者C2の公開鍵pk_C2は、鍵管理システム60の記憶部62内の鍵情報91に格納されるものとする。そして、承認者C1の秘密鍵sk_C1、及び、承認者C2の秘密鍵sk_C2については、仲介システム30の鍵情報記憶部322に備えられる鍵情報91に格納されるものとする。この格納の形態は一例であり、種々変形して実施することができる。
次に、図13を用いて、図12に例示した取引において、様々な鍵を組み合わせることにより、コンテンツを暗号化する処理を説明する。なお、この暗号化の処理は、鍵管理システム60の暗号化・復号部691において実行される。
この図13に例示するように、鍵管理システム60Aの暗号化・復号部691は、コンテンツ送信者Aの公開鍵pk_A、承認者C1の公開鍵pk_C1、及び、承認者C2の公開鍵pk_C2を組み合わせて、1つの暗号鍵K_ACを生成する。本実施形態では、例えば、DTPKE(Dynamic Threshold Public Key Encryption)等の公知の3of3閾値型公開鍵暗号技術を用いて、3つの公開鍵pk_A,pk_C1,pk_C2から1つの暗号鍵K_ACを生成してもよいが、暗号鍵K_ACの生成手法はこれに限られない。なお、この暗号鍵K_ACは、第一の暗号鍵ともいう。
なお、図13中の“3/3”は、3つ(3個)の公開鍵のうち、これら3つの公開鍵のそれぞれに対応する秘密鍵があれば、暗号化されたコンテンツを復元できることを示す。すなわち、暗号鍵K_ACによって暗号化されたコンテンツを復元する際には、pk_A、pk_C1、及び、pk_C2の3つの公開鍵のそれぞれに対応する秘密鍵(sk_A、sk_C1、及び、sk_C2)が必要である。
同様に、暗号化・復号部691は、コンテンツ受信者Bの公開鍵pk_B、承認者C1の公開鍵pk_C1、及び、承認者C2の公開鍵pk_C2を組み合わせて、1つの暗号鍵K_BCを生成する。この暗号鍵K_BCの生成においても、同様に、例えば、DTPKE等の公知の3of3の閾値型公開鍵暗号技術を用いて、3つの公開鍵pk_B,pk_C1,pk_C2から1つの暗号鍵K_BCを生成してもよいが、これに限られない。また、上述したように、暗号鍵K_BCによって暗号化されたコンテンツを復元する際には、pk_B、pk_C1、及び、pk_C2の3つの公開鍵のそれぞれに対応する秘密鍵(sk_B、sk_C1、及び、sk_C2)が必要である。なお、この暗号鍵K_BCは、第二の暗号鍵ともいう。
次に、暗号化・復号部691は、生成した暗号鍵K_AC、及び、暗号鍵K_BCを組み合わせて、1つの暗号鍵K_ABCを生成する。本実施形態では、例えば、公知の1of2の閾値型公開鍵暗号技術を用いて、2つの暗号鍵K_AC,K_ACから1つの暗号鍵K_ABCを生成してもよいが、暗号鍵K_ABCの生成手法はこれに限られない。なお、この暗号鍵K_ABCは、階層型暗号鍵ともいう。
すなわち、図13中の“1/2”は、この暗号鍵K_ABCによって暗号化されたコンテンツを復元する際には、暗号鍵K_AC、及び、暗号鍵K_BCのうちの1つの暗号鍵が必要であることを示す。
そして、図示を省略するが、暗号化・復号部691は、移転対象のコンテンツを暗号化するための共通鍵Kを生成する。そして、暗号化・復号部691は、生成した共通鍵Kを用いて、移転対象のコンテンツを暗号化する。さらに、鍵管理システム60Aのトランザクション発行部681は、暗号化・復号部691によって暗号化されたコンテンツを預託口座へ移転するトランザクションTx1(後述)を発行する。また、トランザクション発行部681は、共通鍵Kを暗号鍵K_ABCで暗号化して作成した情報(暗号化共通鍵K’)を付加する。この暗号化共通鍵K’を暗号化コンテンツ鍵ともいう。
このようにして、本コンテンツ取引システム1では、3of3の閾値型公開鍵暗号技術と1of2の閾値型公開鍵暗号技術とを階層的に用いることにより、コンテンツの暗号化を行なう。これにより、暗号化共通鍵K’の復号時には、暗号鍵K_ACか暗号鍵K_BCがあればよいことになる。これは、例えば、暗号鍵K_ACによって暗号化されたコンテンツを復元する場合には、秘密鍵sk_Aと、承認者の秘密鍵sk_C1,sk_C2があればよいことになる。すなわち、コンテンツ送信者Aがコンテンツを復号する場合、暗号鍵K_ACによって暗号化されたコンテンツを復元することを選択すれば、コンテンツ受信者Bの秘密鍵sk_Bを取得せずとも、自身の秘密鍵sk_Aを用いてコンテンツを復号できる。したがって、コンテンツ送信者Aは、承認者の秘密鍵sk_C1,sk_C2さえ取得できれば、コンテンツの移転が失敗した場合にも、コンテンツ送信者Aがコンテンツを取り戻すことが可能となる。
(B)動作
[一実施形態に係るコンテンツ取引システムにおけるブロックチェーンを跨ったコンテンツの移転処理]
上述の如く構成された実施形態の一例として、コンテンツ取引システム1におけるコンテンツの移転処理を、図15,図16を参照しながら、図14,図17,図18に示すフローチャート(ステップS1〜S9,S11〜S18,Q1〜Q3)に従って説明する。
図14,図17,図18は、本実施形態におけるブロックチェーンを跨った資産の移転処理を説明するためのフローチャートである。図14はステップS1〜S8の処理を、図17はステップS9,S11〜S18の処理を、図18はステップQ1〜Q3の処理を、それぞれ示す。
また、図15,図16は、本実施形態のコンテンツ取引システム1におけるトランザクションを例示する図である。
これらの図14,図17,図18では、図1,図12に例示するように、BC10の利用者(コンテンツ送信者A)が、自身のコンテンツを、他のブロックチェーン(BC20)の利用者(コンテンツ受信者B)に対して移転する場合を例にとる。また、その際の承認者は、BC25に属する(の利用者である)、承認者C1と承認者C2との2人であるものとする。
図14に示すステップS1において、コンテンツ送信者Aの鍵管理システム通信部58は、コンテンツ受信者Bに対してコンテンツを移転すべく、自身が属するブロックチェーンBC10の鍵管理システム60Aにアクセスする。
そして、鍵管理システム60Aの暗号化・復号部691は、移転対象であるコンテンツを暗号化するための共通鍵Kを生成する。
続くステップS2において、暗号化・復号部691は、鍵情報91から、コンテンツ送信者Aの公開鍵pk_A、コンテンツ受信者Bの公開鍵pk_B、承認者C1の公開鍵pk_C1、及び、承認者C2の公開鍵pk_C2を取得する。
続くステップS3では、暗号化・復号部691は、例えば、3of3の閾値型公開鍵暗号技術を用い、コンテンツ送信者Aの公開鍵pk_Aと、承認者C1,C2の公開鍵pk_C1,pk_C2とを組み合わせて1つの暗号鍵K_ACを生成する。
そして、暗号化・復号部691は、3of3の閾値型公開鍵暗号技術を用いて、コンテンツ受信者Bの公開鍵pk_Bと、承認者C1,C2の公開鍵pk_C1,pk_C2とを組み合わせることにより1つの暗号鍵K_BCを生成する。
さらに、暗号化・復号部691は、例えば、1of2の閾値型公開鍵暗号技術を用いて、生成した暗号鍵K_ACと暗号鍵K_BCとを組み合わせることにより、1つの暗号鍵K_ABCを生成する。
続くステップS4において、暗号化・復号部691は、暗号鍵K_ABCを用いて共通鍵Kを暗号化して暗号化共通鍵K'を作成する。また、暗号化・復号部691は、共通鍵Kを用いて、移転対象のコンテンツを暗号化する。
続くステップS5において、鍵管理システム60Aのトランザクション発行部681は、暗号化したコンテンツを預託口座へ移転するトランザクションTx1を発行する。その際、トランザクション発行部681は、共通鍵Kを暗号鍵K_ABCで暗号化した暗号化共通鍵K'をトランザクションTx1に付加する。この鍵管理システム60Aのトランザクション発行部681が発行するトランザクションTx1について、図15を用いて説明する。
図15には、上述したステップS5において、鍵管理システム60Aのトランザクション発行部681が発行するトランザクションTx1に含まれる(格納される)情報を例示する。なお、トランザクションTx1に含まれる情報は図15に例示した情報に限られない。
この図15に例示するように、トランザクションTx1は、一例として、“移転元口座”、“移転先口座”、“移転資産”、及び、“暗号鍵”に関する情報を含む。図15に示したトランザクションTx1の例では、“移転元口座”として「コンテンツ送信者Aの口座」が格納され、“移転先口座”として「預託口座」が格納される。また、“移転資産”として「共通鍵Kで暗号化されたコンテンツ」が格納され、“暗号鍵”として「暗号鍵K_ABCで暗号化された共通鍵K(暗号化共通鍵K')」が格納される。
なお、トランザクションTx1の表現形式はテーブルに限られるものではなく、種々変形して実施することができる。
続くステップS6では、コンテンツ送信者Aの属するBC10における、連携ノード40Aのトランザクション送受信部481は、上記ステップS5で発行されたトランザクションTx1を受信する。そして、連携ノード40Aの台帳制御部491は、自身の記憶部42に備える台帳90Aに、トランザクションTx1を記録する(格納する)。なお、この記録の際、例えば、台帳90Aに古いトランザクションTx1に関する情報が記録されている場合には、当該情報を更新することにより台帳90Aに書き込みを行なってもよい。
なお、上述したとおり、台帳90Aには、BC10の情報としてトランザクションTx1が格納される。具体的には、連携ノード40Aの台帳90Aに含まれるBC10の台帳に、トランザクションTx1が格納される。
続くステップS7において、仲介システム30のブロック検知部812は、例えば、自身の台帳記憶部321に備えられる台帳90D、BC10の連携ノード40Aの台帳90A、及び、BC20の連携ノード40Bの台帳90Bを一定のタイミングで監視する。そして、ブロック検知部812が、トランザクションTx1が含まれるブロックを検知すると、すなわち、鍵管理システム60が発行したトランザクションTx1がBC10の台帳に記録されたことを検知すると、トランザクションTx1が確定したと判断する。
そして、仲介システム30の台帳制御部821は、トランザクションTx1が確定したという結果(トランザクション)を、自身の台帳記憶部321に格納される台帳90Dに含まれるBC25の台帳に記録する。
続くステップS8において、仲介システム30のトランザクション送受信部811は、共通鍵Kを用いて暗号化された移転対象のコンテンツを、BC20のコンテンツ受信者Bの口座に移転するトランザクションTx2を発行する。また、トランザクションTx2を発行する際、トランザクション送受信部811は、共通鍵Kを暗号鍵K_ABCで暗号化した暗号化共通鍵K'をトランザクションTx2に付加する。
なお、この共通鍵Kや暗号鍵K_ABC、または、暗号化共通鍵K'は、鍵管理システム60Aの記憶部62に格納される鍵情報91に格納されてもよい。その場合、本実施形態では、鍵管理システム60Aの記憶部62に格納される鍵情報91が、所定のタイミングで、仲介システム30の鍵情報記憶部322の鍵情報91に書き込まれてもよい。上述したステップS8では、仲介システム30のトランザクション送受信部811は、この書き込まれた情報を用いて、トランザクションTx2に対して、暗号化共通鍵K'を付加してもよい。
上述したステップS8において、仲介システム30のトランザクション送受信部811が発行するトランザクションTx2について、図16を用いて説明する。このトランザクションTx2には、一例として、図16に例示するような情報が含まれる(格納される)。なお、トランザクションTx2に含まれる情報は図16に例示した情報に限られない。
この図16に例示するように、トランザクションTx2は、一例として、“移転先口座”、“移転資産”、及び、“暗号鍵”に関する情報を含む。図16に示したトランザクションTx2の例では、“移転先口座”として「コンテンツ受信者Bの口座」が格納される。また、“移転資産”として「共通鍵Kで暗号化されたコンテンツ」が格納され、“暗号鍵”として「暗号鍵K_ABCで暗号化された共通鍵K(暗号化共通鍵K')」が格納される。
続いて、図17に示すステップS9において、仲介システム30のブロック検知部812は、トランザクションTx2が正常にBC20に取り込まれたかを判断する。本実施形態においてブロック検知部812は、例えば、BC20の連携ノード40Bの記憶部42の台帳90BにトランザクションTx2が含まれるブロックを検知すると、トランザクションTx2が正常にBC20に取り込まれたと判断する。すなわち、ブロック検知部812は、正常に終了したと判断する。
このステップS9で正常にBC20に取り込まれたと判断した場合(ステップS9の“Yes”ルート)、すなわち、コンテンツ送信者Aからコンテンツ受信者B側へのコンテンツの移転が成功した場合、処理がステップS11とステップQ1(後述)とに移行する。一方、正常にBC20に取り込まれなかったと判断した場合(ステップS9における“No”ルート)、すなわち、コンテンツ送信者Aからコンテンツ受信者B側へのコンテンツの移転が失敗した場合、処理がステップS13に移行する。
ステップS11において、仲介システム30のトランザクション送受信部811は、暗号化コンテンツを預託口座から凍結口座へ移転するトランザクションTx3を発行する。
続くステップS12では、ブロック検知部812は、BC10の連携ノード40Aの記憶部42の台帳90AにトランザクションTx3が含まれるブロックを検知する。そして、ブロック検知部812は、トランザクションTx3が確定したという結果(トランザクション)を、台帳90Dに含まれるBC25の台帳に記録する。このトランザクションTx3が台帳に記録されることにより、コンテンツ送信者Aからコンテンツ受信者B側へのコンテンツの移転が完了したことが明示される。したがって、トランザクションTx3が台帳に記録されていることがわかれば、コンテンツ送信者Aに対して当該コンテンツが凍結されたこと、すなわち、コンテンツ送信者Aはもはや当該コンテンツを復号できないことがわかる。その後、処理を終了する。
一方、上記ステップS9にて、コンテンツの移転が失敗したことを検知した場合(ステップS9における“No”ルート)、ステップS13において、仲介システム30のブロック検知部812は、当該移転が失敗した旨を、鍵管理システム60Aを介してコンテンツ送信者Aに通知する。そして、本コンテンツ取引システム1では、コンテンツ送信者Aに対してコンテンツを取り戻す処理を開始する。
続くステップS14において、コンテンツ送信者Aの鍵管理システム通信部58は、コンテンツを取り戻すべく、鍵管理システム60Aに対して、資産取り戻しのトランザクションの発行を依頼する。
続くステップS15において、鍵管理システム60Aの暗号化・復号部691は、仲介システム30に対して、承認者C1の秘密鍵sk_C1、及び、承認者C2の秘密鍵sk_C2を要求する。
すると、仲介システム30のブロック検知部812は、コンテンツが凍結されていないことを確認すべく、BC20の連携ノード40Bに備えられる台帳90Bに、トランザクションTx2が含まれるブロックを検知しないことを確認する。そして、コンテンツが凍結されていないことを確認すると、仲介システム30の鍵送信部831は、鍵情報記憶部322の鍵情報91に格納される、承認者C1,C2の秘密鍵sk_C1,sk_C2を鍵管理システム60Aの暗号化・復号部691に送信する。このようにして、鍵管理システム60Aの暗号化・復号部691は、承認者C1,C2の秘密鍵sk_C1,sk_C2を取得する。
続くステップS16で、鍵管理システム60Aの暗号化・復号部691は、上記ステップS15にて取得した秘密鍵sk_C1,sk_C2と、自身の鍵情報91に格納しているコンテンツ送信者Aの秘密鍵sk_Aとを用いて、暗号化共通鍵K’を復号する。これにより、コンテンツ送信者Aは、暗号化コンテンツを復号する。
続くステップS17において、仲介システム30のトランザクション送受信部811は、コンテンツを取り戻すトランザクションTx4を発行する。そして、このトランザクションTx4は、BC10の台帳に記録される。
続くステップS18において、仲介システム30のブロック検知部812は、BC10の連携ノード40Aに備えられる台帳90AにトランザクションTx4が含まれるブロックを検知する。そして、このブロック検知部812は、トランザクションTx4が確定したという結果(トランザクション)を、台帳90Dに含まれるBC25の台帳に記録する。このトランザクションTx4が台帳に記録されることにより、コンテンツ送信者Aにおいて、コンテンツを取り戻せたこと、すなわち、当該コンテンツが復号されたことがわかる。その後、処理を終了する。
また、上記ステップS9で、正常にBC20に取り込まれたと判断した場合(ステップS9の“Yes”ルート)、処理が上述したステップS11とステップQ1とに移行する。次に、ステップQ1に移行した場合の処理について説明する。
ステップQ1において、コンテンツ受信者Bは受信したコンテンツを復号すべく、コンテンツ受信者Bの鍵管理システム通信部58は、鍵管理システム60Bに対して暗号化コンテンツの復号を依頼する。
続くステップQ2において、鍵管理システム60Bの暗号化・復号部691は、仲介システム30に対して、承認者C1の秘密鍵sk_C1、及び、承認者C2の秘密鍵sk_C2を要求する。
次に、仲介システム30のブロック検知部812は、コンテンツが凍結されていることを確認すべく、台帳記憶部321の台帳90Dに含まれるBC25の台帳に、トランザクションTx3が確定したという結果(トランザクション)を検知できるかを確認する。そして、コンテンツが凍結されていることを確認すると、仲介システム30の鍵送信部831は、承認者C1,C2の秘密鍵sk_C1,sk_C2を、鍵情報記憶部322の鍵情報91から取得し、鍵管理システム60Bの暗号化・復号部691に対して送信する。このようにして、鍵管理システム60Bの暗号化・復号部691はこれらの秘密鍵sk_C1,sk_C2を取得する。
続くステップQ3で、鍵管理システム60Bの暗号化・復号部691は、上記ステップS15にて取得した秘密鍵sk_C1,sk_C2と、自身の鍵情報91に格納しているコンテンツ受信者Bの秘密鍵sk_Bとを用いて、暗号化共通鍵K’を復号する。これにより、コンテンツ受信者Bは、暗号化コンテンツを復号する。そして、処理を終了する。
このようにステップS9,S13〜S18に示す処理を経ることにより、コンテンツの移転処理が失敗した場合に、コンテンツ送信者Aによるコンテンツの取戻しが可能となる。また、ステップS9,S11,S12,Q1〜Q3に示す処理を経ることにより、コンテンツの移転処理が成功した場合にも、コンテンツの凍結が可能となり、コンテンツ受信者B側でのコンテンツの復号が可能となる。
(C)効果
このように、第1実施形態の一例としてのコンテンツ取引システム1によれば、3of3の閾値型公開鍵暗号技術と1of2の閾値型公開鍵暗号技術とを階層的に用いることで、コンテンツ送信者Aの秘密鍵sk_Aを用いてコンテンツを復元することができる。これにより、コンテンツの移転が失敗した場合にも、自身の秘密鍵sk_Aを用いることにより、コンテンツ送信者Aがコンテンツを取り戻すことが可能となる。
また、第1実施形態の一例としてのコンテンツ取引システム1では、コンテンツを復号する際、コンテンツ送信者Aの秘密鍵sk_Aやコンテンツ受信者Bの秘密鍵sk_Bだけでなく、承認者の秘密鍵sk_C1,sk_C2をも必要とする。これにより暗号強度を高くすることができる。
このように、第1実施形態の一例としてのコンテンツ取引システム1では、コンテンツ送信者Aと、コンテンツ受信者Bと、承認者C1,C2とに、取り戻しや復号に必要な権限を同一にもたせず、取引の処理に応じて権限をもたせるユーザの組合せを変更できる。これにより、取引の処理に応じた所定の鍵の組合せが揃ったときのみ、コンテンツの取り戻しや復号を行なうことができるようになり、例えば、コンテンツ送信者Aとコンテンツ受信者Bとの結託による不正なコンテンツの移転を回避できる。
(D)その他
上述した一実施形態に係るコンテンツ取引システム1は、以下のように変形、変更して実施することができる。
上述した一実施形態に係るコンテンツ取引システム1において、仲介システム30は、ブロックチェーンの公知のスマートコントラクト技術を用いて構築されてもよいものとしたが、これに限られるものではなく、種々変形して実施することができる。
上述した一実施形態に係るコンテンツ取引システム1において、クライアントコンピュータ50の利用者は、自身のクライアントコンピュータ50を用いて、鍵管理システム60やブロックチェーンにアクセスするものとした。しかし、コンテンツ取引システム1のハードウェア及び機能構成は上述したものに限られず、例えば、鍵管理システム60は、クライアントコンピュータ50内においてアプリケーションとして実現されてもよい。その場合、クライアントコンピュータ50の利用者は、自身のクライアントコンピュータ50を用いて、仲介システム30や連携ノード40にアクセスしてもよい。
そして、本発明は図1に例示した構成に限定されるものではなく、種々変形して実施することができる。例えば、連携するブロックチェーンの数は3つ以上であってもよく、当該システムには他のコンピュータが備えられてもよい。
例えば、コンテンツ取引システム1の構成は、図19に例示するものであってもよい。図19は、変形例としてのコンテンツ取引システム1におけるハードウェア構成を例示する図である。なお、図中、既述の符号と同一の符号は同様の部分を示しているので、その詳細な説明は省略する。
この図19に例示するコンテンツ取引システム1では、一方のブロックチェーンには、連携ノード40A、クライアントコンピュータ50A、及び、鍵管理システム60Aが備えられる。また、他方のブロックチェーンには、連携ノード40B、クライアントコンピュータ50B、及び、鍵管理システム60Bが備えられる。そして、これらのブロックチェーンを跨った資産の移転を仲介システム30が仲介する。また、図19に例示するコンテンツ取引システム1では、複数の連携ノード40Aまたは40Bが備えられる。なお、図19中では連携ノード40A,40Bのうち一部の構成を省略しているが、これらの連携ノード40A,40Bが連携してブロックチェーン間でのコンテンツの移転処理を、利用者に代わって行なってもよい。
そして、本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
1 コンテンツ取引システム
10,20,25 ブロックチェーン
30 仲介システム
31 CPU
320 記憶部
321 台帳記憶部
322 鍵情報記憶部
33 メモリ
34 IF部
35 入出力部
36 表示部
38 仲介プログラム
40 連携ノード
41 CPU
42 記憶部
43 メモリ
44 IF部
45 入出力部
46 表示部
47 連携プログラム
48 ブロックチェーン通信部
481 トランザクション送受信部
49 ブロックチェーン制御部
491 台帳制御部
50 クライアントコンピュータ
51 CPU
52 記憶部
53 メモリ
54 IF部
55 入出力部
56 表示部
57 クライアントプログラム
58 鍵管理システム通信部
60 鍵管理システム(鍵管理装置)
61 CPU
62 記憶部
63 メモリ
64 IF部
65 入出力部
66 表示部
67 鍵管理プログラム
68 ブロックチェーン通信部
681 トランザクション発行部
69 暗号化制御部
691 暗号化・復号部(暗号化処理部,暗号化コンテンツ鍵生成部,取り戻し処理部)
70 承認者コンピュータ
71 CPU
72 記憶部
73 メモリ
74 IF部
75 入出力部
76 表示部
77 承認プログラム
78 鍵管理システム通信部
81 ブロックチェーン通信部
811 トランザクション送受信部(移転処理部)
812 ブロック検知部(確認部)
82 ブロックチェーン制御部
821 台帳制御部
83 鍵管理部
831 鍵送信部
90 台帳
91 鍵情報

Claims (7)

  1. 移転元と移転先との間におけるコンテンツの取引を実現するコンテンツ取引システムであって、
    前記コンテンツをコンテンツ鍵を用いて暗号化した暗号化コンテンツを生成する暗号化処理部と、
    前記コンテンツの移転元の公開鍵、前記コンテンツの移転先の公開鍵、及び、取引認証用公開鍵を用いて前記コンテンツ鍵を暗号化した暗号化コンテンツ鍵を生成する暗号化コンテンツ鍵生成部と、
    前記暗号化コンテンツ、及び、前記暗号化コンテンツ鍵を、預託先に移転させる移転処理部と、
    前記移転元から前記移転先への前記暗号化コンテンツの移転の完了を確認する確認部と、
    前記移転元から前記移転先への前記暗号化コンテンツの移転の完了が確認されない場合に、前記移転元へ前記コンテンツを戻す取り戻し処理を実行する取り戻し処理部と
    を備える、
    ことを特徴とする、コンテンツ取引システム。
  2. 前記取り戻し処理部が、前記コンテンツの移転元の秘密鍵、及び、取引認証用秘密鍵を用いて前記コンテンツ鍵を復号し、
    前記暗号化コンテンツと復号した前記コンテンツ鍵とを用いて、前記コンテンツを復号する、
    ことを特徴とする、請求項1記載のコンテンツ取引システム。
  3. 前記移転元から前記移転先への前記暗号化コンテンツの移転の完了が確認された場合に、
    前記暗号化処理部が、前記コンテンツの移転先の秘密鍵、及び、取引認証用秘密鍵を用いて前記コンテンツ鍵を復号し、
    前記暗号化コンテンツと復号した前記コンテンツ鍵とを用いて、前記コンテンツを復号する、
    ことを特徴とする、請求項1記載のコンテンツ取引システム。
  4. 前記暗号化処理部は、
    前記コンテンツの移転元の公開鍵と取引認証用公開鍵とを組み合わせて第一の暗号鍵を生成し、
    前記コンテンツの移転先の公開鍵と取引認証用公開鍵とを組み合わせて第二の暗号鍵を生成し、
    前記第一の暗号鍵と前記第二の暗号鍵とを組み合わせて階層型暗号鍵を生成し、
    前記階層型暗号鍵を用いて前記コンテンツ鍵を暗号化する、
    ことを特徴とする、請求項1〜3のいずれか一項に記載のコンテンツ取引システム。
  5. 移転元と移転先との間におけるコンテンツの取引を実現するコンテンツ取引システムにおいて、
    前記コンテンツをコンテンツ鍵を用いて暗号化した暗号化コンテンツを生成する処理と、
    前記コンテンツの移転元の公開鍵、前記コンテンツの移転先の公開鍵、及び、取引認証用公開鍵を用いて前記コンテンツ鍵を暗号化した暗号化コンテンツ鍵を生成する処理と、
    前記暗号化コンテンツ、及び、前記暗号化コンテンツ鍵を、預託先に移転させる処理と、
    前記移転元から前記移転先への前記暗号化コンテンツの移転の完了を確認する処理と、
    前記移転元から前記移転先への前記暗号化コンテンツの移転の完了が確認されない場合に、前記移転元へ前記コンテンツを戻す処理と
    を備える、
    ことを特徴とする、コンテンツ取引方法。
  6. コンテンツをコンテンツ鍵を用いて暗号化した暗号化コンテンツを生成する暗号化処理部と、
    前記コンテンツの移転元の公開鍵、前記コンテンツの移転先の公開鍵、及び、取引認証用公開鍵を用いて前記コンテンツ鍵を暗号化した暗号化コンテンツ鍵を生成する暗号化コンテンツ鍵生成部と、
    移転元から移転先への前記暗号化コンテンツの移転の完了が確認されない場合に、前記移転元へ前記コンテンツを戻す取り戻し処理を実行する取り戻し処理部と
    を備える、
    ことを特徴とする、鍵管理装置。
  7. 鍵管理装置のプロセッサに、
    コンテンツをコンテンツ鍵を用いて暗号化した暗号化コンテンツを生成し、
    前記コンテンツの移転元の公開鍵、前記コンテンツの移転先の公開鍵、及び、取引認証用公開鍵を用いて前記コンテンツ鍵を暗号化した暗号化コンテンツ鍵を生成し、
    移転元から移転先への前記暗号化コンテンツの移転の完了が確認されない場合に、前記移転元へ前記コンテンツを戻す取り戻し処理を実行する
    処理を実行させる、
    ことを特徴とする、鍵管理プログラム。
JP2021528602A 2019-06-21 2019-06-21 コンテンツ取引システム、コンテンツ取引方法、鍵管理装置、及び鍵管理プログラム Pending JPWO2020255382A1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/024742 WO2020255382A1 (ja) 2019-06-21 2019-06-21 コンテンツ取引システム、コンテンツ取引方法、鍵管理装置、及び鍵管理プログラム

Publications (1)

Publication Number Publication Date
JPWO2020255382A1 true JPWO2020255382A1 (ja) 2021-12-09

Family

ID=74040412

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021528602A Pending JPWO2020255382A1 (ja) 2019-06-21 2019-06-21 コンテンツ取引システム、コンテンツ取引方法、鍵管理装置、及び鍵管理プログラム

Country Status (2)

Country Link
JP (1) JPWO2020255382A1 (ja)
WO (1) WO2020255382A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4328835A4 (en) * 2021-04-20 2024-04-24 Fujitsu Ltd CONTROL METHOD, CONTROL PROGRAM AND INFORMATION PROCESSING DEVICE
WO2024013856A1 (ja) * 2022-07-12 2024-01-18 富士通株式会社 連携プログラム、連携方法及び情報処理装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018536957A (ja) * 2015-11-30 2018-12-13 シェイプシフト・アーゲーShapeShift AG ブロックチェーン資産取引におけるセキュリティを向上させるためのシステム及び方法
WO2019082442A1 (ja) * 2017-10-27 2019-05-02 日本電信電話株式会社 データ登録方法、データ復号方法、データ構造、コンピュータ、及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018536957A (ja) * 2015-11-30 2018-12-13 シェイプシフト・アーゲーShapeShift AG ブロックチェーン資産取引におけるセキュリティを向上させるためのシステム及び方法
WO2019082442A1 (ja) * 2017-10-27 2019-05-02 日本電信電話株式会社 データ登録方法、データ復号方法、データ構造、コンピュータ、及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
藤本 真吾,鎌倉 健: "ブロックチェーンの安全な連携方式の提案", 2018年 暗号と情報セキュリティシンポジウム概要集, JPN6019034278, 23 January 2018 (2018-01-23), JP, pages 1 - 6, ISSN: 0004869424 *

Also Published As

Publication number Publication date
WO2020255382A1 (ja) 2020-12-24

Similar Documents

Publication Publication Date Title
JP4996757B1 (ja) 秘密分散システム、装置及びプログラム
US6118874A (en) Encrypted data recovery method using split storage key and system thereof
JP3820777B2 (ja) 秘密鍵寄託システムおよび方法
US8098829B2 (en) Methods and systems for secure key delivery
US8495380B2 (en) Methods and systems for server-side key generation
JP4334580B2 (ja) 鍵管理システム及び鍵管理方法
US9137017B2 (en) Key recovery mechanism
JP2022133423A (ja) 暗号化された資産暗号化鍵パーツのサブセットを使用して資産暗号化鍵のアセンブリを可能にする暗号化された資産暗号化鍵パーツ
US11943350B2 (en) Systems and methods for re-using cold storage keys
KR102205654B1 (ko) 분산 환경에서의 신원 인증 방법
KR20120029424A (ko) 신뢰성있는 컴퓨팅 및 데이터 서비스들을 위한 안전하고 사적인 백업 저장부 및 프로세싱
CN102687133A (zh) 用于可信计算和数据服务的无容器数据
KR20130084604A (ko) 전자 문서들의 판독 가능성을 제어 및 제한하기 위한 방법
JP6296630B1 (ja) 分散型台帳システムおよびプログラム
JP6426520B2 (ja) 暗号鍵管理システムおよび暗号鍵管理方法
KR102359826B1 (ko) 블록체인을 기반으로 한 디지털 자산 관리 시스템 및 방법
WO2020255382A1 (ja) コンテンツ取引システム、コンテンツ取引方法、鍵管理装置、及び鍵管理プログラム
US11893577B2 (en) Cryptographic key storage system and method
JP2019146088A (ja) 計算機システム、接続装置、及びデータ処理方法
JP6272546B2 (ja) データ保管装置及びデータ処理方法及びデータ処理プログラム
WO2020076234A1 (en) Apparatus and method for controlling data access
CN115412236A (zh) 一种密钥管理和密码计算的方法、加密方法及装置
JP2011227673A (ja) ファイル管理システム、ストレージサーバ、クライアント、ファイル管理方法およびプログラム
JP6901373B2 (ja) ユーザ管理装置、ユーザ管理システム
KR20200134187A (ko) 분산 환경에서의 신원 인증 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221107

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20221107

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230307