After opening up to Electrum and Liana Connect as backend options in version 7, another big improvement in the wallet setup process has been achieved with version 8. The user interface of the policy selection and keys setup was greatly improved, while adding a new exciting functionality which will help users decide which is the best configuration for them: wallet templates. Version 8 brings also a significant refinement in the syncing flow and communication when opening a wallet, the integration of BitBox Taproot support and other meaningful additions. We hope you’ll enjoy trying it and you’ll give us feedback!
A new user experience in the wallet spending policy setup process
Liana is a wallet that, thanks to the integration of timelock superpowers integrated in the Bitcoin protocol, gives users a virtually unlimited number of options on how to configure their security setup. While this represents a great advantage compared to “traditional” solutions for many usecases, it also implies a higher number of decisions to be made by the users, who need to choose which will be the configuration of their primary spending policy (the always-active one), how many recovery options (the timelocked ones) they need, which activation period each should have and how they should look. The amount of possibilities could be sometimes overwhelming and it’s also very difficult to not limit their potential while at the same time conveying a clear-enough and smooth user interface. That’s probably the main reason why, until v7, Liana’s wallet policy setup screen could seem complex, especially to non-technical users. With v8, our main (ambitious) objective was to try to achieve a smoother user experience in this regard while also keeping the possibility to take advantage of the broad range of options allowed by Liana. In order to achieve this, we decided to work in 2 main directions:
- To improve the general UI process of the wallet setup, by graphically distinguishing primary keys from recovery keys and guiding the user to the next expected steps thanks to the help of primary buttons actions (marked in green). You can see below a comparison of the general customizable setup and how it changed from v7 to v8:
v7 version:
v8 version:
- To add the possibility for the user to use some pre-configured templates in which the general wallet policy (spending paths and number of keys per path) is already set and in which the user just needs to link his specific devices / public keys and optionally change the default timelock value. The intent here is to try to guide the users through some typical simple usecases, while also allowing them to understand Liana’s potentiality by showing some real-life examples that could be upgraded at will in the customizable setup. In this first iteration of templates, we decided to include an example of a possible “Simple Inheritance” setup, composed of a Singlesig “primary key” that can always spend and a Singlesig “inheritance key” that is able to spend only after a specific period of inactivity of the wallet, and an “Expanding Multisig” one, in which a 2-of-2 multisig composed of the two “primary keys” expands to a 2-of-3 multisig with the addition of a “recovery key” after some inactivity of the wallet, allowing for higher protection from theft and loss. The third option, as mentioned, is to “Build your own” setup, in a complete customizable fashion, to make use of the vast amount of possibilities that Liana gives.
Additionally, we added to each template and configuration an intermediate step in which we try to explain graphically which will be the expected setup. This is useful since we realized that when trying the wallet out, the user is not always already fully aware of what we mean by “timelock”, different sets of keys and so on and because we want to have a clear introduction of the specific template to the users that would like to adopt it. At the beginning of this article, you can see an example of how we introduce the “Expanding Multisig” setup.
If you have any feedback or template to suggest, feel free to hit us up in our Discord or Telegram groups!
Better blockchain and wallet syncing interactions
When opening a wallet, in order to have updated information on the balance and list of transactions, the following syncing conditions must be met:
- The blockchain data source must be up-to-date;
- The wallet must have scanned for possible new transactions added or confirmed since its last use on the device.
In v8, we improved the user experience in both cases:
- If a user relies on his own source of blockchain data (bitcoind or Electrum, including the Liana-managed bitcoind option) and if this is not up to date, we let the user immediately access the wallet - while previously was not always the case - and notify him that the blockchain is still syncing with an indication of the percentage:
This behavior doesn’t apply to wallets that use Liana Connect since it keeps synced to the blockchain also while the wallet is not in use.
- If the blockchain data is up-to-date but the wallet still needs to scan for new transactions when loading/creating a wallet (typically within the first 30 seconds after opening), we notify the user that we are “Checking for new transactions…” in that interval of time. This avoids confusion for the user which could expect a different amount than what is shown at wallet opening.
Taproot integration on BitBox
BitBox02 was recently announced to start supporting tap-miniscript (from 9.21.0 firmware version). Just a couple of weeks after that, BitBox02 taproot integration has already been implemented in Liana by our fantastic team. With v8, BitBox joins Ledger, Coldcard and Specter DIY devices in being usable in taproot descriptors, with the consequent advantages in terms of privacy and fees. Below you can find the list of hardware signing devices available for Taproot and Segwitv0 policies:
For Taproot spending policies:
- Ledger Nano S
- Ledger Nano S+
- Ledger Nano X
- Ledger Stax
- Ledger Flex
- Coldcard MK4 (Edge firmware)
- Coldcard Q (Edge firmware)
- Specter DIY
- [NEW] BitBox02
For Segwitv0 spending policies:
- All of the above
- Blockstream Jade
See the full signing devices support documentation here.
Upgrade managed Bitcoin Core version to 28.0 and other changes
Choosing the liana managed bitcoind as a source of blockchain data will now automatically allow you to download and use the latest Bitcoin Core version (28.0). In v8, we included other smaller changes and fixes. You can see the full list in the official changelog document.
Conclusion
Version 8 is intended to make Liana more easily understandable and usable by everyone. The revamp of the user interface in the wallet policy configuration plus the addition of easy-to-understand templates should give the users the tools to better understand how to use the software to accomplish their usecase. Together with v7, this eighth version represent a big effort towards making Liana accessible by the widest possible range of users. We look forward to your feedback and questions: feel free to join the discussion about Liana in our Discord and Telegram groups, while also keeping an eye on our Github repository for updates.
Liana is an open source project and contributions in code, thoughts or documentation are always more than welcome! Feel free to start inspecting the “Good First Issues” list if you don’t know where to start.
We invite you to download and install Liana to try it out. For this purpose, you can also find a guide on our Github to quickly test it on Signet.