Proposal “development-hd-wallet-201705“ (Completed)Back

Title:HD Wallet Project
Owner:babygiraffe
One-time payment: 322 DASH (9500 USD)
Completed payments: 1 totaling in 322 DASH (0 month remaining)
Payment start/end: 2017-04-20 / 2017-05-20 (added on 2017-04-28)
Votes: 806 Yes / 1 No / 6 Abstain

Proposal description

This is cross-posted from the Dash Forum

This proposal will provide DASH a fully-functional hierarchical deterministic (HD) wallet (https://en.bitcoin.it/wiki/Deterministic_wallet) based on the Copay platform for iOS, Android, Chrome Browser, OSX Desktop, Windows Desktop, and Linux Desktop within approximately 6-8 weeks, depending on start date.

During this project, DASH team members are expected to define, refine, and implement updates for compatibility with the HD wallet implementations. There will be additional effort required to validate and refine the product by our own in-house development team after the contractor completes its work, but this will significantly reduce the time to market without taking the team's time away from Evolution.

For those not familiar with the Copay wallet, it is a simple and easy-to-use wallet with widespread appeal in the market. The Dash version of the wallet will ensure we have a set of wallets with a consistent look and feel across various platforms with HD capabilities.

One of the main benefits of an HD wallet is described in the above link as follows... "Early clients such as the Satoshi client generate a buffer of fresh random private keys to be used as receiving and change addresses in the future. This has the effect of invalidating backups after a short period when the keypool buffer (typically 100 addresses) is exhausted. Deterministic wallets can generate an unlimited number of addresses on the fly and as such don't suffer from this issue. As the addresses are generated in a known fashion rather than randomly some clients can be used on multiple devices without the risk of losing funds. Users can conveniently create a single backup of the seed in a human readable format that will last the life of the wallet, without the worry of this backup becoming stale."

Copay wallet's main features include:
  • Multiple wallet creation and management in-app
  • Intuitive, multisignature security for personal or shared wallets
  • Easy spending proposal flow for shared wallets and group payments
  • BIP32 Hierarchical deterministic (HD) address generation and wallet backups
  • Device-based security: all private keys are stored locally, not in the cloud
  • Support for Bitcoin testnet wallets
  • Synchronous access across all major mobile and desktop platforms
  • Payment protocol (BIP70-BIP73) support: easily-identifiable payment requests and verifiable, secure bitcoin payments
  • Support for over 150 currency pricing options and unit denomination in BTC or bits
  • Mnemonic (BIP39) support for wallet backups
  • Paper wallet sweep support (BIP38)
  • Hardware wallet support (Trezor and Ledger) (only in Chrome App version)
  • Email notifications for payments and transfers
  • Push notifications (only available for ios and android versions)
  • Customizable wallet naming and background colors
  • Multiple languages supported
  • Available for iOS, Android, Windows Phone, Chrome App, Linux, Windows and OS X devices
DASH benefits by contracting with *this team*:
  • https://www.ideasbynature.com/ is an experienced team of blockchain-focused crypo-space developers
  • DASH representatives are geographically near IBN offices, and are committed to physically close interaction. We have verbal agreements for co-location of DASH full-time staff onsite to enhance collaborative efforts and speed resolution of roadblocks.
  • The deliverables will enable a single codebase of cross-platform wallet functionality based on familiar and popular front-end frameworks in a very short time-frame (much more quickly than is possible with current DASH team members, alone)
  • "Single code-base" means more features, more functionality, more stability, and less maintenance in less time on more screens by a factorial measure
  • Typical deliverables like this reduce front-end development and maintenance costs by a minimum of 4x over the life-span of the products.
  • Cross-platform testing is included in this engagement, but we are not expecting production-ready code at delivery time. DASH team members expect to fold-in and run the suite of applications through DASH QA rigor prior to release.
  • This effort is expected to provide a new "reference implementation" for our front-end Core wallet systems across all major devices, globally.
  • The Dash Core Team will also gain experience working with a new outsourcing supplier, which we can use for "flex capacity" and one-time efforts if we gain comfort with the provider.
Requested funding is as follows for the May 5th budget cycle:
  • 316.90 Dash for Copay wallet outsourcing ($25,000 USD @ $78.89 per Dash based on current rate at proposal submission)
  • 5.00 Dash proposal reimbursement
Total: 321.90 Dash

Note: Should any funding remain, we will apply it toward future development outsourcing efforts.

Show full description ...

Discussion: Should we fund this proposal?

Submit comment
 
0 points,7 years ago
You should also support BIP44, as that bip handles altcoin derivation. If you conform to the BIP44 standard, the seed your wallet creates will be compatible with any other wallet that also uses HD seeds (such as Jaxx and multiexplorer).
Reply
0 points,7 years ago
According to this link, Copay after version 1.2.5 is BIP44 compatible. (https://blog.bitpay.com/copay-update-1-2-5/)

And this link here (https://github.com/ethereum/EIPs/issues/84) states "The Jaxx wallet used lightwallet (at first) under the hood and chose an HD path of m/44'/5/0' which is almost BIP44, except the change path is not used."

Copay should take a Jaxx wallet, but it may not work the otherway around depending on if Jaxx can spend from the change path - m/44'/5/1'

The Dash Wallet for Android is not currently compatible with BIP44.
Reply
0 points,7 years ago
Jaxx(Dash) use m/44'/5'/0'/0/m for receive and m/44'/5'/0'/1/0(!) for change.
Reply
0 points,7 years ago
Is that compatible with other apps?
Reply
0 points,7 years ago
Exodus support bip44 and bip39

https://www.exodus.io/releases/#1-24-0

IMPROVED: Exodus is now more flexible in the restore process with the format of your 12-word phrase. Backup phrases can now be separated by spaces or newlines.

IMPROVED: Moved all address chains to a simplified one chain for maximum BIP44 compatibility. This makes it much easier for users to move back and forth between other BIP44 standard wallet implementations.
Reply
0 points,7 years ago
Same as DashCore HD and HW wallet(Trezor/Keepkey/Ledger), except change address reuse of Jaxx(Should not). And HW wallet support account'. check https://github.com/dashpay/dash/pull/1405#issuecomment-298833983
Reply
0 points,7 years ago
Yea... Need this.
Reply
0 points,7 years ago
Good proposal. I'm in.
Reply
0 points,7 years ago
Just a thought.. the ability to drip-autopay an address - like for automatic rent payments each month, etc. would be an outstanding feature, if possible..
Reply
0 points,7 years ago
I agree with GDASHMoney. I have actually made the suggestion for Regular Payments to three different wallets now, and while they sometimes debate it they don't take it seriously. The advantage is, other wallets don't have it and people take it for granted from their banks. How many people don't have a standing order running? The disadvantage is, dash and other currencies are too volatile at the moment to be confident how much is going to go out in fiat.
Reply
0 points,7 years ago
I would personally like this, and I will advocate on behalf of all of us for the time to implement the code for such functionality.
Reply
0 points,7 years ago
Great news - I'm in :)
Reply
7 points,7 years ago
I'm with bitedge. Please make InstantSend a priority here.
Reply
2 points,7 years ago
Consider it acknowledged and top of mind.
Reply
4 points,7 years ago
Copay is a great starting point. On initial release will this wallet support instant send, private send and masternode config? If not they should definitely be added in a phase 2 effort.
Reply
1 point,7 years ago
The current assumption is yes, but I can't commit yet as I haven't fully broken apart the data structure needed, and the functionality that the Bitcore back-end is providing "out of the box".
Reply
1 point,7 years ago
also instant send and possibly a way to bill like bitpay or blockonomics would be great. i now bill in Btc using blockonomics and would like to be able to bill in Dash.
Reply
1 point,7 years ago
We'll know within the first couple of weeks the scope. In order to get it through the Apple store approval process, however, we will need to keep the initial release as "vanilla" as possible.
Reply
1 point,7 years ago
of course
Reply
0 points,7 years ago
using trezor as a financial storage medium
Reply
0 points,7 years ago
Seems pretty central to me. I'm in.
Reply
0 points,7 years ago
yes
Reply