JP2020088857A - 複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法及びブロックチェーンシステムプログラム - Google Patents

複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法及びブロックチェーンシステムプログラム Download PDF

Info

Publication number
JP2020088857A
JP2020088857A JP2019205572A JP2019205572A JP2020088857A JP 2020088857 A JP2020088857 A JP 2020088857A JP 2019205572 A JP2019205572 A JP 2019205572A JP 2019205572 A JP2019205572 A JP 2019205572A JP 2020088857 A JP2020088857 A JP 2020088857A
Authority
JP
Japan
Prior art keywords
block
content
sub
blocks
node
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.)
Granted
Application number
JP2019205572A
Other languages
English (en)
Other versions
JP6921921B2 (ja
Inventor
ポール パク
Park Paul
ポール パク
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.)
NHN Japan Corp
Original Assignee
NHN Japan Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NHN Japan Corp filed Critical NHN Japan Corp
Publication of JP2020088857A publication Critical patent/JP2020088857A/ja
Application granted granted Critical
Publication of JP6921921B2 publication Critical patent/JP6921921B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1059Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供する。【解決手段】本発明の実施形態の方法は、1つのメインブロックに従属接続させるためのサブブロックチェーンを構成する候補サブブロックを生成して伝播し、受信された候補サブブロックの有効性を検証後、有効な候補サブブロックを格納及び伝播し、ユーザが質疑したコンテンツとマッチングされた候補サブブロックを生成したノードから受信されたコンテンツブロックの有効性を検証した後、コンテンツブロックに接続された末端ブロックを格納及び伝播し、受信された同じ末端ブロックの個数が既定値以上になると、末端ブロックと接続された候補サブブロックを承認して承認サブブロックを生成し、承認サブブロックを予め格納されたブロックチェーンローカルの複写本にアップデートし、承認サブブロックを伝播することを含む。【選択図】図5

Description

