LNURL sind erweiterte Funktionen und Anwendungen, welche über die reine Zahlungsabwicklung bei Lightning Wallets hinausgehen.
LNURL ist ein Protokoll für die Kommunikation zwischen Lightning-Wallets und externen Anwendungen sowie Diensten von Drittanbietern.
Diese Funktionen können sein:
- LNURL-withdraw – Zahlungen abholen
- LNURL-auth – Autorisieren, Registrieren und Einloggen in externe Dienste und Anwendungen
- LNURL-pay – Bezahlung ohne Rechnung
- Lightning Adresse – Lightning Senden wie eine Email
- LNURL-Channel – Verbinden mit eingehende Channels
- Welche Lightning Wallet unterstützt LNURL
Mit Hilfe von LNURL ist eine vereinfachte Interaktion zwischen dem Zahler und dem Zahlungsempfänger möglich.
In dem folgenden Beitrag werden die möglichen Funktionen kurz vorgestellt und sollen somit eine Anregung für Entwickler sein, eigene Anwendungen auf Basis von Lightning zu realisieren.
Ein Dienstanbieter generiert einen bech32 codierten https Aufruf über einen einfachen http-JSON Befehl, der mit LNURL beginnt und als verschlüsselter QR-Code dem Nutzer angezeigt wird.
Wenn der Nutzer eine Lightning Wallet verwendet, welche LNURL unterstützt, so kann er ganz einfach den QR-Code scannen und die entsprechende Funktion nutzen.
LNURL Withdraw
Möchte man als Zahlungsempfänger eine Lightning Zahlung erhalten, so muss eine Rechnung erstellt werden, welche dem Zahler übermittelt wird.
Hat ein Nutzer einen Anspruch auf Erhalt einer Zahlung, so muss ohne LNURL erst einmal eine Rechnung seitens des Zahlungsempfängers erstellt werden. Dieser sendet dann diese Zahlungsanforderung (Rechnung) inkl. Betrag und Verwendungszweck an den Zahlungspflichtigen und wartet auf den Zahlungseingang.
Der Ablauf kann nutzerfreundlicher gestaltet werden, wenn der Zahlungspflichtige für den Zahlungsempfänger diese Zahlungsanforderung erstellt.
Dies ist dann sinnvoll, wenn ein Nutzer sein Guthaben abheben (withdraw) möchte.
Ein typisches Anwendungsbeispiel ist ein Guthaben auf einer Wallet, welches abgehoben werden soll. Zum Beispiel, um es auf eine andere Wallet zu übertragen.
Ebenso kann der Nutzer durch Aktivitäten sich ein Guthaben verdient haben, welche jetzt ausbezahlt werden sollen.
Der Anwender erhält einen QR Code angezeigt, der mit der LNURL geeigneten Lightning Wallet gescannt wird und der Betrag wird auf der Wallet gutgeschrieben.
Zu Demonstrationszwecken eignen sich Faucet-Seiten, bei denen man kostenlos ein paar Satoshi erhalten kann.
Früher konnte man bei https://lightning-faucet.com kostenlos ein paar Satoshi erhalten.
Unter Withdraw wurde dann das Lightning Guthaben angefordert.
Dies geht durch das Senden einer Lightning Rechnung oder per LNURL-Withdraw:
Sollte diese Faucet über ausreichendes Guthaben verfügen, so kann man sich ein paar Satoshi kostenlos abholen.
Eine weitere Möglichkeit ist per: https://paywall.link/to/26d69d/web
Wenn Lightning Guthaben vorhanden ist, dann wird Dir folgende Seite angezeigt.
Ein weiterer Anwendungsfall wäre die Auszahlung von Lightning Guthaben bei Börsen, Gaming-Seiten oder Affiliate Programmen.
LNURL Withdraw
Scanne mit der Receive bzw. Withdraw-Funktion Deiner Lightning Wallet den QR-Code und erhalte ein paar Satoshi zu Testzwecken.
LNURL-Auth
Mit Hilfe von LNURL-Auth lassen sich Autorisierungen, Registrierungen oder Anmeldungen bei externen Diensten und Webseiten vornehmen. Der Vorteil für den Anwender ist es, dass keine persönlichen Informationen preisgegeben werden müssen.
Lightninglogin.live
Wie komfortabel LNURL-Auth funktioniert, zeigt das Beispiel von Lightninglogin.live
Auf der Internetseite Lightninglogin.live kann man die Anmeldung per LNURL-Auth selber ausprobieren.
Wenn man auf der Webseite ist, erhält man die Meldung, dass man sich per Lightning Anmelden kann.
Man bekommt einen QR-Code angezeigt, den man mit einer Lightning wallet scannen kann, welche LNURL-Auth unterstützte wie zum Beispiel Breez und Phoenix.
Eine Übersicht aller Lightning Wallets die LNURL-Auth unterstützen findest Du in dem Beitrag Lightning Wallet
Nachdem Du den QR Code gescannt hast, bist Du angemeldet und bekommst einen eindeutige User-ID angezeigt.
Du musstest keinerlei persönliche Daten und email-Adressen hinterlegen.
Probiere LNURL-Auth selber einmal aus: https://lightninglogin.live/
Wenn man sich erneut auf seinem Account anmelden will, dann verwendet man die gleiche Lightning Wallet erneut und ist wieder eingeloggt.
Als User identifiziert man sich ausschliesslich über seinen Public Key und sonst nichts. Kein Passwort, keine EMail-Adresse, kein Username oder etwas ähnliches.
Es findet auch keine Weiterleitung der Informationen zu anderen Webseiten statt. Du kannst bei jeder anderen Webseite, die LNURL-Auth verwendet, mit der gleichen Lightning Wallet ein Account aufmachen und Dich darüber immer wieder einloggen.
Weitere Informationen zu LNURL-Auth findest Du in dem Beitrag Lightning Login (LNURL-Auth)
LNURL Pay
Für eine Lightning Zahlung erstellt der Zahlungsempfänger eine Lightning Invoice. Die Lightning Invoice wiird dem Zahler übermittelt und beinhaltet alle relevanten Informationen, um die Zahlung durch das Lightning Netzwerk zu routen und beim Zahlungsempfänger zuzuordnen.
Bei einer Lightning Zahlung besteht jede Zahlung aus einer Kombination von Hash und Preimage. Dies dient dem Nachweis der Zahlung und der Sicherung des Zahlungspfades über die Beteiligten Payment Channels.
Somit kann kein statischer QR Code auf seine Webseite oder auf eine Rechnung gedruckt werden, um Zahlungen zu erhalten. Jede Rechnung muss individuell und speziell für die eine Zahlung erstellt werden.
Doch wie kann man eine Lightning Zahlung vornehmen, wenn der Zahlungsempfänger keine Lightning Rechnung vorher erstellt? Zum Beispiel, wenn man auf seiner Webseite Spenden empfangen möchte und der Spender schnell ein paar Sats senden soll.
Mit Hilfe von LNURL-Pay wird der Vorgang umgedreht.
Nicht der Zahlungsempfänger stellt eine Rechnung, sondern der Zahler sendet dem Empfänger eine Aufforderung eine Rechnung zu erstellen.
Der Empfänger der Zahlung übermittelt eine Antwort, bei welcher der Zahler dann noch den Betrag und ein Kommentar hinzufügen kann.
So kann eine Lightning Zahlung in der realen Welt empfangen werden. Der Straßenmusiker kann neben sich ein Schild mit dem statischen QR-Code aufstellen und der Spender kann dann in der App entscheidet, was er Spenden will.
Lightning Adresse
Lnurl-Pay wird auch verwendet, um Lightning Zahlungen an eine Email-Adresse zu senden. Wenn Du eine Lightning Wallet verwendest, die LNURL-Pay unterstützt, dann kannst Du in das Feld, in der sonst die LNURL Adresse hinterlegt wird, eine Lightning Address Email hinterlegen. Verwende von mir die Adresse Onleines@lntxbot.com und sende mir ein Sats, wenn du es ausprobieren willst.
Wenn Du die lntxbot Telegram Wallet selber verwendest, dann hast Du ebenfalls eine solche Email-Adresse, die sich aus Telegram-Username@lntxbot.com zusammensetzt.
In der unten aufgeführten Tabelle findest Du die Lightning Wallets welche die Verwendung von Lightning Wallets unterstützen.
Weitere Informationen zu Lightning Adressen findest Du in dem Beitrag: Lightning Adresse
lnurl-Channel
Wenn der eigene Node auf einem Telefon oder hinter einer Firewall ausgeführt wird, gibt es keine öffentliche IP-Adresse und somit kann ein anderer Knoten keine direkte Verbindung herstellen. Dies ist aber notwendig, wenn jemand einen Kanal zu Dir eröffnen möchte. Dies kann gelöst werden, indem vorher selber einen Kanal eröffnet.
Per lnurl-channel wird dieser Vorgang automatisiert. Du scannst einen QR-Code, dann stellt die eigene Wallet automatisch eine Verbindung zum Node her und wartet, bis der Node einen Kanal zu Dir öffnet.
Lightning Wallets mit LNURL Unterstützung
Folgende Lightning Wallets unterstützen LNURL bzw. Funktionen von LNURL
Wallet | lnurl-channel | lnurl-auth | lnurl-withdraw | lnurl-pay | Lightning Adresse |
Alby | X | X | X | user@getalby.com | |
BlueWallet | X | X | X | ||
Bitcoin Beach Wallet | X | X | user@pay.bbw.sv | ||
Bitnob | X | X | X | user@bitnob.com | |
Bottlepay | X | X | user@bottlepay.me | ||
Breez Wallet | X | X | X | X | |
Blixt | X | X | X | X | |
Lifpay | X | X | X | user@lifpay.me | |
@LightningTipBot | X | X | X | user@ln.tips | |
lnbits | X | X | X | ||
Muun | X | ||||
Phoenix | X | X | X | ||
Simple Bitcoin Wallet (SBW) | X | X | X | X | |
Shockwallet | X | X | |||
Sudonym | X | X | user@sudonym.app | ||
ThunderHub | X | X | X | X | |
Wallet of Satoshi | X | X | X | user@walletofsatoshi.com | |
ZAP Wallet | X | X | X | ||
Zebedee | X | X | user@zbd.gg | ||
Zeus | X | X | X |
Eine Übersicht aller Lightning Wallets findest Du hier: https://coincharge.io/lightning-wallet/
Leave a Reply
Your email is safe with us.