簡単まとめ

Bitcoin-NG論文を見てみる6

更新日:

本稿について

様々なブロックチェーンにインスピレーションを与えているプロトコルBitcoin-NG(Bitcoin Next Generation)の論文を見ていきます。本稿では「5. Security Analysis」の5.1を見ます。

原文はこちらになります。

スポンサードサーチ

今回のまとめ

  • マイナーは「最も重いチェーンを伸ばす」「トランザクションをマイクロブロックに取り込む」「最も長いチェーンを伸ばす」という3つの方法でインセンティブを得ることができる。
    • 「重さ」と「長さ」はBitcoinでは同じ意味を持つが、Bitcoin-NGでは異なる。これはBitcoinではチェーンに繋がる全てのブロックでプルーフオブワークが行わるのに対して、Bitcoin-NGではキーブロックとマイクロブロックの2種類のブロックがチェーンに繋がるがプルーフオブワークが行われるブロックはキーブロックだけだからである(例えばあるキーブロックから2つマイクロブロックが繋がったブランチと3つマイクロブロックがつながったブランチがある場合、長さは異なるが重さは同じという状況が存在する。「重さ」という概念はハッシュパワーがどれだけ費やされたかを示すものと考えておけば分かりやすいだろう)。
  • 最も重いチェーンを伸ばすモチベーション
    • Bitcoinブロックチェーンと同様(コインベースとトランザクション手数料)。
  • トランザクションをマイクロブロックに取り込むモチベーション
    • トランザクション手数料。
    • ブロックウィズホールディングを勘案した場合、現在のリーダーに配分される手数料は37%より多ければよい計算になる。ー①
  • 最も長いチェーンを伸ばすモチベーション
    • トランザクション手数料。
    • 選択的なマイニングを勘案した場合、現在のリーダーに配分される手数料は43%よりも小さければよいことになる。ー②
  • Bitcoin-NGの設定する「現在のリーダーに4割、次のリーダーに6割」というトランザクション手数料の配分は①・②の条件を満たす。

※以下、今回まとめた範囲の論文和訳になりますので詳細をご覧になりたい方は読み進めてください。

5. セキュリティ分析

5.1 インセンティブ

本章ではネットワーク全体の1/4未満のキャパシティを有するマイナーがプロトコルに従うことでどのようにインセンティブを得られるのかを説明する。具体的にはマイナーは(1)自身のマイクロブロックにトランザクションを取り込む(2)最も重いチェーンを伸ばす(3)最も長いチェーンを伸ばすという3つのモチベーションがある。Bitcoinと違い、後者2つは同じではない。

最も重いチェーンの延伸

最も重いチェーンをさらに伸ばすモチベーションはBitcoinのそれと同じだ。誠実な多数派は最も重いチェーンを伸ばすので、そのチェーンは高確率でメインチェーンであり続ける。誠実でない多数派は何らかのブランチに任意に切り替えて勝ってしまう可能性がある[32]。別のブランチのマイニングを選択する少数派は誠実な多数派に追いつかないので、収益を確かに得るためにはメインチェーンをマイニングすることになる。従って、ナカモトコンセンサスのターミネーションと合意の観点から見て、Bitcoin-NGの保証はBitcoinの保証[40]に類するものと言える。

マイクロブロックは何らの重みももたらさないし、二次的な指標でさえない。仮にそのように扱ってしまったらセルフィッシュマイニングに対するシステムの脆弱性を大きくしてしまう[21, 44, 49]。セルフィッシュマイニングでは、攻撃者はマイニングしたブロックを控えて持っておいて、メインチェーンで優越したプレゼンスを得るべく巧妙に判断して公開する。もしマイクロブロックに重みがあれば、攻撃者は秘密のマイクロブロックを持っておいて、誰にも公開していないマイクロブロックのあとにマイニングをすることでアドバンテージを得ることができてしまう。