本発明は、ブロックチェーンシステムに関し、複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法及びこのためのブロックチェーンシステムプログラムに関する。
ブロックチェーンは、2008年ナカモト・サトシのBitcoin:A Peer−to−Peer Electronic Cash Systemにおいて、ブロックとブロックとを接続する方法から由来した。ブロックチェーンは、ピアに元帳が共有され、ブロック内の内容が透明に公開され、任意に変更が不可能な特性から、暗号通貨において必須不可欠の技術と認められた。そして、これからブロックチェーンは、暗号通貨のみのための技術でなく、種々の産業分野にわたって活用可能性を見せている。ブロックチェーンは、分散化されたP2Pネットワークを基にする。P2Pは、「Peer−to−Peer」という意味であって、中央サーバなしに各端末が互いに同等な立場で通信をするネットワークをいう。各端末は、サーバでありながら、同時にクライアントとなる。ブロックチェーンネットワークを構成するノード(Peer)は、元帳のコピーをそれぞれ保管し、自分が有した元帳の状況に応じて行動を決定する。すなわち、ノードは、ブロックを受け入れるか、次のブロックを生成するか、受けたブロックを再度周辺ノードに伝播するかなどを決定する。ノードは、独立的な個体であり、自分と接続された他のノードに対する信頼が要求されない。従来のブロックチェーン上のブロックには、制限された容量のデータを入れられる。ネットワークに参加した多数のノードは、ブロックを分散格納するブロックチェーン技術の特性上、ブロックに含まれるデータの容量において一定の制約を伴う。
大韓民国公開特許公報第10−2018−0115779号
本発明は、前述した問題点を解決するためのものであって、ブロックチェーン上に含まれるデータの容量制約を克服できる方法及びブロックチェーンシステムを提供することを目的とする。
また、本発明は、コンテンツを含むサブブロックチェーンを構成する方法及びこのためのブロックチェーンシステムを提供することを目的とする。
また、本発明は、必要に応じて容量が大きいコンテンツブロックの選択的同期化が可能な方法及びブロックチェーンシステムを提供することを目的とする。
また、本発明は、サブブロックチェーンの承認合意のためのアルゴリズムを提供することを目的とする。
本発明の一実施形態は、複数のノードのうち、いずれか1つのノードが、メインブロックチェーン内の複数のメインブロックのうち、いずれか1つのメインブロックに従属接続させるためのサブブロックチェーンを構成する候補サブブロックを生成して伝播するステップと、複数のノードのうち、いずれか1つのノードが、受信された候補サブブロックの有効性を検証後、有効な候補サブブロックを格納及び伝播するステップと、複数のノードのうち、いずれか1つのノードが、ユーザが質疑したコンテンツとマッチングされた候補サブブロックを生成したノードから受信されたコンテンツブロックの有効性を検証した後、前記コンテンツブロックに接続された末端ブロックを格納及び伝播するステップと、複数のノードのうち、いずれか1つのノードは、受信された同じ末端ブロックの個数が既定値以上になると、前記末端ブロックと接続された候補サブブロックを承認して承認サブブロックを生成し、前記承認サブブロックを予め格納されたブロックチェーンローカルの複写本(コピーデータともいう)にアップデートし、前記承認サブブロックを伝播するステップと、を含む複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、前記承認サブブロックに接続された前記コンテンツブロック及び前記コンテンツブロックに接続された前記末端ブロックで構成された前記サブブロックチェーンが承認されて前記メインブロックチェーンに接続されるステップをさらに含む複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、前記複数のノードのうち、いずれか1つのノードは、承認されたサブブロックチェーンを構成する複数のブロックのうち、特定ブロックのみを選択的に格納する複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、前記複数のメインブロックの各々は、予め決められたカテゴリー別項目情報を含み、前記サブブロックチェーンに含まれたコンテンツは、前記サブブロックチェーンと接続されるメインブロックのカテゴリー別項目情報とマッチングされる複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、前記サブブロックチェーンは、メインブロックチェーン内の複数のメインブロックのうち、いずれか1つのメインブロックに従属接続された他のサブブロックチェーンと従属接続される複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、前記候補サブブロックを生成して伝播するステップは、末端ブロックを生成するステップと、前記末端ブロックのハッシュ及びコンテンツを含むコンテンツブロックを生成するステップと、前記コンテンツブロックのハッシュ及び前記コンテンツのカテゴリーとマッチングされたメインブロックのハッシュを含む候補サブブロックを生成するステップと、前記候補サブブロックをブロックチェーンネットワークに伝播するステップとを含む複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、複数のノードのうち、いずれか1つのノードが、ユーザが質疑したコンテンツとマッチングされた候補サブブロックを生成したノードから受信されたコンテンツブロックの有効性を検証した後、前記コンテンツブロックに接続された末端ブロックを格納及び伝播するステップは、ユーザから検索するコンテンツ情報を受信するステップと、格納された候補サブブロックのうち、受信されたコンテンツ情報とマッチングされるサブブロックを検索するステップと、検索されたサブブロックを生成したノードに前記検索されたサブブロックに接続されたコンテンツブロックの送信を要請するステップと、受信されたコンテンツブロックの有効性を検証するステップと、有効性が検証されたコンテンツブロックに接続された前記検索されたサブブロックを生成したノードに末端ブロックを受信して格納し、前記末端ブロックを前記ブロックチェーンネットワークに伝播するステップとを含む複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、前記末端ブロックのハッシュ及びコンテンツを含むコンテンツブロックを生成するステップは、互いに従属接続され、自分と従属接続された後端のコンテンツブロックのハッシュを含む複数のコンテンツブロックを生成するステップを含み、前記複数のコンテンツブロックのうち、最後端のコンテンツブロックは、前記末端ブロックのハッシュを含み、前記複数のコンテンツブロックのうち、最先端のコンテンツブロックのハッシュ及び前記コンテンツのカテゴリーとマッチングされたメインブロックのハッシュを含む候補サブブロックを生成する複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、前記最後端のコンテンツブロックは、前記コンテンツを含み、前記最後端のコンテンツブロックを除いた残りのコンテンツブロックは、前記コンテンツの要約情報を含む複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、前記複数のコンテンツブロックの各々は、前記コンテンツを複数個に分割した分割コンテンツを含む複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、複数のノードのうち、いずれか1つのノードが、ユーザが質疑したコンテンツとマッチングされた候補サブブロックを生成したノードから受信されたコンテンツブロックの有効性を検証した後、前記コンテンツブロックに接続された末端ブロックを格納及び伝播するステップは、ユーザから検索するコンテンツ情報を受信するステップと、格納された候補サブブロックのうち、受信されたコンテンツ情報とマッチングされるサブブロックを検索するステップと、検索されたサブブロックを生成したノードに前記検索されたサブブロックに接続された前記複数のコンテンツブロックの送信を要請し、受信された複数のコンテンツブロックのそれぞれの有効性を検証するステップと、前記複数のコンテンツブロックのうち、最後端のコンテンツブロックの有効性の検証が完了すれば、前記検索されたサブブロックを生成したノードに末端ブロックを受信して格納し、前記末端ブロックを前記ブロックチェーンネットワークに伝播するステップとを含み、複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、前記末端ブロックのハッシュ及びコンテンツを含むコンテンツブロックを生成するステップは、末端ブロックを生成するステップと、前記末端ブロックのハッシュ及びコンテンツを含む原本コンテンツブロック及び前記末端ブロックのハッシュを含む複製コンテンツブロックを生成するステップと、前記原本及び複製コンテンツブロックのハッシュ及び前記コンテンツのカテゴリーとマッチングされたメインブロックのハッシュを含む候補サブブロックを生成するステップと、前記候補サブブロックをブロックチェーンネットワークに伝播するステップと、を含む複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
他の側面において、前記複製コンテンツブロックは、前記原本コンテンツブロックの送信を要請するためのスクリプトまたは前記コンテンツが含まれた前記原本コンテンツブロックが格納された格納先に対するリンク情報のうち、いずれか1つを含む複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法を提供できる。
さらに他の側面において、コンピュータに、前記命令は、ユーザの要請に応答して複数のカテゴリー情報の各々を含む互いに従属接続されたメインブロックチェーンを表示し、前記メインブロックチェーン上のいずれか1つのメインブロックの選択に応答して、前記メインブロックに接続された少なくとも1つのサブブロックチェーンのそれぞれのサブブロックを表示し、前記サブブロックのうち、いずれか1つのサブブロックの選択に応答して、前記サブブロックに従属接続された複数のコンテンツブロックを格納したコンテンツ格納ノードに前記複数のコンテンツブロックの送信を要請し、受信されたコンテンツブロック内のコンテンツを表示することを実行させるブロックチェーンプログラムを提供することもできる。
他の側面において、前記複数のコンテンツブロックのうち、受信されたコンテンツブロックの有効性検証完了後、前記受信されたコンテンツブロックに後続して接続されたコンテンツブロックの送信が要請されるブロックチェーンプログラムを提供することもできる。
他の側面において、前記受信されたコンテンツブロック内のコンテンツの表示が完了すれば、前記受信されたコンテンツブロックの有効性検証が完了したことと判断するブロックチェーンプログラムを提供することもできる。
他の側面において、表示されたコンテンツに対する有効性に関する情報を受信することに応答して、前記表示されたコンテンツの有効性検証が完了したことと判断するブロックチェーンプログラムを提供することもできる。
他の側面において、前記複数のコンテンツノードは、従属的に接続され、前記複数のコンテンツノードのうち、最後端のコンテンツノードを除いた残りのコンテンツノードは、前記最後端のコンテンツノードに含まれたコンテンツの要約情報を含むブロックチェーンプログラムを提供することもできる。
他の側面において、前記複数のコンテンツブロックの有効性検証が完了すれば、前記複数のコンテンツノードのうち、最後端のコンテンツノードに接続された末端ブロックを前記コンテンツ格納ノードから受信し、受信された末端ブロックを他のノードに伝播するブロックチェーンプログラムを提供することもできる。
他の側面において、前記複数のノードは、前記コンテンツブロック内のコンテンツの閲覧回数情報を共有し、前記サブブロックが表示されるとき、前記閲覧回数情報に基づいて算定されたコンテンツの信頼情報が表示されることをさらに含むブロックチェーンプログラムを提供することもできる。
本発明の一実施形態によれば、ブロックチェーンに含まれるデータ容量の制限を克服できるブロックチェーンシステムを提供できる。
また、本発明の一実施形態によれば、コンテンツが含まれたサブブロックチェーンの信頼のための合意を成すためのアルゴリズムを提供できる。
また、本発明の一実施形態によれば、容量が大きいコンテンツの閲覧前に、コンテンツの信頼水準やコンテンツ信頼と関連した合意達成の可否について確認できる。
また、本発明の一実施形態によれば、コンテンツの共有や販売及び購買が可能なブロックチェーン基盤のコンテンツ共有システムを提供できる。
また、本発明の一実施形態によれば、ストリーミング形態のコンテンツ閲覧が可能なブロックチェーンシステムを提供できる。
また、本発明の一実施形態によれば、コンテンツが含まれたコンテンツブロックの選択的同期化が可能なようにして、格納容量の負担を軽減させることができる。
本発明において得ることができる効果は、以上で言及した効果に制限されず、言及していないさらに他の効果は、下記の記載から明確に理解されることができる。
複数のノードの分散ネットワークで構成されたブロックチェーンシステムに対する概観を示す。 本発明の実施形態に係る複数のノードが全部または一部を共有するブロックチェーンに対する例示図である。 本発明の他の実施形態に係る複数のノードが全部または一部を共有するブロックチェーンに対する例示図である。 本発明のさらに他の実施形態に係る複数のノードが全部または一部を共有するブロックチェーンに対する例示図である。 本発明の実施形態に係る複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法に対するフローチャートである。 任意のノードで候補サブブロックを生成する方法に対するフローチャートである。 受信された候補サブブロックに対する検証及び伝播過程を示したフローチャートである。 選択された候補サブブロックに接続されたコンテンツブロックを受信し、末端ブロックを伝播する方法を示したフローチャートである。 ブロックチェーン検索用ユーザインターフェースの例示図である。 ブロックチェーン検索用ユーザインターフェースの例示図である。 候補サブブロックの承認過程を示したフローチャートである。 承認サブブロックの受信によるノードの動作過程を示したフローチャートである。 コンテンツの信頼情報を表示する方法に対するフローチャートである。
本発明は、様々な変換を加えることができ、種々の実施形態を有することができるところ、特定の実施形態を図面に例示し、発明の詳細な説明に詳しく説明しようとする。本発明の効果及び特徴、そして、それらを達成する方法は、図面とともに詳しく後述されている実施形態を参照すれば明確になるであろう。しかし、本発明は、以下において開示される実施形態等に限定されるものではなく、様々な形態で実現されることができる。以下の実施形態において、第1、第2などの用語は、限定的な意味ではなく、1つの構成要素を他の構成要素と区別する目的として使用された。また、単数の表現は、文脈上、明白に異なるように意味しない限り、複数の表現を含む。また、「含む」または「有する」などの用語は、明細書上に記載された特徴または構成要素が存在することを意味するものであり、1つ以上の他の特徴または構成要素が付加される可能性を予め排除するものではない。また、図面では、説明の都合上、構成要素等が、そのサイズが誇張または縮小されてもよい。例えば、図面に示された各構成のサイズ及び厚さは、説明の都合上、任意に示したので、本発明が必ずしも図示されたところに限定されない。
以下、添付された図面を参照して本発明の実施形態を具体的に説明し、図面を参照して説明するとき、同一であるか、対応する構成要素は、同じ図面符号を付し、これについての重複する説明は省略する。
図1は、複数のノードの分散ネットワークで構成されたブロックチェーンシステムに対する概観を示す。
以下において説明するシステム10は、ネットワーク上でピアツーピア(peer−to−peer)ネットワークアーキテクチャ構造をなす。すなわち、システムに参加するユーザらは、みんな同等な地位を有しており、特別なノードは存在せず、全てのノードがネットワークサービスを構成する役割を分担する。ネットワーク上の種々のノードは、互いに同等なトポロジーを有しながら、ネットワークで互いに接続される。ネットワーク内にあるノードが互いに同等な位置にあるとしても、支援する機能によって各自の役割は相違してもよい。
全てのノード100は、ネットワーク内にルーティング機能を保有しており、他の機能を含むこともできる。全てのノード100は、取引とブロックをはじめとする各種データを検証し、伝播し、隣接ノードとの接続を維持する機能を果たすことができる。ここでの取引とは、金銭的な取引や仮想貨幣の取引だけでなく、スマートコントラクトによる各種取引及び各種コンテンツの取引を全て含む。したがって、本明細書における取引の意味が特定の取引に限定されないことに注意しなければならない。
ユーザは、一般の個人から組織、コミュニティ、大規模集団に達するまで多様でありうるし、他の類型の個体を含むことができる。
新しいノードがシステムに参加するために、まず、ネットワーク上に存在する他のノードを検索できる。このようなプロセスを始めるために、新しいノードは、既存にネットワーク上に存在するノードのうち少なくとも1個を検索して、接続しなければならない。新しいノードが既に知っている隣接ノードに接続されるために、各ノードは、特定番号のポートでTCPコネクションを接続したり、代案ポートで接続することができる。新しいノードは、接続要請メッセージを隣接ノードに送信し、隣接ノードは、接続要請を承認する場合、承認メッセージを新しいノードに送信することにより、当該要請に応答することができる。1つ以上の接続が成立したら、新しいノードは、自分のIPアドレスが入れられているアドレスメッセージを隣接ノードに送信することができる。順に隣接ノードは、送信されたアドレスメッセージをそれらの隣接ノードに送信することにより、新しく接続されたノードがよりよく知られ、他のノードとよりよく接続されるようにしてもよい。また、新しく接続されたノードは、アドレス要請メッセージを隣接ノードに送り、他の隣接ノードのIP住所目録を再度送信することを要請できる。このような方式を介してノードは、自分と接続されている隣接ノードを検索でき、他のノードが自分を検索できるように自分の存在をネットワーク上に知らせることができる。
複数のノード100のうち、少なくとも一部のノードは、ブロックチェーン全体の複写本または少なくともブロックチェーンの部分集合に該当する複写本を有することができる。一部の実施形態において、ブロックチェーンのうち、メインブロックチェーン全体の複写本と、サブブロックチェーンの全体の複写本またはサブブロックチェーンの部分集合に該当する複写本を有することができる。
ブロックチェーンは、各種データで構成される変更不可能なブロックで構成された分散型コンピュータシステムで構成される。ブロックチェーンを構成する各ブロックは、前のブロックのハッシュを含むので、ブロックが共に接続されて、始めからブロックチェーンに書かれたカテゴリーなどの情報に対するレコードを生成する。ブロックは、前のブロックに従属的に接続されているので、解体、修正、及び再構成がほとんど不可能であり、ノードが各自保有するので、分散され、堅固である。
それぞれのノードは、全てのコンピューティング言語を読み込むことができるようにサーバ、インターフェース、システム、データベース、エージェント、ピア、エンジン、コントローラ、または個別的にまたは集合的に作動するその他の類型のコンピューティング装置を含むか、コンピューティング装置等の適切な組み合わせで構成されることができる。コンピューティング装置は、非一時的なコンピュータ読み取り可能格納媒体(例えば、ハードドライブ、ソリッドステートドライブ、RAM、フラッシュメモリ、ROM等)上に格納されたソフトウェア命令を実行するように構成されたプロセッサを備えることができる。望ましくは、コンピューティング装置が後述する各種機能を提供できるようにソフトウェア命令が構成される。また、開示された技術は、プロセッサをして開示されたステップを実行させるソフトウェア命令を格納する非一時的コンピュータ読み取り可能媒体を含むコンピュータプログラム製品として実現されてもよい。望ましくは、様々なサーバ、システム、データベース、そして、インターフェースは、HTTP、HTTPS、AES、公開/個人キー交換、ウェブサービスAPI、知られた金融取引プロトコル、または他の電子基盤の標準化されたプロトコル、若しくはアルゴリズムを使用してデータを交換できる。望ましくは、データ交換は、パケット交換ネットワーク、インターネット、LAN、WAN、VPN、または他の類型のパケット交換ネットワークを介して行われてもよい。
図2は、本発明の実施形態に係る複数のノードが全部または一部を共有するブロックチェーンに対する例示図である。
ブロックチェーン200は、メインブロックチェーン210とサブブロックチェーン220とで構成される。図2によれば、メインブロック2にサブブロックチェーンが接続されたことと図示されているが、これは例示的なものであり、他のメインブロック(メインブロック1、3、4〜n)のうち、少なくとも1つのサブブロックチェーンが接続されてもよい。
メインブロックチェーン210は、複数のメインブロック211で構成されてもよい。複数のメインブロック211は、互いに従属的に接続される。いずれか1つのメインブロックは、前のメインブロックのハッシュを含むことができる。複数のメインブロック211の各々には、予め決められたカテゴリー別項目情報が含まれてもよい。ここでのカテゴリーは、同じ性格のコンテンツを細部項目別に区分したものである。例示的に、コンテンツが映画動画である場合、コンテンツは、韓国映画、米国映画、香港映画、中国映画、日本映画などのカテゴリーに区分されてもよい。ただし、コンテンツが映画に限定されるものではない。複数のメインブロック211のうち、いずれか1つのメインブロックは、複数の項目のうち、いずれか1つの項目情報のみを有することができ、複数のメインブロックの各々が有した項目情報は互いに相違することができる。
サブブロックチェーン220は、複数のメインブロック211のうち、いずれか1つのメインブロックに接続されたさらに他のチェーンであるか、他のサブブロックチェーン220に接続されたさらに他のチェーンになることができる。例示的に、第1のサブブロックチェーン221は、メインブロック211に接続されたサブブロックチェーンであり、第2のサブブロックチェーン222は、第1のサブブロックチェーン221に接続されたサブブロックチェーンになることができる。サブブロックチェーン220上のサブブロックには、コンテンツが含まれてもよい。
また、いずれか1つのメインブロックに接続された第1及び第2のサブブロックチェーン221、222は、同じカテゴリーに分類されるコンテンツを含み、これらは、互いに異なる種類のコンテンツを含むことができる。
それぞれのサブブロックチェーン220は、サブブロック227、コンテンツブロック228、そして末端ブロック229を含むことができる。
末端ブロック229は、いずれか1つのサブブロックチェーンの最後のブロックを指してもよい。末端ブロック229は、自分と接続されたサブブロックを識別するサブブロック識別情報を含むことができる。
コンテンツブロック228は、末端ブロック229のハッシュと自分と接続されたサブブロックを識別するサブブロック識別情報を含むことができる。また、コンテンツブロック228は、コンテンツを含むことができる。ここでのコンテンツは、ネットワークに参加したノードのユーザらが互いに共有したり、販売、購入しようとするデジタル情報であって、デジタルで加工された各種情報内容物やプログラム、映画、音楽、ゲームソフトウェアなどを意味する。
サブブロック227は、コンテンツブロック228のハッシュと自分と接続されたメインブロックのハッシュとを含むことができる。また、サブブロックは、コンテンツの種類に関する情報を含んでもよい。
ネットワークに参加した複数のノードは、メインブロックチェーン210のローカル複写本を有してもよい。メインブロックチェーン210内のメインブロック211に記録された情報は、カテゴリー情報であって、データ容量が大きくない。したがって、ネットワークに参加したノードがメインブロックチェーン210のローカル複写本を格納するためのブロックチェーン同期化時間が速かになされてもよい。
メインブロックチェーン210の長さは延長されてもよい。すなわち、新しいメインブロックがメインブロックチェーン210上に持続的にアップデートされてもよい。ネットワークに参加したノードのうち、いずれか1つの指定されたノードは、メインブロックチェーン210を管理できる。すなわち、指定されたノードは、新しいメインブロックをメインブロックチェーン210上に接続することができる。
図3は、本発明の他の実施形態に係る複数のノードが全部または一部を共有するブロックチェーンに対する例示図である。
サブブロックチェーン220は、サブブロック227と複数のコンテンツブロック228、そして、末端ブロック229で構成される。
複数のコンテンツブロック228は、例示的に第1及び第n(nは、2以上の整数)のコンテンツブロックを含むことができる。
第nのコンテンツブロックは、末端ブロック229のハッシュと自分と接続されたサブブロックの情報を含むことができる。また、第nのコンテンツブロックは、コンテンツを含むことができる。第1のコンテンツブロックは、第2のコンテンツブロックのハッシュを含むことができる。すなわち、第n−m(mは、1以上n−1以下の整数)のコンテンツブロックは、第n−m+1のコンテンツブロックのハッシュを含むことができる。すなわち、任意のコンテンツブロックは、自分と従属接続された後端のコンテンツブロックのハッシュを含むことができる。そして、複数のコンテンツブロックのうち、最後端のコンテンツブロックは、末端ブロックのハッシュを含み、最先端のコンテンツブロックのハッシュは、候補サブブロックに含まれてもよい。
第1乃至第n−1のコンテンツブロックの各々は、第nのコンテンツブロックに含まれたコンテンツに対する要約情報を含んでもよい。一部の実施形態において、第1乃至第n−1のコンテンツブロックの各々は、第nのコンテンツブロックに含まれたコンテンツに対する互いに異なる要約情報を含んでもよい。すなわち、第1乃至第n−1のコンテンツブロックの各々は、第nのコンテンツブロックに含まれたコンテンツの容量よりは少ないコンテンツに対する要約情報のみを含むことができる。例示的に、第1のコンテンツブロックは、コンテンツの名称情報を含み、第2のコンテンツブロックは、コンテンツのクレディット情報を含むことができ、第3のコンテンツブロックは、コンテンツの一部を含むことができる。より具体的に、例えば、コンテンツが映画である場合、第1のコンテンツブロックは、映画の名称情報を含み、第2のコンテンツブロックは、映画の開封日時、製作者情報、出演俳優情報、ランニングタイム情報などを含むことができる。そして、第3のコンテンツブロックは、映画のフォト情報や映画の予告編コンテンツを含むことができる。ただし、これに制限されるものではなく、コンテンツブロックの個数によってコンテンツを含む最後のコンテンツブロックを除いた残りのコンテンツブロックに含まれた情報は適宜変更してもよい。
一部の実施形態において、第1乃至第nのコンテンツブロックの各々は、1つのコンテンツに対する一部分のコンテンツを含んでもよい。例示的に、1つのコンテンツがn個に分割され、分割された分割コンテンツの各々は、第1乃至第nのコンテンツブロックの各々に含まれてもよい。コンテンツが映画である場合、時間順に分割された分割映像が第1乃至第nのコンテンツブロックの各々に順序どおりに含まれてもよい。
図4は、本発明のさらに他の実施形態に係る複数のノードが全部または一部を共有するブロックチェーンに対する例示図である。
サブブロックチェーン220は、サブブロック227、原本コンテンツブロック228、複製コンテンツブロック226、そして、末端ブロック229で構成されることもできる。
原本コンテンツブロック228と複製コンテンツブロック226の各々は、末端ブロック229のハッシュを含むことができる。そして、サブブロック227は、原本コンテンツブロック228のハッシュと複製コンテンツブロック226のハッシュとを含むことができる。
原本コンテンツブロック228は、コンテンツを含み、複製コンテンツブロック226は、コンテンツを含まないブロックである。そして、複製コンテンツブロック226は、原本コンテンツブロック228を保有したノードに原本コンテンツブロック228の送信を要請するためのスクリプトを内蔵できる。ノードが複製コンテンツブロック226内のスクリプトを実行すれば、スクリプトは、原本コンテンツブロック228を保有したノードに原本コンテンツブロック228の送信を要請するようになる。他の側面において、複製コンテンツブロック226は、原本コンテンツが格納された格納先に対するリンク情報を含んでもよい。ノードが複製コンテンツブロック226内のリンクに接続されたノードに原本コンテンツブロック228を要請するようになる。
サブブロックチェーン220を格納するノードは、サブブロック227、原本コンテンツブロック228、複製コンテンツブロック226、そして、末端ブロック229を全て格納することができる。このうち、原本コンテンツブロック228を選択的に格納しないこともある。
一部の実施形態において、コンテンツブロックは、複数個で構成されてもよい。例えば、コンテンツブロックは、第1乃至第n−1のコンテンツブロックと原本コンテンツブロックである第nのコンテンツブロックと複製コンテンツブロックとで構成されてもよい。そして、第n−1のコンテンツブロックは、第nのコンテンツブロックと複製コンテンツブロックのそれぞれのハッシュを含むことができる。他の側面において、1つのコンテンツが分割されて複数のコンテンツブロックに格納された場合、コンテンツブロックは、第1乃至第nの原本コンテンツブロックと第1乃至第nの複製コンテンツブロックで構成されることもできる。そして、第m(mは、1より大きく、n未満の整数)の原本コンテンツブロックと第mの複製コンテンツブロックとは、第m+1の原本コンテンツブロックと第m+1の複製コンテンツブロックのそれぞれのハッシュを含むことができる。
図5は、本発明の実施形態に係る複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法に対するフローチャートである。
図5に示すように、複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおいてサブブロックチェーンを構成する方法(S100)は、複数のノードのうちいずれか1つのノードが、メインブロックに従属接続された候補サブブロックを生成して伝播するステップ(S110)、複数のノードのうちいずれか1つのノードが、受信された候補サブブロックの有効性検証後、有効な候補サブブロックを格納及び伝播するステップ(S120)、複数のノードのうち、いずれか1つのノードが、ユーザが質疑したコンテンツとマッチングされた候補サブブロックを生成したノードからコンテンツブロックを受信し、受信されたコンテンツブロックの有効性を検証した後、前記コンテンツブロックに接続された末端ブロックを格納及び伝播するステップ(S130)、及び複数のノードのうち、いずれか1つのノードは、他のノードから受信した同じ末端ブロックの個数が既定値以上になると、前記末端ブロックと接続された候補サブブロックを承認して承認サブブロックを生成し、前記承認サブブロックを自分のノードに予め格納されたブロックチェーンローカルの複写本にアップデートし、前記承認サブブロックを伝播するステップ(S140)を含むことができる。
以下、図5の各ステップをより詳細に説明する。
図6は、任意のノードで候補サブブロックを生成する方法に対するフローチャートである。
図5及び図6に示すように、任意のノードで候補サブブロックを生成して伝播する方法(S110)は、末端ブロックを生成するステップ(S111)、末端ブロックのハッシュ及びコンテンツを含むコンテンツブロックを生成するステップ(S112)、コンテンツブロックのハッシュ及びコンテンツのカテゴリーとマッチングされたメインブロックのハッシュを含む候補サブブロックを生成するステップ(S113)、及び候補サブブロックをブロックチェーンネットワークに伝播するステップ(S114)を含むことができる。
より詳細には、ブロックチェーンネットワークに参加した全てのノードは、候補サブブロックを生成できる権限を有することができる。一部の実施形態において、一部ノードのみが候補サブブロックを生成してもよい。
ノードは、保有したコンテンツをブロックチェーンシステム上で検証され、共有するために候補サブブロックを生成することができる。
具体的に、ノードは、末端ブロックを生成する(S111)。末端ブロックは、サブブロックチェーンを構成するブロックであって、サブブロックチェーンの最終ブロックに該当する。末端ブロックには、末端ブロックの生成ノード情報と生成時点、コンテンツ情報、候補サブブロックを識別する情報などが含まれてもよい。
ノードは、末端ブロックのハッシュとコンテンツを含むコンテンツブロックを生成する(S112)。コンテンツブロックに含まれたコンテンツは、サブブロックチェーンと接続されたメインブロックに含まれたカテゴリー情報にマッチングされるコンテンツをいう。例示的には、メインブロックに含まれたカテゴリー情報が韓国映画カテゴリーである場合、コンテンツブロックに含まれるコンテンツは、韓国映画に分類される映画コンテンツであってもよい。
ノードは、コンテンツブロックのハッシュ及びメインブロックのハッシュを含む候補サブブロックを生成する(S113)。候補サブブロックは、コンテンツブロックのハッシュを含んでコンテンツブロックと接続されてもよい。そして、候補サブブロックは、自分のサブブロックチェーンが接続されたメインブロックのハッシュを含んでもよい。
一部の実施形態において、互いに従属接続された複数のコンテンツブロックが存在する場合、候補サブブロックは、複数のコンテンツブロックのうち、最先端のコンテンツブロックのハッシュを含んでもよい。
他の側面において、メインブロックに既に承認されたサブブロックが接続された場合、コンテンツブロックのハッシュ、メインブロックのハッシュ、そして、既に承認されたサブブロックのハッシュを含む候補サブブロックを生成する。
ノードは、サブブロックチェーンを構成すると、サブブロックチェーンの候補サブブロックをブロックチェーンネットワーク上に伝播する(S114)。ノードは、サブブロックチェーンの一部の候補サブブロックを伝播する。そして、候補サブブロック内には、コンテンツでないコンテンツの識別情報のみが含まれるので、候補サブブロックのデータ容量が少ない。したがって、候補サブブロックは、数秒内にブロックチェーンネットワークに接続された全てのノードに伝播される。
候補サブブロックは、未承認のブロックであって、メインブロックチェーン上に正式に接続されたブロックではない。ただし、ノードの合意下に候補サブブロックが承認サブブロックになると、承認サブブロックは、メインブロックチェーン上に接続される。また、承認サブブロックがメインブロックチェーンに接続されるとき、承認サブブロックに接続されたコンテンツブロックと末端ブロックとが共にメインブロックチェーンに接続されてもよい。すなわち、承認されたサブブロックチェーンがメインブロックチェーンに接続されてもよい。そして、これは、サブブロックチェーンがブロックチェーンシステム上で承認されたことを意味する。
サブブロックチェーンが承認されてメインブロックチェーンに接続された場合であるといえども、ノードの運営主体であるユーザの選択によってサブブロックチェーンの一部分だけを自分のブロックチェーンローカルの複写本にアップデートすることができる。具体的に、ノードは、承認されたサブブロックチェーンを構成する複数のブロックのうち、特定ブロックのみを選択的に格納することができる。一部の実施形態において、ノードのユーザは、承認されたサブブロックチェーンが存在する場合、承認されたサブブロックチェーン上のサブブロックのみを自分のブロックチェーンローカルの複写本にアップデートすることができる。したがって、ノードのユーザは、格納空間とコンテンツ格納の必要性を考慮して、選択的にコンテンツブロックの格納可否を決定できる。
一部の実施形態において、コンテンツブロックは、複数個になることができる。例示的に、コンテンツブロックは、第1及び第2のコンテンツブロックで構成されてもよい。
S112ステップにおいて、ノードは、末端ブロックのハッシュ及び第1のコンテンツを含む第1のコンテンツブロックを生成し、第2のコンテンツ及び第1のコンテンツブロックのハッシュを含む第2のコンテンツブロックを生成できる。一部の実施形態において、第2のコンテンツは、第1のコンテンツより少ない容量を有することができる。例示的に、コンテンツが動画である場合、第1のコンテンツは、動画とし、第2のコンテンツは、動画の種類情報、動画の製作者情報、動画の登場人物などに関する情報のように、映像でないテキスト及び/又はイメージ情報のように、コンテンツを識別する情報とすることができる。
また、S113ステップにおいて、ノードは、第2のコンテンツブロックのハッシュとコンテンツのカテゴリーとマッチングされたメインブロックのハッシュを含む候補サブブロックを生成してもよい。そして、S114ステップにおいて、ノードは、生成された候補サブブロックをブロックチェーンネットワークに伝播してもよい。
一部の実施形態によれば、S112ステップにおいて、ノードは、末端ブロックのハッシュ及びコンテンツを含む原本コンテンツブロックと末端ブロックのハッシュを含む複製コンテンツブロックとを生成してもよい。
また、S113及びS114ステップにおいてノードは、原本コンテンツブロックのハッシュ及び複製コンテンツブロックのハッシュを含む候補サブブロックを生成してブロックチェーンネットワークに伝播してもよい。
図7は、受信された候補サブブロックに対する検証及び伝播過程を示したフローチャートである。
図7を参照して、受信された候補サブブロックに対する検証及び伝播方法(S200)を説明するとき、ネットワークに参加したノードのうち任意のノードが、他のノードが生成した候補サブブロックを受信する(S210)。
ノードは、受信された候補サブブロックの有効性を検証する(S220)。具体的に、ノードは、候補サブブロックに含まれたコンテンツ情報と候補サブブロックが接続されたメインブロックのカテゴリー項目の整合性を確認する。また、ノードは、候補サブブロックが既に承認された承認サブブロックであるか否かを確認してもよい。また、ノードは、候補サブブロックと同じブロックが以前に受信されたことがあるか否かを確認できる。また、ノードは、例示的にブロックに含まれた情報の構文(syntax)とデータ構造が正確であるかを検証し、含まれた情報の大きさが予め設定された基準より小さいかを検証する過程など、予め決められたチェックリストに基づいて候補サブブロックの有効性を検証してもよい。
ノードは、受信した候補サブブロックがメインブロックとの関係で整合しないか、受信した候補サブブロックが既に承認されたブロックであるか、重複受信された候補サブブロックである場合、その他のチェックリスト上の要件を満たさない場合のうち、少なくとも1つを満たさない場合、受信した候補サブブロックの有効性検証は失敗したと判断する(S220;No)。ノードは、有効性検証に失敗した候補サブブロックを廃棄し(S230)、検証失敗情報を候補サブブロックの生成ノードに送信することができる(S240)。
これとは異なり、受信した候補サブブロックの有効性検証が完了すると(S220;Yes)、ノードは、当該候補サブブロックを格納し(S250)、ブロックチェーンネットワーク上に伝播することができる(S260)。
ノードは、有効性が検証された候補サブブロックをデータベースに格納する。前述した過程を介してノードのデータベース上には互いに異なる候補サブブロックが蓄積される。ノードは、ユーザの要請に応答して格納された候補サブブロックのうち、ユーザの要請にマッチングされる候補サブブロックを検索できる。
図8は、選択された候補サブブロックに接続されたコンテンツブロックを受信し、末端ブロックを伝播する方法を示したフローチャートであり、図9及び図10は、ブロックチェーン検索用ユーザインターフェースの例示図である。
図8に示すように、候補サブブロックに接続されたコンテンツブロックを受信し、末端ブロックを伝播する方法(S300)は、ユーザの要請に応答してブロックチェーン検索用ユーザインターフェースを実行するステップ(S310)、ユーザの質疑に応答して格納された候補サブブロックを検索するステップ(S320)、質疑されたコンテンツとマッチングされた候補サブブロックを選択するステップ(S330)、選択された候補サブブロックを生成したノードにコンテンツブロックの送信を要請するステップ(S340)、コンテンツブロックを受信するステップ(S350)、受信されたコンテンツブロックの有効性を検証するステップ(S360)、コンテンツブロックの有効性が検証されれば、末端ブロックの送信を要請するステップ(S370)、受信された末端ブロックを格納するステップ(S380)、及び末端ブロックを伝播するステップ(S390)を含むことができる。
具体的に、図8及び図9に示すように、ノードは、ユーザの要請に応答してブロックチェーン検索用ユーザインターフェース510を実行して表示する(S310)。ユーザインターフェース510上には、ノードに格納されたメインブロックチェーン210が表示されてもよい。また、メインブロックチェーン210上のメインブロックのそれぞれのカテゴリー情報が共に表示されてもよい。
ユーザは、ユーザインターフェース510上の検索語入力欄520に検索語を入力できる。ノードは、データベースに格納された候補サブブロックのうち、入力された検索語にマッチングされる候補サブブロックを検索する(S320)。ユーザが質疑した検索語とマッチングされる少なくとも1つの候補サブブロックを表示し、ユーザは、表示された候補サブブロックのうち、いずれか1つを選択する(S330)。
他の側面において、図8及び図10に示すように、ノードは、ユーザの要請に応答してブロックチェーン検索用ユーザインターフェース510を実行して表示してもよい(S310)。ユーザインターフェース510上には、メインブロックチェーン210が表示されてもよい。ノードは、メインブロックチェーン210上の複数のメインブロックのうち、いずれか1つに対するユーザの選択に応答して、ノードのデータベース上に格納された候補サブブロックのうち、選択されたメインブロックと接続された候補サブブロックを表示できる。一部の実施形態において、ノードは、メインブロックチェーン210上の複数のメインブロックのうち、いずれか1つに対するユーザの選択に応答して、ノードのデータベース上に格納された承認サブブロックと候補サブブロックとを共に表示してもよい。また、サブブロックを表示するときに表示されたサブブロックが承認されたサブブロックであるかを表示してもよい。したがって、ユーザは、表示されたサブブロックの信頼可否を確認できる。これは、ユーザをして複数のサブブロックのうち、コンテンツの信頼が可能なサブブロックに選択の容易さを提供する。
また、ユーザは、表示された候補サブブロックのうち、いずれか1つの候補サブブロックを選択する(S330)。
ノードは、ユーザの候補サブブロックを選択したことに応答して、選択された候補サブブロックを生成したノードに選択された候補サブブロックと接続されたコンテンツブロックの送信を要請する(S340)。
ノードは、コンテンツブロックを受信すると(S350)、コンテンツブロックに含まれたコンテンツを表示できる。そして、コンテンツブロックの有効性を検証する(S360)。
コンテンツブロックの有効性検証についてより具体的に説明する。
ノードは、コンテンツの表示が完了すると、コンテンツブロックの有効性検証が完了したと判断することができる。例えば、コンテンツが動画である場合、動画の再生が全て完了すれば、コンテンツブロックの有効性検証が完了したことと判断することができる。一部の実施形態において、ユーザの承認情報の入力に応答してコンテンツブロックの有効性検証を完了できる。例えば、ノードは、コンテンツを表示するとともに、コンテンツの有効性検証可否を確認するための検証用ユーザインターフェースを実行できる。ユーザは、実行された検証用ユーザインターフェース上で当該コンテンツの有効性に関する情報を入力できる。ノードは、ユーザからコンテンツが有効であるという入力情報を受信することに応答してコンテンツブロックの有効性が検証されたと判断することができる。一部の実施形態において、ノードは、コンテンツブロック内のコンテンツを表示する前に決済用ユーザインターフェースを表示してもよい。ユーザは、決済用ユーザインターフェースを介してコンテンツの再生のための費用決済手続を進めることができる。ノードは、コンテンツブロックまたはコンテンツブロックと接続された候補サブブロックに含まれた費用情報、及びコンテンツブロックを生成したノードのブロックチェーンアドレスを読み出すことができる。そして、読み出した情報は、決済用ユーザインターフェースを介して表示されてもよい。ユーザは、決済用ユーザインターフェースを介して表示された費用の決済手続を進めることができる。ノードは、費用決済が完了した後、コンテンツブロック内のコンテンツを実行できる。また、ノードは、費用決済の完了に応答してコンテンツブロックの有効性が検証されたと判断することができる。
本実施形態は、ノードが予め格納されたサブブロックを検索し、検索されたサブブロックに含まれたサブブロック生成ノードの情報を確認して、当該ノードにコンテンツブロックを要請することにより、コンテンツが表示される。したがって、ノードは、容量が大きいコンテンツブロックを予め格納しなくとも、格納されたサブブロックを用いてコンテンツブロックを受信し、コンテンツブロック内のコンテンツを表示することができる。
一部の実施形態において、コンテンツブロックは、複数のコンテンツブロックで構成されてもよい。
複数のコンテンツブロックのうち、末端ブロックと接続された最終コンテンツブロックには、ユーザが実際閲覧することを望むコンテンツが含まれてもよいし、最終コンテンツブロックを除いた残りのコンテンツブロックには、最終コンテンツブロックに含まれたコンテンツを識別するための各種情報が含まれてもよい。
例えば、コンテンツブロックが候補サブブロックに接続された第1のコンテンツブロックと第1のコンテンツブロック及び末端ブロックに接続された第2のコンテンツブロックとで構成されれば、第1のコンテンツブロックに含まれたコンテンツは、第2のコンテンツブロックに含まれたコンテンツを識別する情報として説明、要約、その他の情報になることができる。
候補サブブロックを生成したノードは、コンテンツブロックの送信要請に応答して、候補サブブロックに最初に接続された第1のコンテンツブロックを送信することができる。
第1のコンテンツブロックを受信したノードは、第1のコンテンツブロックの有効性を検証できる。例示的に、ノードは予め設けられたチェックリストに基づいて第1のコンテンツブロックの有効性を検証できる。一部の実施形態において、ノードは、検証用ユーザインターフェースを表示してユーザからの検証確認入力信号を受信すると、第1のコンテンツブロックが有効であると判断することができる。ノードは、第1のコンテンツブロックの有効性を確認すると、第1のコンテンツブロックに後続して接続された第2のコンテンツブロックの送信を候補ブロック生成ノードに要請することができる。このように、コンテンツブロックが複数個で構成された場合、ノードは、コンテンツブロックを順次受信することができる。そして、次のコンテンツブロックの受信は、前のコンテンツブロックの有効性が満たされることを条件として実行されてもよい。また、コンテンツブロック内のコンテンツの表示前に費用決済が要求される場合であれば、最終コンテンツブロック内のコンテンツが表示されるときにのみ費用決済を要求してもよい。
本実施形態は、コンテンツブロックを複数個で構成し、最終コンテンツブロックにのみ相対的に大容量のコンテンツを含むように構成する。したがって、ノードは、相対的にデータ容量が少ない最先端のコンテンツブロックを受信して、当該コンテンツブロックの有効性検証後(具体的には、コンテンツの識別情報を確認して、最終コンテンツブロックに含まれたコンテンツが何であるか予め確認する等)、後端のコンテンツブロックを受信する。したがって、ユーザは、最先端のコンテンツブロック内のコンテンツ識別情報を予め確認することにより、所望しない大容量のコンテンツを送信されるという問題を防止できる。
また、本実施形態において複数のコンテンツブロックの各々は、分割されたコンテンツを各々含むことができる。したがって、ユーザは、ストリーミング形態で複数のコンテンツブロックを順次受信し、受信されたコンテンツブロック内のコンテンツを閲覧できる。また、複数のコンテンツブロック別に費用決済がなされるようにして、コンテンツの順次的な閲覧による課金処理が可能である。また、複数のコンテンツブロックのうち、少なくとも一部のコンテンツブロックのみをデータベースに格納することができる。したがって、全体コンテンツの内容のうち、ユーザが必要な部分のコンテンツのみが格納されてもよい。
一部の実施形態において、コンテンツブロックは、原本コンテンツブロックと複製コンテンツブロックとを含むことができる。原本コンテンツブロックにはコンテンツが含まれてもよい。そして、複製コンテンツブロックは、候補サブブロックを生成したノードに原本コンテンツブロックの送信を要請するためのスクリプトを内蔵できる。他の側面において、複製コンテンツブロックは、原本コンテンツが格納された格納先に対するリンク情報を含んでもよい。
ノードは、受信された原本コンテンツブロックのみを削除処理してもよい。原本コンテンツブロックの削除によってノードの格納容量の負担が軽減される。また、複製コンテンツブロックにより末端ブロックとサブブロックのチェーン接続は維持される。また、必要に応じて複製コンテンツブロック内のスクリプトやリンクを用いて原本コンテンツブロックを要請できる。
ノードは、コンテンツブロックの有効性検証において、有効性が検証されない場合(S360;No)、当該コンテンツブロックと接続された候補サブブロックを削除し(S361)、コンテンツブロックの検証失敗情報を、候補サブブロックを生成したノードに送信する(S362)。
ノードは、コンテンツブロックの有効性検証が完了すると(S360;Yes)、候補サブブロック生成ノードに末端ブロックの送信を要請する(S370)。ノードは、受信された末端ブロックを格納し(S380)、末端ブロックをブロックチェーンネットワークに伝播(S390)することができる。
一部の実施形態において、コンテンツブロックが複数個である場合、これらのコンテンツブロックは、互いに従属接続され、最先端のコンテンツブロックは、候補サブブロックに接続され、最後端のコンテンツブロックは、末端ブロックに接続されてもよい。そして、ノードは、複数個のコンテンツブロックの各々を順次有効性検証してもよい。そして、ノードは、最後端のコンテンツブロックの有効性検証が完了すると、候補サブブロック生成ノードに末端ブロックの送信を要請してもよい。
一方、ユーザは、コンテンツを閲覧した後、当該コンテンツが含まれたコンテンツブロックを削除処理してもよい。
ノードは、ユーザからコンテンツの削除要請の受信に応答してコンテンツが含まれたコンテンツブロックを除去する。一部の実施形態において、コンテンツブロックが複数個のコンテンツブロックを含む場合、最終コンテンツブロックのみを除去してもよい。一部の実施形態において、コンテンツブロックが原本コンテンツブロックと複製コンテンツブロックとを含む場合、原本コンテンツブロックのみを除去してもよい。
図11は、候補サブブロックの承認過程を示したフローチャートである。
図11を参照して候補サブブロックの承認方法(S400)を説明する。
ネットワークに参加したノードのうち、任意のノードが、他のノードが送信した末端ブロックを受信する(S410)。
ノードは、受信された末端ブロックの有効性を検証する(S420)。具体的に、ノードは、末端ブロックに接続された候補サブブロックが既に承認されたサブブロックである場合(S420;No)、末端ブロックを削除できる(S421)。
ノードは、末端ブロックの有効性が検証されると(S420;Yes)、末端ブロックを格納できる(S430)。
ノードは、格納された同じ末端ブロックの総個数が既定値T以上であるかを判断する(S440)。ノードは、格納された同一末端ブロックの総個数が既定値以上になると、当該末端ブロックに接続された候補サブブロックを承認する(S450)。末端ブロックは、コンテンツブロックの有効性検証後にネットワーク上に伝播される。したがって、同じ末端ブロックの個数が増加するほど、末端ブロックと関連したコンテンツブロックの閲覧回数が増加したとみなすことができる。これは、コンテンツの信頼度が増加することを意味する。コンテンツの信頼度が既定水準に達すると、初めて候補サブブロックは正式サブブロックと承認されてもよい。
ノードは、承認されたサブブロックをデータベース上に格納されたブロックチェーン上にアップデートして、サブブロックがメインブロックに接続されるようにすることができる。そして、ノードは、承認されたサブブロックをブロックチェーンネットワーク上に伝播することができる(S460)。
図12は、承認サブブロックの受信によるノードの動作過程を示したフローチャートである。
図12を参照して承認サブブロックの受信によるノードの動作過程(S500)を説明する。
ネットワークに参加した複数のノードのうち、任意のノードは、承認サブブロックを受信する(S510)。承認サブブロックが受信されると、承認サブブロックの有効性を検証する(S520)。有効性を満たさない場合(S520;No)、例示的には受信された承認サブブロックが既に自分のブロックチェーンにアップデートされた場合には、受信された承認サブブロックを廃棄する(S521)。ノードは、受信された承認サブブロックの有効性を満たす場合(S520)、ブロックチェーンをアップデートし、承認サブブロックをブロックチェーンネットワーク上に伝播する(S530)。
図13は、コンテンツの信頼情報を表示する方法に対するフローチャートである。
図13を参照して、実施形態に係るコンテンツの信頼情報を表示する方法(S600)を説明する。
任意のノードは、ユーザの要請に応答して検索用ユーザインターフェースを実行し、複数のカテゴリー情報の各々を含む互いに従属接続されたメインブロックチェーンを表示する(S610)。
ノードは、メインブロックチェーン上のいずれか1つのメインブロックに対するユーザの選択に応答して、メインブロックに接続された少なくとも1つのサブブロックチェーンのそれぞれのサブブロックを表示できる(S620)。このとき、表示されるサブブロックは、承認されたサブブロックであるか、未承認されたサブブロックであってもよく、サブブロックの承認可否が区別されて表示されてもよい。
ノードは、サブブロックのうち、いずれか1つのサブブロックに対するユーザの選択に応答して、サブブロックに従属接続された複数のコンテンツブロックを格納したコンテンツ格納ノードに複数のコンテンツブロックの送信を要請する(S630)。
他の側面において、ノードは、サブブロックのうちいずれか1つのサブブロックに対するユーザの選択に応答して、サブブロックに従属接続された複製コンテンツブロックを格納したコンテンツ格納ノードに複製コンテンツブロックの送信を要請してもよい。そして、複製コンテンツブロック内のスクリプトの実行を介して原本コンテンツブロックを受信できる。または、複製コンテンツブロック内のリンクを介して原本コンテンツブロックを受信してもよい。
ノードは、受信されたコンテンツブロック内のコンテンツを表示する(S640)。
他の側面において、ノードは、受信された原本コンテンツブロック内のコンテンツを表示してもよい。
ノードは、複数のコンテンツブロックを格納したコンテンツ格納ノードからいずれか1つのコンテンツブロックを受信すると、受信したコンテンツブロックの有効性を検証する。そして、ノードは、有効性検証が完了したコンテンツブロックに後続して、接続されたコンテンツブロックの送信をコンテンツ格納ノードに要請することができる。例えば、コンテンツブロックが複数のコンテンツブロックで構成された場合、ノードは、前端のコンテンツブロックに対する有効性検証を完了した後、コンテンツ格納ノードに当該ブロックに繋がったコンテンツブロックの送信を要請してもよい。他の側面において、ノードは、コンテンツブロックに対する有効性検証完了後、当該ブロックに繋がった末端ブロックに対する送信をコンテンツ格納ノードに要請してもよい。
他の側面において、ノードは、複製コンテンツブロックの有効性を検証できる。ノードは、複製コンテンツブロックの有効性が満たされたときに、原本コンテンツブロックを受信してもよい。
ノードは、複数のコンテンツブロックのうち、最後のコンテンツブロック内のコンテンツがノード上に表示されることに応答して、コンテンツ格納ノードに最後のコンテンツブロックに接続された末端ブロックの送信を要請する(S650)。
他の側面において、原本コンテンツブロック内のコンテンツがノード上に表示されることに応答して、ノードはコンテンツ格納ノードに末端ブロックの送信を要請してもよい。
ノードは、末端ブロックの受信に応答してコンテンツ閲覧情報を生成する(S660)。このとき、既に承認されたサブブロックに接続されたコンテンツブロック上のコンテンツを閲覧した場合にのみコンテンツ閲覧情報が生成されてもよい。
ノードは、コンテンツ閲覧情報をブロックチェーンネットワークに伝播する(S670)。
任意のノードは、ブロックチェーンネットワークから受信されたコンテンツ閲覧情報を受信して格納することができる。そして、格納された同じコンテンツの閲覧情報の個数に基づいてコンテンツ信頼情報を生成することができる。そして、ノードは、受信されたコンテンツブロックを表示したり、受信されたコンテンツブロック内のコンテンツを表示する前、または受信されたコンテンツブロック内のコンテンツを表示するとき、コンテンツ信頼情報を表示することができる。
以上で説明された本発明に係る実施形態は、様々なコンピュータ構成要素を介して実行されるプログラム命令語の形態で実現されて、コンピュータ読み取り可能な記録媒体に記録されてもよい。前記コンピュータ読み取り可能な記録媒体は、プログラム命令語、データファイル、データ構造等を単独でまたは組み合わせて含むことができる。前記コンピュータ読み取り可能な記録媒体に記録されるプログラム命令語は、本発明のために特別に設計され、構成されたものであるか、コンピュータソフトウェア分野の当業者に公知されて使用可能なものでありうる。コンピュータ読み取り可能な記録媒体の例には、ハードディスク、フロッピーディスク、及び磁気テープのような磁気媒体、CD−ROM及びDVDのような光気録媒体、フロプティカルディスク(floptical disk)のような磁気−光媒体(magneto−optical medium)、及びROM、RAM、フラッシュメモリなどのような、プログラム命令語を格納し、実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作られるような機械語コードだけでなく、インタプリタなどを使用してコンピュータにより実行され得る高級言語コードも含まれる。ハードウェア装置は、本発明に係る処理を行うために、1つ以上のソフトウェアモジュールに変更されることができ、その反対も同様である。
本発明において説明する特定実行等は、一実施形態であって、いかなる方法でも本発明の範囲を限定するものではない。明細書の簡潔さのために、従来の電子的な構成、制御システム、ソフトウェア、前記システムの他の機能的な側面等の記載は省略されてもよい。また、図面に図示された構成要素間の線等の接続または接続部材などは、機能的な接続及び/又は物理的または回路的接続を例示的に示したものであって、実際装置では、代替可能であるか、追加の様々な機能的な接続、物理的な接続、または回路接続として表されてもよい。また、「必須な」、「重要に」などのように、具体的な言及がなければ、本発明の適用のために必ず必要な構成要素でない場合がある。
また、説明した本発明の詳細な説明では、本発明の好ましい実施形態を参照して説明したが、当該技術分野の熟練された当業者または当該技術分野における通常の知識を有する者であれば、後述する特許請求の範囲に記載された本発明の思想及び技術領域から逸脱しない範囲内で本発明を様々に修正及び変更させることができることが理解できるであろう。したがって、本発明の技術的範囲は、明細書の詳細な説明に記載された内容に限定されるものではなく、特許請求の範囲により決められなければならないであろう。

