164 / 691BOLT11

BOLT 11

Lightning 決済のための署名付き請求書

BOLT 11 は特定の Lightning 決済の条件を伝えます。有効な請求書でも、利用可能な経路や支払い完了を保証しません。

BOLT 11 は Bech32 で符号化する署名付き Lightning 請求書の標準です。payment hash、受取人情報、支払い条件を含みますが、支払い要求であり、成功の証明ではありません。

Bech32 は転記ミスを検出するチェックサムを持ち、暗号化ではありません。secp256k1 上の ECDSA 署名は請求書の内容を保護し、受取人の鍵に結び付けますが、確認済みの人物には結び付けません。Bech32 アドレスと違い、BOLT 11 に90文字の制限はありません。QR は大文字を使えますが、大小文字の混在は無効です。 [BOLT 11 — Invoice protocol]

lnbc は mainnet、lntb は testnet、lntbs は signet、lnbcrt は regtest を表します。金額は BTC 単位で、倍率 m、u、n、p を使えます。p では整数 msat にするため末尾が0でなければならず、1000 msat は1 satoshi です。金額の省略は支払人が指定する意味で、ゼロ円の支払いではありません。 [BOLT 11 — Invoice protocol]

p フィールドは payment preimage の SHA256 である payment hash を含みます。s は payment_secret を含み、受取人が経路の最後の部分で要求します。Secret は preimage でもウォレットの seed でもありません。現在の BOLT 11 は両フィールドを要求し、請求書から secret を読み取っても支払いの証明にはなりません。 [BOLT 11 — Invoice protocol] [BOLT 4 — Onion routing]

請求書にはテキスト d、または外部説明のハッシュ h のどちらか一つだけを含みます。h ではウォレットが受け取った説明の SHA256 を検証する必要があり、ハッシュだけでは購入内容が分かりません。署名は内容と鍵を結び付けますが、販売者の約束の真実性は保証しません。復号ではなくデコードしたテキストは、安全にデータとして表示します。 [BOLT 11 — Invoice protocol]

Timestamp と x の合計が期限です。x がなければ既定の有効時間は3600秒です。c は最後の HTLC の min_final_cltv_expiry_delta をブロック数で指定し、秒単位の別の有効期間ではありません。省略時は最低18ブロックを使います。期限切れは完了済みの支払いを取り消しません。 [BOLT 11 — Invoice protocol]

9 フィールドは必須・任意の機能を示します。未知の偶数ビットでは拒否し、未知の奇数ビットは無視します。既知の機能依存関係も満たす必要があります。Basic MPP は basic_mpp が提示された場合だけ使えます。分割しても複数の独立した請求書にはなりません。 [BOLT 11 — Invoice protocol] [BOLT 9 — Assigned feature flags]

r フィールドは受取人への routing hints を追加し、ノード鍵、チャネル識別子、手数料条件を公開することがあります。現在の流動性の証明ではありません。任意の f はオンチェーンアドレスを提示できますが、独自の手数料と承認を伴う別の支払い方式です。請求書全体は秘密の連絡先でも、永久に再利用できる連絡先でもありません。 [BOLT 11 — Invoice protocol] [BOLT 4 — Onion routing]

送信後は保留中と完了を区別します。QR の画像だけでなく、請求書と対応する preimage を決済の根拠として保存します。応答を失ったら、まずウォレットの状態を確認します。新しい請求書や別の支払い方式は追加の支払いを起こし得ます。形式だけでは普遍的な重複防止になりません。 [BOLT 4 — Onion routing] [Core Lightning — Payment result]

理解を深めるには、この項目とあわせて次もお読みください Lightning Network, HTLC, BOLT 12, Nostr Wallet Connect, Satoshi. 次の項目からも参照されています Nostr Wallet Connect, BOLT 12, LNURL, Lightning Address.

DOC · 001BOLT 11 — Invoice protocol仕様 ↗DOC · 002BOLT 4 — Onion routing仕様 ↗DOC · 003BOLT 9 — Assigned feature flags仕様 ↗DOC · 004Core Lightning — Payment result文書 ↗
一次資料を優先 · 投資助言ではありません