JP6838260B2 - ブロックチェーン制御方法 - Google Patents

ブロックチェーン制御方法 Download PDF

Info

Publication number
JP6838260B2
JP6838260B2 JP2018213408A JP2018213408A JP6838260B2 JP 6838260 B2 JP6838260 B2 JP 6838260B2 JP 2018213408 A JP2018213408 A JP 2018213408A JP 2018213408 A JP2018213408 A JP 2018213408A JP 6838260 B2 JP6838260 B2 JP 6838260B2
Authority
JP
Japan
Prior art keywords
block
transaction
blockchain
node
privileged 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.)
Active
Application number
JP2018213408A
Other languages
English (en)
Other versions
JP2020080498A (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.)
COWRY INC.
Original Assignee
COWRY INC.
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 COWRY INC. filed Critical COWRY INC.
Priority to JP2018213408A priority Critical patent/JP6838260B2/ja
Priority to PCT/JP2019/026473 priority patent/WO2020100342A1/ja
Publication of JP2020080498A publication Critical patent/JP2020080498A/ja
Application granted granted Critical
Publication of JP6838260B2 publication Critical patent/JP6838260B2/ja
Priority to US17/308,677 priority patent/US11575503B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • 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
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/3247Cryptographic 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 involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Description

本発明は、ブロックチェーン、特に、ブロックチェーンに基づく電子取引の真正性を確認するための技術、に関する。
ビットコイン(Bitcoin)やイーサリアム(Ethereum)などのさまざまな仮想通貨を支える仕組みがブロックチェーンである(特許文献1参照)。ブロックチェーンは、複数の通信ノードがピア・ツー・ピア技術にて共有する取引台帳である。
取引者となるユーザは、取引データを通信ネットワークにブロードキャストする。採掘者(マイナー)とよばれるユーザは、取引データと任意のナンス(nonce)をハッシュ関数の変数として投入し、所定の条件を満たすハッシュ値(以下、「適正ハッシュ値」とよぶ)を探す。複数の採掘者は、適正ハッシュ値を一刻も早く発見すべく競争する。適正ハッシュ値が見つかったとき、取引データはブロックチェーンに登録される。適正ハッシュ値を作ることができるナンスを見つけるのは難しいが、いったん見つけられたナンスに基づいてハッシュ値が適正か否かを確認するのは容易である。適正ハッシュ値の見つけにくさと確認しやすさがブロックチェーンの改ざんを難しくしている。
特開2018−160828号公報
ブロックチェーンは中央(サーバ)の管理に服さない分散型のシステムであるため、取引者は自分の素性(氏名など)を明かすことなく取引できる。その一方、ブロックチェーンは「中央」を持たないがゆえに、「分岐(フォーク)」とよばれる事象が発生することがある。具体的には、あるブロックについて採掘者Aと採掘者Bが2種類の適正ハッシュ値を見つけたときには、2つのブロックができてしまい、ブロックチェーンは2系統に分岐する。ブロックチェーンは一本道であることを前提とする。フォークは、通常、長いチェーンを生き残らせ、短いチェーンを無効化することで解決される。短いチェーンの無効化は一部の取引データの無効化を意味するため、フォークの発生可能性は取引の安定性を損ないかねない。
一般的なブロックチェーンにおいては、フォークの発生を抑制するため、適正ハッシュ値を見つける作業の難易度(以下、「採掘難易度」とよぶ)を高くしている。しかし、採掘難易度を高めるほど取引の円滑さが損なわれてしまう。
本発明は、上記課題認識に基づいて完成された発明であり、その主たる目的は、ブロックチェーンにおける取引の安定化と円滑化を両立させるための技術、を提供することにある。
なお、本発明の趣旨をより明確にするため、一般的なブロックチェーンの仕組みとその問題点については後に詳述する。
本発明のある態様におけるブロックチェーンシステムは、複数の通常ノードを含む取引ネットワークと、取引ネットワークに接続される特権ノードを含む。
特権ノードは、秘密鍵を保有する。また、通常ノードは、秘密鍵に対応する公開鍵をあらかじめ保有している。
通常ノードは、仮想通貨による商取引の結果を示す取引データの入力を受け付ける取引入力部と、取引データを取引ネットワークに送信する取引送信部と、取引履歴をブロックチェーンとして管理する取引管理部と、特権ノードからブロックを受信するブロック受信部と、を備える。
特権ノードは、通常ノードから取引データを受信する取引受信部と、秘密鍵に基づいて署名値を生成し、取引データと署名値を含むデータセットとしてブロックを生成するブロック生成部と、ブロックを取引ネットワークに送信するブロック送信部と、を備える。
通常ノードの取引管理部は、特権ノードから受信したブロックの署名値の真正性を公開鍵により確認できたことを条件として、ブロックチェーンに受信したブロックを連結する。
本発明のある態様におけるサーバ(特権ノード)は、複数の通常ノードを含む取引ネットワークと接続される。
通常ノードは、サーバの秘密鍵に対応する公開鍵をあらかじめ保有しており、かつ、仮想通貨による商取引の履歴をブロックチェーンとして管理する通信端末である。
このサーバは、通常ノードから、仮想通貨による商取引の結果を示す取引データを受信する取引受信部と、秘密鍵に基づいて署名値を生成し、取引データと署名値を含むデータセットとしてブロックを生成するブロック生成部と、ブロックを取引ネットワークに送信するブロック送信部と、を備える。
本発明によれば、ブロックチェーンにおける取引の安定化と円滑化を両立させやすくなる。
一般的なブロックチェーンシステムの概要図である。 一般的なブロックチェーンシステムにおける採掘(ブロック生成)の方法を説明するための模式図である。 ブロックチェーンシステムにおいてフォークが発生する仕組みを説明するための模式図である。 本実施形態におけるブロックチェーンシステムの概要図である。 本実施形態におけるブロックのデータ構造図である。 ブロックチェーンシステムの機能ブロック図である。 取引データの入力過程を示すフローチャートである。 ブロック生成の処理過程を示すフローチャートである。 通常ノードがブロックを受信したときの処理過程を示すフローチャートである。 特権ノードにおける秘密鍵の使用方法を説明するための模式図である。
一般的なブロックチェーンは、その運用を統括管理すべき中央集権的な特権ノード(サーバ)をもたない。不特定多数の採掘者が競争しながら適正ハッシュ値を探すことで、ブロックチェーンは延長されていく。適正ハッシュ値を探す作業は「採掘」とよばれる。以下、「採掘」のように新たなブロックを生成することを「ブロック生成」とよぶことにする。一般的なブロックチェーンでは、採掘競争に勝利した採掘者がブロック生成する。
本実施形態に示すブロックチェーンでは、その運用において中心的な役割を果たす特権ノード(サーバ)を設置する。不特定多数の採掘者ではなく、単一の特権ノードがブロック生成を実行する。
以下においては、図1,図2に関連して一般的なブロックチェーンの概要を説明する。図3に関連して、一般的なブロックチェーンにおいて「分岐(フォーク)」が生じるメカニズムとそれにともなって生じる弊害について指摘する。図4以降に関連して、本実施形態における新しいブロックチェーンシステムについて詳述する。
図1は、一般的なブロックチェーンシステム100の概要図である。
ブロックチェーンシステム100においては、多数の通常ノード110a、110b・・・110n(以下、「通常ノード110」とよぶ)と多数の採掘ノード108a、108b・・・108n(以下、「採掘ノード108」とよぶ)が取引ネットワーク102を介してピア・ツー・ピアにて接続される。取引ネットワーク102は、インターネットなどの公開型の通信ネットワークにおいて形成される。
通常ノード110は、取引の主体となるノードであり、個人ウォレットや仮想通貨の取引所などが想定される。採掘ノード108は、ブロック生成(採掘)を行うために採掘者により使用される通信端末である。通常ノード110は、採掘ノード108の機能を備えてもよい。
取引ネットワーク102にはブロックチェーン104が形成される。ブロックチェーン104のデータ実体は、通常ノード110および採掘ノード108それぞれにおいてローカルに保存されている。ブロックチェーン104が更新されるとき、更新情報が取引ネットワーク102にブロードキャストされる。通常ノード110および採掘ノード108は更新情報にしたがって各自が保存するブロックチェーン104を更新することにより、全体として同一のブロックチェーン104が同期共有される仕組みとなっている。
ブロックチェーン104は、多数のブロック106が一本の鎖として連なるデータ構造を有する。ブロック106は、1以上の取引データが記録されたデータ単位である。通常ノード110は、仮想通貨による取引(送金)を実行するごとに、取引内容を示すデータ(以下、「取引データ」とよぶ)を取引ネットワーク102にブロードキャストする。複数の採掘ノード108は、新規の取引データの集合体を対象として採掘(ブロック生成)を行う。採掘後、新規のブロック106は既存のブロックチェーン104に繋げられる(詳細後述)。すなわち、ブロックチェーン104とは、過去からの膨大な取引履歴が記録された長大な取引台帳であるといえる。ブロックチェーン104を参照することにより、いつでも過去の取引内容を確認できる。また、通常ノード110は、一時的なアカウントで取引を行うことができるため、取引の匿名性が保たれる。
ビットコインの場合、1つのブロック106に書き込むことができる取引データの総量には上限が設けられている(理由は後述)。
図2は、一般的なブロックチェーンシステム100における採掘(ブロック生成)の方法を説明するための模式図である。
ここでは、(n+1)番目のブロック106(以下、「ブロック106(n+1)」のように表記する)のブロック生成(採掘)の方法について説明する。ブロック106(n+1)の生成に際しては、1つ前に生成されたブロック106(n)に基づく適正ハッシュ値(n)が使用される。ブロック106(n+1)は、多数の通常ノード110からブロードキャストされた取引データを含む。以下、ブロック106に書き込まれる多種多様な取引データの集合体のことを「取引データセット」とよぶ。
採掘ノード108は、取引データセット(n+1)、ハッシュ値(n)およびナンス(n+1)を変数とする所定のハッシュ関数により、ハッシュ値(n+1)を計算する。実際には、ハッシュ関数にはこれ以外の変数も含まれるがここではブロック生成の原理の説明のため、上記3つの変数に基づくものとして説明する。
ナンス(n+1)は任意である。生成されたハッシュ値(n+1)が所定の条件を満たすとき、具体的には、所定の閾値W以下となるとき、そのハッシュ値(n+1)は適正ハッシュ値となる。適正ハッシュ値を見つけ出すために、採掘ノード108はさまざまなナンス(n+1)をハッシュ関数に投入しながら試行計算を繰り返す。適正ハッシュ値を見つけ出す採掘作業とは、適正なナンスを探す作業ともいえる。適正ハッシュ値を見つけた採掘ノード108は、ナンス(n+1)を含む変数群と計算結果としてのハッシュ値を取引ネットワーク102にブロードキャストする。他のノード(通常ノード110および採掘ノード108)は、計算結果が正しいことを確認できれば、適正なナンス(n+1)を含むブロック(n+1)をブロックチェーン104につなげる。適正ハッシュ値(n+1)は、次のブロック106(n+2)の一部となる。
ブロックチェーン104の取引データをあとから改ざんするとハッシュ値が変化してしまう。適正ハッシュ値を計算するためにはそれなりの計算コストがかかるため、取引データとそれにもとづく適正ハッシュ値をすべて書き換えることは困難である。このような仕組みにより、ブロックチェーン104の改ざんは実質的に不可能となっている。
図3は、ブロックチェーンシステム100においてフォークが発生する仕組みを説明するための模式図である。
上述したように、多数の採掘ノード108は、競争しながら適正ハッシュ値を探す。また、適正ハッシュ値は唯一無二ではないため、複数の採掘ノード108が複数の適正ハッシュ値を見つけ出すこともありうる。このとき、一本の鎖であるべきブロックチェーン104は、2系統に分岐することがある。
図3においては、ブロック106(2)に基づいて、2種類の適正ハッシュ値(H2A、H2B)が見つかった場合を示す。適正ハッシュ値(H2A)に基づいてブロック106(3A)が生成されるとともに(以下、「A系列」とよぶ)、適正ハッシュ値(H2B)に基づいてブロック106(3B)も生成されている(以下、「B系列」とよぶ)。
A系列においてブロック106(3A)がブロック生成され、続いてブロック106(4A)が生成されたとする。一方、B系列においては、ある採掘ノード108xがブロック106(3B)のあとブロック106(4B)、ブロック106(5B)、ブロック106(6B)をA系列よりも早いペースで生成し、これら4つのブロック106をまとめてブロードキャストしたとする。この結果、A系列とB系列が併存する。採掘ノード108xが圧倒的な計算能力を有しているときには、B系列のような「長いチェーン」が取引ネットワーク102に突然投げ込まれることがありうる。
ブロックチェーンシステム100は、「分岐(フォーク)が発生したときには、長いチェーンを正式採用し、短いチェーンを破棄する」というルールにて運用される。図3の場合、A系列にあるブロック106(3A)、ブロック106(3B)に書き込まれた取引データは後発的に無効化されてしまう。たとえば、ある取引者が仮想通貨を使って食事をし、その取引データをブロック106(3A)に書き込んだとする。ここでブロック106(3A)が後発的に無効化されてしまうと、仮想通貨の支払いはなされなかったことになり、取引秩序に混乱をきたしてしまう。いいかえれば、圧倒的な計算力を有する108xであれば、密かに「長いチェーン」を作ることで、「短いチェーン」の取引を強引に無効化できてしまう。
ビットコインのような人気の高い仮想通貨であれば、多数の採掘者を一人の採掘者が圧倒するのは難しいため、このような「長いチェーン」を後発的に投入することは難しい。人気通貨ではフォークは生じにくいが、フォークが生じる可能性はゼロではない。一方、人気の薄い仮想通貨の場合にはフォークが発生するリスクが高くなる。
ビットコインでは、採掘におおよそ10分程度を要するように採掘難易度を調整する仕組みが導入されている。たとえば、上述した閾値Wが小さいほど、適正ハッシュ値を見つけるのは難しくなる。この仕組みにより、1つの採掘ノード108だけが他の採掘ノード108を出し抜いて着々とブロック106を作り続けるのを難しくなっている。そのかわり、取引データを投入してから正式にブロックチェーンシステム100に登録されるまでには10分程度の待ち時間が発生することになる。
また、ビットコインでは、1つのブロック106に登録可能な取引データの総データ量(サイズ)に上限が設けられる。したがって、取引が活発なときには、取引データが今回のブロック106に登録してもらえず、次回以降のブロック生成まで待たされることもある。以下、1つのブロック106に登録可能な取引データ量の上限値を「取引上限値」とよぶ。
ブロックチェーンシステム100は中央集権型ではないため、設計上、取引上限値を変更するのが難しい。また、ハッシュ関数の性質上、取引上限値を大きくすると採掘難易度が高くなってしまう。採掘難易度が高くなりすぎると、通常の計算能力しか有しない一般的な採掘ノード108が採掘競争に勝てなくなってしまうというジレンマがある。
まとめると、フォークを発生させないためには、いいかえれば取引の安定性を確保するためにはある程度の採掘難易度を設定する必要がある。計算力に優れる一人の採掘者が他の採掘者を出し抜いてブロック生成しつづけるのを防ぐためである。しかし、採掘難易度を高くしすぎると取引の円滑性が損なわれてしまう。ビットコインのような人気のある仮想通貨の場合、取引(送金)を実行してもからブロックチェーンシステム100に正式登録(以下、「取引承認」とよぶ)されるまでに長時間待たされるという弊害が目立ち始めている。
図4は、本実施形態におけるブロックチェーンシステム200の概要図である。
本実施形態におけるブロックチェーンシステム200においては、多数の採掘ノード108ではなく、単一の特権ノード120がブロック生成を担当する。複数の通常ノード110は取引ネットワーク102を介してピア・ツー・ピアにて接続される。取引ネットワーク102は、インターネットなどの公開型の通信ネットワークにおいて形成される点は図1と同じである。
取引ネットワーク102にはブロックチェーン104が形成される。ブロックチェーン104のデータ実体は、通常ノード110および特権ノード120それぞれにおいてローカルに保存されている。
本実施形態においても、通常ノード110は、一時的なアカウントで取引を行うことができるため、取引の匿名性が保たれる。また、本実施形態においてもブロック106に取引上限値を設定してもよいが、取引上限値を設定することは必須ではない。以下、ブロック106に取引上限値は設定されないものとして説明する。
特権ノード120は、公開鍵と秘密鍵のペアを有する。公開鍵は取引ネットワーク102にブロードキャストされ、すべての通常ノード110が公開鍵を保有する。通常ノード110は、取引データを取引ネットワーク102にブロードキャストし、特権ノード120はローカルな記憶領域(以下、「トランザクションプール」とよぶ)に取引データを蓄積する。特権ノード120は、定期的に、たとえば、1秒に1回のペースでトランザクションプールから取引データを読み出し、これらの取引データを含むブロック106を生成する。ブロック生成に際し、特権ノード120はブロック106に含まれるデータの一部を秘密鍵により暗号化し、署名値を生成する(詳細後述)。
特権ノード120は、署名値を含むブロック106を取引ネットワーク102にブロードキャストする。通常ノード110は、ブロック106の署名値を公開鍵によって復号することにより、署名値(ブロック106)の真正性を確認する。真正性を確認できたとき、通常ノード110はブロックチェーン104に新たなブロック106を追加する(取引承認)。
本実施形態においては、複数の採掘ノード108が採掘競争(適正ハッシュ値探し)をするのではなく、中央集権的な特権ノード120のみがブロック生成を行う。特権ノード120が署名値を生成するだけなのでブロック生成にともなう処理コストが低く、1秒に1回程度の高頻度にてブロック106を生成できる。
図5は、本実施形態におけるブロック106のデータ構造図である。
ブロック106(n)の署名値(n)は、取引データセット(n)の所定の一部、たとえば、101ビット目から105ビット目までの5ビット分のデータを秘密鍵で暗号化したデータである。特権ノード120と通常ノード110は、取引データのどの部分から署名値を生成するかについてあらかじめ情報共有(合意)しておく。以下、署名値生成のための対象となるデータを「原データ」とよぶ。通常ノード110は、ブロック106(n)の取引データセット(n)から原データを取得するとともに署名値(n)も取得する。通常ノード110は、署名値(n)を公開鍵により復号し、復号後の署名値(n)が原データと一致したとき、ブロック106(n)は特権ノード120によりブロック生成された真正のブロック106であると判定する。署名値の確認が取引承認となる。
図6は、ブロックチェーンシステム200の機能ブロック図である。
上述したように、ブロックチェーンシステム200は、複数の通常ノード110および特権ノード120を含む。
(通常ノード110)
通常ノード110の各構成要素は、CPU(Central Processing Unit)および各種コプロセッサなどの演算器、メモリやストレージといった記憶装置、それらを連結する有線または無線の通信線を含むハードウェアと、記憶装置に格納され、演算器に処理命令を供給するソフトウェアによって実現される。コンピュータプログラムは、デバイスドライバ、オペレーティングシステム、それらの上位層に位置する各種アプリケーションプログラム、また、これらのプログラムに共通機能を提供するライブラリによって構成されてもよい。以下に説明する各ブロックは、ハードウェア単位の構成ではなく、機能単位のブロックを示している。
特権ノード120についても同様である。
通常ノード110は、ユーザインタフェース処理部130、データ処理部132、通信部134およびデータ格納部136を含む。
通信部134は、取引ネットワーク102を対象として通信処理を担当する。ユーザインタフェース処理部130は、ユーザ(取引者)からの操作を受け付けるほか、画像表示や音声出力など、ユーザインタフェースに関する処理を担当する。データ格納部136は各種データを格納する。データ処理部132は、通信部134、ユーザインタフェース処理部130により取得されたデータおよびデータ格納部136に格納されているデータに基づいて各種処理を実行する。データ処理部132は、ユーザインタフェース処理部130、通信部134およびデータ格納部136のインタフェースとしても機能する。
通信部134は、取引送信部146とブロック受信部148を含む。
取引送信部146は、取引データ(送金記録)を取引ネットワーク102にブロードキャストする。ブロック受信部148は、特権ノード120が生成するブロック106を受信する。
ユーザインタフェース処理部130は、入力部138と出力部140を含む。
入力部138は、ユーザからの各種入力を受け付ける。出力部140は、ユーザに対して各種情報を出力する。入力部138は、取引入力部142を含む。取引入力部142は、仮想通貨による取引が行われたとき、ユーザから取引内容の入力を受け付ける。
データ処理部132は、取引管理部144を含む。取引管理部144は、ブロック106の真正性を確認し、ブロックチェーン104を更新する。
データ格納部136は、ブロックチェーン104および公開鍵を格納する。
(特権ノード120)
特権ノード120は、通信部150、データ処理部152およびデータ格納部154を含む。
通信部150は、取引ネットワーク102を対象とした通信処理を担当する。データ格納部154は各種データを格納する。データ処理部152は、通信部150により取得されたデータおよびデータ格納部154に格納されているデータに基づいて各種処理を実行する。データ処理部152は、通信部150およびデータ格納部154のインタフェースとしても機能する。
データ処理部152は、ブロック生成部160を含む。ブロック生成部160は上述の方法により、ブロック生成を行う。
通信部150は、取引受信部156とブロック送信部158を含む。
取引受信部156は、取引ネットワーク102から取引データを受信し、データ格納部154の記憶領域であるトランザクションプールに取引データを蓄積する。ブロック送信部158は、生成されたブロック106を取引ネットワーク102にブロードキャストする。
データ格納部154は、ブロックチェーン104および秘密鍵を格納する。また、データ格納部154の一部にはトランザクションプールが形成され、トランザクションプールには取引データが蓄積される。
図7は、取引データの入力過程を示すフローチャートである。
図7に示す処理は、通常ノード110において、ユーザが仮想通貨による取引をしたときに実行される。取引入力部142は、まず、ユーザからの取引データの入力を受け付ける(S10)。取引送信部146は、取引データを直ちに取引ネットワーク102にブロードキャストする(S12)。
特権ノード120の取引受信部156は、多数の通常ノード110から取引データを取得し、トランザクションプールに蓄積する。一方、取引データをブロードキャストした通常ノード110は、取引データを含むブロック106の生成を待つ。
図8は、ブロック生成の処理過程を示すフローチャートである。
本実施形態においては、1秒に1回の頻度にて、特権ノード120のブロック生成部160はトランザクションプール(データ格納部154)から取引データを読み出す。図8に示す処理は、読み出しタイミング(ブロック生成のタイミング)ごとに実行される。
ブロック生成部160は、トランザクションプールに蓄積されている取引データの総データ量が所定の閾値T以上であれば(S20のY)、取引データセットの一部から原データを抽出し、これを秘密鍵により暗号化することで署名値を生成する(S22)。ブロック生成部160は、署名値および取引データセットを含むブロック106を生成する(S24)。ブロック送信部158は、署名値を含むブロック106を取引ネットワーク102にブロードキャストする(S26)。
取引データの総データ量が閾値T未満のときには(S20のN)、S22以降の処理はスキップされる。ブロック生成部160は、定期的にブロック106を生成するが、取引データがトランザクションプールにあまり溜まっていないときには次回の読み出しタイミングまで待ってからブロック106を生成する。このような処理方法により、取引が閑散としているときに中身の少ないブロック106(以下、「スモール・ブロック」とよぶ)が生成されるのを防いでいる。
図9は、通常ノード110がブロックを受信したときの処理過程を示すフローチャートである。
通常ノード110のブロック受信部148は、特権ノード120がブロードキャストしたブロック106を受信する。取引管理部144は、ブロック106の署名値を公開鍵で復号し、ブロック106に含まれる原データと比較することにより、ブロック106が真正か否かを判定する(S30)。真正であれば(S30のY)、取引管理部144はブロックチェーン104にブロック106を追加することにより取引承認する(S32)。真正でなければ(S30のN)、S32の処理はスキップされる。このときには、通常ノード110の通信部134は、不正なブロック106が検出されたことを特権ノード120に警告してもよい。
すべての通常ノード110は、受信したブロック106に基づいてブロックチェーン104を更新する。
図10は、特権ノード120における秘密鍵172の使用方法を説明するための模式図である。
ブロックチェーンシステム200の運用の前提は、特権ノード120のみが秘密鍵172を保持することである。秘密鍵172が他のノードに不正取得されると偽物のブロック106が生成されてしまう可能性がある。
秘密鍵の秘匿性を守るため、特権ノード120は、データベースA、B、Cとローカル接続される。秘密鍵172は、まず、暗号鍵174により暗号化される。暗号化された秘密鍵172は、更に、第1部分鍵172aおよび第2部分鍵172bに分割される。データベースAは第1部分鍵172aを保存する。データベースBは第2部分鍵172bを保存する。暗号鍵174はデータベースCに保存される。通常時においては、特権ノード120は秘密鍵172も暗号鍵174も保存していない。このため、通常時においては、特権ノード120への不正アクセスが発生しても秘密鍵172も暗号鍵174も漏洩することはない。
トランザクションプールからの読み出しのタイミング、すなわち、ブロック生成のタイミングに至るとき、特権ノード120のブロック生成部160は、データベースAから第1部分鍵172a、データベースBから第2部分鍵172bを読み出し、内蔵の揮発性メモリ170にロードする。ブロック生成部160は、第1部分鍵172aと第2部分鍵172bをつなげることにより、揮発性メモリ170上に秘密鍵172を生成する。この段階では、秘密鍵172はまだ暗号化されている。
続いて、ブロック生成部160は、データベースCから暗号鍵174を読み出し、揮発性メモリ170に展開された秘密鍵172を暗号鍵174により復号する。ブロック生成部160は、復号された秘密鍵172に基づいて署名値を生成する。ブロック生成後、特権ノード120のブロック生成部160は揮発性メモリ170から秘密鍵172を削除する。ブロック生成のための一瞬のタイミングにおいてしか、特権ノード120は秘密鍵172を保有しない構成とすることにより、特権ノード120から秘密鍵172が漏洩するリスクを低減させている。
データベースA、B、Cはいずれも特権ノード120にローカル接続されており、インターネット等の公開型通信回線とは接続されていない。このため、これらのデータベースへの不正アクセスは生じにくくなっている。また、データベースA、Bは秘密鍵172の一部しか保存しないため、一方のデータベースに不正アクセスが発生しても秘密鍵172全体が漏洩することはない。更に、第1部分鍵172aと第2部分鍵172bが漏洩したとしても、暗号鍵174がなければ秘密鍵172を使用できない。
データベースCは、複数の暗号鍵を保有してもよい。たとえば、第1部分鍵172aを復号するための暗号鍵Aと第2部分鍵172bを復号するための暗号鍵Bをそれぞれ用意してもよい。また、ブロック生成部160は複数の暗号鍵を定期的に変更してもよい。
特権ノード120は、取引ネットワーク102とは非公開型の通信回線により接続されてもよい。具体的には、VPN(Virtual Private Network)等の秘匿回線により接続されてもよいし、専用の有線回線により接続されてもよいし、取引ネットワーク102側からの特権ノード120へのアクセスを制限するためのファイアウォールを設けてもよい。このような制御方法によれば、特権ノード120およびデータベースA、B、Cへの不正アクセスをいっそう確実に防止しやすくなる。
以上、実施形態に基づいてブロックチェーンシステム200を説明した。
本実施形態によれば、ブロック106を生成するのは唯一の特権ノード120であるため、分岐(フォーク)が発生することはない。また、秘密鍵で署名値を作ることでブロック106を生成する方式であるためブロック生成にともなう計算コストが一般的なブロックチェーン104に比べると格段に小さい。ビットコインでは、通常、1つのブロック106を生成するのに10分程度を要する。本実施形態におけるブロックチェーンシステム200によれば、1秒に1回程度の高頻度にてブロック106を生成できるため、実質的な即時決済が実現される。また、高頻度にてブロック106を生成できるため、1つのブロック106に含まれる取引データの総データ量が肥大化するのを防ぎやすい。
一般的なブロックチェーン104においては、1つのブロック106を生成するための時間を約10分とするため採掘難易度を適宜コントロールしている。統計的にブロック生成の頻度が決まるため、10分以上待たされることもありうる。これに対して、本実施形態においては、特権ノード120により定期的にブロック生成するため、取引者は取引データの入力からブロック生成(取引の認証)までの時間をより確実に見積もることができる。また、取引上限値が設定されないため取引承認まで待たされることもない。
一般的なブロックチェーン104と同様、通常ノード110は一時的なアカウントにて仮想通貨取引を実行できる。取引者は、特権ノード120等に自身の素性を明かす必要はない。したがって、ブロックチェーン104本来の魅力である「匿名性」は、本実施形態におけるブロックチェーンシステム200においても維持できる。
本実施形態におけるブロックチェーンシステム200は、採掘難易度により取引安全性を高めるという考え方ではない。したがって、取引上限値を設けなくてもブロック生成のパフォーマンスが落ちることはない。取引が活発な時期(繁忙期)であっても、特権ノード120は通常時と同じペースでブロック106を生成できる。取引が不活発な時期(閑散期)には1つのブロック106に含まれる取引データの量が小さくなり、繁忙期には1つのブロック106に含まれる取引データの量が多くなる。短期間に大量の取引が発生したときには、1つのブロック106に多くの取引データをまとめて記録すればよい。ブロック106に登録可能な取引データの総量が可変であるため、取引の活発度によってブロック生成のペースが影響されることがない。
一般的なブロックチェーン104における採掘競争の場合、競争に負ける大多数の採掘ノード108の計算は無駄になる。採掘には電気代等の現実的なコストがかかっている。本実施形態においては、特権ノード120だけがブロック生成をするため、採掘競争にともなう無駄なコストをなくすことができる。
また、本実施形態においては、トランザクションプールに蓄積している取引データの総データ量が閾値T以下のときには、ブロック生成はスキップされる(図8参照)。このため、スモール・ブロックの生成を抑制できる。閾値Tは数メガバイトであってもよいし、ゼロであってもよい。閾値Tをゼロとすれば取引データをまったく含まない無駄なブロック106が生成されるのを防ぐことができる。一般的なブロックチェーン104にはスモール・ブロックの生成を抑止する仕組みがない。スモール・ブロックは無駄な送金遅延を引き起こすだけでなく、取引ネットワーク102に対しても不必要な負荷をかけてしまう。本実施形態によれば、取引円滑性と取引活発度の双方に鑑みてスモール・ブロックの生成を避けつつ、合理的なペースにてブロック106を生成できる。
ブロック106の生成だけでなく、各通常ノード110における署名値の確認(取引承認)にも若干のコストがかかる。したがって、すべての通常ノード110においてブロックチェーン104(ブロック106)を同期させるためにはある程度の時間がかかる。この点からも、生成側(特権ノード120)だけでなく、受け入れ側(通常ノード110)にとってもスモール・ブロックの生成を抑制することが好ましい。
特権ノード120は、図10に関連して説明したように、秘密鍵172を分離と暗号化により不正アクセスから守る。特に、ブロック生成のときだけ秘密鍵172を揮発性メモリ170に展開し、ブロック生成を完了したあとに揮発性メモリ170から秘密鍵172を消去することで秘密鍵172の漏洩をいっそう防ぎやすくなる。
なお、本発明は上記実施形態や変形例に限定されるものではなく、要旨を逸脱しない範囲で構成要素を変形して具体化することができる。上記実施形態や変形例に開示されている複数の構成要素を適宜組み合わせることにより種々の発明を形成してもよい。また、上記実施形態や変形例に示される全構成要素からいくつかの構成要素を削除してもよい。
[変形例]
本実施形態においては、ブロック106に取引上限値を設定しないとして説明した。変形例として、数メガバイトから1ギガバイト程度の取引上限値を設定してもよい。ビットコインにおけるブロック生成(採掘)を10分に1回、本実施形態におけるブロック生成を1秒に1回と想定するならば、ブロックチェーンシステム200はビットコインの600倍の速度にてブロック106を生成できることになる。このため、仮に、比較的小さな取引上限値を設定したとしても、ブロック生成と取引承認の待ち時間を大幅に短縮できる。
本実施形態においては、取引データを特権ノード120のトランザクションプールに蓄積し、特権ノード120は定期的にトランザクションプールから取引データを読み出してブロック生成するとして説明した。変形例として、特権ノード120はいずれかの通常ノード110から取引データを受信するごとにブロック106を生成してもよい。あるいは、特権ノード120はトランザクションプールに蓄積される取引データの総データ量が所定の閾値K以上となるときにブロック生成をするとしてもよい。このような制御方法によれば、取引の活発度に応じてブロック生成のタイミングを自動的に調整できる。繁忙期においては高頻度でブロック生成され、閑散期には低頻度でブロック生成されることになる。また、1つのブロック106に含まれる取引データの総データ量のばらつきを抑制しやすくなる。
本実施形態においては、特権ノード120は1つのブロック106に1つの署名値を付加するとして説明した。変形例として、特権ノード120は1つのブロック106に複数の署名値を付加してもよい。たとえば、特権ノード120のブロック生成部160は、101バイト目から105バイト目までの第1の原データに基づいて第1の署名値を生成し、1001バイト目から1005バイト目までの第2の原データに基づいて第2の署名値を生成してもよい。このように、取引データの総データ量が多いときほど多くの署名値を含ませてもよい。通常ノード110は、複数の署名値すべてについて真正性が確認されたことを条件として取引承認する。このような制御方法によれば、ブロック106の真正性をいっそう確実に証明しやすくなる。
特権ノード120のデータ処理部152は、鍵変更部(図示せず)と鍵送信部(図示せず)を備えてもよい。鍵変更部は、秘密鍵および公開鍵を定期的に変更してもよい。また、鍵変更部は、暗号鍵174を定期的に変更してもよい。鍵変更部は、不正アクセスまたは不正の疑いのあるアクセスが検出されたときに秘密鍵等を変更してもよい。通常ノード110は、署名値に基づいて真正性が確認できないブロック106が検出されたときには、特権ノード120に不正ブロックの存在を通知してもよい。このとき、特権ノード120の鍵変更部は、秘密鍵等を変更してもよい。また、特権ノード120の鍵変更部は、特権ノード120またはデータベースA、B、Cへの外部からのアクセスがあったときにも秘密鍵等を変更してもよい。特権ノード120は、あらかじめ複数種類の秘密鍵/公開鍵を用意しておき、これらの変更条件が成立したとき、秘密鍵/公開鍵のペアを変更してもよい。変更に際しては、特権ノード120の鍵送信部は、新規採用の公開鍵を取引ネットワーク102にブロードキャストすればよい。
図10に示したデータベースA、B、Cの全部または一部は特権ノード120が内蔵するハードディスク等の不揮発性メモリであってもよい。また、各データベースは、特権ノード120の不揮発性メモリにおいてパーティションを分けることで形成されてもよい。
特権ノード120は、ブロック生成のタイミングにおいて、取引ネットワーク102との接続を遮断してもよい。特権ノード120は、取引ネットワーク102との接続を遮断後、図10に関連して説明した処理過程により、トランザクションプールに溜まっている取引データからブロックを生成する。ブロック生成後、揮発性メモリ170から秘密鍵172等を消去する。秘密鍵172の消去後、取引ネットワーク102と再接続し、ブロック106をブロードキャストする。このような制御方法によれば、特権ノード120が秘密鍵172を使用するときには完全にオフラインにできるため、特権ノード120から秘密鍵172が漏洩するリスクをいっそう低減できる。
本実施形態においては、取引データセットの一部を原データとし、この原データから署名値を作るとして説明した。変形例として、特権ノード120は任意の原データを生成し、この原データから署名値を生成してもよい。ブロック106は、特権ノード120が指定する原データおよび署名値を含んでいればよい。
本実施形態においては、特権ノード120が生成したブロック106は、ブロックチェーン104につなげられるとして説明した。本実施形態の場合、必ずしも「チェーン」である必要はない。図2に示したような適正ハッシュ値によるつながりを作る必要がないためである。たとえば、特権ノード120は、ブロック106に生成日時(日時情報)を記録した上で取引ネットワーク102にブロック106をブロードキャストし、通常ノード110は署名値の真正性を確認した上で、このブロック106を正式に受け入れるか否かを判定してもよい。ブロック106には日時情報が含まれているため、複数のブロック106の日時情報を参照することにより、取引の順番を後から確認できる。
本実施形態においては、仮想通貨による取引を前提として説明した。ブロック106に登録される取引データは仮想通貨取引以外のものであってもよい。たとえば、取引者Aが取引者Bにモノ(有体物または無体物)を渡したとき、その取引データをブロック106に登録してもよい。この場合には、ブロックチェーン104により、取引者Aから取引者Bにモノの所有権が移転していることを確認できる。このように、ブロックチェーンシステム200は、仮想通貨(金銭等価物)に限らず、モノや情報の所有権の管理に利用することもできる。
100 ブロックチェーンシステム、102 取引ネットワーク、104 ブロックチェーン、106 ブロック、108 採掘ノード、110 通常ノード、120 特権ノード、130 ユーザインタフェース処理部、132 データ処理部、134 通信部、136 データ格納部、138 入力部、140 出力部、142 取引入力部、144 取引管理部、146 取引送信部、148 ブロック受信部、150 通信部、152 データ処理部、154 データ格納部、156 取引受信部、158 ブロック送信部、160 ブロック生成部、170 揮発性メモリ、172 秘密鍵、172a 第1部分鍵、172b 第2部分鍵、174 暗号鍵、200 ブロックチェーンシステム

