Skip to content
Go to file

Latest commit



Failed to load latest commit information.
Latest commit message
Commit time

Bitcoin Private

Bitcoin Private v1.0.15

P2P Port: 7933

RPC Port: 7932

Bitcoin Private is a fork of Zclassic, merging in a snapshotted UTXO set of Bitcoin. BTCP is financial freedom.



Get dependencies:

sudo apt-get install \
      build-essential pkg-config libc6-dev m4 g++-multilib \
      autoconf libtool ncurses-dev unzip git python \
      zlib1g-dev wget bsdmainutils automake


# Checkout
git clone
cd BitcoinPrivate
# Build
./btcputil/ -j$(nproc)
# Fetch Zcash ceremony keys

Create Config File:

mkdir ~/.btcprivate
touch ~/.btcprivate/btcprivate.conf
vi ~/.btcprivate/btcprivate.conf

Add following lines to btcprivate.conf and be sure to change the rpcpassword:


Get backup chain parameters (this will speed up syncing and is optional) (Ideally this step would be skipped to ensure integrity throughout the network) (However, this is a backup from the official Electrumx server 29th September 2019)

cd ~/.btcprivate 
tar -zxvf chainstate.tar.gz 
cd ~/BitcoinPrivate 




Windows is not a fully supported build - however there are two ways to build BTCP for Windows:

  • On Linux using Mingw-w64 cross compiler tool chain. Ubuntu 16.04 Xenial is proven to work and the instructions is for such release.
  • On Windows 10 (64-bit version) using Windows Subsystem for Linux (WSL) and Mingw-w64 cross compiler tool chain.

With Windows 10, Microsoft released a feature called WSL. It basically allows you to run a bash shell directly on Windows in an ubuntu environment. WSL can be installed with other Linux variants, but as mentioned before, the distro proven to work is Ubuntu. Follow this link for installing WSL first

Building for Windows 64-Bit

  1. Get the usual dependencies:
sudo apt-get install \
      build-essential pkg-config libc6-dev m4 g++-multilib \
      autoconf libtool ncurses-dev unzip git python \
      zlib1g-dev wget bsdmainutils automake make cmake mingw-w64
  1. Set the default mingw32 gcc/g++ compiler option to posix, fix problem with packages in Xenial
sudo apt install software-properties-common
sudo add-apt-repository "deb zesty universe"
sudo apt update
sudo apt upgrade
sudo update-alternatives --config x86_64-w64-mingw32-gcc
sudo update-alternatives --config x86_64-w64-mingw32-g++
  1. Install Rust
curl -sSf | sh
source ~/.cargo/env
rustup install stable-x86_64-unknown-linux-gnu
rustup install stable-x86_64-pc-windows-gnu
rustup target add x86_64-pc-windows-gnu
vi  ~/.cargo/config

and add:

linker = "/usr/bin/x86_64-w64-mingw32-gcc"

Note that in WSL, the BTCPrivate source code must be somewhere in the default mount file system. i.e /usr/src/BTCPrivate, and not on /mnt/d/. What this means is that you cannot build directly on the windows system

  1. Build for Windows
PATH=$(echo "$PATH" | sed -e 's/:\/mnt.*//g') # strip out problematic Windows %PATH% imported var
./btcputil/ -j$(nproc)
  1. Installation

If compiling on linux, use the following command to build the executables in `./depends/x86_64-w64-mingw32/bin/

sudo make install DESTDIR=

If compiling using WSL, use the following command to build the executables in `c:\btcp\BTCPrivate

sudo make install DESTDIR=/mnt/c/btcp/BTCPrivate

Building for Mac

  1. Install xcode.
xcode-select --install
  1. Install HomeBrew.
/usr/bin/ruby -e "$(curl -fsSL"
  1. Install Dependencies with HomeBrew.
brew install cmake autoconf libtool automake coreutils pkgconfig gmp wget
  1. Install gcc5 with HomeBrew. (** IF USING XCODE 10+ remove --without-multilib flag**)
brew install gcc5 --without-multilib
  1. Clone the Bitcoin Private repo to your computer.
git clone
  1. Change to BitcoinPrivate Directory.
cd BitcoinPrivate
  1. Build Bitcoin Private Daemon code.
./btcputil/ -j$(sysctl -n hw.physicalcpu)
  1. Fetch key & Params.
  1. Run the Bitcoin Private Daemon that was just built.

Additional notes

If you plan to build for windows and linux at the same time, be sure to delete all the built files for whatever you build first. An easy way to do this is by taking the binaries out of the repo, delete all files except the .git folder and then do a git hard reset.


Build the latest version of BTCP using the instructions below, then follow the testnet guide


Bitcoin Private, like Zclassic and Zcash, is an implementation of the "Zerocash" protocol. Based on Zclassic's code, it intends to offer a far higher standard of privacy through a sophisticated zero-knowledge proving scheme that preserves confidentiality of transaction metadata. Technical details are available in the Zcash Protocol Specification.

This software is the Bitcoin Private client. It downloads and stores the entire history of Bitcoin Private transactions. Depending on the speed of your computer and network connection, the synchronization process could take a day or more once the blockchain has reached a significant size.

It includes both btcpd (the daemon) and btcp-cli (the command line tools).

Security Warnings

See important security warnings in doc/

Bitcoin Private is unfinished and highly experimental. Use at your own risk.

Deprecation Policy

This release is considered deprecated 16 weeks after the release day. There is an automatic deprecation shutdown feature which will halt the node some time after this 16 week time period. The automatic feature is based on block height and can be explicitly disabled.

Where do I begin?

We have a guide for joining the main Bitcoin Private network:

Need Help?

Want to participate in development?

  • Code review is welcome!
  • If you want to get to know us join our Discord:
  • We have a brief guide for joining the Bitcoin private testnet here

Participation in the Bitcoin Private project is subject to a Code of Conduct.


Build BTCP along with most dependencies from source by running ./btcputil/ Currently only Linux is officially supported.


For license information see the file COPYING.

You can’t perform that action at this time.