fhEVM
WebsiteLibrariesProduct & ServicesDevelopersSupport
0.5
0.5
  • Welcome to fhEVM
  • Getting Started
    • What is fhEVM
    • Deploy on fhEVM native
      • Using Zama Faucet
      • Local dev node
    • Deploy on Ethereum
    • Whitepaper
  • Fundamentals
    • Write contract
      • Using Hardhat
      • Using Remix
      • Other development environment
    • Encrypted types
      • Operations on encrypted types
      • Branching in FHE
      • Generate random number
    • Encrypted inputs
    • Access Control List
    • Decrypt and reencrypt
    • Contracts standard library
  • Guides
    • Decryption
    • Reencryption
    • Build a web application
    • Build with Node
    • Common pitfalls and best practises
    • How can I break a loop ?
    • Gas estimation on devnet
    • Use the CLI
    • Common webpack errors
  • Tutorials
    • See all tutorials
    • Write confidential smart contract with fhEVM
  • References
    • API function specifications
    • fhevmjs function specifications
    • Repositories
  • Developer
    • Contributing
    • Development roadmap
    • Release note
    • Feature request
    • Bug report
Powered by GitBook

Libraries

  • TFHE-rs
  • Concrete
  • Concrete ML
  • fhEVM

Developers

  • Blog
  • Documentation
  • Github
  • FHE resources

Company

  • About
  • Introduction to FHE
  • Media
  • Careers
On this page
  • Bring confidential smart contracts to your blockchain with Zama's fhEVM
  • Build confidential dapps just as you would regular ones
  • Use cases
  • Tutorials and examples

Was this helpful?

Export as PDF
  1. Getting Started

What is fhEVM

PreviousWelcome to fhEVMNextDeploy on fhEVM native

Last updated 10 months ago

Was this helpful?

Bring confidential smart contracts to your blockchain with Zama's fhEVM

There used to be a dilemma in blockchain: keep your application and user data on-chain, allowing everyone to see it, or keep it privately off-chain and lose contract composability. Thanks to a breakthrough in homomorphic encryption, Zama’s fhEVM makes it possible to run confidential smart contracts on encrypted data, guaranteeing both confidentiality and composability.

Build confidential dapps just as you would regular ones

fhEVM contracts are simple solidity contracts that are built using traditional solidity toolchains. ‍Developers can use the euint data types to mark which part of their contracts should be private. ‍All the logic for access control of encrypted states is defined by developers in their smart contracts.

Use cases

  • Tokenization: Swap tokens and RWAs on-chain without others seeing the amounts.

  • Blind auctions: Bid on items without revealing the amount or the winner.

  • On-chain games: Keep moves, selections, cards, or items hidden until ready to reveal.

  • Confidential voting: Prevents bribery and blackmailing by keeping votes private.

  • Encrypted DIDs: Store identities on-chain and generate attestations without ZK.

  • Private transfers: Keep balances and amounts private, without using mixers.

Tutorials and examples

[by Morten Dahl — Zama]

[by Clément Danjou (Zama)]

[by Rand Hindi and Clément Danjou — Zama]

[by [Clément Danjou — Zama]

[by Clément Danjou — Zama]

[by ]

[by ]

🎥 Workshop during ETHcc
🎥 How to Write Confidential Smart Contracts Using Zama's fhEVM
📃 Programmable Privacy and Onchain Compliance using Homomorphic Encryption
📃 Confidential ERC-20 Tokens Using Homomorphic Encryption
📃 On-chain Blind Auctions Using Homomorphic Encryption
🖥️ ERC-20
🖥️ Blind Auction
🖥️ Governor DAO
🖥️ Battleship
Owen Murovec
🖥️ Darkpool
Owen Murovec