Claims (20)

  1. 複数のノードのうちいずれか1つのノードが、メインブロックチェーン内の複数のメインブロックのうちいずれか1つのメインブロックに従属接続させるためのサブブロックチェーンを構成する候補サブブロックを生成して伝播するステップと、
    前記複数のノードのうちいずれか1つのノードが、受信した候補サブブロックの有効性を検証した後、有効な候補サブブロックを格納及び伝播するステップと、
    前記複数のノードのうちいずれか1つのノードが、ユーザが質疑したコンテンツとマッチングされた候補サブブロックを生成したノードから送信されたコンテンツブロックの有効性を検証した後、前記コンテンツブロックに接続された末端ブロックを格納及び伝播するステップと、
    前記複数のノードのうちいずれか1つのノードは、受信した同じ末端ブロックの個数が既定値以上になると、前記末端ブロックと接続された前記候補サブブロックを承認して承認サブブロックを生成し、前記承認サブブロックを予め格納されたブロックチェーンローカルの複写本にアップデートし、前記承認サブブロックを伝播するステップと、を含む、
    複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  2. 前記承認サブブロックに接続された前記コンテンツブロック及び前記コンテンツブロックに接続された前記末端ブロックで構成された前記サブブロックチェーンが承認されて前記メインブロックチェーンに接続されるステップをさらに含む、
    請求項1に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  3. 前記複数のノードのうちいずれか1つのノードは、前記承認されたサブブロックチェーンを構成する複数のブロックのうち、特定ブロックのみを選択的に格納する、
    請求項1に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  4. 前記複数のメインブロックの各々は、予め決められたカテゴリー別項目情報を含み、
    前記サブブロックチェーンに含まれたコンテンツは、前記サブブロックチェーンと接続されるメインブロックのカテゴリー別項目情報とマッチングされる、
    請求項1に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  5. 前記サブブロックチェーンは、前記メインブロックチェーン内の前記複数のメインブロックのうちいずれか1つのメインブロックに従属接続された他のサブブロックチェーンと従属接続される、
    請求項1に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  6. 前記候補サブブロックを生成して伝播するステップは、
    前記末端ブロックを生成するステップと、
    前記末端ブロックのハッシュ及びコンテンツを含むコンテンツブロックを生成するステップと、
    前記コンテンツブロックのハッシュ及び前記コンテンツのカテゴリーとマッチングされたメインブロックのハッシュを含む候補サブブロックを生成するステップと、
    前記候補サブブロックをブロックチェーンネットワークに伝播するステップと、を含む、
    請求項1に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  7. 前記複数のノードのうちいずれか1つのノードが、ユーザが質疑したコンテンツとマッチングされた候補サブブロックを生成したノードから送信された前記コンテンツブロックの有効性を検証した後、前記コンテンツブロックに接続された前記末端ブロックを格納及び伝播するステップは、
    前記ユーザから検索するコンテンツ情報を受信するステップと、
    前記格納された候補サブブロックのうち、前記受信されたコンテンツ情報とマッチングされるサブブロックを検索するステップと、
    前記検索されたサブブロックを生成したノードに前記検索されたサブブロックに接続されたコンテンツブロックの送信を要請するステップと、
    前記送信されたコンテンツブロックの有効性を検証するステップと、
    前記有効性が検証されたコンテンツブロックに接続された前記検索されたサブブロックを生成したノードから前記末端ブロックを受信して格納し、前記末端ブロックをブロックチェーンネットワークに伝播するステップと、
    を含む、
    請求項1に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  8. 前記末端ブロックのハッシュ及びコンテンツを含むコンテンツブロックを生成するステップは、互いに従属接続され、自分と従属接続された後端のコンテンツブロックのハッシュを含む複数のコンテンツブロックを生成するステップを含み、
    前記複数のコンテンツブロックのうち最後端のコンテンツブロックは、前記末端ブロックのハッシュを含み、前記複数のコンテンツブロックのうち最先端のコンテンツブロックのハッシュ及び前記コンテンツのカテゴリーとマッチングされたメインブロックのハッシュを含む候補サブブロックを生成する、
    請求項6に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  9. 前記最後端のコンテンツブロックは、前記コンテンツを含み、
    前記最後端のコンテンツブロックを除いた残りのコンテンツブロックは、前記コンテンツの要約情報を含む、
    請求項8に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  10. 前記複数のコンテンツブロックの各々は、前記コンテンツを複数個に分割した分割コンテンツを含む、
    請求項8に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  11. 前記複数のノードのうちいずれか1つのノードが、前記ユーザが質疑したコンテンツとマッチングされた候補サブブロックを生成したノードから送信されたコンテンツブロックの有効性を検証した後、前記コンテンツブロックに接続された末端ブロックを格納及び伝播するステップは、
    前記ユーザから検索するコンテンツ情報を受信するステップと、
    前記格納された候補サブブロックのうち前記受信されたコンテンツ情報とマッチングされるサブブロックを検索するステップと、
    前記検索されたサブブロックを生成したノードに前記検索されたサブブロックに接続された前記複数のコンテンツブロックの送信を要請し、前記送信された複数のコンテンツブロックのそれぞれの有効性を検証するステップと、
    前記複数のコンテンツブロックのうち、最後端のコンテンツブロックの有効性の検証が完了すると、前記検索されたサブブロックを生成したノードに末端ブロックを受信して格納し、前記末端ブロックを前記ブロックチェーンネットワークに伝播するステップと、
    を含む、
    請求項8に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  12. 前記末端ブロックのハッシュ及びコンテンツを含むコンテンツブロックを生成するステップは、
    前記末端ブロックを生成するステップと、
    前記末端ブロックのハッシュ及びコンテンツを含む原本コンテンツブロック並びに前記末端ブロックのハッシュを含む複製コンテンツブロックを生成するステップと、
    前記原本コンテンツブロック及び前記複製コンテンツブロックのハッシュ及び前記コンテンツのカテゴリーとマッチングされたメインブロックのハッシュを含む候補サブブロックを生成するステップと、
    前記候補サブブロックをブロックチェーンネットワークに伝播するステップと、
    を含む、
    請求項6に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  13. 前記複製コンテンツブロックは、前記原本コンテンツブロックの送信を要請するためのスクリプトまたは前記コンテンツが含まれた前記原本コンテンツブロックが格納された格納先に対するリンク情報のうちいずれか1つを含む、
    請求項12に記載の複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法。
  14. コンピュータに、
    ユーザの要請に応答して複数のカテゴリー情報の各々を含む互いに従属接続されたメインブロックチェーンを表示し、
    前記メインブロックチェーン上のいずれか1つのメインブロックの選択に応答して、前記メインブロックに接続された少なくとも1つのサブブロックチェーンのそれぞれのサブブロックを表示し、
    前記サブブロックのうち、いずれか1つのサブブロックの選択に応答して、前記サブブロックに従属接続された複数のコンテンツブロックを格納したコンテンツ格納ノードに前記複数のコンテンツブロックの送信を要請し、
    前記送信されたコンテンツブロック内のコンテンツを表示することを実行させる、
    ブロックチェーンシステムプログラム。
  15. 前記複数のコンテンツブロックのうち、前記送信されたコンテンツブロックの有効性検証完了後、前記送信されたコンテンツブロックに後続して接続されたコンテンツブロックの送信が要請される、
    請求項14に記載のブロックチェーンシステムプログラム。
  16. 前記送信されたコンテンツブロック内のコンテンツの表示が完了すれば、前記送信されたコンテンツブロックの有効性検証が完了したことを判断する、
    請求項15に記載のブロックチェーンシステムプログラム。
  17. 表示されたコンテンツに対する有効性に関する情報を受信することに応答して、前記表示されたコンテンツの有効性検証が完了したことを判断する、
    請求項15に記載のブロックチェーンシステムプログラム。
  18. 前記複数のコンテンツノードは、従属的に接続され、前記複数のコンテンツノードのうち最後端のコンテンツノードを除いた残りのコンテンツノードは、前記最後端のコンテンツノードに含まれたコンテンツの要約情報を含む、
    請求項15に記載のブロックチェーンシステムプログラム。
  19. 前記複数のコンテンツブロックの有効性検証が完了すれば、前記複数のコンテンツノードのうち最後端のコンテンツノードに接続された末端ブロックを前記コンテンツ格納ノードから受信し、
    前記受信された前記末端ブロックを他のノードに伝播する、
    請求項16に記載のブロックチェーンシステムプログラム。
  20. 前記複数のノードは、前記コンテンツブロック内のコンテンツの閲覧回数情報を共有し、
    前記サブブロックが表示されるとき、前記閲覧回数情報に基づいて算定されたコンテンツの信頼情報が表示されることをさらに含む、
    請求項15に記載のブロックチェーンシステムプログラム。
