https://github.com/farcasterxyz/contracts
Implementation of the Farcaster contracts
https://github.com/farcasterxyz/contracts
farcaster
Last synced: about 1 year ago
JSON representation
Implementation of the Farcaster contracts
- Host: GitHub
- URL: https://github.com/farcasterxyz/contracts
- Owner: farcasterxyz
- License: mit
- Created: 2022-06-16T22:25:40.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2025-05-15T13:52:03.000Z (about 1 year ago)
- Last Synced: 2025-05-15T14:45:58.953Z (about 1 year ago)
- Topics: farcaster
- Language: Solidity
- Homepage: https://www.farcaster.xyz/
- Size: 1.17 MB
- Stars: 377
- Watchers: 10
- Forks: 142
- Open Issues: 36
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Contracts
This repository contains all the contracts deployed by the [Farcaster protocol](https://github.com/farcasterxyz/protocol). The contracts are:
1. **[Id Registry](./src/IdRegistry.sol)** - tracks ownership of farcaster identities (fids).
2. **[Storage Registry](./src/StorageRegistry.sol)** - allocates storage to fids and collects rent.
3. **[Key Registry](./src/KeyRegistry.sol)** - tracks associations between fids and key pairs for signing messages.
4. **[Id Gateway](./src/IdGateway.sol)** - issues farcaster identities (fids) to new users.
5. **[Key Gateway](./src/KeyGateway.sol)** - adds new associations between fids and keys.
6. **[Bundler](./src/Bundler.sol)** - allows calling gateways and storage in a single transaction.
7. **[Signed Key Request Validator](./src/validators/SignedKeyRequestValidator.sol)** - validates key registry metadata.
8. **[Recovery Proxy](./src/RecoveryProxy.sol)** - proxy for recovery service operators to initiate fid recovery.
9. **[Fname Resolver](./src/FnameResolver.sol)** - validates Farcaster ENS names which were issued offchain.
Read the [docs](docs/docs.md) for more details on how the contracts work.
## Deployments
The [v3.1 contracts](https://github.com/farcasterxyz/contracts/releases/tag/v3.1.0) are deployed across both OP Mainnet and Ethereum Mainnet.
### OP Mainnet
| Contract | Address |
| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| IdRegistry | [0x00000000fc6c5f01fc30151999387bb99a9f489b](https://optimistic.etherscan.io/address/0x00000000fc6c5f01fc30151999387bb99a9f489b) |
| StorageRegistry | [0x00000000fcce7f938e7ae6d3c335bd6a1a7c593d](https://optimistic.etherscan.io/address/0x00000000fcce7f938e7ae6d3c335bd6a1a7c593d) |
| KeyRegistry | [0x00000000fc1237824fb747abde0ff18990e59b7e](https://optimistic.etherscan.io/address/0x00000000fc1237824fb747abde0ff18990e59b7e) |
| IdGateway | [0x00000000fc25870c6ed6b6c7e41fb078b7656f69](https://optimistic.etherscan.io/address/0x00000000fc25870c6ed6b6c7e41fb078b7656f69) |
| KeyGateway | [0x00000000fc56947c7e7183f8ca4b62398caadf0b](https://optimistic.etherscan.io/address/0x00000000fc56947c7e7183f8ca4b62398caadf0b) |
| Bundler | [0x00000000fc04c910a0b5fea33b03e0447ad0b0aa](https://optimistic.etherscan.io/address/0x00000000fc04c910a0b5fea33b03e0447ad0b0aa) |
| SignedKeyRequestValidator | [0x00000000fc700472606ed4fa22623acf62c60553](https://optimistic.etherscan.io/address/0x00000000fc700472606ed4fa22623acf62c60553) |
| RecoveryProxy | [0x00000000fcb080a4d6c39a9354da9eb9bc104cd7](https://optimistic.etherscan.io/address/0x00000000fcb080a4d6c39a9354da9eb9bc104cd7) |
### ETH Mainnet
| Contract | Address |
| ------------- | ---------------- |
| FnameResolver | Not yet deployed |
## Audits
The [v3.1 contracts](https://github.com/farcasterxyz/contracts/releases/tag/v3.1.0) contracts were reviewed by [0xMacro](https://0xmacro.com/) and [Cyfrin](https://www.cyfrin.io/).
- [0xMacro Report A-3](https://0xmacro.com/library/audits/farcaster-3.html)
- [Cyfrin Report](https://github.com/farcasterxyz/contracts/blob/fe24a79e8901e8f2479474b16e32f43b66455a1d/docs/audits/2023-11-05-cyfrin-farcaster-v1.0.pdf)
The [v3.0 contracts](https://github.com/farcasterxyz/contracts/releases/tag/v3.0.0) contracts were reviewed by [0xMacro](https://0xmacro.com/):
- [0xMacro Report A-1](https://0xmacro.com/library/audits/farcaster-1.html)
- [0xMacro Report A-2](https://0xmacro.com/library/audits/farcaster-2.html)
## Contributing
Please see the [contributing guidelines](CONTRIBUTING.md).