The payment network known as the Lightning Network, which functions as the second layer of the Bitcoin protocol, has been with us for more than two years. But as is generally the case with the development of complex and robust systems, which Bitcoin certainly is in itself, it takes a long time to find the right ways not only in terms of technical solutions, but also user-friendliness. ACINQ is one of the leading innovators in this field and at the end of 2019 decided to give the world a gift in the form of a Phoenix wallet - a second-generation LN wallet.
As is often the case with new protocols, it is very difficult to use and manage them in the long run. It was the same with the Lightning Network and the wallets built on it. Users had to manually manage the opening and closing of payment channels, liquidity in these channels, backup of the state of channels, to which nodes the users are connected and sending transactions was not reliable at all.
Lightning Network is the so-called second layer above the Bitcoin protocol. Its main goal is to enable small, cheap and fast payments, but without the need to write every small payment in the blockchain. You can read more about Lightning Network in our article here. here.
Although the state of technology was constantly improving, the user experience (UX) lagged behind. This also applied to the first mobile LN wallet Eclair from ACINQ, which although good for its time, failed to shield users from these technicalities.
It didn't take long for developers to realize that if they wanted the best UX, they didn't have to reinvent the wheel - just look at existing Bitcoin wallets (which users are used to) and take what works. There is no need to burden the user with unnecessary technical matters if the application can do the work for him. And so the second generation LN wallet was created. Phoenix was born.
It will probably be disappointing for some readers that Phoenix is currently only available for Android devices. However, it is not necessary to despair for a long time, the developers are working hard on the version for iOS, which should be available in 2021.
The first and basic feature of every bitcoin wallet should be that it is so-called non-custodial, i.e. the user has full control over the private keys and they do not leave his device (unless he hands them over to someone himself). So all the bitcoins in your Phoenix wallet are really yours, even if ACINQ or the entire Lightning Network disappears overnight.
The wallet uses a 12-word seed for backup according to the BIP39 standard, however, since it is an LN wallet, developers warn against importing seed into several wallets at once, which could cause problems.
In addition to the English language, Phoenix supports seven other languages, including Czech, but the disadvantage is that the language cannot be switched manually and is set according to the system language. However, what can be changed is the setting of the displayed currencies - we can display bitcoin or its various denominations (satoshi, mili-bitcoin) and for conversion to national currencies we have a choice of several options, including the Czech one. If someone is especially careful to not show everyone the balance on the phone display, they can turn off the balance display on the main page.
Phoenix also includes the option of switching the color scheme to a light or dark theme, or according to the system settings - this will relieve your eyes if you like to pay in the dark or you’re eager to check your balance at night.
Finally, Phoenix also has the option for users to connect exclusively through the Tor network, which hides their real IP address and thus improves the user's anonymity. It is also possible to connect Phoenix to your own Electrum server (even via Tor) and not rely on third-party servers.
This all is almost top-notch, but the developers had to make a few compromises so that the Phoenix wallet could have such a good UX, and these compromises were mainly about privacy and the need to trust ACINQ. Because your Phoenix wallet only connects to ACINQ nodes, ACINQ knows the information about the payments you make.
Fortunately, ACINQ is fully transparent about these trade-offs and intends to minimize them to pose an even lower risk in the future (see adding a Tor connection). However, do not expect the possibility to connect to your own LN node.
The creators claim that Phoenix has the same UX as a standard bitcoin wallet. While this statement may seem foolish to some, perhaps because the UX of classic bitcoin wallets may not seem ideal to them, it is still a big step.
Phoenix, like other wallets, works by prompting the user to create a new wallet or restore from a backup the first time it is started. At the same time, it allows you to turn on the connection via Tor at the start and connect to your own Electrum server, so that you no longer have to rely on other nodes when creating your wallet.
It only takes a few seconds to create a new wallet, after which the user is immediately taken to the main page, where an important warning is displayed for him to back up his wallet (using a 12-word seed) and, if necessary, set a PIN for security. In addition to PIN locking, Phoenix also supports biometric locking, i.e. using a fingerprint reader.
Furthermore, we can change settings and receive and send payments both on-chain and via the Lightning Network.
A significant difference compared to other LN wallets is that in the Phoenix wallet there is no difference between the so-called on-chain and off-chain balance - there is no on-chain balance. All the bitcoins you have in Phoenix are locked in the Lightning Network channels.
The terms "on-chain" and "off-chain" distinguish transactions that are written to the blockchain. A typical bitcoin transaction, which miners have to mine in order to include in the blockchain, is therefore referred to as on-chain. Off-chain transactions are those that are not written to the blockchain - for example, one person sells his private keys to another in exchange for cash.
Because transactions in the Lightning Network are not written to the blockchain, even if they are valid bitcoin transactions, we refer to them as off-chain.
In order to pay, we must first receive some bitcoins. This can be done easily using the Receive button. The wallet generates a Lightning Network request to receive a payment, for which the required amount and label can be set, as in other LN wallets.
"But how do I receive payment through the Lightning Network when I don't have any channels open," the obvious question might be. Simply put, Phoenix can automatically create a new channel on-the-fly. So there is no need to deal with incoming or outgoing liquidity and channel settings - Phoenix will take care of everything itself. 0.1% of the incoming amount is used as a fee for ACINQ for this service.
The same simplicity applies to incoming on-chain payments. Just use the “Show bitcoin address” button on the receive screen and the wallet will generate a standard address in bech32 format. When the other party sends bitcoins to this address, Phoenix automatically creates a new LN channel. This operation, which replaces the incoming on-chain with off-chain bitcoins, is called a swap-in and ACINQ again charges a small fee for it (0.1% of the amount).
Perfect, we can already receive on-chain and off-chain payments without any worries, so how do we pay? Phoenix can automatically detect whether it is scanning a Lightning Network payment request or a simple bitcoin address and acts accordingly. In the case of an LN request, it asks the user to confirm the payment and sends the payment immediately. In the case of sending to a bitcoin address, it is possible to change the sent quantity and Phoenix will then do a so-called swap-out, i.e. it will send an LN payment to the ACINQ node, which will make an on-chain payment for it. Again, everything takes only a few seconds.
The main advantage of Phoenix is that it is a full-fledged LN wallet, but all the hard work is done by the ACINQ nodes to which our wallet is connected. ACINQ charges a small fee for creating channels.
Incoming and outgoing payments can be viewed retrospectively and their labels edited. In the wallet settings, it is also possible to check the status of individual LN channels, mainly their liquidity. In the settings we will also find the option to close all channels and send the remaining balance to a bitcoin address outside the Phoenix wallet. This option will be especially useful for users who no longer want to use Phoenix or want to reset the state of their channels.
As we have already found in the previous lines, Phoenix strives to be mainly a wallet that will make it as easy as possible for its users to receive and send bitcoin payments - regardless of whether on-chain or via Lightning Network. However, this can only be achieved if the user will not be able to change and reconfigure everything.
So we can say that Phoenix is mainly aimed at users who just want to pay with bitcoin, but don’t want to be bothered with the technical background or do not need to set things up in their own way. It could almost be compared to Protonmail or similar mail clients - there is no need to run your own mail server if someone does it well for me and provides it as a service.
The target group of Phoenix will almost certainly not include people who are extremely eager for transactional privacy and anonymity. People who don't want to use Lightning Network and on-chain payments are enough for them are also probably out of the game. But for all the others who want to pay without much worries and at the same time do not want to run their own LN node, you can say: Phoenix is here for you!
Phoenix from ACINQ is a wallet with probably the best thought-out user interface on the market. While it doesn't offer as much in terms of setup, privacy or sovereignty as other Lightning Network wallets, it outperforms them all in usability.
Pavel Ševčík
Som programátor a bitcoinový maximalista. Prednášam o Bitcoine, najmä jeho technických aspektoch a dopadoch na slobodu jednotlivca. Mimo toho prispievam do open-source projektov spojených s Bitcoinom, ako je napríklad Blue Wallet, BTCPay Server a ďalšie. Bol som členom think-tanku Paralelné Polis, kde som mal na starosť osvetu, organizáciu Bitcoinových MeetUpov a tvorby nástrojov pre lepší chod budovy.