JP2019205572A 2018-11-15 2019-11-13 複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法及びブロックチェーンシステムプログラム Active JP6921921B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0140422 2018-11-15
KR1020180140422A KR102181136B1 (ko) 2018-11-15 2018-11-15 복수의 노드들의 분산 네트워크로 구성된 블록체인 시스템에서 서브 블록체인을 구성하는 방법 및 블록체인 시스템

Publications (2)

Publication Number Publication Date
JP2020088857A true JP2020088857A (ja) 2020-06-04
JP6921921B2 JP6921921B2 (ja) 2021-08-18

Family

ID=70726336

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019205572A Active JP6921921B2 (ja) 2018-11-15 2019-11-13 複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法及びブロックチェーンシステムプログラム

Country Status (3)

Country Link
US (1) US11200225B2 (ja)
JP (1) JP6921921B2 (ja)
KR (1) KR102181136B1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022149239A1 (ja) * 2021-01-07 2022-07-14 日本電信電話株式会社 情報処理装置、隣接ノード選択方法及びプログラム
JP2022552025A (ja) * 2020-06-24 2022-12-15 ビートダップ ソフトウェア インク. ブロックチェーンを使用してメディア再生を連続的に追跡するためのシステムおよび方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210147496A (ko) 2020-05-29 2021-12-07 (주)바다플랫폼 체인 데이터베이스를 구비한 블록체인 네트워크 기반의 데이터 저장 장치를 이용한 데이터 저장 및 조회방법
CN112799879B (zh) * 2021-01-15 2024-04-05 北京百度网讯科技有限公司 节点的故障处理方法、装置、设备和存储介质
CN113407558A (zh) * 2021-07-14 2021-09-17 广东粤信智能科技有限公司 一种基于区块链世界状态的交易数据更新方法、存储介质及系统
CN114357081A (zh) * 2022-01-05 2022-04-15 南昌航空大学 一种网状结构的区块链构造方法
KR20230117986A (ko) 2022-02-03 2023-08-10 최현일 블록체인 시스템에서 이벤트 프로세스별로 독립적인 블록체인을 구성하는 방법 및 시스템
CN115442045B (zh) * 2022-06-20 2023-06-02 上海市大数据中心 基于政务联盟链的政务数据访问控制方法及系统
CN116820352B (zh) * 2023-08-23 2023-11-10 湖南奔普智能科技有限公司 一种具有数据容灾功能的病区自助结算系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080104219A1 (en) * 2006-10-26 2008-05-01 Yuichi Kageyama Content Sharing System, Content Management Server, Client Station, Method for Managing Content, Method for Acquiring Content, and Program
JP2008158912A (ja) * 2006-12-26 2008-07-10 Funai Electric Co Ltd オーディオサーバ
JP2017204707A (ja) * 2016-05-10 2017-11-16 日本電信電話株式会社 コンテンツ流通システム、コンテンツ流通方法、コンテンツ生成装置及びコンテンツ生成プログラム
JP2017220710A (ja) * 2016-06-03 2017-12-14 日本電信電話株式会社 契約合意方法、合意検証方法、契約合意装置および合意検証装置
US20180121909A1 (en) * 2016-10-28 2018-05-03 International Business Machines Corporation System and method to dynamically setup a private sub-blockchain based on agility of transaction processing

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE522856C2 (sv) * 1999-01-29 2004-03-09 Axis Ab En datalagrings- och reduceringsmetod för digitala bilder, samt ett övervakningssystem som använder nämnda metod
KR20000036454A (ko) * 2000-03-14 2000-07-05 이중호 인터넷 검색사이트에서 조회횟수를 이용한 검색도메인표시방법
MX2018010059A (es) 2016-02-23 2019-01-21 Nchain Holdings Ltd Metodo implementado por cadena de bloques para el control y distribucion de contenido digital.
KR102382127B1 (ko) * 2017-04-05 2022-04-04 삼성에스디에스 주식회사 블록체인 기반의 데이터 처리 시스템 및 그 동작 방법
US11032083B2 (en) * 2018-11-06 2021-06-08 International Business Machines Corporation Atomic transactional processing

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080104219A1 (en) * 2006-10-26 2008-05-01 Yuichi Kageyama Content Sharing System, Content Management Server, Client Station, Method for Managing Content, Method for Acquiring Content, and Program
JP2008108096A (ja) * 2006-10-26 2008-05-08 Sony Corp コンテンツ共有システム、コンテンツ管理サーバ、クライアント機器、コンテンツ管理方法およびコンテンツ取得方法
JP2008158912A (ja) * 2006-12-26 2008-07-10 Funai Electric Co Ltd オーディオサーバ
JP2017204707A (ja) * 2016-05-10 2017-11-16 日本電信電話株式会社 コンテンツ流通システム、コンテンツ流通方法、コンテンツ生成装置及びコンテンツ生成プログラム
JP2017220710A (ja) * 2016-06-03 2017-12-14 日本電信電話株式会社 契約合意方法、合意検証方法、契約合意装置および合意検証装置
US20180121909A1 (en) * 2016-10-28 2018-05-03 International Business Machines Corporation System and method to dynamically setup a private sub-blockchain based on agility of transaction processing

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"コンテンツ流通へのブロックチェーン活用について", 映像情報メディア学会2018年年次大会講演予稿集, JPN6021001875, 15 August 2018 (2018-08-15), ISSN: 0004432513 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022552025A (ja) * 2020-06-24 2022-12-15 ビートダップ ソフトウェア インク. ブロックチェーンを使用してメディア再生を連続的に追跡するためのシステムおよび方法
JP7308493B2 (ja) 2020-06-24 2023-07-14 ビートダップ ソフトウェア インク. ブロックチェーンを使用してメディア再生を連続的に追跡するためのシステムおよび方法
WO2022149239A1 (ja) * 2021-01-07 2022-07-14 日本電信電話株式会社 情報処理装置、隣接ノード選択方法及びプログラム
JPWO2022149239A1 (ja) * 2021-01-07 2022-07-14

