BIT BANK
HomeTwitterTelegramWebsite
  • The Bit Bank Ecosystem
    • Welcome to Bit Bank
    • xInvest
      • Precious Metals Trading
      • Hedge Funds
      • Staking and Rewards
      • X Assets
    • xShield
      • Anonymous Assets
    • xTrade
      • Exchange Platform
      • Futures Trading Platform
      • XBNK - Token
    • xVault
      • Digital Asset Custodian
      • Swiss Fort Knox Vault
  • Confidential Futures and Exchange Platform Tech Docs
    • Exchange Platform
    • Futures
      • Basics of Futures Trading
        • Spot vs Futures
        • Jargon
        • Funding Rates
        • Liquidation
      • Futures on Bit Bank
        • Isolated Margin
          • Trading Futures on Etherscan
      • Fee Structure
      • L2 Perpetual Contracts
  • Privacy Protection
    • Non Bank Reporting
    • Swiss Fort Knox Vault
    • Security and Technology
    • Zero Knowledge Proof
      • Zero-Knowledge Cryptography
      • Trusted Setup Ceremony
      • Community Relayers
      • Privacy Overview
  • Wealth Management
    • Book an Appointment
  • FAQ
    • Frequently Asked Questions
    • Terms of Use
  • Connect With Us
    • Website
    • Twitter
Powered by GitBook
On this page

Was this helpful?

  1. Privacy Protection
  2. Zero Knowledge Proof

Trusted Setup Ceremony

PreviousZero-Knowledge CryptographyNextCommunity Relayers

Last updated 2 years ago

Was this helpful?

Bit Bank´s zk-SNARK circuits are proved using the proof system, a Groth16 is the most widely used zk-SNARK (with as it allows for efficient verifier performance and short proof strings, requiring less computation time and power. A consequence of using Groth16 is that it requires the generation of randomization for each circuit in what is called a

zk-SNARKs rely on a common reference string (CRS), a public parameter that is used in proving and verifying and must be generated in advance by a trusted party. This is because zk-SNARK proving systems require the prover and verifier to have access to some public common knowledge (in this case the CRS) which was pre-generated by a shared algorithm.

Ceremonies are how this CRS is generated by having multiple, independent, and decentralized participants contributing random numbers. This setup ceremony type involving multiple parties is known as multi-party computation and it prevents any single party involved in the ceremony from gaining knowledge of the underlying mathematic structure of the CRS. The CRS (derived from individual submissions) is a set of encrypted values where at least one of the original un-encrypted values (Toxic Waste) needs to be destroyed to ensure that no actor is able to generate fake proofs to maintain system security.

The setup ceremony type used in Bit Bank´s circuits was the It is perpetual in the sense that there are no limits to the number of participants and is what enables the security derived from only requiring 1 participant to destroy the CRS. The Perpetual Powers of Tau are points along the elliptic curve outputted from the ceremony and are used for private and public key derivation.

This trusted setup is a requirement of Groth16 and allows for secure encryption as long as the ceremony is performed correctly. One trusted setup ceremony is sufficient to secure the proving mechanisms, however, new ceremonies are required each time circuits are upgraded for performance or when new features are added.

As Bit Bank has optimized Groth16 zk-SNARK design for verification, the on-chain gas costs are low, given the level of computation and encryption that is available in the Bit Bank privacy system. This is a more secure privacy system design than relying on an L2 for consensus. However, as above, new upgrades and circuit designs require new trusted setup ceremonies.

Groth16
pairing-based zk-SNARK
design.
Zcash notably using it for the first shielded
transaction protocol)
‘ceremony’.
(MPC)
Perpetual Powers of Tau.