Claims (8)

  1. 複数の通常ノードそれぞれが、仮想通貨による商取引の結果を示す取引データを取引ネットワークに送信するステップと、
    トランザクションプールが、前記取引ネットワークに送信された取引データを蓄積するステップと、
    特権ノードが、前記トランザクションプールから1以上の取引データを取得するステップと、
    前記特権ノードが、前記ブロックに含まれる情報のうち、あらかじめ定められた位置にある所定のサイズのデータを対象として秘密鍵を用いて署名値を生成するステップと、
    前記特権ノードが、前記トランザクションプールから取得した取引データおよび前記生成した署名値を含むブロックを生成するステップと、
    前記特権ノードが、生成したブロックを前記取引ネットワークにブロードキャストするステップと、
    前記複数の通常ノードそれぞれが、ブロードキャストされたブロックを取得するステップと、
    前記複数の通常ノードそれぞれが、前記秘密鍵に対応する公開鍵によりブロックに含まれる署名値の真正性を確認するステップと、
    前記複数の通常ノードそれぞれが、署名値の真正性を確認できたことを条件として、個別に保有しているブロックチェーンに新たに取得したブロックをつなげるステップと、を実行することにより、複数の通常ノードそれぞれが同一内容の取引履歴を示すブロックチェーンを分散管理することを特徴とするブロックチェーン制御方法。
  2. 前記特権ノードは、前記トランザクションプールに蓄積された取引データを定期的に読み出し、読み出した取引データのデータサイズに応じた可変サイズのブロックを生成することを特徴とする請求項1に記載のブロックチェーン制御方法。
  3. 前記特権ノードは、ブロックの生成に用いる取引データのデータサイズに所定の閾値を設定し、前記トランザクションプールから読み出した取引データのデータサイズが前記所定の閾値以下のときにはブロックの生成をスキップすることを特徴とする請求項2に記載のブロックチェーン制御方法。
  4. 前記特権ノードは、ブロック生成のタイミングを取引の活発度に応じて調整することを特徴とする請求項1に記載のブロックチェーン制御方法。
  5. 前記秘密鍵は、暗号化された状態で不揮発性メモリに保存されており、
    前記特権ノードは、前記不揮発性メモリから前記秘密鍵を揮発性メモリに読み出して復号した上で署名値を生成し、前記ブロックの生成後に前記秘密鍵を前記揮発性メモリから削除することを特徴とする請求項1から4のいずれかに記載のブロックチェーン制御方法。
  6. 前記秘密鍵は、複数パーツに分割された状態で複数の不揮発性メモリに分けて保存されており、
    前記特権ノードは、前記複数の不揮発性メモリそれぞれから前記秘密鍵のパーツを揮発性メモリに読み出して前記秘密鍵を合成した上で署名値を生成し、前記ブロックの生成後に前記秘密鍵を前記揮発性メモリから削除することを特徴とする請求項1から4のいずれかに記載のブロックチェーン制御方法。
  7. 前記特権ノードが、所定の変更条件が成立したとき、前記秘密鍵を変更するステップと、
    前記特権ノードが、変更後の秘密鍵に対応する公開鍵を前記取引ネットワークにブロードキャストするステップと、を更に備えることを特徴とする請求項1から6のいずれかに記載のブロックチェーン制御方法。
  8. 前記秘密鍵は、不揮発性メモリに保存されており、
    前記特権ノードは、前記不揮発性メモリに対する前記特権ノード以外の通信端末からのアクセスを検出したとき、前記秘密鍵を変更することを特徴とする請求項7に記載のブロックチェーン制御方法。