Bitcoin-NGにはセルフィッシュマイニング戦略に対する新たな脆弱性は入れないと私たちは決めており、ゆえにBitcoin-NGは1/4未満のマイニングパワーしか持たない攻撃者に対してセルフィッシュマイニング耐性がある。従って、ナカモトコンセンサスの妥当性尾観点から見て、Bitcoin-NGの保証はBitcoinの保証[40]に類するものと言える。

トランザクションの取込み

トランザクションをマイクロブロックに置くことで、リーダーはそのトランザクションの収益の40%を得る。だが、秘密裏に手数料の100%を得ようと試行することで収益を潜在的に高めようとするかもしれない。そうするためにはまず、リーダーはそのトランザクションを含んだマイクロブロックを生成して、公開しないでおく。続いて、他のマイナーが古いマイクロブロックのあとにマイニングを行う傍ら、このリーダーはこの秘密のマイクロブロックのあとにマイニングを行おうとする。このリーダーが後続のキーブロックのマイニングに成功すれば100%のトランザクション手数料が手に入る。さもなくば別のマイナーがそのトランザクションをマイクロブロックに置くまで待って、そのマイクロブロックに続いてマイニングマイニングをすることになる。

あるマイナーがいるとして、そのマイナーのマイニングパワーの割合はシステムの全マイニングパワーのαであるとしてみよう。トランザクションから得られるリーダーの収益をrleaderとすると、次のリーダーの収益は(1 - rleader)である。Bitcoin-NGでは、rleader = 40%である。rleaderの値は上述の攻撃を行うマイナーの平均収益が公開されているマイクロブロックにトランザクションを配置する場合の平均収益よりも小さいという条件を満たすものでなくてはならないので、

従って、

である(筆者注:100% = 1としてrleaderについて解くと上のようになります)。攻撃者のマイニングパワーは最大でも全体の1/4であるとすれば、rleader > 37%が得られるので、rleader = 40%は条件を満たす。

筆者注:α×100%+(1-α)×α×(100%-rleader)<rleaderについて。

  • 不等式の左辺は、要するにセルフィッシュマイニング(ブロックウィズホールディング)によりトランザクション手数料を全て自分のものにしてしまおうとする場合の収益。
    • α×100%は、攻撃者のマイニングパワーで次のキーブロックも生成できるケース。キーブロックの生成により2回連続でリーダーになれば、その間のマイクロブロックの手数料はいかなる配分比率であろうとも全て攻撃者に振り分けられる。
    • (1-α)×α×(100%-rleader)は、攻撃には失敗したものの、次のキーブロックを生成できたことで次のリーダーに配分される利益を受け取れるケース。
    • この2つを足し合わせたものが攻撃の期待収益と言える。
  • 右辺はプロトコル通りにする場合の収益なので、定義の通りrleaderとなる。
  • 当然プロトコルに従っていた方が収益が高くならないとマイナーは収益に従うメリットがないので、上記の不等式が成立しなければならない。
  • なお、攻撃者のマイニングパワーが全体の1/4未満というのはBitcoin-NGの前提。

最も長いチェーンの延伸

トランザクションからの収益を大きくするには、マイナーはそのトランザクションのマイクロブロックを避け、前ブロックをマイニングすればよい。そして自身のマイクロブロックにそのトランザクションを配置して後続のキーブロックをマイニングしようとする。この場合のマイナーの収益は、そのトランザクションのマイクロブロックの後にマイニングして得られる収益よりも小さくなくてはならず、次のように規定される。

従って、

である。攻撃者のマイニングパワーは最大でも全体の1/4であるとすれば、rleader < 43%が得られるので、rleader = 40%は条件を満たす。

Bitcoin-NG論文を見てみる5 ←← 前)|(次 →→ Bitcoin-NG論文を見てみる7

免責

邦訳には誤りがある場合がございます。予めご承知おき下さい。

確実な情報を知るためには冒頭に示した原文をご参照くださいますようお願いいたします。

-簡単まとめ
-, , ,

Copyright© 暗号通貨界隈のメモ書きなど。 , 2019 All Rights Reserved Powered by STINGER.

%d人のブロガーが「いいね」をつけました。