Welcome to the Dash Forum!

Please sign up to discuss the most innovative cryptocurrency!

Proposal: HD Wallet Project

Discussion in 'Pre + Budget Proposal Discussions' started by Ryan Taylor, Apr 28, 2017.

  1. Ryan Taylor

    Ryan Taylor Well-known Member
    Dash Core Team Foundation Member

    Joined:
    Jul 3, 2014
    Messages:
    539
    Likes Received:
    1,631
    Trophy Points:
    263
    This proposal is cross-posted to www.dashcentral.org/p/development-hd-wallet-201705

    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*:
    • http://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.

    Manually vote YES on this proposal:
    dash-cli gobject vote-many c553eba90e3cdac18a6a44f549e475032829417c811d749d37ed390be06a0518 funding yes
    OR from the qt console:
    gobject vote-many c553eba90e3cdac18a6a44f549e475032829417c811d749d37ed390be06a0518 funding yes

    Manually vote NO on this proposal:
    dash-cli gobject vote-many c553eba90e3cdac18a6a44f549e475032829417c811d749d37ed390be06a0518 funding no
    OR from the qt console:
    gobject vote-many c553eba90e3cdac18a6a44f549e475032829417c811d749d37ed390be06a0518 funding no
     
    • Like Like x 7
  2. mastermined

    mastermined Active Member

    Joined:
    May 26, 2014
    Messages:
    511
    Likes Received:
    385
    Trophy Points:
    133
    Kinda expensive but I think it is worth it. It has my votes!
     
    • Agree Agree x 1
  3. ampp

    ampp Member

    Joined:
    Feb 12, 2017
    Messages:
    184
    Likes Received:
    75
    Trophy Points:
    88
    I think its quite the deal considering it's all of the platforms. It's going to be clean. Look at https://copay.io/
     
  4. xjones

    xjones Member

    Joined:
    May 22, 2016
    Messages:
    79
    Likes Received:
    38
    Trophy Points:
    58
    Statements

    This is a great idea.

    Please include hardware wallet support in the Android version.

    I highly recommend keeping the many good attributes of Copay while eliminating the not-so-good ones.

    A few weeks ago, the Copay wallet was completely redesigned, and the new user interface is quite poor. Please base your planned implementation on the older better design.

    Please use a standard derivation path when interfacing with a hardware wallet. Copay does not, which has been reported to cause user confusion: https://github.com/bitpay/copay/issues/4987.

    Question

    Will this be an independent fork of Copay, such that future changes will cause this project and Copay to continue diverging? Or will some effort be made to keep both in sync so that each might continue to benefit from improvements in the other?
     
  5. blockchaintech

    Joined:
    Apr 22, 2017
    Messages:
    102
    Likes Received:
    42
    Trophy Points:
    78
    Excellent idea.

    1)
    Copay is a good multi-platforms wallet

    2)
    This wallet have multisignature

    Is a good bridge for Dash earl-adopters
     
  6. qwizzie

    qwizzie Well-known Member

    Joined:
    Aug 6, 2014
    Messages:
    1,533
    Likes Received:
    723
    Trophy Points:
    183
  7. xjones

    xjones Member

    Joined:
    May 22, 2016
    Messages:
    79
    Likes Received:
    38
    Trophy Points:
    58
    Oh dear, I think this is going to be a disaster.

    The http://www.ideasbynature.com/ website listed concap.io as one of their projects.

    So I downloaded the coincap.io Android app, and I was shocked at its many flaws. Briefly: app takes 4-5 seconds to start up; unreadable fonts; charts only linear not logarithmic; "All" charts has no time label so you have no idea how far back in time it goes; if you select "All" chart, then return to previous screen then return to chart, it resets to 1 day; no source specified for exchange rates; my test portfolio (1 BTC, 1 ETH, 1 DASH) has a chart that is identical whether I select the range as Today, 1W, 1M, 3M, 6M, 1Y, or All.
     
    • Informative Informative x 1
  8. GrandMasterDash

    GrandMasterDash Well-known Member
    Masternode Owner/Operator

    Joined:
    Jul 12, 2015
    Messages:
    2,699
    Likes Received:
    962
    Trophy Points:
    183
    HD means yet another wallet without mixing
     
  9. GrandMasterDash

    GrandMasterDash Well-known Member
    Masternode Owner/Operator

    Joined:
    Jul 12, 2015
    Messages:
    2,699
    Likes Received:
    962
    Trophy Points:
    183
    I haven't actually tried the coincap.io app and I don't intend to use it because they're owned by ShapeShit and I don't trust the slimmey gits; not least that they are underhanded and trying to create leverage from coinmarketcap. Just look at their website design to see how dirty they are. The first two apps they choose to list are both related to ShapeShit, and if the app is as bad as you say, then you're right, it doesn't bode well.

    HD means there's no chance of coin mixing.

    I've reversed my decision on this and voted no. I hope others come to their senses though I doubt it.
     
  10. UdjinM6

    UdjinM6 Official Dash Dev
    Dash Core Team Moderator

    Joined:
    May 20, 2014
    Messages:
    3,637
    Likes Received:
    3,536
    Trophy Points:
    1,183
    Should be fully compatible afaik.

    Errr.. why? See pull request above. I would agree however that since this wallet talks to some backend and not to the network directly it's probably not feasible to implement complete PS mixing in the wallet. However with HD implemented in Core you should be able to mix in Core but you should be able to detect and spend mixed funds from any compatible HD wallet in a PS-complient way (i.e. 1. it has enough mixing rounds 2. should spend it with no change) after some (small?) additional development.
     
    • Informative Informative x 2
  11. camosoul

    camosoul Grizzled Member

    Joined:
    Sep 19, 2014
    Messages:
    2,266
    Likes Received:
    1,129
    Trophy Points:
    1,183
    THIS
     
  12. camosoul

    camosoul Grizzled Member

    Joined:
    Sep 19, 2014
    Messages:
    2,266
    Likes Received:
    1,129
    Trophy Points:
    1,183
    So, two wallets running the same seed? One mixes, the other just chases the chain up?

    Interesting... Think the normies that Evolution is hunting can figure that out?

    If core could share data directly to the mobile app to set this up...

    I'm concerned for the utterly insecure nature of mobile OSes, and the equally untrustworthy people who create them.... I do not want my seed in my phone. Worst place to put it, ever... May as well tattoo it on my forehead.
     
    #12 camosoul, Apr 30, 2017
    Last edited: Apr 30, 2017
  13. UdjinM6

    UdjinM6 Official Dash Dev
    Dash Core Team Moderator

    Joined:
    May 20, 2014
    Messages:
    3,637
    Likes Received:
    3,536
    Trophy Points:
    1,183
    In Core you should be able to specify seed/phrase explicitly or the one will be created for you automatically. You don't have to use the same seed everywhere. You can use few wallets (i.e. few seeds): one would be your safe, HW wallet only (Electrum, apps from HW wallet manufacturer); the other one could be for relatively large transparent sums visible in multiple (open source or trusted/trustless) wallets (Core, Exodus, Jaxx, Electrum); and yet another one for small sums - mixing in Core, spending on mobile.
     
  14. jimbursch

    jimbursch Active Member

    Joined:
    Mar 5, 2017
    Messages:
    837
    Likes Received:
    499
    Trophy Points:
    133
    Who will be managing this project on the Core Team side?

    How does this project relate to Electrum-Dash?

    Is this a stop-gap HD wallet solution until Evolution launches?

    -- delivery time being 6-8 weeks.

    Can you establish a delivery date for the finished product for the purpose of accountability?

    Personally I think a solid HD wallet for Dash is desperately needed as soon as possible, and this sounds like it fits the bill.
     
  15. jimbursch

    jimbursch Active Member

    Joined:
    Mar 5, 2017
    Messages:
    837
    Likes Received:
    499
    Trophy Points:
    133
  16. Ryan Taylor

    Ryan Taylor Well-known Member
    Dash Core Team Foundation Member

    Joined:
    Jul 3, 2014
    Messages:
    539
    Likes Received:
    1,631
    Trophy Points:
    263
    @jimbursch It will be managed by Chuck Williams, who will be visiting the vendor location physically to oversee the project.

    The project is independent from Electrum-Dash. This is a fork of a completely different wallet.

    I would not describe the wallet as a "stop-gap" solution. It will represent an improvement over the current options for a general user wallet. Evolution will provide a vastly superior solution in the long-term, but some of the components of this wallet will be useful for the creation of various Evolution components.

    We don't have a firm delivery date for the finished product, but it will be weeks, not months, after receiving the code from the vendor. A final release date will be dependent on getting through QA / Testing / Validation successfully, so the exact date is difficult to pin down. This is a priority for us, so we plan to release as soon as we can.
     
    • Like Like x 1
    • Informative Informative x 1
  17. Sergei

    Sergei New Member

    Joined:
    Aug 3, 2017
    Messages:
    14
    Likes Received:
    1
    Trophy Points:
    3
    This is a great idea, we are also doing something similar and developing applications of any type, with the ability to pay for the most popular crypto currency. We can work with you, contact us, maybe we'll think of something)
     
  18. Waccery

    Waccery New Member

    Joined:
    Oct 17, 2017
    Messages:
    10
    Likes Received:
    0
    Trophy Points:
    1
    I'll consider free tools beforehand , it's a little bit expensive
     
  19. ddpunk

    ddpunk New Member

    Joined:
    Sep 27, 2017
    Messages:
    16
    Likes Received:
    8
    Trophy Points:
    3
    Hey guys, how's this project going?
     
  20. ddpunk

    ddpunk New Member

    Joined:
    Sep 27, 2017
    Messages:
    16
    Likes Received:
    8
    Trophy Points:
    3
  21. Dash news

    Dash news New Member

    Joined:
    Nov 29, 2017
    Messages:
    20
    Likes Received:
    0
    Trophy Points:
    3
    This is a great idea.
     
  22. jimbursch

    jimbursch Active Member

    Joined:
    Mar 5, 2017
    Messages:
    837
    Likes Received:
    499
    Trophy Points:
    133
    Public beta testnet release happening soon - couple weeks.
     
    • Useful Useful x 1
  23. ddpunk

    ddpunk New Member

    Joined:
    Sep 27, 2017
    Messages:
    16
    Likes Received:
    8
    Trophy Points:
    3
    APR 28
    DEC 2
     
  24. ddpunk

    ddpunk New Member

    Joined:
    Sep 27, 2017
    Messages:
    16
    Likes Received:
    8
    Trophy Points:
    3
    @jimbursch do you mean the works of this team or Dash Evolution works?
     
  25. jimbursch

    jimbursch Active Member

    Joined:
    Mar 5, 2017
    Messages:
    837
    Likes Received:
    499
    Trophy Points:
    133
    Dash Copay wallet.