Skip to main content

Fairblock

Key Takeaways

  • Fairblock is a team developing pre-execution privacy solutions, applying them to a shared sequencing layer called fairyring, based on the Cosmos SDK.
  • By encrypting users' transactions before sequencing, they can prevent frontrunning and censorship by concealing the content of the transactions.

1. Overview


Fairblock is a team developing pre-execution privacy solutions based on the Cosmos ecosystem, aiming to apply this technology to a shared sequencer. Fairyring is a shared sequencing layer created with Cosmos SDK, encrypting users' transactions through identity-based encryption (IBE), allowing for sequencing while the content of users' transactions is hidden. Once a set threshold of keyshares from validators has been reached, a decryption key is created to reveal the content of the user's transactions. By encrypting and sequencing user transactions, it is possible to fundamentally prevent frontrunning, harmful MEV, and censorship.

Although they use a scheme similar to Radius, there are differences such as 1) the encryption and decryption methods (Fairyring uses IBE, while Radius uses PVDE), and 2) Radius primarily uses a single sequencer, but Fairyring uses multiple sequencers.

2. Transaction Lifecycle


The transaction lifecycle of a rollup network using Fairblock as a sequencing layer is as follows:

  1. Users generate and sign a transaction.
  2. The transaction payload is encrypted. To encrypt, the master public key is fetched from fairyring along with the current block number.
  3. Users submit a transaction to fairyring.
  4. Fairyring orders users’ transactions and finalizes the order.
  5. Next block, validators submit keyshares and if key shares more than a threshold are gathered, a decryption key is generated.
  6. Decryption key is used to decrypt the encrypted transactions, and then a relayer passes the decrypted blocks from fairyring to a DA layer.

3. Sequencing


(TBA)

4. Data Availability


Fairblock uses Celestia as a DA layer, with a relayer submitting the decrypted block from fairyring to the DA layer.

5. Use Cases


Since the role of Fairblock is to sequence transactions and submit them to the DA layer, any chain can use Fairblock as long as it can only retrieve data from the DA layer.

6. Team


7. Resources


CTRL + J