Skip to content

トランザクションカットスルーの仕組みと意味

Warning

トランザクションカットスルーには匿名性向上の副次的効果もありますが、ブロックチェーンのサイズの増大を防ぐことが最も重要な効果だと思います。トランザクションカットスルーのみでは悪意のあるノードの配置によって匿名性が奪われる(=送金元と送金先を解読するようなトランザクショングラフを作成される)可能性があります。Mimblewimbleでは匿名性の向上に対してはDandelionという仕組みを使います。

以下で説明するようにMimblewimbleでは、各トランザクションを融合させ、インプットと使用済みのアウトプットを相殺してからブロックに保存する仕組みになっています。

言葉だけだと分かりづらいので、図で見てみましょう。以下はトランザクションのアウトプットとインプットを表しています。上は2つのインプットから2つのアウトプットが、下は、2つのインプットから1つのアウトプットを作っています。

Image1

トランザクションが2つあるので、excessも2つになっています。

Image

2つのトランザクションを繋げ、1つトランザクションのように融合させます。excessも足し合わせます。

Image

インプットとアウトプットを眺めると、青色の四角がインプットとアウトプットの両方に表れていることが分かります。この融合させたトランザクションを一つのトランザクションとして捉え直してみると、同じもの(=青色の四角)をインプットからアウトプットに移動させていることになります。これは無駄に見えます。

トランザクションで説明した通り、インプットとアウトプットが同じ値になることが有効なトランザクションであるための条件なので、両方から同じ値(=ここでは青色の四角)を引いても問題ありません。

Image

両方から青色の四角が相殺され、ブロックチェーンのデータから消えました。

Tip

上の4つの図からも分かるように、Mimblewimbleでは1つのブロックには、1つの連結された大きなトランザクションが格納されていることが分かります。

トランザクションカットスルーの結果

  • 相殺されたデータはブロックチェーンには保存されない
  • ビットコインのトランザクションとは異なり、インプットとアウトプットの関連付けができない構造になっている
  • このままでは悪意のあるノードがカットスルーが発生する前にデータを取得することで、トランザクショングラフを作成し、匿名性を奪える可能性がある

Image

もっと長いブロックチェーンで考えてましょう。複数のトランザクションがあり、それに対応するexcessがあります。

Image

各トランザクションを繋げます。

Image

インプットとアウトプットの両方に存在する四角が多数あります。

Image

それを相殺して、ペアになっていない四角だけを残します。

BTC, XMR, ZECのトランザクションサイズ

ここでは匿名性よりもチェーンとトランザクションのサイズに焦点を当ててみましょう。サイズが重要なのは、サイズが大きくなりすぎると

  • 伝播に時間がかかり、一般的なネットワークでは遅延なく同期できなくなる
  • データのダウンロードに時間がかかる
  • 一般過程のハードウェアではチェーンデータの保存が不可能になる

等の問題が発生します。

各プロジェクトのチェーンとトランザクションのサイズ

ローンチ時期 プロジェクト チェーンサイズ トランザクションサイズ
2009年1月 Bitcoin 198GB 525B
2015年4月 Monero 51GB 6000B
2016年10月 Zcash 18GB 2800B
2019年1月 Grin ※ローンチ後追記 ※ローンチ後追記

※ Coinmetricsのデータより作成2

Warning

  • チェーンサイズはそれぞれのローンチから19年1月9日の累計
  • トランザクションデータサイズは Blocksize合計 / Transaction数 で計算
  • トランザクションデータサイズは、2018年10月1日~2019年1月9日のデータのみを使用して計算
  • Moneroは18年10月にBullet Proofを実装したためトランザクションサイズが減少しており11月以降の平均は3900B

上の表を見れば明らかな通り、トランザクションサイズはそれぞれのブロックチェーンにおいて大きく異なります。

Warning

またMoneroは全てのトランザクションが秘匿化されますが、Zcashは選択性であり、以下の表からも分かるように8割のトランザクションが秘匿化されていません。

種類 割合
Transparent Tx 82.16% 81772
Shielded Tx 16.14% 16061
Fully Shielded Tx 1.70% 1689
合計 100.00% 99522
3

※ 19年1月9日作成

分散性への寄与

チェーンやトランザクションのサイズが小さくなると廉価なハードウェアでもフルノードを建てられたり、モバイル機器でライトノードを建てられる可能性があります。より多くのハードウェアでデータの保管とトランザクションの検証ができるようになれば、ネットワークの堅牢性が増すことになります。

トランザクションカットスルーによって、ブロックチェーン上に保存して置かなければならないデータサイズを縮小できる上に、トランザクション数の増加に比例して増えていくチェーンデータの増加も抑えられます。

コメント