lbcwallet/waddrmgr
2022-09-28 11:48:23 -07:00
..
address.go consolidate: remove watch-only address/account support 2022-09-20 00:29:47 -07:00
common_test.go [lbry] fork from btcsuite to lbryio 2022-05-24 10:31:06 -07:00
cov_report.sh Provide new wallet address manager package. 2014-10-13 16:19:09 -05:00
db.go consolidate: remove watch-only address/account support 2022-09-20 00:29:47 -07:00
db_test.go test: fix race conditions in tests 2022-07-05 22:09:03 -07:00
doc.go ci: run "make fmt" 2022-08-08 01:26:02 -07:00
error.go consolidate: remove watch-only address/account support 2022-09-20 00:29:47 -07:00
error_test.go consolidate: remove watch-only address/account support 2022-09-20 00:29:47 -07:00
log.go multi: fix linter issues 2021-03-24 14:44:32 +01:00
manager.go multi-account: support BIP44 account discovery 2022-09-28 11:48:23 -07:00
manager_test.go consolidate: merge internal/external branches 2022-09-28 11:48:23 -07:00
migrations.go [lbry] fork from btcsuite to lbryio 2022-05-24 10:31:06 -07:00
migrations_test.go [lbry] fork from btcsuite to lbryio 2022-05-24 10:31:06 -07:00
README.md [lbry] fork from btcsuite to lbryio 2022-05-24 10:31:06 -07:00
scoped_manager.go multi-account: support BIP44 account discovery 2022-09-28 11:48:23 -07:00
sync.go [lbry] fork from btcsuite to lbryio 2022-05-24 10:31:06 -07:00
test_coverage.txt [lbry] fork from btcsuite to lbryio 2022-05-24 10:31:06 -07:00

waddrmgr

[Build Status] (https://travis-ci.org/lbryio/lbcwallet)

Package waddrmgr provides a secure hierarchical deterministic wallet address manager.

A suite of tests is provided to ensure proper functionality. See test_coverage.txt for the gocov coverage report. Alternatively, if you are running a POSIX OS, you can run the cov_report.sh script for a real-time report. Package waddrmgr is licensed under the liberal ISC license.

Feature Overview

  • BIP0032 hierarchical deterministic keys
  • BIP0043/BIP0044 multi-account hierarchy
  • Strong focus on security:
    • Fully encrypted database including public information such as addresses as well as private information such as private keys and scripts needed to redeem pay-to-script-hash transactions
    • Hardened against memory scraping through the use of actively clearing private material from memory when locked
    • Different crypto keys used for public, private, and script data
    • Ability for different passphrases for public and private data
    • Scrypt-based key derivation
    • NaCl-based secretbox cryptography (XSalsa20 and Poly1305)
  • Scalable design:
    • Multi-tier key design to allow instant password changes regardless of the number of addresses stored
    • Import WIF keys
    • Import pay-to-script-hash scripts for things such as multi-signature transactions
    • Ability to start in watching-only mode which does not contain any private key material
    • Ability to convert to watching-only mode
    • Programmatically detectable errors, including encapsulation of errors from packages it relies on
    • Address synchronization capabilities
  • Comprehensive test coverage

Documentation

[GoDoc] (http://godoc.org/github.com/lbryio/lbcwallet/waddrmgr)

Full go doc style documentation for the project can be viewed online without installing this package by using the GoDoc site here: http://godoc.org/github.com/lbryio/lbcwallet/waddrmgr

You can also view the documentation locally once the package is installed with the godoc tool by running godoc -http=":6060" and pointing your browser to http://localhost:6060/pkg/github.com/lbryio/lbcwallet/waddrmgr

Installation

$ go get github.com/lbryio/lbcwallet/waddrmgr

Package waddrmgr is licensed under the copyfree ISC License.