/contracts

Implementation of the Farcaster contracts

Primary LanguageSolidity

Contracts

This repository contains all the contracts deployed by the Farcaster protocol. The contracts are:

  1. Id Registry - tracks ownership of farcaster identities (fids).
  2. Storage Registry - allocates storage to fids and collects rent.
  3. Key Registry - tracks associations between fids and key pairs for signing messages.
  4. Id Gateway - issues farcaster identities (fids) to new users.
  5. Key Gateway - adds new associations between fids and keys.
  6. Bundler - allows calling gateways and storage in a single transaction.
  7. Signed Key Request Validator - validates key registry metadata.
  8. Recovery Proxy - proxy for recovery service operators to initiate fid recovery.
  9. Fname Resolver - validates Farcaster ENS names which were issued off-chain.

Read the docs for more details on how the contracts work.

Deployments

The v3.1 contracts are deployed across both OP Mainnet and Ethereum Mainnet.

OP Mainnet

Contract Address
IdRegistry 0x00000000fc6c5f01fc30151999387bb99a9f489b
StorageRegistry 0x00000000fcce7f938e7ae6d3c335bd6a1a7c593d
KeyRegistry 0x00000000fc1237824fb747abde0ff18990e59b7e
IdGateway 0x00000000fc25870c6ed6b6c7e41fb078b7656f69
KeyGateway 0x00000000fc56947c7e7183f8ca4b62398caadf0b
Bundler 0x00000000fc04c910a0b5fea33b03e0447ad0b0aa
SignedKeyRequestValidator 0x00000000fc700472606ed4fa22623acf62c60553
RecoveryProxy 0x00000000fcb080a4d6c39a9354da9eb9bc104cd7

ETH Mainnet

Contract Address
FnameResolver Not yet deployed

Audits

The v3.1 contracts contracts were reviewed by 0xMacro and Cyfrin.

The v3.0 contracts contracts were reviewed by 0xMacro:

Contributing

Please see the contributing guidelines.