Full Integration Guide and Value proposition of RNS for Wallets
Phase 1
Enhance UX to improve user adoption
- Simplify the way users send and receive crypto-assets (in Rootstock and other blockchains)
- Avoid losing funds due to human errors and hacking/phishing.
Problems to solve
- Difficult or impossible to remember crypto wallet addresses → bad UX for end users, diminishes non-tech user adoption.
- Error-prone when writing traditional crypto wallet addresses → may result in lost funds when transferring crypto assets.
- Hacking/phishing-prone when copy-pasting traditional crypto wallet addresses → may result in lost funds when transferring crypto assets.
- Difficult to add contacts to crypto wallets and impossible to dynamically update contact’s addresses
→ bad UX for end users.
UX Proposal
Full UX Flow in Figma
https://www.figma.com/file/U1lTWDKjzIi8JvEl77FEYy/RNS-for-rWallet
Steps:
- Open the full UX flow for "RNS for Wallet Integration" in a desktop computer.
- Press the PLAY ► button in the upper right corner.
Feature summary
- YourWallet Nickname
- Free RNS subdomain when installing app**
- Domain template:
xxxxx.yourwallet.rsk
xxxxx
is the nickname
- Domain template:
- It is linked to all the wallet addresses created when installing the app.
- It can be presented to end users as a “[YourWallet]’s nickname” to improve non-tech user adoption.
- Users won’t have to understand a new concept such as RNS nor smart contracts nor fees nor gas.
- Behind the scenes is simply an RNS subdomain of the yourwallet.rsk domain
- Subsidized fees and gas by RootstockLabs
Note: "yourwallet.rsk" is just an example main domain. Replace "yourwallet" for the domain you will use for your wallet (eg, if your wallet is called "Bitcoin Wallet" you could register bitcoinwallet.rsk and use it as your main domain). Talk to your IOV account manager for more information. Or, if you prefer, just go to rns.rifos.org and register the main domain of your preference.
- Free RNS subdomain when installing app**
- Send crypto-asset using human-readable addresses (YourWallet nicknames and any other RNS domain) while also maintaining traditional wallet addresses.
- Contact book
- Easy YourWallet nickname sharing
RNS Integration Guidelines
https://developers.rsk.co/rif/rns/integrate/
RNS Documentation
rns-js library
https://www.npmjs.com/package/@rsksmart/rns
RNS in Rootstock (RSK) Developer portal
https://developers.rsk.co/rif/rns/
Integrate Your Wallet with RNS
https://developers.rsk.co/rif/rns/integrate/integrate-wallet/
Integrate Your dApp with RNS
https://developers.rsk.co/rif/rns/integrate/integrate-dapp/
Phase 2 (optional)
Empower YourWallet users with the full RNS experience
- Let Your Wallet users have full control of their RNS domains.
- Let users switch their main RNS domain in Your Wallet.
- Let users register new RNS domains.
- Let users manage their own RNS domains from Your Wallet
Problems to solve
Upon completing phase 1, your wallet would have the minimum viable functionality needed for an RNS integration. However, there are some additional features, that we suggest below, that would further improve the user experience.
- Not possible to update the address resolution for my domain. → user needs to perform additional steps by using the RNS Manager
- Not possible to change my main YourWallet subdomain (nickname) → less flexibility for end users and less decentralization
- Not possible to control, register, use and admin different RNS domains from YourWallet → RNS frequent users will have less flexibility to fulfill their needs
Feature Summary
- Change main domain
- Users will be able to change their
xxxxx.yourwallet.rsk
for another RNS domain they own of any type (eg,xxxxx.rsk
).
- Users will be able to change their
- Change address resolution
- Users will be able to change the address resolved by their YourWallet nickname (or RNS domain).
- Register new RNS domains
- Users will be able to register new RNS domains from YourWallet app.
- Full Admin RNS domains
- Users will be able to register new subdomains from YourWallet app.
- Users will be able to renew domains from YourWallet app.
- Users will be able to transfer domains from YourWallet app.
- Users will be able to set Ethereum/Binance/IPFS/Swarm/RIF Storage/Tor/Torrent/Lumino/etc. addresses resolutions from YourWallet app.