TL; DR: No delays when launching the app (network sync, route calculation, etc). Open the app and pay instantly, as simple as that!

Let’s imagine that you’re using Lightning to pay for your morning coffee. Every morning when you open your Lightning wallet, you need to sync network updates. This consumes bandwidth, drains your battery and takes time. Then you need to find a payment route to your coffee place’s Lightning node. This also drains your battery and takes time. Meanwhile, customers are queuing behind you, waiting to pay for their own coffee and wondering why this is taking forever.

Phoenix uses trampoline payments to get rid of these UX issues and provide faster payments. With trampoline, your wallet doesn’t need to know every node in the network. It only needs to know nodes that are close and some remote trampoline nodes. As long as you can find a (short) route to a first trampoline node, you can let that node calculate a route to the next one. And so on and so forth until the payment reaches its destination. This allows the network to scale without making it impractical to run a node on a phone. …


TL; DR: Each time channels are updated, Phoenix sends an encrypted version of their data to its peer. This allows for easy backup/restore of channels while maintaining privacy.

On a traditional Bitcoin wallet, backup is as simple as writing down a list of words, once and for all. It is not as simple with Lightning because backups need to be updated after each transaction. It’s also very tricky because from a protocol point of view, restoring an out-of-date backup is the same as a cheating attempt, and will result in your peer taking all your funds.

For Eclair Mobile, we came up with the idea to use Google Drive as a remote backup system, by uploading an encrypted version of the channel data every time they were updated. It worked well enough and the feature was later replicated by a few other Lightning wallets, but it also required a dependency (and an account) to a external service provider (Google). We wanted to do better. …


TL; DR: When you receive a Lightning payment, we will automatically and instantly create a channel to you if needed, solving the inbound liquidity issue.

Let’s suppose you just installed Phoenix. Your balance is zero, you have no channels. How can you receive your first payment? It’s easy: just go to the receive tab and display a LN payment request.

Wait, what just happened? How was the sender able to route a payment to you if there was no channel to route to? Let’s see what happened.

The way Lightning works, payments are routed through channels, which could be public or private. Public channels are announced as part of the gossip between Lightning nodes. Private channels are not announced and only known by their initiators, but information about them can be attached to Lightning invoices as routing hints. For example, all channels created by Eclair Mobile are private, and a Lightning invoice created on Eclair Mobile will contain routing hints for your existing private channels. …


TL; DR: Phoenix is a non-custodial Lightning Wallet that offers the same UX as a good old Bitcoin wallet.

Today we are releasing Phoenix, a 2nd-generation mobile Lightning Wallet.

Why do you call it a 2nd-generation wallet?

When we first announced Eclair Mobile back in 2017, we chose to make it a standard Bitcoin wallet with opt-in Lightning support. Eclair Mobile has a pretty UI, but the UX still lets you see a lot of the inner workings of Lightning. For example, users see separate on-chain and off-chain balances, have to manage channels, incoming liquidity, and so on.

With Phoenix, we started again from scratch — hence the name. UX is basically that of a good old bitcoin wallet, but with instant and cheap payments. …


TL; DR: We have enabled receive on Eclair Mobile Testnet 0.4.0, with a background watcher mechanism and a basic liquidity service.

In our last blog post we explained the reasons which led us to limit Eclair Mobile to only sending money until now. There were three of them:

  • For mobile users, the #1 use case for Lightning is to send payments;
  • It is far safer, because it saves us from monitoring the blockchain;
  • Inbound liquidity is necessary to receive funds and we don’t have the tools to address this yet.

In other words, if we want to enable receive on Eclair Mobile, the two main problems are security and liquidity. …


TL; DR: Eclair Wallet is now Eclair Mobile, with background routing sync and custom Electrum server support. Reception of funds over Lightning will be enabled in 2019.

We decided to rename Eclair Wallet to Eclair Mobile because the former name was too generic and regularly caused confusion among our users. Hopefully it will be clearer now:

  • Eclair is a full LN node implementation, it is intended to run on a desktop or server. It is the software that powers the ACINQ node, one of the oldest, most reliable and most connected nodes in the network.
  • Eclair Mobile is a Bitcoin & Lightning mobile wallet for Android. …


TL; DR: Latest release of Eclair Wallet Testnet includes automated encrypted backups using Google Drive. Will be rolled out to mainnet ASAP.

A bit #Reckless until now

Until now, upon installing Eclair Wallet for Android, a huge scary disclaimer warned users that funds allocated to Lightning channels weren’t being backed up. In other words, funds stored in channels would be lost if the user uninstalled the app, or even deleted application data, or simply lost their phone with open channels (of course, on-chain funds are always protected by the seed and can be recovered).

Backing up Lightning channels is difficult

The reason for this is that backing up Lightning channels is far more complex than backing up on-chain funds. On-chain is easy: everyone is used to writing down a list of words once and for all. But there are two problems with the backup of Lightning funds. First the backup needs to be updated every time the state of the channel changes (which happens several times during a single payment!). The second problem is even worse: if you restore channels from a backup that you think is up to date, but is actually an old stale state, then your counterparty could believe you are attempting to cheat on them, and take all your money as a punishment. …


TL; DR: We are releasing Strike, an API and dashboard that makes it easy to accept Lightning payments on Bitcoin Mainnet. Fee is 1% and automated withdrawals are free.

A few months ago we announced Strike, an easy to use, stripe-like API for Lightning. It was only available for Bitcoin testnet, and today we open it on Bitcoin mainnet.

Why an API for Lightning?

The Lightning Network is a high performance trustless payment network built on top of the Bitcoin blockchain. It enables instant payments with very low fees, even for very small amounts.

We are proud members of the Lightning development community, and we have released and are maintaining all the open source tools that you need to run a Lightning node and “be your own payment processor”. But we believe that some businesses may be interested in a tradeoff where they get most of the benefits of Lightning, while keeping their integration costs as low as possible. This is what Strike is about: add Lightning payments to your business in no time and with as little impact on your operations as possible. …


Two weeks ago, PR #410 was merged into eclair’s master branch. This pull request added support for “Data loss protection”, one of the features we absolutely wanted to implement in eclair before going on mainnet.

Why is it such a big deal? One of the tricky thing with Lightning is that you cannot easily backup a channel. Suppose you simply copy your node data, and later restart from this now outdated state; then you may broadcast what you think is the current commitment, which is actually a revoked commitment and you will be punished by your counterparty.

Data loss protection is an optional feature that was added to the Lightning Network specifications a few months ago. In a nutshell, it allows parties to provide additional data at reconnection, in order to give provable information on their counterparty’s current commitment number. …


TL; DR: We are releasing an early version of Strike, an API and dashboard that makes it easy to accept Lightning payments.

Six months ago we released Starblocks, a virtual coffee shop that demonstrates what the experience of using Lightning could be for the end user. Since then, we have repeatedly been asked to share how one could build the same kind of service. Today, we are releasing the API that has powered Starblocks since the beginning.

Why an API for Lightning?

We believe that some businesses may be interested in a tradeoff where they get most of the benefits of Lightning, while keeping their integration costs as low as possible. This is what Strike is about: add Lightning payments to your business in no time and with as little impact on your operations as possible. …

About

ACINQ

We are building an implementation of Lightning, a scalable instant payment network built on top of the Bitcoin blockchain.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store