本文へスキップ
buybitcoinsmart

用語集 / ライトニングとレイヤー2

ペイメントチャネル

別名はPayment channel、マイクロペイメントチャネル、ライトニングチャネルです。

ペイメントチャネルとは?
ペイメントチャネルとは、1件のオンチェーン取引で資金を拠出する二者間のビットコイン契約であり、その中で両者はブロックチェーンに触れることなく、その資金の配分を数千回書き換えることができます。

両者が毎ラウンド後に署名するバーのツケのようなものと考えてください。資金供給の出力は2-of-2のアドレスですので、どちらのピアも単独では資金を動かせません。また、どの更新も完全に有効なビットコイン取引であり、どちらの側も公開できます。チャネルにコインを保有している場合、あなたは悪意ある行為に気づくソフトウェアに依存しており、企業が適切に行動することに依存しているのではありません。

仕組み

ペイメントチャネルは、信頼をビットコインスクリプトの2つの要素、共有出力と罰則に置き換えます。

チャネルを開くには、両方の署名を要求するアドレスへ支払うオンチェーン取引が1件必要です。その取引がブロードキャストされる前に、ピア同士は、合意した割合で自分たちに払い戻す署名済みのコミットメント取引を交換します。チャネル内での支払いは、新しい配分で新たな一対のコミットメントに署名し、その後、古いコミットメントを無効化する秘密を渡すことにすぎません。

安全性を担保するのは取消しです。各側はわずかに異なるコミットメント取引を保持しており、あなたが保持する版は、あなた自身の残高を、遅延(一般には144ブロック、およそ1日)の後でしか請求できないスクリプトへ支払います。相手のコピーでは、同じ遅延が相手側に課されます。どちらかが古く自分に有利な状態をブロードキャストした場合、もう一方には、その遅延の間に気づき、取消しの秘密を使ってチャネル残高全体を罰則として回収する猶予があります。不正は阻止されるのではなく、採算が取れないものにされます。

これは相対タイムロックが存在する以前には不可能でした。BIP68、BIP112、BIP113で定義されたCHECKSEQUENCEVERIFYとシーケンス番号に基づくロックは、2016年のブロック419,328から有効で、スクリプトが「支出可能だが、この取引の確認後144ブロック経過後のみ」と言えるようにするのはこれらです。

仕様にあるいくつかの小さな数値は、罰則を執行可能に保つためだけに存在します。各ピアは通常、決して支出できない準備金を保持し、チャネル総額の1%が推奨されています。これにより、不正をする者には常に失うものがあります。ダストしきい値(チャネルが使用するpay-to-witness-script-hash出力では330サトシ)を下回る出力は破棄され、コミットメントに書き込まれる代わりに手数料へ回されます。現代のチャネルはさらに2つの330サトシのアンカー出力を持ち、これは閉鎖が必要なときにチェーンが混雑していれば、どちらの側も手数料を引き上げる子取引を付けられるようにするために存在します。そしてコミットメント番号自体も隠されています。その48ビットは難読化されてlocktimeフィールドとsequenceフィールドに分散されるため、一方的な閉鎖を見た観測者は、そのチャネルで何回の支払いが行われたかを数えられません。

ビットコインを購入するときにこれが重要な理由

チャネルは、ライトニングの残高とコールドストレージの残高が、どちらもビットコインでありながら互換性がない理由です。

チャネル内の資金には、オンラインの鍵と監視するノードが必要です。これは支出用ウォレットには問題ありません。長年保有するつもりの蓄えにとっては不適切な置き場所です。なぜなら、セキュリティモデルが一度きりではなく継続的にあなたに何かを求めるからです。当サイトのハードウェアウォレットレビューは逆のトレードオフを扱っています。ネットワークに一切触れず、何にも反応する必要のない鍵です。

購入する人には、実務上の帰結が2つあります。第一に、チャネルの開設と閉鎖はオンチェーン取引ですので、あなたの代わりにチャネルを開くウォレットは、あなたに代わって実際の手数料を支払っており、時にそれを知らせません。モバイルのライトニングウォレットが最初のチャネルにいくら請求するかを、30ドルを入金する前に確認してください。そうしなければ、その3分の1が初期設定に消えたことに後から気づくことになります。第二に、ライトニングアプリがチャネル、鍵、バックアップについて一切言及していない場合、ほぼ確実にそのアプリ自身がチャネルを保有しています。それはライトニングの見せかけをまとったカストディ型口座であり、コインを取引所に残すのと同じリスク区分に属します。

最後のものは地味ですが高くつきます。チャネルの状態はシードフレーズから復元できません。12語のバックアップはオンチェーンウォレットを完全に復元しますが、どのコミットメントが最新だったかについては何も復元しません。ノンカストディアルのライトニングウォレットはチャネルの状態を別途バックアップしており、そのバックアップを失うと、シードを依然として保持していてもチャネル残高を失うことがあります。

チャネル閉鎖1件の解剖

1つのチャネルが終わる様子を追うと、要素は抽象的なものではなくなります。

2つのピアが1,000,000サトシでチャネルを開き、全額を一方が拠出します。1か月の支払いの後、配分は400,000と600,000になります。協調閉鎖は理想的な経路です。両者が各側へ直接支払う閉鎖取引1件に署名し、それは通常の支出と同じように確認され、どちらの出力にも遅延はありません。

一方的な閉鎖は代替手段です。一方のピアが消えたため、もう一方が最新のコミットメントをブロードキャストします。自分自身の残高は合意した遅延の間触れられないスクリプトに入り、去ったピアの残高はそのピア自身が直ちに支出でき、アンカー出力は手数料を引き上げる必要がある場合に備えてそこに残ります。もし消えたピアが後から自分を900,000サトシと示す古いコミットメントをブロードキャストした場合、正直な側には、取消しを公開して1,000,000の全額を取得するための遅延の窓があります。

ペイメントチャネルvsステートチェーン

ペイメントチャネルは、オンチェーンで二者間の生きた契約を維持します。ステートチェーンは、固定された出力を支出する権利を回します。チャネルでは、残高は任意の数値であり、支払いごとに変化し、執行は一方的に行えます。ステートチェーンでは、固定サイズのUTXO全体が、古い鍵シェアを削除するよう求められたサーバーの助けを借りて、ある所有者から次の所有者へ移転されるため、このモデルはそのサーバーが実際に削除することに依存します。チャネルは開設にオンチェーン取引1件のコストがかかり、支出可能な残高を得られます。ステートチェーンは信頼の前提のコストがかかり、コイン全体を得られます。

混同しやすい用語

よくある質問

シードフレーズはライトニングのチャネルをバックアップしますか?

いいえ。シードはオンチェーンの鍵を復元しますが、どのチャネル状態が最新であったかをウォレットに伝えることはできません。ノンカストディアルのライトニングウォレットはチャネルのバックアップを別に保持しており、それを失うとチャネルの残高を失う可能性があります。

チャネルの相手方が永久にオフラインになった場合はどうなりますか?

最新のコミットメント取引をブロードキャストし、一方的にチャネルを閉鎖します。自身の残高は合意された遅延(一般には144ブロック程度)の後に使用可能となり、相手方の取り分は直ちに支払われます。

チャネルの相手方が私の資金を盗むことはできますか?

古いチャネル状態を公開することによってのみ可能であり、かつ誰もそれに気づかない場合に限られます。すでに保有している取消しの秘密により、遅延ウィンドウの間にチャネル残高の全額を罰則として請求できるため、不正は稀です。

次に読む

関連用語

ライトニングとレイヤー2のその他の用語

このページを英語で読む