JP2018213408A 2018-11-14 2018-11-14 ブロックチェーン制御方法 Active JP6838260B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018213408A JP6838260B2 (ja) 2018-11-14 2018-11-14 ブロックチェーン制御方法
PCT/JP2019/026473 WO2020100342A1 (ja) 2018-11-14 2019-07-03 ブロックチェーンシステムおよびサーバ
US17/308,677 US11575503B2 (en) 2018-11-14 2021-05-05 Blockchain control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018213408A JP6838260B2 (ja) 2018-11-14 2018-11-14 ブロックチェーン制御方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019209556A Division JP2020088864A (ja) 2019-11-20 2019-11-20 ブロックチェーンシステムおよびサーバ

Publications (2)

Publication Number Publication Date
JP2020080498A JP2020080498A (ja) 2020-05-28
JP6838260B2 true JP6838260B2 (ja) 2021-03-03

Family

ID=70730944

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018213408A Active JP6838260B2 (ja) 2018-11-14 2018-11-14 ブロックチェーン制御方法

Country Status (3)

Country Link
US (1) US11575503B2 (ja)
JP (1) JP6838260B2 (ja)
WO (1) WO2020100342A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11405186B2 (en) * 2018-12-10 2022-08-02 Algorand, Inc. Using virtual blockchain protocols to implement a fair electronic exchange
CN110879687B (zh) * 2019-10-18 2021-03-16 蚂蚁区块链科技(上海)有限公司 一种基于磁盘存储的数据读取方法、装置及设备
JP2022059521A (ja) 2020-10-01 2022-04-13 富士フイルムビジネスイノベーション株式会社 半導体装置
CN112288433B (zh) * 2020-11-17 2022-09-20 国网辽宁省电力有限公司信息通信分公司 一种支持边端协同的区块链共识任务处理系统及方法
CN117178282A (zh) * 2021-04-23 2023-12-05 松下电器(美国)知识产权公司 信息处理方法、信息处理装置、以及程序

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6601172B1 (en) * 1997-12-31 2003-07-29 Philips Electronics North America Corp. Transmitting revisions with digital signatures
JP3239842B2 (ja) * 1998-05-08 2001-12-17 日本電気株式会社 ソフトウェアの不正利用防止システム
JP4266096B2 (ja) * 2002-03-26 2009-05-20 株式会社日立製作所 ファイル保管システムとnasサーバ
US20070239615A1 (en) 2004-04-23 2007-10-11 Natsume Matsuzaki Personal Information Management Device, Distributed Key Storage Device, and Personal Information Management System
JP4663292B2 (ja) * 2004-11-01 2011-04-06 株式会社日立製作所 電子文書保存管理システム、電子文書保存管理方法、および電子文書保存管理プログラム
JP2007025829A (ja) * 2005-07-13 2007-02-01 Masachika Sasaki 電子商取引における匿名ユーザ信頼情報の作成・表示システム及び方法
JP2007082043A (ja) * 2005-09-16 2007-03-29 Hitachi Ltd タイムスタンプサービスシステム
JP2010004379A (ja) * 2008-06-20 2010-01-07 Panasonic Corp 鍵管理方法及び鍵管理装置
US20120201379A1 (en) * 2011-02-04 2012-08-09 Motorola Solutions, Inc. Method and apparatus for protecting security parameters used by a security module
US9100174B2 (en) * 2012-08-31 2015-08-04 Freescale Semiconductor, Inc. Secure provisioning in an untrusted environment
US9894056B2 (en) * 2013-01-17 2018-02-13 Nippon Telegraph And Telephone Corporation Segmented secret-key storage system, segment storage apparatus, segmented secret-key storage method
FR3030817B1 (fr) * 2014-12-22 2017-01-13 Oberthur Technologies Procede d'authentification d'un utilisateur, module securise, appareil electronique et systeme associes
JP6628188B2 (ja) * 2016-05-10 2020-01-08 日本電信電話株式会社 決済システム、決済方法、トランザクション生成装置及びトランザクション生成プログラム
US9747586B1 (en) * 2016-06-28 2017-08-29 Cpn Gold B.V. System and method for issuance of electronic currency substantiated by a reserve of assets
US10554746B2 (en) * 2016-11-14 2020-02-04 International Business Machines Corporation Decentralized immutable storage blockchain configuration
US20210312558A1 (en) * 2016-11-23 2021-10-07 State Farm Mutual Automobile Insurance Company Systems and methods for maintaining a distributed ledger of transactions pertaining to one or more smart contracts
EP3563553B1 (en) * 2017-02-24 2022-02-16 NEC Corporation Method for signing a new block in a decentralized blockchain consensus network
JP6942985B2 (ja) 2017-03-23 2021-09-29 沖電気工業株式会社 送金元装置、送金先装置、送金方法、受金方法、プログラムおよび送金システム
CN110582793B (zh) * 2017-04-18 2024-04-19 电信区块链联盟软件公司 分布式交易共识网络上数字财产交易的匿名性和可追踪性
WO2018226868A1 (en) * 2017-06-06 2018-12-13 Visa International Service Association Linked multiple blockchain system
US20190123580A1 (en) * 2017-10-23 2019-04-25 Sigora International Inc. Management of a power-distribution system
WO2019089654A1 (en) * 2017-10-30 2019-05-09 Pricewaterhousecoopers Llp Implementation of continuous real-time validation of distributed data storage systems
US11606190B2 (en) * 2017-12-26 2023-03-14 Akamai Technologies, Inc. High performance distributed system of record with cryptographic service support
WO2019142049A1 (en) * 2018-01-17 2019-07-25 Geeq Corporation Blockchain methods, nodes, systems and products
WO2019185148A1 (en) * 2018-03-29 2019-10-03 Telefonaktiebolaget Lm Ericsson (Publ) Technique for computing a block in a blockchain network
CN108647968A (zh) * 2018-05-10 2018-10-12 阿里巴巴集团控股有限公司 一种区块链数据处理方法、装置、处理设备及系统
US11568402B2 (en) * 2018-06-06 2023-01-31 International Business Machines Corporation Decentralized out-of-band accelerated blockchain transaction processing
US10790976B1 (en) * 2018-08-01 2020-09-29 Bloomio Ag System and method of blockchain wallet recovery
US11736271B2 (en) * 2018-09-21 2023-08-22 Nec Corporation Method for signing a new block in a decentralized blockchain consensus network

