Source: Ethereum enthusiast
Original author: Sunil Tom Jose
Translation & amp; Proofread by Min Min & AMP; O sword
The DeFi movement shows the strength and maturity of the Ethereum ecosystem. But while the user experience continues to improve, there is still a gap between the wallet and the blockchain that could baffle even the most sophisticated Ethereum users.
Fortunately, TokenScript can help users bridge this gap.
Recently, I experimented with Compound. This is a well-known DeFi application. Although I am a cryptographic currency user, I am not an Ethereum developer. So, I tried the Compound user experience in the simplest way possible: Open my Chrome browser and use the MetaMask extension to connect to my wallet.
Next, I tested the Compound through the following steps:
1. Buy WBTC using ETH on Uniswap. This kind of trading can bring more profits. That's because Uniswap lets me trade tokens directly from my wallet.
2. Use WBTC to mint cWBTC over Compound. As a holder of cWBTC, I not only redeem WBTC at any time, but also receive the interest accrued therefrom.
3. Obtain the income from lending BTC.
The test was very smooth. This shows how advanced Ethereum wallet and dApp are, the differences in how smart contracts are integrated, and how DeFi dwarfs centralized services. And from start to finish, I don't have to give the key to a third party.
However, much of the information is missing
From the point of view of the lack of information, the following points seriously affect the user experience:
1. There is no record of Uniswap transaction on Metamask. I can only see a simple list of trades. If I search for these transactions on Etherscan, I might find the details. Problems can arise when it comes to filing taxes.
2. When I cast cWBTC, the balance of WBTC in my MetaMask became zero. To see my cWBTC balance, I must paste the cWBTC contract address into an input box. Then I found out that The amount of cWBTC I held was about 90 times the amount of WBTC I had previously held, which confused me.
3. As long as I lent WBTC for the Compound, I was able to get COMP tokens in what's known as liquidity mining. This is a great feature, but here's the problem: Where can I check my COMP tokens? To see my COMP token on MetaMask, I went back to the contract address and pasted it into the relevant input box. However, since my account balance is zero, I have to get my COMP token back first. As a result, I didn't get any COMP tokens on MetaMask, even though I provided the smart contract address.
4. In the end, I still have to use the website. If the Compound site goes offline, I don't know what to do. In theory, I hold the keys to all my money, but my wallet doesn't understand the operation and doesn't know what tokens I have. So I had to rely entirely on the Compound site to explain what was happening on the blockchain and then create the deal.
I love DeFi and think it's great. But for a variety of reasons, the opacity of transactions inside the wallet is a major flaw. To be fair, even if we have decentralized and unmanaged cryptography wallets, I can't get rid of my dependence on centralized services in my personal experience. I know exactly how I feel, and one of the main reasons is this:
Smart wallets are not smart
All DeFi dApp have the problems I mentioned above. I think the crux of these problems is that the experience of smart wallets is clunky.
So what should a smart wallet look like?
I think smart wallets should:
1. Display all relevant information about each transaction.
2. It was detected that I held THE cWBTC token, and explained why the quantity ratio of cWBTC and WBTC was not 1:1.
3. Show me how much interest I can earn, how much I have earned, and whether I can withdraw my COMP token.
4. Know how to create a transaction to provide a loan and retrieve my COMP token, and provide the buttons to do so.
And so on.
In short, MetaMask is silly.
This is not MetaMask's fault. MetaMask is a good wallet. It improves the blockchain user experience in many ways and is a good way to direct users to the Ethereum blockchain.
Even so, MetaMask is not clever. There are inherent limitations to its understanding of blockchain. To be fair, this is true of all smart wallets. This is because there is no standardization layer between the blockchain and the user agent. A smart wallet is just a wallet.
MetaMask developers need to invest a lot of people to make MetaMask smart. They need to customize the format for MetaMask so that it can read and understand smart contracts, describe them in the wallet UI, and develop trading scenarios related to those contracts.
It is unrealistic to expect wallet developers to solve all these problems. Even if they did, it would make MetaMask too big and threaten the application's performance. Moreover, MetaMask cannot be extended. Imagine the number of existing tokens and smart contracts and the new tokens and smart contracts that will emerge in the future as DeFi becomes mainstream. Developers simply cannot implement all the necessary changes in time.
What we need is a layer between the blockchain and the user agent that allows the creators of smart contracts and the issuers of tokens to explain smart wallets, smart contracts and tokens.
TokenScript provides just that kind of transparency. With TokenScript, smart wallets can replace websites while ensuring a smooth user experience.
TokenScript is a simple and powerful solution
Simply put, TokenScript is a layer of JavaScript code with XML tags. It describes the attributes, logic, operations, and user interface elements associated with tokens.
TokenScript files are written and signed by the token issuer. Users can download it from anywhere. We provide a TokenScript library for token issuers that any web site can service, just as any web site can verify the signature of a contract creator.
TokenScript also provides a common data layer. So let's say you have 10 tokens, each of which is affected by the price of ether, and you just have to look up the Ethereum blockchain once.
Wallets can store TokenScript and then use them. As mentioned above, TokenScript is a simple and powerful solution. We have implemented TokenScript on AlphaWallet. There may still be some work to be done, but we have made great progress. TokenScript has so far been applied to FIFA football tickets, digital car keys from multinational car companies (that is, owners' portals), smart DeFi tokens from the main DeFi project, and other smart tokens (for example, ENS). You can find some TokenScript scenarios on our GitHub library. In fact, we've outlined a few application scenarios.
We truly believe that TokenScript can unlock the potential of tokens and smart contracts. If you want to learn more about TokenScript and contribute to TokenScript, please visit our GitHub library, read the concept file, and browse our community forum.
Welcome to join the official BlockBeats community:
Telegram Subscription Group: https://t.me/theblockbeats
Telegram Discussion Group: https://t.me/BlockBeats_App
Official Twitter Account: https://twitter.com/BlockBeatsAsia