The Bitcoin Cash (BCH) ecosystem thrives on decentralization, transparency, and developer innovation. One powerful tool enabling this is Bitcoin Verde—a full-featured, ground-up implementation of the Bitcoin Cash protocol written in Java. Unlike traditional node software, Bitcoin Verde isn't just a blockchain validator; it's a full node, block explorer, SPV wallet backend, Electrum server, and stratum server, with ongoing development for a mining pool.
Whether you're a developer, node operator, or blockchain enthusiast, running your own Bitcoin Verde instance gives you direct access to the BCH network with advanced querying capabilities and enhanced infrastructure resilience.
👉 Discover how to set up your own secure Bitcoin Cash node today.
Why Bitcoin Verde Stands Out in the BCH Ecosystem
Bitcoin Cash relies on a diverse set of full-node implementations to ensure long-term network health. Currently, most nodes run variations of the Bitcoin Cash Node (BCN) client—a fork of Bitcoin Core. While reliable, this creates potential risks if undiscovered bugs exist across shared codebases.
Bitcoin Verde introduces critical diversity by offering a clean-room, Java-based implementation of the BCH protocol. This architectural independence helps protect the network: if one implementation contains a bug, others like Bitcoin Verde can detect inconsistencies and prevent consensus failures through temporary forks—ultimately strengthening security.
Core Features at a Glance
- Full node with complete blockchain validation
- Built-in block explorer for browsing blocks, transactions, and addresses
- Electrum server support (compatible with Electron Cash wallets)
- Stratum server for ASIC mining coordination
- SQL-backed blockchain storage for advanced analytics
- Support for SPV wallet indexing and future wallet syncing
- Multi-threaded architecture for high-performance processing
Setting Up Bitcoin Verde on Your Server
Running Bitcoin Verde requires minimal setup but delivers maximum functionality. Below are instructions tailored for different operating systems.
Linux / Mac OS X Setup
- Clone the Bitcoin Verde repository.
- Navigate to the project root directory.
Run the build script:
./make.shStart the full node:
./run.sh NODELaunch the block explorer:
./run.sh EXPLORER- Access the web interface at http://localhost:8080/status/
👉 Learn how to secure and optimize your node configuration now.
Windows Setup (via Git Bash)
Bitcoin Verde has limited native Windows support, but you can run it efficiently using Git Bash:
- Install Git for Windows (includes Git Bash).
- Open Git Bash and follow the Linux/Mac OS X steps above.
- Execute all commands within the Git Bash terminal.
For best results, avoid spaces in file paths and run Git Bash as a standard user—not as administrator.
Advanced Architecture: How Bitcoin Verde Works Under the Hood
SQL-Based Blockchain Storage
Unlike reference clients that store data in LevelDB or custom formats, Bitcoin Verde uses a MariaDB SQL database to store most of the blockchain. This design enables:
- Complex queries across transaction history
- Real-time analysis of output types (e.g., P2PKH vs P2SH ratios)
- Efficient tracking of blockchain forks and orphaned blocks
- Easy integration with external analytics tools
Forked chains are stored as BlockchainSegments using a Nested Set Model, allowing fast traversal and relationship mapping between chain branches.
Unlimited Mempool with Referential Integrity
Unconfirmed transactions are stored on disk with full referential integrity to their inputs. This means:
- No memory limits—effectively an unlimited mempool
- Transactions spending unconfirmed outputs are queued until dependencies arrive
- Protection against resource exhaustion via configurable size caps
- First-seen rule enforced: only the first-seen transaction is accepted
This architecture improves resilience during network stress events and prevents certain DoS attacks.
Reorg Handling Without Full Rewind
Because Bitcoin Verde maintains a complete ledger (not just UTXO set), switching to a new chain during a reorganization doesn’t require revalidating every block. Instead:
- Abandoned blocks are undone
- New blocks are reapplied along the winning chain
- Mempool is cleaned and repopulated accordingly
This results in faster, more efficient reorg handling compared to traditional clients.
Modules You Can Run in Bitcoin Verde
Each module serves a specific purpose and can be launched independently (though some depend on others).
| Module | Purpose |
|---|---|
| Full Node (NODE) | Syncs and validates the BCH blockchain; relays blocks and transactions |
| Block Explorer (EXPLORER) | Web UI to search blocks, txs, addresses; visualizes forks |
| Electrum Server (ELECTRUM) | Serves lightweight wallets like Electron Cash |
| Stratum Server (STRATUM) | Coordinates ASIC miners; includes basic pool logic |
| Chain Validator (VALIDATE) | Rechecks synced chain for corruption or bugs |
| Database-Only (DATABASE) | Starts DB for manual SQL queries (debugging) |
| Address Generator (ADDRESS) | Generates private keys and addresses securely |
| Test Block Miner (MINER) | Creates test blocks for development use |
To run any module:
./run.sh [MODULE_NAME] [config-file]Security Best Practices for Public Hosting
Exposing any server to the internet carries risk. Follow these guidelines when hosting a public-facing block explorer:
- Never run as root – Use a dedicated non-privileged user.
- Isolate private keys – Do not store or transmit wallet data on the server.
- Use reverse proxies – Route traffic from port 80/443 to internal ports (e.g., 8080).
- Enable SSL/TLS – Protect web traffic with HTTPS using PKCS-formatted certificates.
- Keep software updated – Monitor for patches and security advisories.
You can automate port forwarding on Linux using iptables:
sudo ./forward-ports.sh(Note: Rules are lost on reboot unless persisted via startup scripts.)
Configuration Guide: Key Settings Explained
Bitcoin Verde’s behavior is controlled via a configuration file generated at build time (out/config/bitcoin-verde.conf). Below are essential settings:
database.useEmbeddedDatabase=1– Run an internal MariaDB instance (default)bitcoin.seedNodes=["btc.softwareverde.com", "bitcoinverde.org"]– Initial peer connectionsbitcoin.maxPeerCount=32– Maximum number of connected peersbitcoin.enableBlockPruning=0– Retain full blockchain (set to1to prune)explorer.port=8080– HTTP port for block explorerexplorer.tlsPort=4443– HTTPS port (requires certificate files)explorer.tlsKeyFile=out/ssl/certificate.key– Private key in PKCS formatexplorer.tlsCertificateFile=out/ssl/certificate.crt– Public certificate
⚠️ Warning: Changing database credentials after initial startup will break connectivity.
RPC API: Control Your Node Programmatically
Bitcoin Verde includes a JSON-based RPC interface on port 8334. It supports both read (GET) and write (POST) operations.
Example: Get Transaction Details
{
"method": "GET",
"query": "TRANSACTION",
"parameters": {
"hash": "917A95AADA7B17A10661CAA2EE379E05CD816E9AB9E5C7651A371909B7222812"
}
}Common Queries
BLOCK_HEIGHT– Check sync progressBALANCE– Get address balanceADDRESS– List transactions for an addressUNCONFIRMED_TRANSACTIONS– View mempool contentsSHUTDOWN– Gracefully stop the node
Responses include success status, error messages, and structured data:
{
"wasSuccess": 1,
"errorMessage": null,
"data": { ... }
}Frequently Asked Questions (FAQ)
Q: Is Bitcoin Verde compatible with Bitcoin (BTC)?
No. Bitcoin Verde is designed specifically for Bitcoin Cash (BCH) and follows its consensus rules, including larger block sizes and replay protection mechanisms.
Q: Can I use Bitcoin Verde as a wallet backend?
Yes. Since version 2.2.0, Bitcoin Verde supports the Electrum protocol, making it suitable as a backend server for SPV wallets like Electron Cash.
Q: Does pruning affect explorer functionality?
Yes. If trimBlocks=1 or enableBlockPruning=1, spent data is deleted over time, which disables full-node status and prevents the explorer from displaying historical blocks.
Q: How does Bitcoin Verde improve network security?
By introducing a diverse codebase, it reduces systemic risk from shared bugs in other implementations. Forks caused by bugs are detected early and resolved safely.
Q: What hardware do I need to run Bitcoin Verde?
A modern VPS with at least:
- 4+ CPU cores
- 8GB RAM
- 500GB+ SSD storage
- Stable broadband connection
Q: Can I contribute to development?
Absolutely! Bitcoin Verde is open-source. Contributions to code, documentation, testing, and community support are welcome.
👉 Explore tools and resources to enhance your blockchain experience.
Final Thoughts: Empower Yourself with Decentralized Infrastructure
Running your own Bitcoin Cash block explorer with Bitcoin Verde puts real power in your hands. You gain:
- Full control over your data
- Enhanced privacy and security
- Contribution to network decentralization
- Ability to run custom queries and services
As the BCH network evolves, tools like Bitcoin Verde play a crucial role in maintaining robustness, transparency, and innovation.
Whether you're building applications, securing assets, or simply exploring blockchain technology, setting up a full node is a foundational step toward true digital sovereignty.
Core Keywords: Bitcoin Cash Block Explorer, Bitcoin Verde, BCH Full Node, Blockchain Explorer, Electrum Server, SPV Wallet, Node Implementation, SQL Blockchain Storage