Muiti Hop Payment

そしてMulti Hop Payment。

Multi Hop Payment

双方向Payment Channelでは、過去のcommitTXをブロードキャストするのをロックタイムとシークレットの交換によりたくみに回避した。なぜ過去のcommitTXに注意を払う必要があるかというと、TXのINのmulti sigに署名済であるためだ。

双方向payment channelのみだと、支払い先が増える毎にデポジット額が増えてしまう。そこで、Multi Hop Paymentがあれば、中間者を経由でき、デポジット額をへらすことが可能になる。

HTLC

Hashed Time-Locked Contract (HTLC) は、あるユーザー間(売り手と買い手)の決済を行うコントラクトで、売り手がハッシュのプリイメージを公開することで資金を入手することを可能にし、買い手が指定期間内に売り手がプリイメージを公開せずタイムアウトになった際に、資金を取り戻すことを可能にするスクリプトである。

Rはsecret、HはHash(R)。

保証

AとB、BとCはチャンネル開設済とする。

  1. Hの交換
  2. commitTXの交換

BからCへの支払い

  1. commit TXの交換
  2. Rの交換
  3. 残高更新後のcommitTXの交換

AからBへの支払い

  1. Rの交換
  2. 残高更新後のcommitTXの交換

シンプルなHTLCによるmulti hopと異なるのは、Rを知っていても、CSVのタイムロックをかけることだ。これは不正に過去のTXをブロードキャストすることを防ぐためだ。