L402 — Lightning決済
L402とは?
L402(旧LSAT)は、即時APIの支払いにBitcoinのLightning Networkを使用します。サーバーはマカロン(ベアラートークン)とLightningインボイスをペアで発行し、エージェントがインボイスを支払うとマカロンが有効になります。
仕組み
- エージェントが有料エンドポイントにリクエストを送信する
- サーバーが
WWW-Authenticate: L402 macaroon="...", invoice="..."付きで HTTP 402 を返す - エージェントがLightningインボイスを支払う
- エージェントが支払い済みマカロンを証明として再試行する(
Authorization: L402 macaroon:preimage) - サーバーがマカロンを検証して応答する
主要な概念
- マカロン:ペアのインボイスが支払われると有効になる暗号学的なベアラートークン
- Lightningインボイス:BitcoinのLightning Network上の一回限りのBOLT11支払いリクエスト
- プリイメージ:Lightningインボイスが決済されたときに明らかになる支払い証明
- 即時決済:Lightning決済はミリ秒で確定します
- Bitcoinネイティブ:支払いはサトシ単位(1 sat = 0.00000001 BTC)
サービスへのL402の追加方法
- Lightningノード(LND、CLN)を運用するか、Lightning Service Providerを使用する
- 各有料リクエストに対してマカロンとLightningインボイスのペアを生成する
WWW-Authenticate: L402 macaroon="<base64>", invoice="<bolt11>"付きで402を返す- リトライ時にマカロンを検証し、インボイスのプリイメージを確認する
仕様の成熟度
確立済み。 もともとLightning LabsによりLSATとして開発され、L402に改名されました。複数のLightning対応APIで本番運用されています。