Muun Wallet is emerging as one of the preferred Bitcoin wallets, both by novice and experienced users.
The strong privacy features, in addition to its graphically light interface, these are the most unique qualities of Muun, which plans to continue developing in favor of improving the user experience of Bitcoin.
The wallet has reinforced methods of backup and generation of cryptographic keys , which protect the user and, at the same time, avoid making its handling very complicated, in order to prevent the loss or irreparable loss of bitcoins. This establishes a balance between high levels of security and usability.
Recently, Muun Wallet released its source code, which shows how it enables the function of managing Bitcoin and Lightning network funds by Likewise. Thus, this popular wallet now has an open software license, without restrictions, seeking to share the values of self-custody and self-sovereignty proposed by the Bitcoin community.
In CriptoNoticias, we spoke with Darío Sneidermanis, CEO of Muun Wallet, to comment on the details that make this app (application) available for Android and iOS stand out, and that allows transactions on-chain (on Bitcoin) and on the Lightning network ( off-chain ), using the same graphic interface.
Also, it mentions the future plans of Muun Wallet , among which stand out the purchase and sale of bitcoin with national currencies (fiat) and the enabling of CoinJoins and bitcoin mixing techniques.
It is very useful to be able to graphically visualize the on-chain and Lightning funds in the same portfolio balance. It’s almost a statement that Bitcoin and Lightning are exactly the same, although most wallets make a distinction between the two interfaces.
How do we check the availability of Lightning funds in Muun Wallet?
Currently we do not keep Lightning funds on Muun, but only bitcoins on-chain (on chain). That is, in Muun Wallet all the funds in the portfolio are found in their usual outputs (UTXO).
However, Muun’s point is precisely that the payment instructions ( invoices ) can be paid on-chain or in Lightning. We do not think it is a good mental model to think that funds are on-chain or off-chain . For funds on-chain you can do a submarine exchange (exchange of on-chain to off-chain ) and pay via Lightning. In the reverse case, to pay on-chain a channel can be closed and the funds transferred to the Bitcoin blockchain.
With Muun you don’t have to think about opening channels. The portfolio will take care of opening the necessary channels, if necessary.
What if I want to execute a Lightning own node? In the future will it be possible to configure it and open channels from Muun Wallet?
I really think that it does not have a lot of sense. The Muun app is already a Lightning node, so connecting to a second node does not add new functionality, nor does it make it more efficient. Traditional nodes work very well as routing nodes, but they make extremely inefficient use of channels and transactions on-chain for personal use.
Muun stands out over other wallets because not only does it have the seed phrase of 12 or 24 words, but also other cryptographic methods backup. Tell us a little about how it works, the idea and intention behind these methods.
Muun has a backup system two-tier. On the one hand, there is the cold level, called recovery code, which is equivalent to the usual mnemonics (seed or recovery phrase): it is a code that is written on a piece of paper.
On the other hand there is the hot level, called the emergency kit, which is a PDF file that contains several things: the private keys and public keys, encrypted with the recovery code, the output-descriptors of the portfolio, and the instructions for use.
This scheme improves and solves various aspects of the seed phrase. In the first place, the recovery code alone is not enough to move the bitcoins, greatly improving the resistance against evil-maid attacks or attacks of the Evil Maid *,
Second, if the integrity of the recovery code is compromised, this recovery code can be changed, without having to move all the bitcoins to another set of keys.
As a third point, the emergency kit can be stored in a secure and private in the cloud and, in addition, multiple copies can be saved. Favorably, the emergency kit not only has instructions for use for non-expert users, but also includes the output descriptors , solving the Older problem of the mnemonics (not including them), documenting the scripts and key derivation paths. It used to be necessary to guess this metadata using sites like WalletsRecovery.org.
Modern Bitcoin wallets evolve with technology, introducing new types of addresses regularly. The emergency kit can be updated when this happens, in a simple and transparent way for users.
In addition, Muun has a 2 of 2 multi-signature format, so that, although in the phone has only one private key, the emergency kit contains both keys so that users are in complete control of their bitcoins. The mnemonics no longer work for newer protocols like multisig ( multi-signature), Lightning and Taproot.
How do users respond to these features? Don’t they increase the risk of losing your funds with more codes and passwords to protect?
Actually, the part More complex and that we had to iterate a lot was the flow of the initial Muun Wallet configuration, because it has several steps and it is complex to understand how everything fits together. That required the creation of the Muun Wallet security center, and that we worked a lot on communication between the areas of the organization.
The interesting thing is that, once you complete the first step, your funds are already fully recoverable. Each extra step adds more guarantees, and more redundancy, which is really quite resistant to losses. It can definitely be improved, and we’re working on that, but I think on this front Muun is already one of the most robust self-custody wallets in the industry.
The reception was pretty good, especially from the people who had been working on this front, and I think they are fundamental advances so that the self-custody of Bitcoin can reach the masses. If we don’t work on this, Bitcoin is going to end up being guarded, and I think it’s something that we can’t afford to lose as an ecosystem.
Expand the definition of ‘outputs descriptors’. How does this method of key recovery work and why do you consider it important to expand its use between Bitcoin wallets?
The output descriptors (output descriptors) are the most underrated Bitcoin technological advancement I can remember. They definitively solve a fundamental problem that all of us who have been around for a long time have had to deal with.
It turns out that for years we have all backed our bitcoins using mnemonics , but the mnemonics contain only the data necessary to retrieve a master private key (xpriv ). To effectively find the outputs or UTXO where the bitcoins (BTC) are stored, it is necessary to also know the derivation path and the type of address (eg. SegWit, SegWit compatible or Legacy).
The “modern” way to do this today is by trying to remember the wallet that was used to create the mnemonic , using the WalletsRecovery documentation .org to recover the bypass path used by that wallet at the time of its creation, also using some recovery software that allows you to specify the bypass path to use accordingly. Crazy.
And that’s for unique private keys (ie. « single sig «). If we want to use multisig or multi signature, it is necessary to also have all the public keys of the multisig , which we cannot retrieve so randomly. This was the problem that Pieter Wuille, developer of Bitcoin Core, faced a few years ago, and ended up designing the output descriptors.
The output descriptors are an extremely flexible language to describe all the metadata needed to find UTXOs, including derivation paths, address types, scripts, public keys, etc. For example, ‘wpkh (xpriv123 / 0/0 / -)’ is a output descriptor that says that the private key xpriv123 is using the path of derivation m / 0/0 / *, and the type of address segwit ( witness public key hash ). The descriptors can be written in different ways depending on what guarantees are being sought. They can have the private keys, only the public keys, or only the fingerprints or fingerprints of the keys for their most private version (this is the one that uses Muun).
Finally, we have a standard that is expressive enough to represent everything a portfolio might want to do. It can be used interoperably and provides good UX for both experts and beginners. Multi-signature wallets are already moving to this scheme, and let’s hope that in the next year the rest of the ecosystem will do so as well, which I imagine will come from the hand of adding support for Taproot.
Bitcoin’s high commissions can be a headache. How does Muun Wallet estimate commissions?
We worked quite a bit on this front, and to be 100% honest, we were quite surprised at how much the commission estimators that basically everyone is using today can be improved ( For example, the client estimator bitcoind).
It turns out that bitcoind does not take into account whatever is happening in the mempool to make its estimates, which makes it extremely slow (at times up to several days) to adapt to changes in the commission market. Nowadays, that commissions are super volatile and change in the order of minutes or even seconds, estimators are needed that look at what is happening in the mempool, and are much more sensitive to these changes.
The problem is that a commission estimator that adapts to changes in the mempool has to process a much higher volume of data, and requires much more maintenance, so it is not a good candidate to be part of bitcoind.
In the last year at Muun we developed an estimator of this style, and trained it with a year and a half of historical commission data. It ended up working quite well. During the weekends in general, the estimator saves more than 80% of fees , and in the week more than 30% on average, although now that the fees are higher, and therefore more volatile, works better, even.
The interesting thing about this is that using Muun it is no longer necessary to browse the Internet to see how the Bitcoin mempool is, and use commissions manually. Our estimator does the equivalent of observing and studying how the mempool behaves and then makes the best possible predictions.
What do you think of the Replace-By-Fee (RBF, or Replace with Commission) method and what advantages do you attribute to it compared to other methods such as CPFP (Child Pays For Parents, children pay parents)
Does Muun allow or allow CPFP?
We come working on the functionality of being able to boost transactions with the repayment of commissions for a few months now, but it turned out that RBF ( Replace-By-Fee ) has thousand cases in which it does not work, very difficult for the user to predict. We did a review of the portfolio ecosystem that implement RBF and the level of usability of this functionality is quite disastrous. To be fair, this is mostly caused by the complexity of the RBF rules.
Since our goal is to put together a mechanism that just works, without the user having to deal with all the This complexity is that we ended up deciding to implement the most complete version, which is a combination of RBF and CPFP (when it can be used RBF, and when not CPFP). In general when RBF can be used it is a better mechanism, because it is much cheaper, but it can only be used if a fairly broad set of rules is met, and only in outgoing (not incoming) transactions.
Is it among your plans to enable advanced privacy methods like CoinJoin?
The day the user experience reaches a point good enough that someone can use a CoinJoin, without knowing that they are using it, it will arrive at some point in Muun Wallet , Without a doubt. We are still pretty far from that point, so for now we will not implement CoinJoin.
What can you tell us about Taproot? Since it was activated in the recent version of Bitcoin Core (0.21.0) Any plans to explore with this solution in Muun Wallet?
As soon as it is activated, we will be there. Taproot will probably be activated in the second half of 2021, and we have already been preparing both with the upgrading system of addresses, and with the backups with output descriptors . With Taproot, a world of super interesting functionalities opens, which we have been exploring since last year. More news will come about the functionalities enabled by Taproot that we have been preparing.
We understand that many portfolios and services manage the opening and closure of Lightning channels, which generally involves a fee or commission on behalf of the provider. Does Muun charge commissions when sending user payments through Lightning?
Muun does not charge commissions beyond than needed to cover Lightning expenses.
Many wallets already have built-in exchanges, sometimes decentralized as made BlueWallet with HodlHodl. Are you planning to integrate the purchase and sale of bitcoin (BTC) from Muun Wallet?
Yes, eventually we will venture in the purchase and sale of bitcoins by fiat.
The problem of the input capacity (Inbound Capacity) of the Lightning network is explained in an old post on Muun’s blog.
In this sense I wanted to ask you about some possible solutions to this problem, such as springboard payments (a way to route payments in Ligthning) or implement a liquidity exchange medium such as Pool, from Lightning Labs.
Have you researched about them or evaluated implementing them in Muun Wallet?
Springboard payments don’t have much to do with inbound capacity or internal rebound capacity, but rather with the outsourcing of the bounce path using prove private entities. We already support much of that functionality, and probably in the next few months we will give full support as the Lightning protocol finishes taking shape (it is not finished yet).
Regarding Pool, today nowadays it is aimed more at an audience of novice routing node operators, rather than targeting end users (Muun users), or professional users who need certain guarantees of which nodes they connect to (our own nodes, Muun’s). ).