コミットメントトランザクション
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/02/08 17:17 UTC 版)
「ライトニングネットワーク」の記事における「コミットメントトランザクション」の解説
アリスとボブがペイメントチャネルを持っているのなら、彼らの双方が「最新の」コミットメントトランザクションも持っている。コミットメントトランザクションはアリス⇔ボブ間で正しく割り当てられたファンティングトランザクションに基づいて資金を分配する。例として、例えばアリスが1.0 mBTC(0.001BTC、もしくは100000 satoshi に等しい)、ボブが1.0 mBTC をそれぞれチャネルに保有している場合、コミットメントトランザクションはチャネルの総資金(この場合 1.0 + 1.0 = 2.0 mBTC)をそのように分配する(アリスに 1.0 mBTC、ボブに 1.0 mBTC) コミットメントトランザクションでは、単体のトランザクションに複数のユーザが参加することができる(従ってこれは単一の実態として振る舞う)。ネットワークの混雑はマイナー達によって引き起こされるため、このネットワークはマイナー達は誠実で組織的な51%攻撃を行わないという仮定に依拠している。 コミットメントトランザクションはファンティングトランザクションを消費するため、当事者双方の署名を必要とする。 実際には、コミットメントトランザクションは非対称的なトランザクションの組である。アリスのコミットメントトランザクションは2つのアウトプットを持つ。1つはボブに即座に支払われる。もう1つはタイムロックされており、これはアリスが取り消して自分に払い戻させること(以下、単に取り消しという)ができる。取り消しに必要な鍵(以下、取消鍵)をボブが知っていれば、ボブは取り消しを無効化できる。ボブのコミットメントトランザクションは上記を逆に考えるとよい。つまり、1つのアウトプットはアリスに即座に支払われ、もう1つはタイムロックされており、ボブによって取り消し可能であり、アリスが取消鍵を知っていればボブの取り戻しを無効化できる。 まず、アリスはコミットメントトランザクション、Bobはコミットメントトランザクションを持つ。 A 1 {\displaystyle A_{1}} の取消鍵 R A 1 {\displaystyle R_{A_{1}}} は、アリスは知っているがボブは知らない。 B 1 {\displaystyle B_{1}} の取消鍵 R B 1 {\displaystyle R_{B_{1}}} はその逆で、ボブだけが知っている。ここで、アリスがボブに 0.25 mBTC を支払うとする(支払いの直前に双方は 1 mBTC を保有していると仮定) アリスはボブに向けたトランザクション B 2 {\displaystyle B_{2}} を作成する。これは 0.75 mBTC をアリスに割り当て、 1.25 mBTC をボブに割り当てる. アリスは B 2 {\displaystyle B_{2}} をボブに送信する。 ボブは B 2 {\displaystyle B_{2}} を受け取り、それを保持する。 ボブはアリスに向けたトランザクション A 2 {\displaystyle A_{2}} を作成する。これは 0.75 mBTC をアリスに、1.25 mBTC をボブに割り当てる。 ボブは A 2 {\displaystyle A_{2}} をアリスに送信する。 アリスは A 2 {\displaystyle A_{2}} を受け取り、それを保持する。 アリスは R A 1 {\displaystyle R_{A_{1}}} を提供し、 A 1 {\displaystyle A_{1}} を無効化する。つまり、アリスは A 1 {\displaystyle A_{1}} を削除できる。 ボブは R B 1 {\displaystyle R_{B_{1}}} を提供し、 B 1 {\displaystyle B_{1}} を無効化する。つまり、ボブは B 1 {\displaystyle B_{1}} を削除できる。
※この「コミットメントトランザクション」の解説は、「ライトニングネットワーク」の解説の一部です。
「コミットメントトランザクション」を含む「ライトニングネットワーク」の記事については、「ライトニングネットワーク」の概要を参照ください。
- コミットメントトランザクションのページへのリンク