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/mint rather than a blockchain.
Some key properties of these DBCs:
- distributed mint means that it is not necessary to trust in a single mint entity
- sharded mint 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)
- use BLS cryptography
At present DBC ownership is single signature only. Multi-sig support is planned.
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 mint-repl
example is provided which enables interacting with a mock
spentbook/mint and wallet.
$ cd sn_dbc
$ cargo run --example mint-repl
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.