Also Published As

Publication number Publication date
US11575503B2 (en) 2023-02-07
WO2020100342A1 (ja) 2020-05-22
US20210258142A1 (en) 2021-08-19
JP2020080498A (ja) 2020-05-28

Similar Documents

Publication Publication Date Title
JP6838260B2 (ja) ブロックチェーン制御方法
Saad et al. Exploring the attack surface of blockchain: A systematic overview
Lokhava et al. Fast and secure global payments with stellar
JP7194127B2 (ja) ネットワークの障害時におけるオフ・ブロックチェーン・チャネルに関して生じるセキュリティ関連脆弱性に対処するためのシステム及び方法
Baird et al. Hedera: A public hashgraph network & governing council
CN109219940B (zh) 私有节点以及私有节点中的处理方法
US20200067697A1 (en) Method for operating a blockchain
CN109313763B (zh) 层次型网络系统以及用于层次型网络系统的节点
CN107171785A (zh) 一种基于区块链技术的数字版权管理方法
JP2020108044A (ja) トークン管理システムおよびトークン管理方法
JP2020528689A (ja) ブロックチェーンで実施されるイベントロック暗号化の方法及びシステム
CN110537355A (zh) 基于安全区块链的共识
US11496327B1 (en) Secure and trustworthy bridge for transferring assets across different networks
König et al. The Risks of the Blockchain A Review on Current Vulnerabilities and Attacks.
KR101923943B1 (ko) 보안이 강화된 암호화폐 송금 시스템 및 방법
US20230018175A1 (en) Secure and trustworthy bridge for transferring assets across networks with different data architecture
US20220067125A1 (en) Method for distributing certificate of right to use digital content, and computer program stored in medium in order to carry out method
Hilary Blockchain and other Distributed Ledger Technologies, an advanced primer
Singh et al. A comprehensive study of security aspects in blockchain
KR20220133221A (ko) 분산 원장 네트워크에서 콘텐츠의 안전한 피어 투 피어 전송을 위한 시스템 및 방법
KR102003731B1 (ko) 가상머신을 이용한 암호화폐 보호 시스템 및 방법
CN110688651A (zh) 基于fpga实现状态更新的方法及装置
JP2020088864A (ja) ブロックチェーンシステムおよびサーバ
JP6909452B2 (ja) 情報処理方法、情報処理装置、プログラムならびに情報処理システム
KR102003733B1 (ko) 망분리를 이용한 암호화폐 보호 시스템

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190111

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190121

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190624

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191120

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20191120

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20191202

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20191203

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20200306

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20200310

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20200707

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20201006

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20201104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201116

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20201201

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20210112

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20210112

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210121

R150 Certificate of patent or registration of utility model

Ref document number: 6838260

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250