Some README updates
This commit is contained in:
parent
c4cc2a6949
commit
9a0aeb8646
23
README.md
23
README.md
|
@ -12,18 +12,22 @@ Supports (or should support)
|
||||||
|
|
||||||
* De/serialization of Bitcoin protocol network messages
|
* De/serialization of Bitcoin protocol network messages
|
||||||
* De/serialization of blocks and transactions
|
* De/serialization of blocks and transactions
|
||||||
* Script de/serialization and execution
|
* Script de/serialization
|
||||||
* Blockchain validation and utxoset building
|
* Blockchain validation
|
||||||
* Private keys and address creation, de/serialization and validation (including full BIP32 support)
|
* Private keys and address creation, de/serialization and validation (including full BIP32 support)
|
||||||
* Pay-to-contract support as in Appendix A of the [Blockstream sidechains whitepaper](https://www.blockstream.com/sidechains.pdf)
|
* Pay-to-contract support as in Appendix A of the [Blockstream sidechains whitepaper](https://www.blockstream.com/sidechains.pdf)
|
||||||
|
|
||||||
|
For JSONRPC interaction with Bitcoin Core, it is recommended to use [rust-jsonrpc](https://github.com/apoelstra/rust-jsonrpc)
|
||||||
|
which uses the underlying [strason library](https://github.com/apoelstra/strason)
|
||||||
|
which parses decimal numbers as strings, preventing precision errors.
|
||||||
|
|
||||||
# Usage
|
# Usage
|
||||||
|
|
||||||
To use rust-bitcoin, just add the following to your Cargo.toml.
|
To use rust-bitcoin, just add the following to your Cargo.toml.
|
||||||
|
|
||||||
```toml
|
```toml
|
||||||
[dependencies]
|
[dependencies]
|
||||||
bitcoin = "0.3"
|
bitcoin = "0.9"
|
||||||
```
|
```
|
||||||
|
|
||||||
# Known limitations
|
# Known limitations
|
||||||
|
@ -31,7 +35,8 @@ bitcoin = "0.3"
|
||||||
## Consensus
|
## Consensus
|
||||||
|
|
||||||
This library **must not** be used for consensus code (i.e. fully validating
|
This library **must not** be used for consensus code (i.e. fully validating
|
||||||
blockchain data). It technically supports doing this, but doing so is very
|
blockchain data). It technically supports doing this, using the feature-gated
|
||||||
|
script parser, but doing so is very
|
||||||
ill-advised because there are many deviations, known and unknown, between
|
ill-advised because there are many deviations, known and unknown, between
|
||||||
this library and the Bitcoin Core reference implementation. In a consensus
|
this library and the Bitcoin Core reference implementation. In a consensus
|
||||||
based cryptocurrency such as Bitcoin it is critical that all parties are
|
based cryptocurrency such as Bitcoin it is critical that all parties are
|
||||||
|
@ -42,16 +47,6 @@ Given the complexity of both C++ and Rust, it is unlikely that this will
|
||||||
ever be fixed, and there are no plans to do so. Of course, patches to
|
ever be fixed, and there are no plans to do so. Of course, patches to
|
||||||
fix specific consensus incompatibilities are welcome.
|
fix specific consensus incompatibilities are welcome.
|
||||||
|
|
||||||
## Memory Usage
|
|
||||||
|
|
||||||
Currently this library's UTXO-set support is limited to an in-RAM hash tree.
|
|
||||||
It can be serialized and deserialized to disk to avoid recomputing it all
|
|
||||||
the time, but needs to be in memory to be used, which currently requires
|
|
||||||
several gigabytes of RAM.
|
|
||||||
|
|
||||||
Patches are welcome. This is a priority but not a high one, due to lack of
|
|
||||||
developer time.
|
|
||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
Currently the [documentation](https://www.wpsoftware.net/rustdoc/bitcoin/)
|
Currently the [documentation](https://www.wpsoftware.net/rustdoc/bitcoin/)
|
||||||
|
|
Loading…
Reference in New Issue