Also Published As

Publication number Publication date
JP6921921B2 (ja) 2021-08-18
US11200225B2 (en) 2021-12-14
US20200159717A1 (en) 2020-05-21
KR102181136B1 (ko) 2020-11-20
KR20200056579A (ko) 2020-05-25

Similar Documents

Publication Publication Date Title
JP6921921B2 (ja) 複数のノードの分散ネットワークで構成されたブロックチェーンシステムにおけるサブブロックチェーンの構成方法及びブロックチェーンシステムプログラム
WO2020063820A1 (zh) 资产交易方法、存储介质及计算机设备
WO2017170997A1 (ja) 階層型ネットワークシステム、これに用いられるノード及びプログラム
WO2022121538A1 (zh) 基于区块链的数据同步方法、系统及相关设备
US20210150558A1 (en) Method, apparatus, and electronic device for resource allocation based on blockchain
KR102201468B1 (ko) 블록체인 기반의 게임 제작을 위한 크라우드펀딩 시스템의 동작 방법 및 서비스 환경을 구현하기 위한 시스템
US11038685B1 (en) Correcting blockchain transactions with cryptocurrency type mistakes
JP7543313B2 (ja) 複数インプットトランザクション
CN114008969A (zh) 包含在区块链中的交易的延展性
KR102297425B1 (ko) 디지털 컨텐츠의 이용 권리 증서를 발행 수량 만큼 유통시키는 방법, 상기 방법을 수행하는 서버, 및 상기 방법을 실행하기 위하여 매체에 저장된 컴퓨터 프로그램
JP2021189638A (ja) 移行支援システム、移行支援方法、およびノード
CN113994628A (zh) 通过侧信道流式传输部分数据
JP5084746B2 (ja) ピアツーピアでのカルマおよび信頼を確立する方法ならびにその装置
US20240305687A1 (en) Layered network
KR102474863B1 (ko) 사용자 단말기, 디지털 컨텐츠의 이용 권리 증서를 유통시키는 방법, 및 상기 방법을 실행하기 위하여 매체에 저장된 컴퓨터 프로그램
KR102192695B1 (ko) 블록체인 기반의 광고 서비스 시스템의 동작 방법 및 서비스 환경을 구현하기 위한 시스템
US12034798B2 (en) Adapting connections of a layered network
US20230300191A1 (en) Connecting to the blockchain network
KR102524515B1 (ko) 블록체인 기반 분산 신뢰 서비스 제공 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210426

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210728

R150 Certificate of patent or registration of utility model

Ref document number: 6921921

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150