On the fourth and final episode of ZEND&FRIENDS ‘StarkNet Native DeFi’ AMA series 04, zkLend Co-Founder Jane was joined by Motty Lavie, Braavos CEO & Co-Founder to talk about self-custody, building on StarkNet and all things wallet related.
Full Recording
Listen to the full recording on our Spotify now.
AMA TLDR
The ‘Why’ of Braavos [01:50]
I’m what you can call a latecomer into crypto. Was fortunate enough to have some time when I entered the space to dive deep and learn all the different fundamentals both from the social and economic perspective, but mainly from the technical perspective. The different L1s and tradeoffs, different L2s and their tradeoffs. Eventually decided to settle on StarkNet and build there because I found it to be the most promising technology to scale Ethereum. And I’m very happy that I did that because I think that in the past almost twelve months that we are in the StarkNet ecosystem, first with mySwap the decentralised AMM that we built and then with Braavos, our conviction on L2 in general and on StarkNet in particular, has continued to grow.
When we examined the different solutions, the different options and the different networks to build on it was clear to us that we will build on the Ethereum ecosystem because it’s very aligned with the values that we believed are true to the space, security and decentralisation, but Ethereum has a scaling problem that L2s solve. When we examined the different L2s both Optimistic Rollups and ZK Rollups we found that StarkNet is the most promising one, but they had one big caveat for us which was the Cairo programming language and the Cairo Virtual Machine which we all know is not the same as Ethereum, it’s neither compatible nor equivalent to Solidity, the programming language used to write smart contracts on Ethereum. That was a concern to us because we were afraid of the maturity of the language and how many developers will adopt it and so forth. So instead of only doing something in theory, let’s play with something real.
So we decided to build a DEX which started as an educational project and I can share with you that when we launched the DEX, mySwap on testnet which was on early January this year, we thought that no one would care. We didn’t tell anyone, there was no website, no Twitter, no Discord, there was nothing and somehow people found out and started using it. We started to see transactions, first tenths of users, then hundreds of users, and eventually tens of thousands of users, it was amazing. People liked it so much, we should productise that. Back then StarkNet as an ecosystem wasn’t mature enough for prime-time mainnet. So we found ourselves with a nice knowledge of the space and with a product that we cannot launch yet on mainnet.
Then we went back to the fundamentals, the reason we entered the space to begin with. And what we can do now that wasn’t possible before combined with L2s very low gas fees and the fact that StarkNet has account abstraction built into the protocol we thought that it opened a whole new design space to improve the infamous crypto user experience. — Motty [06:17]
Which as a latecomer to the space, it was shocking to us how different it is from Web2 and how tech-savvy you need to be to do stuff on self-custodial solutions and crypto. And you need to want to do that because nothing makes it easier for you to do stuff. The reason that I think that most users are defaulting to centralised solutions like FTX, Celsius or Voyager is that the self-custodial experience is not good enough. We as an industry should face that and work to improve that. We felt that the coupling of low transaction fees, advancement in ZK proofs and account abstraction allowed us to bring something completely new to the space.
Smart Contract Wallets [08:55]
I think we all know classic wallets which are self-custodial like MetaMask on Ethereum L1. MetaMask if you look at it from a technology perspective it’s only an application, meaning it resides only on the user’s computer or mobile device, it has no traction on-chain. It signs transactions on the application side and sends them to the blockchain for processing. In contrast, smart contract-based wallets have two sides, there is the application part which is like MetaMask, like regular self-custodial wallets. The second part is the smart contract that resides on-chain that represents the user account and all transactions go through it before they reach any other contract or protocol on the blockchain. What that enables is a completely new design space to have an arbitrary logic with almost everything that we want from an account.
We can start with signature verification logic which is extremely powerful but it also opens a door to improvement in UX and how users are managing their accounts since we have this part of the account on-chain as a contract. For example, multi-call is the ability to do multiple calls to contracts on-chain within the same transaction. Why is it so good? Let’s take the UniSwap experience for example if I want to swap tokens or add liquidity then I need to first approve the tokens that I want to use and usually, the approval is for an unlimited amount and only then can I swap or add liquidity. That’s both security and harder because I need to do two transactions with multi-call we can bundle these two together in a single transaction which gives you, first, the ability to issue only one transaction, and secondly, even more important, is to give an allowance to the protocol to withdraw from our wallet only the exact amount that is needed for this specific transaction and not unlimited access to our wallet.
In L2 it is similar to L1 we pay gas fees for storage and steps, the major advantage of L2s is that the gas fees besides being significantly lower are that the payment for steps, especially on StarkNet is exponentially lower than the payment of steps on L1. If we do millions of steps in L2 it is in the same order of magnitude as doing only a few thousand steps in L1.
The second example that I like is account segmentation. If we think about TradFi we have different types of accounts. We have our checking account which we use almost daily and usually involves transactions with a lower amount and we have our savings account which doesn’t use daily usually and the sums and transactions there are usually higher. This separation we cannot do and have it protected by the blockchain on a regular wallet but it’s something we can do on smart contract-based wallets.
Since we can embed the account segmentation within the account contract on-chain, and say this account has a daily withdrawal amount limit, but the other account maybe I don’t want to have a limit but I do want to have a time delay or two-factor authentication on transactions above a certain amount. This stuff that we take for granted in TradFi and Web2 simply doesn’t exist in crypto, certainly not in a frictionless user experience.
For example, the difference between Ethereum and StarkNet currently is that StarkNet has built account abstraction into the protocol, meaning the StarkNet operating system enforces account abstraction on everything that goes on in the network which is very powerful from a security point of view. Ethereum on the other hand, if people know EIP-4337 it is presented in the application layer, meaning the protocol does not enforce that, it is enforced by a set of smart contracts. This is nice, but it is much less secure and much less robust than what we have on StarkNet. Now theoretically Ethereum can add account abstraction into the base layer, but that’s a major change that would probably take years to manifest on the chain. A nascent network like StarkNet can learn from the mistake were done in 2015 or 2017 and build more secure networks that we can utilise.
Braavos Wallet Features [19:13]
For us at Braavos, everything is about improving the user experience in every way possible. How do we improve the security so users feel comfortable using a self-custodial and decentralised solution? How do we remove the burden from their shoulders that every wrong click, every wrong digit that they enter can result in loss of funds? This is our goal, this is what we try to do, we want to make the crypto self-custodial experience as smooth as the centralised custodial one but without losing the core values of crypto.
If I look back at the first few months when we developed Braavos, we invested in what I call the basics. The things that every wallet should have and the users are used to getting that from the wallets they use on other networks. Whether it is to support multiple browsers so users can connect with whichever browser they are used to. Having NFTs in their wallet in the form of images, videos or audio. Having a very nice feature of transaction explainer, we give you information that the dApp requests you to sign so it won’t be a set of gibberish numbers and letters that no one understands, but actually, something that is human-readable. We also added a built-in swap/exchange into the wallet. On top of the browser extension, we released mobile apps for Android and iOS, and as you mentioned during the introduction, this is the only way to access StarkNet today through mobile in a native way is to use the Braavos mobile app to access the various dApps. All of this is the basics.
Once we were done with the basics, we started utilising the power of smart contract-based wallets. Besides multi-call, which is also pretty basic, the last feature that we released just a couple of weeks ago in StarkNet CC in Lisbon is what we call hardware signer. The idea of the hardware signer is to utilise the mobile device’s built-in security chip to sign the transaction and verify them on-chain. And as far as we know this is the first time that it’s done on any major blockchain. We feel like this is a revolution in terms of the security of funds of users in crypto because now even if someone got a hold of your seed they cannot steal your funds which is extremely powerful and to get that today you would need to use a dedicated device, what we call a hardware wallet that you need to buy separately and learn how to use, operate and store. And here you get it built-in with the hardware signer feature which is a software feature that utilises the security chip which is the hardware on your mobile device.
Mobile Wallet [25:19]
I think if you wanna target mass markets and the next wave of users to come to crypto I think there’s no doubt that mobile is a must because the first choice in accessing the internet is mobile, for it’s their only choice so they can’t choose between mobile or desktop. So if you won’t cater for that on mobile then we simply lose a huge amount of people. On top of that, the built-in features that we have in the mobile version such as 3D face ID, robust fingerprint, security chip, touch, etc. Allows us to make a much better user experience not only for wallets, assets and NFTs but also for gaming. If you think about gaming, games are extremely cool on mobiles this is a flourishing industry and there is no serious studio today that doesn’t have a mobile play and sometimes their mobile play is their main focus. Games that are developed on StarkNet have concrete plans on how to enable the experience also on mobile. We can think of some of the protocols that we know would be very cool with the touch interface on mobile. So for us, it’s pretty natural to have dApp supporting mobile, whether they are classic DeFi like zkLend or cool NFT innovations like Briq or whether they are Web3 games like we see being developed on StarkNet.
Hardware Signer [28:23]
We deployed it first on mobile but the second phase will be also to enable that on PC, especially on laptops that have the support for a built-in security chip and have a strong authentication mechanism as we use on mobile devices. Whether it is biometric authentication, face ID or fingerprint that will complete the experience for users. Users who want to use their mobile for transactions, users who want to use the Laptop can use that, and users that want to have both can have both and later down the road in the form of 2FA, like I mentioned earlier, transactions above a certain amount will require 2FA. This will create even stronger security.
I see the hardware signer completely replacing the hardware wallet in the future. The modules that hardware wallets use today are modules that were derived from the security modules that exist on our mobile devices. Take the iPhone for example, with its security subsystem deployed on hundreds of millions of units around the world and it’s constantly being attacked not by two kids in a laptop in some garage, but by powerful corporations and governments around the world to get not only money but information, location about people for example. The number of resources that people on earth invest to try and hack the iPhone is enormous, it’s in orders of magnitude more than hardware wallets and that makes it even more robust. At least as far as we know, since 2018 there was no, not even a mild security breach to the iPhone also the 2018 breach required a lot of effort to invest in a device so the attacker has to get a hold of the device. Also, that specific breach wouldn’t apply to the hardware signer case. Talking about the spectrum, there will be some people that will want to use a hardware wallet as an additional signer and keep it in a safe in a very secure location but I think that the vast majority of people won’t use a hardware wallet, they will have the same or even better security within their mobile devices. Similar to my belief that in the future all wallets will become smart contract-based wallets like Braavos or existing wallets that will try to transform to be contract-based, all of these will have the hardware signer built-in that will make hardware wallets redundant.
Hardware Wallets [34:36]
At the end of the day, we want users to fill comfortable and secure. We do think that hardware wallets and the experience that they present are for the very tech-savvy, meaning you need to want to use a hardware wallet and to order that, to pay for that, to educate yourself on what exactly it means and I believe is that for most users it won’t be relevant. Most users won’t take the time, effort and friction that comes with the hardware wallet, especially if they have a solution that is on par and will get better and better as time goes by built in a device they already have. I’m not saying there won’t be a small number of users that for several reasons will still want to use hardware wallets, there might be, and if we see big enough demand for that we will consider integrating hardware wallets into Braavos, but I don’t believe they won’t be as necessary.
Institutional Wallet Support [37:18]
There was a phone called Blackberry that all the corporations both in the U.S. and around the world used and that was like the A grade for institutions because it brought the security that corporations needed. It was integrated with their back-end system but when the iPhone and when smartphones came they introduce such better UX that these Blackberry devices simply died. I think it’s a matter of both education and market adoption, but eventually, we will see the entire ecosystem converge on a very specific set of solutions that are both decentralised and self-custodial. I think it is similar to the discussion there was in the industry, in the past, luckily for all it no longer exists, whether corporations or institutions should build on a public blockchain or should have their private blockchain. Luckily this discussion has died and everyone understands that public decentralised blockchains are the future. I think the same thing will happen with wallets, there will be a transition period where organizations and institutions that used to use hardware wallets need to be educated on the benefit and security of using the security chips that they already have in their devices and are managed by the corporate ID, etc, but I guess that in the end, we will move towards fully served custodial solutions.
Naturally, we are strong believers in self-custody. If we have custodial solutions then better to stay with the current TradFi system which is already mature and regulated and we won’t see the likes of Celsius and FTX. We are big believers in decentralisation and self-custody, it doesn’t mean there won’t be room for centralised solutions in the coming years, I don’t think that banks are going to disappear, also not crypto banks, but the trend, the directions the industry is going after the turbulence we’ve gone through is that people will understand that decentralisation and self-custody aren’t just buzzwords, they have real meaning and we’ll strive to use these solutions. It’s up to us as developers of the space to give them the right tools to make it easier for them to choose self-custody but if we will be able to do that which I strongly believe that we can, then that’s the future.
What differentiates Braavos? [42:46]
We mainly look at users and the value that we can bring to them. I think that we brought a lot of new things to the StarkNet ecosystem and new things to crypto at large and we touched upon them, but before we deployed and released Braavos’ first version there wasn’t multiple browser support, users had no choice they had to use Chrome. Then we brought mobile which up until now is the only way to access StarkNet on the go on your mobile device. We introduced NFTs, NFTs we’re on all other chains but not on StarkNet, so this is something that we brought first to StarkNet. We brought the transaction explainer. Our goal is to constantly push for new things and better things to the users and if all those things that I mentioned are the basics but they needed to be on StarkNet. With the hardware signer and the other things that we have on the pipe, I think these are real innovations that I don’t think we’ve seen in other places, not only on StarkNet but in the crypto space in general.
About Braavos
Self-custody wallets have been making headlines over the past week, which gives us all the more reason to bring on Braavos, one of #StarkNet’s leading wallets, onto the latest ZEND&FRIENDS episode.
Braavos was founded on a belief that people should hold at least a portion of their funds in self-custody. Yet up until recently, 80–90% of crypto users employ centralized and custodial solutions. Why is that? Because self-custody can be complex and cumbersome.
In current solutions, if a user forgets their private key or worse, loses their 12-word seed phrase, they will lose access to their funds. Braavos mission therefore is to make one of the gateways into crypto, Web3, and DeFi as inituitive and stress-free as possible.
The Braavos wallet is a smart contract-based wallet (aka account abstraction or EIP-4337). It’s different from an EOA wallet used by the likes of Metamask in that the wallet itself is a smart-contract representing the user’s account.
You can find out more about wallet types here.
This is important because AA enables customisation in the way the wallet interacts with users, the blockchain itself, and dApps. This means each account can have settings that are tailored to that user’s needs.
Features AA wallets enable include:
- Multi-call, the ability to send batched transactions on the blockchain
- Account segmentation
- Social recovery
- Signing permissions
Since coming out of stealth in Q2 22, the Braavos team has already introduced a brower extension and mobile app wallet featuring:
- Transfers
- Swaps
- NFT support
- Mobile hardware transaction signer
The team is just getting started, and have recently raised a $10mn seed round led by Pantera Capital and supported by StarkWare, DCVC, among other investors.
This section was adapted from our original thread, here.
About zkLend
zkLend is an L2 money-market protocol built on StarkNet, combining zk-rollup scalability, superior transaction speed, and cost-savings with Ethereum’s security. The protocol offers a dual solution: a permissioned and compliance-focused solution for institutional clients, and a permissionless service for DeFi users — all without sacrificing decentralisation.