Writing

Unveiling the Zcash UniFFI Library

Illustration image

Developers often encounter a challenge in the Zcash community: having to switch from their preferred programming language to Rust when building Zcash applications. To simplify this process, we've leveraged Mozilla's UniFFI tool, enabling the automatic creation of foreign language bindings tailored to Rust libraries. This innovation not only solves a problem but also unlocks new opportunities. With UniFFI, a Rust library serves as the foundation for generating libraries in various languages like Ruby, Python, Kotlin, and Swift, making it more accessible for developers to contribute and innovate within the Zcash ecosystem.

Introduction to Zcash and the UniFFI Library

Zcash is a privacy-focused blockchain that enables users to conduct transactions with a high degree of confidentiality by utilizing zero-knowledge cryptography and commitment schemes. The protocol was forked from Bitcoin, which means that some of the core infrastructure and designs are inherited from that.

Unlike most other blockchains, Zcash offers an optional privacy feature that shields transaction details, such as sender, recipient, and transaction amount, from public view on its blockchain. This focus on privacy has made Zcash a favored choice for users seeking enhanced financial confidentiality in their digital transactions.

The Zcash UniFFI library represents a bridge between languages, fostering collaboration and accessibility in blockchain development. This blog post offers a glimpse into our dedication and commitment to enhancing the developer experience and usability of blockchains.

Bridging Language Barriers

The problem we set out to solve revolves around the challenge of building for Zcash using a preferred programming language, only to face the hurdle of needing to acquaint oneself with a new language, such as Rust. To address this issue, we utilize the capabilities of Mozilla's UniFFI tool, thereby facilitating the automatic creation of foreign language bindings that precisely target Rust libraries.

Unlocking Possibilities

The Zcash UniFFI Library isn't just about solving a problem—it's about opening doors. With UniFFI, a Rust library becomes the foundation for generating libraries in various languages like Ruby, Python, Kotlin, and Swift. This democratizes the development process, inviting more developers to contribute and innovate within the Zcash ecosystem.

A Deliberate Decision

While there are alternative tools like InterOptopus and Diplomat, UniFFI stands out due to its robust development, comprehensive documentation, and flexibility to adapt to diverse projects. Our team's choices and discussions are transparently documented on our GitHub repository, ensuring the project's evolution remains accessible to all.

Watch Luca present the Zcash UniFFI library at Zcon4

Originally delivered as Eiger, before Eiger and Equilibrium Labs merged to form Equilibrium.

Continue reading

ZAIR: Zero-Knowledge Selective Disclosure for Zcash Notes

April 21, 2026

ZAIR: Zero-Knowledge Selective Disclosure for Zcash Notes

Imagine proving you hold Zcash without revealing which note, how much, or anything else. That's no longer hypothetical. Here's how we built the first end-to-end selective disclosure tool for Sapling and Orchard

Scaling distributed systems: Eiger and Equilibrium Labs unite

April 9, 2026

Scaling distributed systems: Eiger and Equilibrium Labs unite

we're excited to announce that Eiger and Equilibrium Labs are merging to form Equilibrium —a unified team dedicated to advancing the infrastructure that powers the decentralized web.

State of Verifiable Inference & Future Directions

May 28, 2025

State of Verifiable Inference & Future Directions

Verifiable inference enables proving the correct model and weights were used, and that inputs/outputs were not tampered with. This post covers different approaches to achieve verifiable inference, teams working on this problem, and future directions.

Introducing Our Entrepreneur in Residence (EIR) Program

March 25, 2025

Introducing Our Entrepreneur in Residence (EIR) Program

After 6+ years of building core blockchain infrastructure across most ecosystems and incubating ventures like ZkCloud, we're looking for ambitious pre-founders with whom to collaborate closely.

From Speculation to Utility: Next Steps For Onchain Lending Markets

March 10, 2025

From Speculation to Utility: Next Steps For Onchain Lending Markets

Despite its promises, onchain lending still mostly caters to crypto-natives and provides little utility besides speculation. This post explores a path to gradually move to more productive use cases, low-hanging fruit, and challenges we might face.

Can Blockchains And Cryptography Solve The Authenticity Challenge?

February 18, 2025

Can Blockchains And Cryptography Solve The Authenticity Challenge?

As gen-AI models improve, it's becoming increasingly difficult to differentiate between AI- and human-generated content. This piece dives into whether cryptography and blockchains can solve the authenticity challenge and help restore trust on the Internet

Vertical Integration for both Ethereum and ETH the Asset

February 6, 2025

Vertical Integration for both Ethereum and ETH the Asset

In recent months, lackadaisical price action and usage growing on other L1/L2s has driven a discussion on what Ethereum’s role and the value of ETH, the asset is long-term.

Equilibrium: Building and Funding Core Infrastructure For The Decentralized Web

January 29, 2025

Equilibrium: Building and Funding Core Infrastructure For The Decentralized Web

Combining Labs (our R&D studio) and Ventures (our early-stage venture fund) under one unified brand, Equilibrium, enables us to provide more comprehensive support to early-stage builders and double down on our core mission of building the decentralized web

20 Predictions For 2025

November 28, 2024

20 Predictions For 2025

For the first time, we are publishing our annual predictions for what will happen by the end of next year and where the industry is headed. Joint work between the two arms of Equilibrium - Labs and Ventures.

