Fhenix Nitrogen Testnet Upgrade

Fhenix just got a major boost. The Nitrogen upgrade takes the network’s decentralization from zero to one while improving on its security and performance, providing the crucial elements to create confidentiality-enabled applications on Ethereum with FHE.

Nitrogen: the foundational element for onchain confidentiality

Just as Nitrogen the element is crucial to biological processes that create and sustain life on earth, the Nitrogen testnet lays the foundation for a thriving ecosystem of confidentiality-enabled applications on Ethereum.

One of the most important elements in building a network based on encryption is designing a way for decryption to occur in a way that’s secure and censorship resistant. To solve this, we created the Threshold Network: the system Fhenix uses to handle decryption in a decentralized, trust-minimized way.

The Threshold Network

In Nitrogen, the Threshold Network (TN) is responsible for performing decryption operations. Here’s how it works:

  • The Threshold Network is initialized via a Trusted Dealer
  • The Trusted Dealer generates Secret Shares of an FHE key-set to spread among party members
  • To perform a decryption, a Threshold (MPC) Protocol is performed using a T-out-f-N scheme (in Nitrogen, it’s 3 out of 4 total parties)

TLDR: with the Nitrogen upgrade we’ve introduced the first iteration of Fhenix’s mechanism for decentralized decryption via the Threshold Network. This initial version of the TN lays the foundation for a mechanism that will be further decentralized in future upgrades, with the goal of removing the burden of decryption from any single party. This will ensure decryption is possible only upon the data owner’s intention to, and by trusted parties only.

(This is a simplified overview of the TN. For a more detailed picture, see the Fhenix docs.)

Parallel Decryptions

While the Threshold Network is a key component of the Nitrogen upgrade, it’s far from the only one.

One of the biggest bottlenecks when using FHE schemes, especially when using a TN protocol, is that decryption is a long and computationally expensive operation. To tackle this problem, we created Parallel Decryptions for Nitrogen, which give the experience of synchronous decryptions while actually performing them asynchronously. The best part is developers don’t need to do anything differently or even be aware it’s occurring.

(Again, this is just an overview of Parallel Decryption. For a more detailed explanation, see the docs.)

Security Zones

Yet another upgrade to the developer experience introduced in Nitrogen is the concept of Security Zones. Different applications will inevitably have different requirements for security, trust, and performance levels. Security Zones provide a flexible approach to security, enabling the prioritization of different aspects of an application, such as security or performance as the context requires. (See the developer docs for a deep dive.)

Nitrogen introduces two initial Security Zones:

  • Threshold Network (zone 0 – default) – This is the default zone which emphasizes security and implies less trust for the user. This Security Zone uses the Threshold Network to handle decryption.
  • Local (zone 1) – This zone emphasizes performance over security. It uses a single local key-set held by the sequencer to process decryptions (this was how previous Fhenix testnets handled the decryption key).

Celestia Data Availability

One of the main challenges running onchain FHE is the large size of the ciphertext being stored. Because Fhenix is a Layer 2 it needs a Data Availability layer to store inputs and outcomes of its execution.

The Fhenix Helium testnet utilized Ethereum for DA, which resulted in relatively high transaction costs. This was a common piece of feedback we received from the community, and to remedy it we opted to use Celestia for Data Availability on Nitrogen in order to reduce transaction costs while increasing price stability.

Native Random Number Generation (RNG)

Random number generation is crucial for many aspects of blockchain development.

In Nitrogen we’ve introduced the ability to generate random numbers natively and automatically using a simple function called FHE.rand().

(Read more about Fhenix RNG in the docs.)

The elements are there to build with

Nitrogen is a significant milestone on the path towards a decentralized platform for onchain confidentiality. The additions to the Fhenix network outlined above bring significant improvements for the network’s security, performance, cost, and UX.

Are you a builder with an idea for an application leveraging confidentiality? Head to the Get Started page and make it happen.

You can even apply for funding through the Fhenix Grants and Bounties programs.

If you have any questions about Fhenix and FHE we’d love to hear them in our Discord. Don’t forget to follow us on Twitter/X for the latest news and updates if you aren’t already!

Confidentially yours,
Fhenix

You might also like