Community Update 11 — Rebase progress and why it will make Bitcoin Private stronger

Bitcoin Private
4 min readJul 2, 2018

In the midst of all this recent crypto market wide chaos, the core team has had its head down and used the past several weeks as an opportunity to work quietly and diligently. Today we’re going to provide an update on the BTCP rebase — the major development initiative we announced months ago.

We’re happy to announce that a working developer preview of the rebased full node is now available on our GitHub. (please don’t use this in production just yet)

Importantly, our core developers believe that the rebased software is now mostly consensus complete. Notably, it can fully validate and sync the existing BTCP mainnet blockchain.

Because we’ve rebased the zk-SNARKs protocol rules on top of the latest and greatest Bitcoin 0.16, we’ve picked up a number of exciting new features all at once. A couple worth noting:

- Dramatically improved initial block download time:
Because of a number of improvements to the way the UTXO set is represented on disk and cached in memory as well as changes in the peer to peer layer regarding parallel block download, initial block download speeds have improved by as much as 80%. We’ve run benchmarks and across a variety of hardware and a machine with typical specs can sync the full BTCP chain in 45 minutes versus over 3.5 hours on the old implementation

-Transaction malleation fixes and layer 2:
The important transaction malleation fixes that segwit provides are now supported, and a widespread release of the rebased code will trigger the beginning of BIP9 based activation of the segwit soft fork as well as the OP_CHECKSEQUENCEVERIFY soft fork. Once both of these are activated, this should remove all of the obstacles to any layer 2 solutions

- Ability to soft-fork in other shielded value transfer mechanisms

In addition to protocol level enhancements described above, the rebased node will come with a number of UX improvements that should improve the experience for individual day to day users as well as ease integration for existing ecosystem services.

- Usability improvements for lite clients:
Header sync batch size has been increased at the peer to peer layer. This should substantially improve the user experience for lite clients doing an initial header sync.

Over the next several weeks we’ll be working to implement many of the features surrounding the consensus layer, notably the wallet and node RPC calls.

A few highlights:
- The rebased node will feature a fully functional wallet qt gui — and we’re looking at adding support for z-addresses.

- The rebased node will support full wallet encryption as well as hierarchical deterministic (HD / BIP 32) key generation for both shielded and transparent keys to simplify backups

- We intend on providing officially supported builds on all three major platforms: Linux, Mac OS and Windows. Currently only linux is supported

- We’re looking at providing a unified RPC API to encompass both shielded and transparent transactions that is consistent with the existing bitcoind RPC APIs. This should make it easier for ecosystem software which can successfully integrate with BTC to integrate with BTCP

Some of this work can already be seen in pull requests, for those who wish to contribute or review.

We’re also — as we announced last update — going to shift PoW concurrent with the release of the rebased node. We know that a PoW change is very important to many members of the community and we’re committed to implementing one even though some of the developers on the team disagree that it is necessary. Bundling the PoW change concomitant with the rebase does have one major ancillary benefit — it provides inoculation against an irreconcilable chain split in the case that there are subtly incompatible consensus changes introduced in the rebased node — the PoW change forces a network wide software upgrade. Of course we also recognize the importance of extensive and rigorous testing and are taking this aspect incredibly seriously. A testnet running the altered proof of work as well as a candidate patch set is now available.

Closing thoughts

We’re very excited about the new features that the rebase brings to the protocol as well as the wealth of opportunities it creates for enhanced ecosystem integration. We’re excited about the platform it provides to integrate new types of shielded transactions.

Next community update, BTCP Pay — Our devs have been working hard on BTCP Pay and have lots of huge news which they’re looking forward to releasing in the next community update. Stay tuned for very exciting news on that soon!

If you’d like to get involved with the development of Bitcoin Private, please join us on our GitHub or in our public Discord server.

We are excited to continue this community driven, open source journey to bring private transactions, both P2P and commercial, to a mainstream audience. Please leave any feedback you may have in the comments below or feel free to tweet at us!

Bitcoin Private Contribution Team

--

--

Bitcoin Private

Bitcoin & ZClassic fork-merge with a focus on making private cryptocurrency transactions mainstream. https://btcprivate.org/ https://GitHub.com/BTCPrivate