JP7044364B2 - ノード、合意形成システム及び当選者決定方法 - Google Patents
ノード、合意形成システム及び当選者決定方法 Download PDFInfo
- Publication number
- JP7044364B2 JP7044364B2 JP2018114659A JP2018114659A JP7044364B2 JP 7044364 B2 JP7044364 B2 JP 7044364B2 JP 2018114659 A JP2018114659 A JP 2018114659A JP 2018114659 A JP2018114659 A JP 2018114659A JP 7044364 B2 JP7044364 B2 JP 7044364B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- block
- encryption
- verifier
- user
- 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
Links
Images
Description
集中型の場合、利用者の識別子(Identifier、以下、ID)の一意性、IDに対応するIdentityの実在性を保証する機能(以下、IdP)と、利用者間のトランザクションデータの正当性を検証する機能と、それらトランザクションデータを蓄積する機能を1箇所(集中サーバ)に配備する。全利用者は集中サーバのIdP機能によりIDを割り当てられ、利用者間で取引の内容を合意すると、合意したトランザクションデータを集中サーバに登録する。集中サーバはトランザクションデータの正当性を確認すると、ディジタル署名を付与して、集中サーバ内に蓄積する。利用者が過去のトランザクションデータを閲覧したい場合は、集中サーバを参照し、集中サーバの署名によりトランザクションデータの内容が正当と判断する。ところが、集中サーバの信頼性が不確実な場合、トランザクションデータの正当性や、同一データを他の利用者も参照していることの確認(一貫性の確認)ができない問題がある。
PoWは、各利用者の利用可能な計算機リソースがほぼ同一であれば、各利用者が検証者になれる確率もほぼ同一となる。したがって、計算量に基づく公平性が保証された「くじ」と言える。しかしながら、検証者になれる確率が、当該利用者のもつ計算機リソースの量に比例するため、資金に余裕のある一部の利用者が計算機リソースに投資し、結果、公平性が損なわれる問題がある。
PoWは、検証者になるためには条件を満たすNonceを発見する必要があるが、膨大な量の計算が必要であり、一般ユーザ向けの安価なスマートフォンやPCは、単独では検証者になることが困難である。また、計算のために膨大な量の電力の消費が必要であり、電力料金によっては報酬を上回る可能性がある。
(数1)
Hash[前のブロックのHash値+自分のID+TS]<Stake/調整係数
…式(1)
本PoS技術には以下に示す問題がある。
PoSでは、検証者のノードは、受信したトランザクションの中で、どれをブロックに加えるか選ぶことが出来る。n個のトランザクションについて、ブロックに加えるか除くか制御できる場合、当該ブロックのHash値を2^n個の中から選択することができてしまう。また新たなトランザクションを生成し、Hash値を変更することもできる。すなわち、今回当選した検証者が、結託者グループのメンバーであり、他の結託者のIDを知っている場合、他の結託者が次のブロックの富くじに当たる確率を制御できることになる。このため、結託者グループの誰かが運良く当選すると、当該グループの誰かが引き続く複数のブロックの検証者になれる確率を高くできる。PoSではお金持ちは不正をしない、と仮定しているので、連続してStakeが少ない検証者が当選している場合、不正があったと判断することが出来るが、どの程度有効に攻撃を検出できるか不明確である。また検証者が公正に富くじに当選しているにもかかわらず、不正があったと判断される可能性もある。
ブロックチェーン技術では、ブロックは、利用者間で転送されて、全利用者に行き渡る。各利用者のノードは自分がメインチェーンの最上位と認めたブロックを、他の多くの利用者もメインチェーンの最上位と認めたほうが都合が良い(メインチェーン内で承認されれば、報酬を使用できるようになる)。このため、通常は、ブロックの転送を遮断する動機はない。ところが、PoSの式(1)の計算は、検証者候補以外でも実施することができる。このため、前のブロックを転送する利用者のノードは、転送先の利用者が当選するかどうか、転送前に評価することが出来るので、当該利用者へは当該ブロックを転送しないDoS攻撃が可能である。
本PoS技術では、保持する電子マネーが多いと、プログラムを起動しておくだけで、検証者に当選し、報酬を得ることができる。また、お金持ちは不正をしない、との仮説に基づいているため、お金持ちであれば不正に成功する確率が高いと言うことも出来る。
自新規ブロックに適用する自ノードの暗号化IDを、自ノードに固有のIDに秘密鍵を適用することで生成し、
他のノードと共通の演算式に、自ノードの暗号化ID及び前記新規ブロックを追加するブロックチェーンに既に含まれるブロックのうちの予め定められたブロックに格納されている暗号化IDを適用し、自ノードのHash値を求め、
自ノードのHash値を用いて自ノードが当選したか否かを判定する。
ノードが、
新規ブロックに適用する自ノードの暗号化IDを、自ノードに固有のIDに秘密鍵を適用することで生成し、
他のノードと共通の演算式に、自ノードの暗号化ID及び前記新規ブロックを追加するブロックチェーンに既に含まれるブロックのうちの予め定められたブロックに格納されている暗号化IDを適用し、自ノードのHash値を求め、
自ノードのHash値を用いて自ノードが当選したか否かを判定する。
入力条件1:各入力は、ブロック毎に、異なる値を取る。
入力条件2:どの入力の生成者にも、その値を操作できない。
入力条件3:くじを引く当事者のノード以外はくじを実施出来ない。
入力条件4:くじの結果は当該ブロックを生成する時刻の前に予見できない。
入力条件5:入力の生成者が公正に入力を生成したことを、他の利用者のノードが検証できる。
(数2)
Hash[暗号化ID0+Lucky_ID1+Lucky_ID2+・・・
+Lucky_IDm+TS]<N/Num …式(2)
n-1段目の検証者候補のノード91は、ブロックに暗号化IDを含め、全利用者(1~k)のノード91に配布する。なお、利用者数kは任意である。
各利用者(1~k)は、n-1段目とn段目の境界のおみくじ予定時刻を過ぎると、n-1段目の検証者候補が作成したブロック受信の受付を開始する。当該ブロックの総数が、閾値N(例えば、2)を超えると、当該時刻(1秒刻み)で検証者候補からのブロック受信を締め切る(本例では合計4個)。なお、ネットワーク内の伝搬遅延によるチェーンの分岐を防ぐため、ブロックの送信は1秒内(TS単位時間内)で締め切り、受信は伝搬遅延の最大値分遅れて締め切っても良い。
次に、抽選(図3の(1))によりn-1段目の検証者を選択し、n-1段目のブロックチェーンに接続する。
各ノード91は、n+1段目の処理で、N段目の新規ブロックを受信すると(S201)、当該新規ブロック内トランザクションの検証に加えて、当該新規ブロックの暗号化IDが正当か、当該新規ブロックの公開鍵により検証する。また、当該新規ブロックのおみくじで使用されたLucky_IDがN段目の処理で正当と判断された暗号化IDのリスト(後述のLucky_IDリスト)に含まれるか検証する(S202)。上記検証の結果正当でないと判断された新規ブロックは廃棄する(S203)。
・各利用者が受信した検証者候補(複数)が同じであれば、各利用者が決定した検証者は同一になる。合意形成のためである。
・検証者候補数がb個の場合、当選確率は常に1/bであり、1/bより大、あるいは小にならない。連続当選を予見不可とするためである。
・検証者候補も、当該候補が生成した新規ブロックを中継する利用者も、当該検証者候補が当選あるいは落選することを、締め切り時刻まで予見できない。転送遮断攻撃を不可とするためである。
・第1の仕組み:抽選の際に、メインチェーンに接続するブロックとセカンダリチェーンに接続するブロックがあった場合、それぞれ個別に抽選を行う。ただし、同一利用者が生成したブロックが複数あった場合はすべて無効とする。
・第2の仕組み:おみくじの入力として使用する暗号化IDは、メインチェーンとセカンダリチェーンの双方で抽選したものを全て含める。
本開示により、PoWおよびPoSの課題を同時に解決し、公平で安全な分散合意形成が実現できる。本開示は合意形成に、IdPによりIdentityの実在が確認されたIDを使用可能であるため、マネーロンダリングや、マシンによる取引を防ぐことが出来る。また、一人一票であることの保証が必要な、電子投票へも応用が可能である。
非結託者の当選者数がk個となる確率Q(k)は、式(3)のポアソン分布に従う。
(数4)
N=-log p/(1-p)・・・・式(4)
となる。式(4)のpとNとの関係を図6に示す。Pを対数とした片対数グラフで表現している。
結託者グループの1回の「おみくじ」の当選者数期待値λ=N・pなので、m回連続してN人以上の当選者が出る平均間隔I(m)は式(5)となる。m=2、ブロック生成間隔=10分とし、p、NとIの関係を図8に示す。
PoWでは、Nonceの発見間隔が平均値より著しく長くなった場合、ノードの数に変化がない、と言う仮説についてp値検定を行い、インターネットから孤立している可能性を検出することができる。例として、Nonceの平均発見間隔が10分で安定していた後で、発見間隔が40分に変化した場合を想定する。ノード数が25%に変化した場合に相当する。ノードの数に変化がないという仮説について、危険率5%で判定可能となる平均時間を、以下に示す。Nonceの発見間隔がt・10分未満となる確率F(t)は、式(6)の指数分布の累積分布に従う。
(数6)
F(t)=1-e-λt …式(6)
12:メモリ
13:送受信部
91:ノード
Claims (5)
- 新規ブロックにおける自ノードのIDとブロック番号に対する署名である暗号化IDを、自ノードに固有のID、自ノードに固有の秘密鍵及び前記新規ブロックにおけるブロック番号を用いて生成し、
他のノードと共通のHash関数に、自ノードの暗号化ID及び前記新規ブロックを追加するブロックチェーンに既に含まれるブロックのうちの予め定められたブロックに格納されている過去に当選したノードの暗号化IDを適用し、自ノードのHash値を求め、
自ノードのHash値を閾値と比較することによって、自ノードが当選したか否かを判定する、
ノード。 - 前記ノードは、
自ノードが当選した場合、自ノードの暗号化IDを格納した新規ブロックを前記他のノードに配信し、
他のノードから配信された複数の新規ブロックを受信し、複数のノードに共通の式に、各新規ブロックに格納されている暗号化IDを適用することで、各新規ブロックに格納されている暗号化IDのなかから抽選により1つを選択する、
請求項1に記載のノード。 - 前記ノードは、
受信した新規ブロックに格納されている暗号化IDについて、対応する公開鍵を用いて検証し、
検証した暗号化IDに問題がなければ当該新規ブロックを有効として、ブロックチェーンに追加する、
請求項2に記載のノード。 - 請求項1から3のいずれかに記載の複数のノードがピア・ツー・ピア・ネットワークで接続され、前記ブロックチェーンを前記複数のノードがそれぞれ生成し保持する、合意形成システム。
- ノードが、
新規ブロックにおける自ノードのIDとブロック番号に対する署名である暗号化IDを、自ノードに固有のID、自ノードに固有の秘密鍵及び前記新規ブロックにおけるブロック番号を用いて生成し、
他のノードと共通のHash関数に、自ノードの暗号化ID及び前記新規ブロックを追加するブロックチェーンに既に含まれるブロックのうちの予め定められたブロックに格納されている過去に当選したノードの暗号化IDを適用し、自ノードのHash値を求め、
自ノードのHash値を閾値と比較することによって、自ノードが当選したか否かを判定する、
当選者決定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018114659A JP7044364B2 (ja) | 2018-06-15 | 2018-06-15 | ノード、合意形成システム及び当選者決定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018114659A JP7044364B2 (ja) | 2018-06-15 | 2018-06-15 | ノード、合意形成システム及び当選者決定方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019220753A JP2019220753A (ja) | 2019-12-26 |
JP7044364B2 true JP7044364B2 (ja) | 2022-03-30 |
Family
ID=69097105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018114659A Active JP7044364B2 (ja) | 2018-06-15 | 2018-06-15 | ノード、合意形成システム及び当選者決定方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7044364B2 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017157926A (ja) | 2016-02-29 | 2017-09-07 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
WO2017192837A1 (en) | 2016-05-04 | 2017-11-09 | Silvio Micali | Distributed transaction propagation and verification system |
JP2019512778A (ja) | 2016-03-01 | 2019-05-16 | 華為技術有限公司Huawei Technologies Co.,Ltd. | 著作権管理方法およびシステム |
-
2018
- 2018-06-15 JP JP2018114659A patent/JP7044364B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017157926A (ja) | 2016-02-29 | 2017-09-07 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
JP2019512778A (ja) | 2016-03-01 | 2019-05-16 | 華為技術有限公司Huawei Technologies Co.,Ltd. | 著作権管理方法およびシステム |
WO2017192837A1 (en) | 2016-05-04 | 2017-11-09 | Silvio Micali | Distributed transaction propagation and verification system |
Non-Patent Citations (2)
Title |
---|
GILAD, Yossi et al.,Algorand: Scaling Byzantine Agreements for Cryptocurrencies,Cryptology ePrint Archive,International Association for Cryptologic Research,2017年10月14日,Report 2017/454, Ver. 20170924:210954,pp. 1-24,[2021年11月29日検索], インターンネット <URL: https://eprint.iacr.org/2017/454/20170924:210956> |
KUME, Junichiro,New Cryptocurrency Protocol without Proof of Work,2016年暗号と情報セキュリティシンポジウム(SCIS2016),2016年01月22日,1A2-2,pp. 1-7 |
Also Published As
Publication number | Publication date |
---|---|
JP2019220753A (ja) | 2019-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Algorand: A secure and efficient distributed ledger | |
US11177939B2 (en) | Blockchain system including a distributed network of a plurality of nodes and a method for achieving an agreement between the plurality of nodes executed by processors of the block chain system | |
KR102409819B1 (ko) | 분산 거래 전파 및 검증 시스템 | |
JP6355168B2 (ja) | ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム | |
Vashchuk et al. | Pros and cons of consensus algorithm proof of stake. Difference in the network safety in proof of work and proof of stake | |
EP3586493B1 (en) | Method for mining a block in a decentralized blockchain consensus network | |
JP6358658B2 (ja) | ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム | |
US20190279210A1 (en) | Infinitely scalable cryptocurrency system with fast, secure verification | |
Bentov et al. | Proof of activity: Extending bitcoin's proof of work via proof of stake [extended abstract] y | |
JP7319961B2 (ja) | 一対の結合ブロックチェーンを構成するバイナリブロックチェーンに関連するコンピュータ実装システム及び方法 | |
Dmitrienko et al. | Secure wallet-assisted offline bitcoin payments with double-spender revocation | |
Ogawa et al. | Proposal of proof-of-lucky-id (PoL) to solve the problems of PoW and PoS | |
US20200152003A1 (en) | Gambling systems and methods based on blockchain technology | |
CN113940032A (zh) | 用于在区块链网络中记录工作历史并证明声誉的方法和装置 | |
Nakamoto | Bitcoin: A peer-to-peer electronic cash system Bitcoin: A Peer-to-Peer Electronic Cash System | |
Drainville | An analysis of the bitcoin electronic cash system | |
JP7417583B2 (ja) | コンピュータネットワークの間のタスクの分配のためのアキュムレータに基づくプロトコルのためのコンピュータ実施システム及び方法 | |
Aljabr et al. | Mining process in cryptocurrency using blockchain technology: Bitcoin as a case study | |
Bashar et al. | Contextualizing consensus protocols in blockchain: A short survey | |
Jia et al. | Delottery: a novel decentralized lottery system based on blockchain technology | |
Islam et al. | A low-cost cross-border payment system based on auditable cryptocurrency with consortium blockchain: Joint digital currency | |
WO2023025600A1 (en) | Method and system for a central bank digital currency with unlinkable transactions and privacy preserving regulation | |
CN111049653A (zh) | 一种用于选举共识节点的抽签方法 | |
JP7044364B2 (ja) | ノード、合意形成システム及び当選者決定方法 | |
Clark et al. | Research perspectives and challenges for bitcoin and cryptocurrencies |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210219 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20211110 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211207 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211220 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220117 |
|
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: 20220308 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220310 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7044364 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |