• 一定期間後にアリスとボブの署名 • r A1 とy A1 とボブの署名 • r B1 とy B1 とアリスの署名 アリスの署名 R A1 = r A1 G R A1 Y A1 = y A1 G R B1 = r B1 G Y B1 = y B1 G Y A1 R B1 Y B1 ① 2つの鍵ペアを作成しお互いに公開鍵を交換 Split Tx1 In Out Commitment Tx1のUTXO アリスのアドレス宛 ボブのアドレス宛 ② Commitment Tx1と、この段階の両者の残高を保持する Split Tx1を作 成 ③ Split Tx1の署名を両者で作成 Commitment Tx1のマルチシグ条件でのアンロック ボブの署名 ④ 両者はCommitment Tx1のAdaptor Signatureを作成し、交換する。 Adaptor Sig A1 Adaptor Sig B1 Y B1 を使ってAdaptor Signatureを作成。 Y A1 を使ってAdaptor Signatureを作成。 Adaptor Sig A1 y B1 Adaptor Sig B1 y A1 受け取ったAdaptor Signatureと自身の知るシークレット( y A1 , y B1 )を使えば相手の Commitment Tx1の署名を完成させられる。 アリスの署名 ボブの署名 Commitment Tx1をブロードキャストすると Adaptor Signatureと完成された署名から 相手にシークレット( y A1 or y B1 )が伝わる。
• 一定期間後にアリスとボブの署名 • r A2 とy A2 とボブの署名 • r B2 とy B2 とアリスの署名 アリスの署名 R A2 = r A2 G R A2 Y A2 = y A2 G R B2 = r B2 G Y B2 = y B2 G Y A2 R B2 Y B2 ① 2つの鍵ペアを作成しお互いに公開鍵を交換 Split Tx2 In Out Commitment Tx2のUTXO アリスのアドレス宛 ボブのアドレス宛 ② Commitment Tx2と、この段階の両者の残高を保持する Split Tx2を作 成 ③ Split Tx2の署名を両者で作成 Commitment Tx2のマルチシグ条件でのアンロック ボブの署名 ④ 両者はCommitment Tx2のAdaptor Signatureを作成し、交換する。 Adaptor Sig A2 Adaptor Sig B2 Y B2 を使ってAdaptor Signatureを作成。 Y A2 を使ってAdaptor Signatureを作成。 Adaptor Sig A2 y B2 Adaptor Sig B2 y A2 アリスの署名 ボブの署名 ⑤ 両者は前の状態に使用した Revocation Secret(r A1 , r B1 )を交換する。 r B1 r A1
Out Funding UTXO 以下のいずれかの条件で使用可能 • 一定期間後にアリスとボブの署名 • r A1 とy A1 とボブの署名 • r B1 とy B1 とアリスの署名 Split Tx1 In Out Commitment Tx1のUTXO アリスのアドレス宛 ボブのアドレス宛 ボブが古いCommitment Tx1をブロードキャストした場合 アリスの署名 ボブの署名 Punishment Tx In Out Commitment Tx1のUTXO アリスのアドレス宛 Adaptor Sig A1 アリスの署名 アリスは以前作成した Adaptor Sig A1とブロードキャストされた Commitment Tx1のアリスの署名から、 y B1 を計算できる。 y B1 r B1 は既に保持しているので、ボブが Split Tx1をブロードキャストする前に Punishment Txを作成、ブロードキャストし、チャネルの資金を全て没収す る。 r B1 y B1 アリスの署名 Time Locked ※ 最新のCommitment Txをブロードキャストした場合は、 Revocation Secretを持ってないので Punishment Txは作れない。