Releases: BOXFoundation/boxd
v0.5.0
We are excited to announce the boxd v0.5.0 release, shipping 4 months after v0.3.0 .
New features:
- The Boxd public chain completes the compatibility of the account model and the utxo model, so that ordinary transactions can be executed on a concurrent basis to support contract transactions.
- Boxd public chain completes the compatibility of evm virtual machine, Ethereum's smart contract can be transferred to boxd public chain at zero cost.
- The Boxd public chain completes the contract development environment for developers, including the use of js to complete contract deployment calls, and the call wallet plugin to complete the transaction.
v0.3.1
v0.3.0(burgeon)
Introduction
We are excited to announce the boxd v0.3.0 release. The first ContentBox TestNet
released with this version.
We selected utxo's trading model, which naturally supports the concurrent packaging and verification of transactions; we selected the improved dpos+bft protocol as the consensus protocol transition period; we integrated the intelligent distribution of digital assets and multi-level accounting at the bottom of the chain. Our internal test network TPS can stably support 2500 with a peak value of over 5,500. The test network will mint one block per second, and each block will reward 50BOX.
v0.2.0
This is the first open source release of boxd, a full-fledged blockchain implementation in Go.
We chose the utxo-based trading model because the utxo trading model inherently supports parallel execution and verification, providing a fundamental guarantee for the high performance of the blockchain network.
Our consensus will adopt the variant Dpos + BFT protocol. The Dpos protocol guarantees efficient block-produce. The BFT protocol allows the block to be confirmed as quickly as possible. Any super node trying to do evil will be punished. Any participation in voting or helping to quickly confirm the block will be rewarded. Our consensus will be open to the community, and everyone in the future community can sign up and vote for mining.
We believe that the core of the blockchain is a distributed ledger. Its core responsibility is to transfer transactions. It should not be responsible for too many complicated businesses. Therefore, we abandoned the virtual machine that supports the ubiquitous smart contract and used lightweight Bitcoin script to support some simple smart contract features.
We believe that the universal public chain may only exist one in the future, and the others will gradually die out. Therefore, we may give up the smart contracts that support universality. We will focus on the needs of digital content and become the most professional blockchain in the field of digital content.
It consists of the following major components.
core
- Block processing: extend main chain or side chain; reorganize if side chain becomes longer chain
- Mempool: maintain main pool and orphan pool
- Block and transaction data structures
consensus
- DPoS: mine transactions in mempool into blocks per schedule
p2p
- Gossip protocol: disseminate transactions/blocks throughout the distributed network based on libp2p
blocksync
- Synchronize blocks from peers during bootup or when significantly falling behind
script
- Virtual machine: a light-weight and fast stack-based interpreter to verify coin transfers are authorized
- Token: issue and transfer ERC-20 like tokens using script
storage
- Persistent: rocksdb
- Volatile: memory-based database for testing
rpc
- Server and client side: gRPC + protobuf
monitoring
- Monitor key metrics of node operations: influxdb + grafana
crypto
- Cryptographic primitives: hash and signature
tests
- Unit tests
- Integration tests
- Testnet