166 / 691LNURL

LNURL

Процедуры оплаты, вывода и входа

LNURL соединяет кошелёк со службой через веб-запросы. Похожие QR могут означать оплату, вывод или вход.

LNURL — семейство необязательных прикладных процедур Lightning из документов LUD. Передаёт параметры и запросы между кошельком и службой; это не правило консенсуса Bitcoin и не универсальное разрешение.

LNURL включает payRequest для оплаты, withdrawRequest для вывода, login для входа и другие расширения. Кошельки поддерживают разные подмножества LUD. «Поддерживает LNURL» не означает все операции или одинаковый эффект их одобрения. [LNURL — LUD index] [Lightning Labs — LNURL glossary]

Базовый LNURL по LUD-01 кодирует HTTPS или onion URL в Bech32. Это не шифрование и не счёт BOLT 11. Тип задаёт tag в URL либо JSON после GET. Кошелёк должен распознать домен и операцию; вид QR сам не подтверждает получателя. [LNURL — LUD-01 encoding]

payRequest возвращает callback, minSendable, maxSendable и metadata. Пределы и выбранный amount — в msat; 1000 msat это один satoshi. После одобрения условий кошелёк запрашивает счёт в pr и проверяет сумму перед оплатой. Статическая ссылка не доказывает платёж. [LNURL — LUD-06 payRequest]

Metadata — строка с массивом JSON и обязательной записью text/plain; остальные типы необязательны. Читайте описание вместе с доменом и суммой. Базовый LNURL интерпретирует тело JSON, не только HTTP код; ERROR или получение счёта pr не означают успешную оплату. [LNURL — LUD-01 encoding] [LNURL — LUD-06 payRequest]

withdrawRequest возвращает k1, callback и пределы minWithdrawable/maxWithdrawable в msat. Ваш кошелёк создаёт счёт на приём и передаёт его как pr службе, которая должна заплатить. Status OK подтверждает запрос; кошелёк ещё ждёт поступления. Ссылка вывода может содержать разрешение, поэтому это не публичный платёжный контакт. [LNURL — LUD-03 withdrawRequest]

LNURL-auth с tag login использует вызов k1 и доменный linkingKey. После согласия кошелёк подписывает через ECDSA на secp256k1, не отправляя seed службе. Action может означать регистрацию, вход, привязку или другую авторизацию. Подпись не является bitcoin-платежом или автоматическим доказательством личности. [LNURL — LUD-04 authentication]

HTTPS защищает передачу, но служба может знать запросы и время. Повторные использования могут быть связаны. Auth выводит ключ из полного домена; смена поддомена меняет linkingKey и может дать другую учётную запись. Переносимость входа между кошельками не гарантирована из-за разных способов вывода. LNURL не определяет хранителя bitcoin. [LNURL — LUD-01 encoding] [LNURL — LUD-04 authentication]

Необязательный LUD-21 добавляет verify URL; ответ различает settled true/false и может вернуть preimage. Один status OK не означает settled true. Проверьте связь с конкретным счётом и состояние кошелька. Потеряв ответ, не платите снова вслепую; доступность, входящая ликвидность и объём согласия остаются отдельными условиями. [LNURL — LUD index] [LNURL — LUD-21 verification]

Для полной картины прочитайте эту статью вместе с BOLT 11, BOLT 12, Lightning Network, Lightning Address, Приватность в Bitcoin, Satoshi. На эту статью также ссылаются BOLT 12, Lightning Address, Confirmo.

DOC · 001LNURL — LUD indexСпецификация ↗DOC · 002LNURL — LUD-01 encodingСпецификация ↗DOC · 003LNURL — LUD-06 payRequestСпецификация ↗DOC · 004LNURL — LUD-03 withdrawRequestСпецификация ↗DOC · 005LNURL — LUD-04 authenticationСпецификация ↗DOC · 006LNURL — LUD-21 verificationСпецификация ↗DOC · 007Lightning Labs — LNURL glossaryДокументация ↗
Сначала источники · Не является инвестиционной рекомендацией