9 + 1 Open Problems In The Privacy Space

November 7, 2024

9 + 1 Open Problems In The Privacy Space

In the third (and final) part of our privacy series, we explore nine open engineering problems in the blockchain privacy space in addition to touching on the social/regulatory challenges.

Aleo Mainnet Launch: Reflecting On The Journey So Far, Our Contributions And Path Ahead

October 15, 2024

Aleo Mainnet Launch: Reflecting On The Journey So Far, Our Contributions And Path Ahead

Equilibrium started working with Aleo back in 2020 when ZKPs were still mostly a theoretical concept and programmable privacy in blockchains was in its infancy. Following Aleo's mainnet launch, we reflect on our journey and highlight key contributions.

Do All Roads Lead To MPC? Exploring The End-Game For Privacy Infrastructure

August 12, 2024

Do All Roads Lead To MPC? Exploring The End-Game For Privacy Infrastructure

This post argues that the end-game for privacy infra falls back to the trust assumptions of MPC, if we want to avoid single points of failure. We explore the maturity of MPC & its trust assumptions, highlight alternative approaches, and compare tradeoffs.

Working on Aptos: Insights into Mutation Testing and Specification Assurance

August 1, 2024

Working on Aptos: Insights into Mutation Testing and Specification Assurance

Equilibrium brings Move to Polkadot

July 23, 2024

Equilibrium brings Move to Polkadot

Releasing Lumina.rs - Directly verify Celestia in your browser

July 23, 2024

Releasing Lumina.rs - Directly verify Celestia in your browser

We're excited to release Lumina. Go to https://lumina.rs/ and run a Celestia light node in the browser. By running Lumina you synchronize with the network, sample data availability, directly verify correctness and contribute to the network health

What Do We Actually Mean When We Talk About Privacy In Blockchain Networks (And Why Is It Hard To Achieve)?

June 12, 2024

What Do We Actually Mean When We Talk About Privacy In Blockchain Networks (And Why Is It Hard To Achieve)?

An attempt to define what we mean by privacy, exploring how and why privacy in blockchain networks differs from web2, and why it's more difficult to achieve. We also provide a framework to evaluate different approaches for achieveing privacy in blockchain.

Will ZK Eat The Modular Stack?

April 9, 2024

Will ZK Eat The Modular Stack?

Modularity enables faster experimentation along the tradeoff-frontier, wheras ZK provides stronger guarantees. While both of these are interesting to study on their own, this post explores the cross-over between the two.

Nebula for Soroban: Simplifying Contract Execution

January 16, 2024

Nebula for Soroban: Simplifying Contract Execution

Equilibrium is taking over responsibility for Beerus StarkNet Light Client

January 16, 2024

Equilibrium is taking over responsibility for Beerus StarkNet Light Client

Enhancing Rust RPC Client and Nodes for Celestia Network

December 14, 2023

Enhancing Rust RPC Client and Nodes for Celestia Network

Introducing the MoveVM Substrate Pallet

December 11, 2023

Introducing the MoveVM Substrate Pallet

Overview of Privacy Blockchains & Deep Dive Of Aleo

October 5, 2023

Overview of Privacy Blockchains & Deep Dive Of Aleo

Programmable privacy in blockchains is an emergent theme. This post covers what privacy in blockchains entail, why most blockchains today are still transparent and more. We also provide a deepdive into Aleo - one of the pioneers of programmable privacy!

Securing cross-chain communication from Ethereum to the Internet Computer with an on-chain Light Client

September 18, 2023

Securing cross-chain communication from Ethereum to the Internet Computer with an on-chain Light Client

Elusiv: Bringing Privacy To Solana

September 4, 2023

Elusiv: Bringing Privacy To Solana

Engineers thoughts: Fireblocks SI partnership

July 31, 2023

Engineers thoughts: Fireblocks SI partnership

Introducing OpEVM: The Next Generation Optimistic EVM Rollup

July 25, 2023

Introducing OpEVM: The Next Generation Optimistic EVM Rollup

Equilibrium Becomes the First Accredited Systems Integrator for Fireblocks

June 7, 2023

Equilibrium Becomes the First Accredited Systems Integrator for Fireblocks

March 12, 2023

2022 Year In Review

If you’re reading this, you already know that 2022 was a tumultuous year for the blockchain industry, and we see little value in rehashing it. But you probably also agree with us that despite many challenges, there’s been a tremendous amount of progress.

Testing the Zcash Network

May 31, 2022

Testing the Zcash Network

In early March of 2021, a small team from Equilibrium Labs applied for a grant to build a network test suite for Zcash nodes we named Ziggurat.

Connecting Rust and IPFS

June 30, 2021

Connecting Rust and IPFS

A Rust implementation of the InterPlanetary FileSystem for high performance or resource constrained environments. Includes a blockstore, a libp2p integration which includes DHT contentdiscovery and pubsub support, and HTTP API bindings.

June 13, 2021

Rebranding Equilibrium

A look back at how we put together the Equilibrium 2.0 brand over four months in 2021 and found ourselves in brutalist digital zen gardens.

January 20, 2021

2021 Year In Review

It's been quite a year in the blockchain sphere. It's also been quite a year for Equilibrium and I thought I'd recap everything that has happened in the company with a "Year In Review" post.