Safe Network Dbcs
Crate | Documentation | CI | Safe Rust |
---|---|---|---|
MaidSafe website | SAFE Dev Forum | SAFE Network Forum |
---|
This crate provides a library and API for working with Digital Bearer Certificates (DBC) on the Safe Network.
Safe Network Dbcs are envisioned to be a private and fungible digital currency that utilize a distributed (and sharded) spentbook of spends rather than a blockchain.
Some key properties of these Dbcs:
- Distributed spentbook means that it is not necessary to trust in a single entity.
- Sharded spentbook means that the system scales indefinitely.
- Transactions are settled immmediately.
- Privacy by default. all transactions use privacy features.
- Utilizes a one-time key for each payment (aka stealth address).
- Uses BLS cryptography.
Multi-sig is a concern of the user of this library.
Some writeups about the technology can be found at:
https://safenetforum.org/t/safenetwork-dbc-technical-series
$ git clone https://github.com/maidsafe/sn_dbc.git
$ cd sn_dbc
$ cargo build
A spentbook
example is provided which enables interacting with a mock
spentbook and wallet.
$ cd sn_dbc
$ cargo run --example spentbook
Additional examples can be found in a separate crate:
https://github.com/maidsafe/sn_dbc_examples
$ cd sn_dbc
$ cargo bench
$ cd sn_dbc
$ cargo test
This crate depends most heavily on:
- blsttc - BLS keys
This SAFE Network library is dual-licensed under the Modified BSD (LICENSE-BSD https://opensource.org/licenses/BSD-3-Clause) or the MIT license (LICENSE-MIT https://opensource.org/licenses/MIT) at your option.
Want to contribute? Great 🎉
There are many ways to give back to the project, whether it be writing new code, fixing bugs, or just reporting errors. All forms of contributions are encouraged!
For instructions on how to contribute, see our Guide to contributing.