Zebra, the first Zcash node to be written entirely in Rust, can be used to join the Zcash peer-to-peer network. This helps to strengthen the resilience of the network by validating and broadcasting transactions, and maintaining the Zcash blockchain state in a more distributed manner.
The original Zcash node is named zcashd and is developed by the Electric Coin Company as a fork of the original Bitcoin node. Our implementation, on the other hand, is an independent Zcash node implementation, developed from scratch, using memory-safe Rust language. Since zcashd and zebrad implement the same protocol, they can communicate with each other.
Alternative node implementations help developers quickly detect implementation-specific bugs that could cause consensus-related issues. Having multiple node implementations also attracts a broader audience of developers to Zcash, who can start contributing in a language that they are more familiar with. Our implementation of zcashd allows Rust developers to easily start developing on and contributing to Zcash.