Introducing Dappy Wallet

The application for Blockstack and ShapeShift decentralized wallet Bounty

Eugene Ive
Jun 29, 2018 · 5 min read
Image for post
Image for post

We are a group of blockchain enthusiasts with a huge background in software development and product management. We have a distributed team across EU and Russia. At the moment we have experts from IT, fintech, the blockchain, security, marketing, design, UX/UI in our team.

We have in our portfolio a light wallet project, decentralised ERC-20 tokens exchange, custom blockexplorers.

Based on that experience, now it’s more clear that open source projects are preferable for the crypto community. We’ll be glad to take part in the Blockstack and ShapeShift contest. We’ll bring our experience and skills to bring to the community open-sourced approach of the universal wallet. It will be more accessible and secure than even existing ones because of Blockstack decentralised features, more easy-to-use and more reliable. It will be a light wallet with decentralised storage and login.

As a team of crypto enthusiasts, we believe in decentralized approach and anonymity as a key feature of blockchain technology overall.

Wallet building principles and motivation

We are guided by several core principles:

  • Building open source and transparent solution

The community support is the key factor to get success for the blockchain product, especially for the wallet as a tool for managing the cryptocurrency assets. We believe that only decentralized and open sourced solutions are driving the development of blockchain community services.

  • Building trust solutions

Blockstack features for the wallet authorization, storage and encryption are the way how to build decentralized wallet with decentralized storage. It’s the guarantee that the wallet is non-custodial and the developer doesn’t proceed with the customer private keys.

  • The wallet solution should be useful

We’ll do our best in UX to build the wallet useful and having intuitive clear interfaces. The wallet interface is one of success key feature and we are considering it as a way to get the audience and traffic to the new wallet. We are going to keep existing traditional patterns for the crypto wallets, so the users will not be confused with the new wallet. We need to make the product usability better than existing ones.

  • Respect customers privacy

We do not need to use KYC or collect customers data as far as we don’t touch users coins.

  • A light wallet

We never touch customers funds. The wallet uses simplified payment verification libraries to operate with crypto, all transactions are signed on the user’s side and are secured. The wallet developer is not able to see or change the transactions payload. The customer is only the one person who manages his\her keys himself.

Technical Approach

The wallet is the web application that allows a customer to perform all operations secured in the web browser.

  • it uses decentralised storage Gaia from Blockstack
  • it uses SPV libraries to communicate with blockchain

The wallet uses the dapp Blockstack ID for the wallet Authentication.

  • create new wallet
  • restore the existing wallet using the private key (mnemonic, either other notation)

The restored wallet private key will be stored securely in Blockstack Gaia Storage using additional encryption using transit key.

  • send coins
  • receive coins
  • display the wallet history, transactions details
  • exchange cryptocurrencies, ShapeShift API will be used for the exchange assets
  • import the private key

We are going to support tokens following ERC20 and Omnilayer specifications. Some predefined amount of tokens will be available in the wallet. The basic operations will be supported:

  • send coins to smart contract
  • display tokens in the balance history
  • send tokens to another address (in case the token is transferable)
  • exchange

The customer will be able to add the custom token that will be available for the rest of the wallet audience.

Security considerations

Security is our priority. The decentralised wallet approach itself is our vision for the secured blockchain wallet. The customer private keys are the most important and sensitive aspect. In our opinion, we are developing one of the most reliable and secure tools for the customers to use the private keys.

The open-sourced approach guarantees that almost everyone can be sure for 100% for the application transparency.

Principle schema of the application

Image for post
Image for post

Team background and qualifications

  • Andrew P., the Captain, has 1.5 years of experience in the blockchain, 15+ in IT product management. Has in the portfolio projects from mobile ads, SaaS enterprise solutions, high load, mobile app development and production. Andrew interests are decentralized cryptocurrency exchanges, dapps, wallets, smart contracts.
  • Alex S., CTO, the expert in IT, security and high load. Has 12+ years of experience in high load projects’ development, 3+ years of experience in blockchain development.
  • Eugene I., product manager, has 5+ experience in IT product management, 8+ years in UX/UI, a user-focused crypto evangelist, blockchain specialist
  • Tim K., project manager 10+ years in IT projects. Full stack, web, mobile apps are in the portfolio
  • Nick P., UI-specialist, graphic designer, 5+ years in interfaces Adobe products, Figma, Sketch
  • Dmitriy M., senior web-developer, has 8+ experience in web development Scala, React.JS, Node.JS, JavaScript ES5-ES7, TypeScript, NPM, REST API
  • Mary K., web-developer, has 5+ experience in web development Node.JS, React.JS JavaScript, Angular, Electrum, REST API

Evaluation plan

We have quite tiny and reasonable schedule for the wallet implementation. The distributed team with a varied range of professionals gives us the ability to launch in the parallel main project phases: planning, UX prototyping and UI, core development.

We are using the agile approach with continuous delivery, so in any time of moment, we are ready to present our progress and performance to the Contest Judge.

  • authorisation with BlockstackID – DONE
  • Gaia as decentralised storage – DONE
  • We are planning to support: BTC, LTC, BCH, ZEC t-addr, BTG, DOGE, DCR, DASH, ETH, ETC – DONE (except ZEC and DCR)
  • 500+ tokens support (omnilayer + erc20) – DONE (except omnilayer)
  • Custom token support – DONE
  • Exchange powered by Shapeshift – DONE
  • add more coins: going to cap ~top-20 from Coinmarcetcap (NEO, KMD, XMR, WAVES, XRP and etc.)
  • Blockstack ID contact list
  • support z-addr for ZCash
  • support tokens for each currency from the wallet
  • add ERC-223 and ERC-721 support
  • share custom tokens across application audience (self-growing token support with pre-moderation)
  • add currencies with high attention: tezos, boscoin and others
  • support different notation for the private keys (xprv, mnemonic, json-file, wif and etc.)
  • different UI themes for the application
  • top up wallet with fiat
  • create own smart-contract (token) in-app
  • Multilanguage support
  • Mobile friendly or mobile app
  • HW wallets integration (ledger, trezor)
  • In-app marketplace (ICO and/or Dapp)

You’re welcome to leave feedback/comments for BC Net team here.

Twitter / Reddit / BitcoinTalk / Medium

BCNet / App (open source code)

Official BlockStack Voting

Dappy Wallet

Dappy Wallet is a light universal wallet with decentralised…

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store