lbcutil/base58
Josh Rickmar dca623d4ef Optimize base58 decoding.
This change introduces an autogenerated base58 digit table to remove
the need to find the index of a character in the modified base58
alphabet each time.  Additionally, it removes some unnecessary big
integer allocations to cut down on the GC churn.

Before:
BenchmarkBase58Encode         20          64998995 ns/op           0.08 MB/s
BenchmarkBase58Decode         50          35965928 ns/op           0.19 MB/s

Now:
BenchmarkBase58Encode         20          64644351 ns/op           0.08 MB/s
BenchmarkBase58Decode        200           7914748 ns/op           0.86 MB/s
2015-01-24 14:59:51 -05:00
..
alphabet.go Optimize base58 decoding. 2015-01-24 14:59:51 -05:00
base58.go Optimize base58 decoding. 2015-01-24 14:59:51 -05:00
base58_test.go Update btcutil import paths to new location. 2015-01-15 15:13:38 -06:00
base58bench_test.go Update btcutil import paths to new location. 2015-01-15 15:13:38 -06:00
base58check.go A few minor modifications to new base58 package. 2014-12-22 10:29:07 -06:00
base58check_test.go Update btcutil import paths to new location. 2015-01-15 15:13:38 -06:00
cov_report.sh Create a new sub-package base58. 2014-12-22 11:43:07 +01:00
doc.go Add package documentation for base58 package. 2014-12-22 12:36:34 -06:00
example_test.go Update btcutil import paths to new location. 2015-01-15 15:13:38 -06:00
genalphabet.go Optimize base58 decoding. 2015-01-24 14:59:51 -05:00
README.md Update btcutil import paths in README.md files. 2015-01-15 21:35:29 -06:00

base58

[Build Status] (https://travis-ci.org/btcsuite/btcutil)

Package base58 provides an API for encoding and decoding to and from the modified base58 encoding. It also provides an API to do Base58Check encoding, as described here.

A comprehensive suite of tests is provided to ensure proper functionality. Package base58 is licensed under the copyfree ISC license.

Documentation

[GoDoc] (http://godoc.org/github.com/btcsuite/btcutil/base58)

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/btcsuite/btcutil/base58

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/btcsuite/btcutil/base58

Installation

$ go get github.com/btcsuite/btcutil/base58

Examples

License

Package base58 is licensed under the copyfree ISC License.