Code Monkey home page Code Monkey logo

hd-wallet's Introduction

High-performance Bitcoin HD Wallet

Build Status gitter

For now, mostly a PoC. Uses bitcore-node for transaction lookup and trezor-crypto for address derivation, compiled through emscripten and run in a web worker. Supports persisting discovered state and doing partial update later on. Should out-perform all wallets available today that do client-side chain discovery.

Example usage

Example is in example/index.js; it is compiled in makefile to gh-pages directory by make example.

Built version is in gh-pages branch.

You can also try it yourself here - http://trezor.github.io/hd-wallet/example.html (note that xpubs are preloaded there, but some simple GUI for inputing the XPUBs could be probably done).

Running regtest tests

  • On debian/ubuntu-based linux, download and install this package - https://www.dropbox.com/s/txkzsa1m2a7mp64/bitcore.deb?dl=1 - it install bitcore + bitcoin core, with regtest enabled
    • then run sudo service stop bitcore-regtest (so you stop the auto-started bitcore) - only necessary on systemd distros, but all of them are probably
  • then run, in one terminal, sudo su bitcore-regtest -c 'nodejs test_helpers/_node_server.js' -s /bin/bash - that runs a server, to which the tests post messages and it runs whatever gets posted there in bash (not secure, but you run it as bitcore-regtest user, so it's fine probably)
  • then you can run tests
    • npm run unit
    • npm run karma-firefox
    • npm run karma-chrome
    • karma tests do the same thing as unit tests, just in browser instead of node

License

GPLv3, (C) 2016 Karel Bilek, Jan Pochyla

hd-wallet's People

Contributors

jpochyla avatar karelbilek avatar prusnak avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.