Compare commits

..

15 Commits

Author SHA1 Message Date
Vivian Plasencia
2849ca1d24 chore: v4.10.0 2025-05-06 22:36:52 +02:00
Vivian Plasencia
d05d783852 chore:deploy contracts (#980)
* chore: update semaphore contract address

re #978

* feat: add ethereum as a supported network

re #977

* feat: add ethereum subgraph and deploy subgraphs

re #978, #977
2025-05-06 22:28:08 +02:00
Vivian Plasencia
993e46a427 docs(website): update events (#979) 2025-05-05 19:03:45 +02:00
Jimmy Chu
f984c1e864 chore(website): add a new project in project page (#972) 2025-04-03 00:11:54 +02:00
Vivian Plasencia
5c9d1737d3 chore: v4.9.2 2025-03-31 12:50:00 +02:00
Vivian Plasencia
1318b0e74b docs: update releases section in readme file 2025-03-31 12:44:51 +02:00
Vivian Plasencia
c0fcc94e82 docs: add more info to the readme file about the release of the packages (#971) 2025-03-31 12:41:49 +02:00
Vivian Plasencia
e70ae1151b chore: update leanimt sol version (#970) 2025-03-31 12:30:58 +02:00
Vivian Plasencia
fd38539908 docs(website): add scaling semaphore with pir to the roadmap (#969) 2025-03-18 01:03:24 +01:00
Vivian Plasencia
8bd45d8c46 docs: add specification document link to website and docs (#965) 2025-03-06 13:55:29 +01:00
Vivian Plasencia
534e69683a docs(website): update roadmap to add semaphore noir implementation (#962) 2025-03-04 12:35:58 +01:00
Vivian Plasencia
a0a3b9380b docs(website): update spec status to true on roadmap (#959) 2025-03-03 11:02:33 +01:00
Vivian Plasencia
bc9f7df1da chore: v4.9.1 2025-02-24 23:19:29 +01:00
Vivian Plasencia
571ffdab0e chore(group): update leanimt package version (#957) 2025-02-24 23:15:07 +01:00
ewynx
773696f40c Fix broken link for LeanMIT (#956)
chore: fixes broken link for LeanMIT
2025-02-24 22:26:29 +01:00
41 changed files with 257 additions and 182 deletions

View File

@@ -373,12 +373,28 @@ The output will be placed on the `docs` folder.
### Releases
Bump a new version with:
Steps:
1. Bump a new version with:
```bash
yarn version:bump <version>
# e.g. yarn version:bump 2.0.0
```
It will create a commit and a git tag that will need to be pushed on the main branch. A workflow will be triggered and will
publish the Semaphore packages on [npm](https://www.npmjs.com/) and release a new version on Github with its changelogs automatically.
This step creates a commit and a git tag.
2. Push the changes to main:
```bash
git push origin main
```
3. Push the new git tag:
```bash
git push origin <version>
# e.g. git push origin v2.0.0
```
After pushing the new git tag, a workflow will be triggered to publish the Semaphore packages on [npm](https://www.npmjs.com/) and release a new version on GitHub with its changelogs automatically.

View File

@@ -19,7 +19,7 @@
"@docusaurus/core": "3.5.2",
"@docusaurus/preset-classic": "3.5.2",
"@mdx-js/react": "^3.0.0",
"@semaphore-protocol/utils": "4.9.0",
"@semaphore-protocol/utils": "4.10.0",
"@svgr/webpack": "^5.5.0",
"clsx": "^1.2.1",
"docusaurus-plugin-sass": "^0.2.5",

View File

@@ -14,7 +14,7 @@ The public [Semaphore identity](#identity) value used in [Semaphore groups](#gro
## Group
A group is a [Merkle tree](#merkle-tree) in which each leaf is an [identity commitment](#identity-commitment) for a user. Semaphore uses the [LeanIMT](https://zkkit.pse.dev/classes/_zk_kit_imt.LeanIMT.html) implementation, which is an optimized binary incremental Merkle tree. The tree nodes are calculated using [Poseidon](https://www.poseidon-hash.info).
A group is a [Merkle tree](#merkle-tree) in which each leaf is an [identity commitment](#identity-commitment) for a user. Semaphore uses the [LeanIMT](https://zkkit.pse.dev/classes/_zk_kit_lean_imt.LeanIMT.html) implementation, which is an optimized binary incremental Merkle tree. The tree nodes are calculated using [Poseidon](https://www.poseidon-hash.info).
## Merkle tree

View File

@@ -11,6 +11,8 @@ slug: /
Additionally, it provides a simple mechanism to prevent double-signaling.
Use cases include private voting, whistleblowing, anonymous DAOs and mixers.
For in-depth technical details about Semaphore, refer to the [Semaphore V4 Specification](https://github.com/zkspecs/zkspecs/blob/main/specs/3/README.md).
## Features
With Semaphore, you can allow your users to do the following:

View File

@@ -47,6 +47,7 @@ You can access any subgraph supported by Semaphore with the following URL: `http
Supported networks:
- `sepolia`
- `ethereum`
- `optimism`
- `optimism-sepolia`
- `arbitrum`

View File

@@ -9,8 +9,8 @@
"codegen:sepolia": "yarn codegen sepolia",
"build": "graph build",
"build:sepolia": "yarn codegen:sepolia && graph build",
"auth": "graph auth --studio",
"deploy": "graph deploy --studio ${0}",
"auth": "graph auth",
"deploy": "graph deploy ${0}",
"start-ipfs": "node scripts/start-ipfs.js",
"create-local": "graph create --node http://localhost:8020/ semaphore",
"remove-local": "graph remove --node http://localhost:8020/ semaphore",

View File

@@ -15,6 +15,10 @@ function mapNetwork(n) {
return "arbitrum-one"
}
if (n === "ethereum") {
return "mainnet"
}
return network
}

View File

@@ -47,5 +47,12 @@
"date": "2024-12-09",
"authors": ["glasswing"],
"url": "https://mirror.xyz/0xBE98D44c29D179588b7E717Db8898529e5cD770F/5Xlv1jzwJKfKgP-m257kjivBlUIM_cwTzsmpf9F0Su8"
},
{
"title": "Semaphore V4 Specification",
"minRead": 10,
"date": "2025-03-01",
"authors": ["Semaphore Team"],
"url": "https://github.com/zkspecs/zkspecs/blob/main/specs/3/README.md"
}
]

View File

@@ -1,20 +1,20 @@
[
{
"name": "DIF - Decentralized Identity Foundation",
"date": "Oct 1 - Nov 4, 2024",
"description": "Semaphore team will deliver a talk and sponsor prizes for the online hackathon.",
"link": "https://identity.foundation/"
"name": "ETHDam",
"date": "May 9-11, 2025",
"description": "Semaphore team will deliver an in-person talk.",
"link": "https://www.ethdam.com/"
},
{
"name": "Devcon",
"date": "Nov 12-15, 2024",
"name": "ZuBerlin",
"date": "June 14-22, 2025",
"description": "Semaphore team will deliver an in-person talk.",
"link": "https://zuberlin.city/"
},
{
"name": "Devconnect",
"date": "Nov 17-22, 2025",
"description": "Semaphore team will deliver an in-person talk and run workshops.",
"link": "https://devcon.org/en/"
},
{
"name": "ETHIndia",
"date": "Dec 6-8, 2024",
"description": "Semaphore team will deliver an in-person talk on Semaphore and Bandada.",
"link": "https://ethindia.co"
"link": "https://devconnect.org/"
}
]

View File

@@ -575,5 +575,16 @@
"links": {
"github": "https://github.com/quartz-technology/obscurus"
}
},
{
"name": "Semaphore Modular Smart Account Modules",
"categories": ["Wallet", "Privacy"],
"tagline": "Anonymous multi-sig wallet with Semaphore",
"pse": false,
"icon": "",
"links": {
"github": "https://github.com/jimmychu0807/semaphore-msa-modules",
"website": "https://semaphore-msa-modules.jimmychu0807.hk"
}
}
]

View File

@@ -28,11 +28,19 @@
"done": true
},
{
"name": "Semaphore Spec",
"done": false
"name": "Semaphore V4 Specification",
"done": true
},
{
"name": "Semaphore Rust Implementation",
"done": false
},
{
"name": "Semaphore Noir Implementation",
"done": false
},
{
"name": "Scaling Semaphore with PIR",
"done": false
}
]

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/circuits",
"version": "4.9.0",
"version": "4.10.0",
"description": "Semaphore Circom circuits to generate zero-knowledge proofs.",
"license": "MIT",
"files": [

View File

@@ -56,7 +56,7 @@ template Semaphore(MAX_DEPTH) {
// Proof of membership verification.
// The Merkle root passed as output must be equal to that calculated within
// the circuit through the inputs of the Merkle proof.
// See https://github.com/privacy-scaling-explorations/zk-kit/blob/main/packages/circuits/circom/binary-merkle-root.circom
// See https://github.com/privacy-scaling-explorations/zk-kit.circom/blob/main/packages/binary-merkle-root/src/binary-merkle-root.circom
// to know more about how the 'BinaryMerkleRoot' template works.
merkleRoot <== BinaryMerkleRoot(MAX_DEPTH)(identityCommitment, merkleProofLength, merkleProofIndices, merkleProofSiblings);

View File

@@ -1,11 +1,11 @@
{
"name": "@semaphore-protocol/cli-template-contracts-foundry",
"version": "4.9.0",
"version": "4.10.0",
"description": "Semaphore Foundry template.",
"license": "Unlicense",
"devDependencies": {
"@semaphore-protocol/contracts": "4.9.0",
"@zk-kit/lean-imt.sol": "2.0.0",
"@semaphore-protocol/contracts": "4.10.0",
"@zk-kit/lean-imt.sol": "2.0.1",
"forge-std": "github:foundry-rs/forge-std#v1.9.4",
"poseidon-solidity": "0.0.5",
"prettier": "^3.2.5",

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/cli-template-contracts-hardhat",
"version": "4.9.0",
"version": "4.10.0",
"description": "Semaphore Hardhat template.",
"license": "Unlicense",
"files": [
@@ -42,9 +42,9 @@
"@nomicfoundation/hardhat-network-helpers": "^1.0.0",
"@nomicfoundation/hardhat-toolbox": "^4.0.0",
"@nomicfoundation/hardhat-verify": "^2.0.0",
"@semaphore-protocol/core": "4.9.0",
"@semaphore-protocol/hardhat": "4.9.0",
"@semaphore-protocol/utils": "4.9.0",
"@semaphore-protocol/core": "4.10.0",
"@semaphore-protocol/hardhat": "4.10.0",
"@semaphore-protocol/utils": "4.10.0",
"@typechain/ethers-v6": "^0.5.0",
"@typechain/hardhat": "^9.0.0",
"@types/chai": "^4.2.0",
@@ -72,7 +72,7 @@
"typescript": "^5.3.3"
},
"dependencies": {
"@semaphore-protocol/contracts": "4.9.0"
"@semaphore-protocol/contracts": "4.10.0"
},
"packageManager": "yarn@4.1.0"
}

View File

@@ -20,9 +20,9 @@
"@nomicfoundation/hardhat-network-helpers": "^1.0.0",
"@nomicfoundation/hardhat-toolbox": "^4.0.0",
"@nomicfoundation/hardhat-verify": "^2.0.0",
"@semaphore-protocol/core": "4.9.0",
"@semaphore-protocol/hardhat": "4.9.0",
"@semaphore-protocol/utils": "4.9.0",
"@semaphore-protocol/core": "4.10.0",
"@semaphore-protocol/hardhat": "4.10.0",
"@semaphore-protocol/utils": "4.10.0",
"@typechain/ethers-v6": "^0.5.0",
"@typechain/hardhat": "^9.0.0",
"@types/chai": "^4.2.0",
@@ -50,7 +50,7 @@
"typescript": "^5.3.3"
},
"dependencies": {
"@semaphore-protocol/contracts": "4.9.0"
"@semaphore-protocol/contracts": "4.10.0"
},
"packageManager": "yarn@4.1.0"
}

View File

@@ -9,9 +9,9 @@
"lint": "next lint"
},
"dependencies": {
"@semaphore-protocol/core": "4.9.0",
"@semaphore-protocol/data": "4.9.0",
"@semaphore-protocol/utils": "4.9.0",
"@semaphore-protocol/core": "4.10.0",
"@semaphore-protocol/data": "4.10.0",
"@semaphore-protocol/utils": "4.10.0",
"ethers": "^6.13.4",
"next": "14.1.0",
"next-pwa": "^5.6.0",

View File

@@ -114,7 +114,7 @@ export default function GroupsPage() {
</a>{" "}
are{" "}
<a
href="https://zkkit.pse.dev/classes/_zk_kit_imt.LeanIMT.html"
href="https://zkkit.pse.dev/classes/_zk_kit_lean_imt.LeanIMT.html"
target="_blank"
rel="noreferrer noopener nofollow"
>

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/cli-template-monorepo-ethers",
"version": "4.9.0",
"version": "4.10.0",
"description": "Semaphore Hardhat + Next.js + SemaphoreEthers template.",
"license": "Unlicense",
"files": [

View File

@@ -20,9 +20,9 @@
"@nomicfoundation/hardhat-network-helpers": "^1.0.0",
"@nomicfoundation/hardhat-toolbox": "^4.0.0",
"@nomicfoundation/hardhat-verify": "^2.0.0",
"@semaphore-protocol/core": "4.9.0",
"@semaphore-protocol/hardhat": "4.9.0",
"@semaphore-protocol/utils": "4.9.0",
"@semaphore-protocol/core": "4.10.0",
"@semaphore-protocol/hardhat": "4.10.0",
"@semaphore-protocol/utils": "4.10.0",
"@typechain/ethers-v6": "^0.5.0",
"@typechain/hardhat": "^9.0.0",
"@types/chai": "^4.2.0",
@@ -50,7 +50,7 @@
"typescript": "^5.3.3"
},
"dependencies": {
"@semaphore-protocol/contracts": "4.9.0"
"@semaphore-protocol/contracts": "4.10.0"
},
"packageManager": "yarn@4.1.0"
}

View File

@@ -9,9 +9,9 @@
"lint": "next lint"
},
"dependencies": {
"@semaphore-protocol/core": "4.9.0",
"@semaphore-protocol/data": "4.9.0",
"@semaphore-protocol/utils": "4.9.0",
"@semaphore-protocol/core": "4.10.0",
"@semaphore-protocol/data": "4.10.0",
"@semaphore-protocol/utils": "4.10.0",
"ethers": "^6.13.4",
"next": "14.1.0",
"next-pwa": "^5.6.0",

View File

@@ -114,7 +114,7 @@ export default function GroupsPage() {
</a>{" "}
are{" "}
<a
href="https://zkkit.pse.dev/classes/_zk_kit_imt.LeanIMT.html"
href="https://zkkit.pse.dev/classes/_zk_kit_lean_imt.LeanIMT.html"
target="_blank"
rel="noreferrer noopener nofollow"
>

View File

@@ -90,7 +90,7 @@ export default function GroupsPage() {
</a>{" "}
are{" "}
<a
href="https://zkkit.pse.dev/classes/_zk_kit_imt.LeanIMT.html"
href="https://zkkit.pse.dev/classes/_zk_kit_lean_imt.LeanIMT.html"
target="_blank"
rel="noreferrer noopener nofollow"
>

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/cli-template-monorepo-subgraph",
"version": "4.9.0",
"version": "4.10.0",
"description": "Semaphore Hardhat + Next.js + SemaphoreSubgraph template.",
"license": "Unlicense",
"files": [

View File

@@ -1,7 +1,7 @@
{
"name": "@semaphore-protocol/cli",
"type": "module",
"version": "4.9.0",
"version": "4.10.0",
"description": "A command line tool to set up your Semaphore project and get group data.",
"license": "MIT",
"bin": {
@@ -41,8 +41,8 @@
"rollup-plugin-cleanup": "^3.2.1"
},
"dependencies": {
"@semaphore-protocol/data": "4.9.0",
"@semaphore-protocol/utils": "4.9.0",
"@semaphore-protocol/data": "4.10.0",
"@semaphore-protocol/utils": "4.10.0",
"axios": "^1.6.7",
"boxen": "^7.1.1",
"chalk": "^5.3.0",

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/contracts",
"version": "4.9.0",
"version": "4.10.0",
"description": "Semaphore contracts to manage groups and broadcast anonymous signals.",
"license": "MIT",
"files": [
@@ -30,6 +30,6 @@
"access": "public"
},
"dependencies": {
"@zk-kit/lean-imt.sol": "2.0.0"
"@zk-kit/lean-imt.sol": "2.0.1"
}
}

View File

@@ -42,6 +42,6 @@
"typescript": "^5.3.3"
},
"dependencies": {
"@zk-kit/lean-imt.sol": "2.0.0"
"@zk-kit/lean-imt.sol": "2.0.1"
}
}

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/core",
"version": "4.9.0",
"version": "4.10.0",
"description": "Core library for the essential Semaphore features.",
"type": "module",
"license": "MIT",
@@ -42,8 +42,8 @@
"access": "public"
},
"dependencies": {
"@semaphore-protocol/group": "4.9.0",
"@semaphore-protocol/identity": "4.9.0",
"@semaphore-protocol/proof": "4.9.0"
"@semaphore-protocol/group": "4.10.0",
"@semaphore-protocol/identity": "4.10.0",
"@semaphore-protocol/proof": "4.10.0"
}
}

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/data",
"version": "4.9.0",
"version": "4.10.0",
"description": "A library for querying Semaphore smart contract.",
"type": "module",
"license": "MIT",
@@ -37,7 +37,7 @@
"rollup-plugin-cleanup": "^3.2.1"
},
"dependencies": {
"@semaphore-protocol/utils": "4.9.0",
"@semaphore-protocol/utils": "4.10.0",
"@zk-kit/utils": "1.3.0",
"axios": "1.6.6",
"ethers": "6.13.4"

View File

@@ -12,5 +12,5 @@ export default function getURL(supportedNetwork: SupportedNetwork): string {
throw new TypeError(`Network '${supportedNetwork}' is not supported`)
}
return `https://api.studio.thegraph.com/query/14377/semaphore-${supportedNetwork}/v4.2.0`
return `https://api.studio.thegraph.com/query/14377/semaphore-${supportedNetwork}/v4.3.0`
}

View File

@@ -10,7 +10,7 @@ import { jsDateToGraphqlDate } from "./utils"
* The SemaphoreSubgraph class provides an interface to interact with the Semaphore smart contract
* via subgraph queries. It enables operations such as retrieving lists of group members and validated proofs,
* as well as checking membership within groups.
* Each group in Semaphore is represented as a {@link https://zkkit.pse.dev/classes/_zk_kit_imt.LeanIMT.html | LeanIMT}
* Each group in Semaphore is represented as a {@link https://zkkit.pse.dev/classes/_zk_kit_lean_imt.LeanIMT.html | LeanIMT}
* (Lean Incremental Merkle Tree). This class supports interaction through either a
* {@link SupportedNetwork} or a direct URL to the subgraph. The subgraphs themselves are hosted on
* {@link https://thegraph.com/ | The Graph} protocol, facilitating efficient and decentralized query processing.

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/group",
"version": "4.9.0",
"version": "4.10.0",
"description": "A library to create and manage Semaphore groups.",
"type": "module",
"license": "MIT",
@@ -36,7 +36,7 @@
"rollup-plugin-cleanup": "^3.2.1"
},
"dependencies": {
"@zk-kit/lean-imt": "2.2.2",
"@zk-kit/lean-imt": "2.2.3",
"@zk-kit/utils": "1.3.0",
"poseidon-lite": "0.3.0"
}

View File

@@ -3,7 +3,7 @@ import type { BigNumber } from "@zk-kit/utils"
import { poseidon2 } from "poseidon-lite/poseidon2"
/**
* The Semaphore group is a {@link https://zkkit.pse.dev/classes/_zk_kit_imt.LeanIMT.html | LeanIMT}
* The Semaphore group is a {@link https://zkkit.pse.dev/classes/_zk_kit_lean_imt.LeanIMT.html | LeanIMT}
* (Lean Incremental Merkle Tree), i.e. an optimized version of the incremental binary Merkle tree
* used by Semaphore V3. The new tree does not use zero hashes, and its depth is dynamic.
* The members of a Semaphore group, or the leaves of a tree, are the identity commitments.
@@ -13,7 +13,7 @@ import { poseidon2 } from "poseidon-lite/poseidon2"
* generation and verification. Groups can also be exported or imported.
*/
export class Group {
// The {@link https://zkkit.pse.dev/classes/_zk_kit_imt.LeanIMT.html | LeanIMT} instance.
// The {@link https://zkkit.pse.dev/classes/_zk_kit_lean_imt.LeanIMT.html | LeanIMT} instance.
public leanIMT: LeanIMT
/**

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/hardhat",
"version": "4.9.0",
"version": "4.10.0",
"description": "A Hardhat plugin to deploy Semaphore contracts.",
"type": "module",
"license": "MIT",
@@ -41,7 +41,7 @@
},
"dependencies": {
"@nomicfoundation/hardhat-ethers": "^3.0.0",
"@semaphore-protocol/contracts": "4.9.0",
"@semaphore-protocol/contracts": "4.10.0",
"ethers": "^6.13.4",
"hardhat-dependency-compiler": "^1.1.3"
}

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/identity",
"version": "4.9.0",
"version": "4.10.0",
"description": "A library to create Semaphore identities.",
"type": "module",
"license": "MIT",

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/proof",
"version": "4.9.0",
"version": "4.10.0",
"description": "A library to generate and verify Semaphore proofs.",
"type": "module",
"license": "MIT",
@@ -47,11 +47,11 @@
"rollup-plugin-cleanup": "^3.2.1"
},
"peerDependencies": {
"@semaphore-protocol/group": "4.9.0",
"@semaphore-protocol/identity": "4.9.0"
"@semaphore-protocol/group": "4.10.0",
"@semaphore-protocol/identity": "4.10.0"
},
"dependencies": {
"@semaphore-protocol/utils": "4.9.0",
"@semaphore-protocol/utils": "4.10.0",
"@zk-kit/artifacts": "1.8.0",
"@zk-kit/utils": "1.3.0",
"ethers": "6.13.4",

View File

@@ -1,6 +1,6 @@
{
"name": "@semaphore-protocol/utils",
"version": "4.9.0",
"version": "4.10.0",
"description": "A library to provide utility functions to the other Semaphore packages.",
"type": "module",
"license": "MIT",

View File

@@ -5,17 +5,37 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 6983614
"startBlock": 8263690
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 6983614
"startBlock": 8263690
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 6983614
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 8263690
}
]
},
{
"network": "ethereum",
"contracts": [
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 22424592
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 22424592
},
{
"name": "Semaphore",
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 22424592
}
]
},
@@ -25,17 +45,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 93258221
"startBlock": 149903019
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 93258221
"startBlock": 149903019
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 93258221
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 149903019
}
]
},
@@ -45,17 +65,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 19289434
"startBlock": 27341051
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 19289434
"startBlock": 27341051
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 19289434
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 27341051
}
]
},
@@ -65,17 +85,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 13850778
"startBlock": 21308099
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 13850778
"startBlock": 21308099
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 13850778
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 21308099
}
]
},
@@ -85,17 +105,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 269586534
"startBlock": 333645515
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 269586534
"startBlock": 333645515
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 269586534
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 333645515
}
]
},
@@ -105,17 +125,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 63715311
"startBlock": 71158898
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 63715311
"startBlock": 71158898
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 63715311
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 71158898
}
]
},
@@ -125,17 +145,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 127391657
"startBlock": 135443119
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 127391657
"startBlock": 135443119
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 127391657
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 135443119
}
]
},
@@ -145,17 +165,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 17307202
"startBlock": 25358716
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 17307202
"startBlock": 25358716
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 17307202
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 25358716
}
]
},
@@ -165,17 +185,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 5225214
"startBlock": 12757656
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 5225214
"startBlock": 12757656
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 5225214
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 12757656
}
]
},
@@ -185,17 +205,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 21796660
"startBlock": 29848242
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 21796660
"startBlock": 29848242
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 21796660
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 29848242
}
]
},
@@ -205,17 +225,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 11459722
"startBlock": 18707811
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 11459722
"startBlock": 18707811
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 11459722
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 18707811
}
]
},
@@ -225,17 +245,17 @@
{
"name": "SemaphoreVerifier",
"address": "0x6C42599435B82121794D835263C846384869502d",
"startBlock": 7397758
"startBlock": 9604960
},
{
"name": "PoseidonT3",
"address": "0xB43122Ecb241DD50062641f089876679fd06599a",
"startBlock": 7397758
"startBlock": 9604960
},
{
"name": "Semaphore",
"address": "0x06d1530c829366A7fff0069e77c5af6A6FA7db2E",
"startBlock": 7397758
"address": "0x697c80d1F2654e88d52B16154929EB976568DB04",
"startBlock": 9604960
}
]
}

View File

@@ -5,6 +5,12 @@ export default {
chainId: 11155111,
explorer: "https://sepolia.etherscan.io"
},
ethereum: {
name: "Ethereum",
url: "https://eth-mainnet.g.alchemy.com/v2/<your-api-key>",
chainId: 1,
explorer: "https://etherscan.io"
},
"arbitrum-sepolia": {
name: "Arbitrum Sepolia",
url: "https://sepolia-rollup.arbitrum.io/rpc",

File diff suppressed because one or more lines are too long

102
yarn.lock
View File

@@ -7501,8 +7501,8 @@ __metadata:
version: 0.0.0-use.local
resolution: "@semaphore-protocol/cli-template-contracts-foundry@workspace:packages/cli-template-contracts-foundry"
dependencies:
"@semaphore-protocol/contracts": "npm:4.9.0"
"@zk-kit/lean-imt.sol": "npm:2.0.0"
"@semaphore-protocol/contracts": "npm:4.10.0"
"@zk-kit/lean-imt.sol": "npm:2.0.1"
forge-std: "github:foundry-rs/forge-std#v1.9.4"
poseidon-solidity: "npm:0.0.5"
prettier: "npm:^3.2.5"
@@ -7521,10 +7521,10 @@ __metadata:
"@nomicfoundation/hardhat-network-helpers": "npm:^1.0.0"
"@nomicfoundation/hardhat-toolbox": "npm:^4.0.0"
"@nomicfoundation/hardhat-verify": "npm:^2.0.0"
"@semaphore-protocol/contracts": "npm:4.9.0"
"@semaphore-protocol/core": "npm:4.9.0"
"@semaphore-protocol/hardhat": "npm:4.9.0"
"@semaphore-protocol/utils": "npm:4.9.0"
"@semaphore-protocol/contracts": "npm:4.10.0"
"@semaphore-protocol/core": "npm:4.10.0"
"@semaphore-protocol/hardhat": "npm:4.10.0"
"@semaphore-protocol/utils": "npm:4.10.0"
"@typechain/ethers-v6": "npm:^0.5.0"
"@typechain/hardhat": "npm:^9.0.0"
"@types/chai": "npm:^4.2.0"
@@ -7574,8 +7574,8 @@ __metadata:
resolution: "@semaphore-protocol/cli@workspace:packages/cli"
dependencies:
"@rollup/plugin-typescript": "npm:^11.1.6"
"@semaphore-protocol/data": "npm:4.9.0"
"@semaphore-protocol/utils": "npm:4.9.0"
"@semaphore-protocol/data": "npm:4.10.0"
"@semaphore-protocol/utils": "npm:4.10.0"
"@types/figlet": "npm:^1.5.8"
"@types/inquirer": "npm:^9.0.7"
"@types/pacote": "npm:^11.1.8"
@@ -7599,31 +7599,31 @@ __metadata:
languageName: unknown
linkType: soft
"@semaphore-protocol/contracts@npm:4.9.0, @semaphore-protocol/contracts@workspace:packages/contracts/contracts":
"@semaphore-protocol/contracts@npm:4.10.0, @semaphore-protocol/contracts@workspace:packages/contracts/contracts":
version: 0.0.0-use.local
resolution: "@semaphore-protocol/contracts@workspace:packages/contracts/contracts"
dependencies:
"@zk-kit/lean-imt.sol": "npm:2.0.0"
"@zk-kit/lean-imt.sol": "npm:2.0.1"
languageName: unknown
linkType: soft
"@semaphore-protocol/core@npm:4.9.0, @semaphore-protocol/core@workspace:^, @semaphore-protocol/core@workspace:packages/core":
"@semaphore-protocol/core@npm:4.10.0, @semaphore-protocol/core@workspace:^, @semaphore-protocol/core@workspace:packages/core":
version: 0.0.0-use.local
resolution: "@semaphore-protocol/core@workspace:packages/core"
dependencies:
"@semaphore-protocol/group": "npm:4.9.0"
"@semaphore-protocol/identity": "npm:4.9.0"
"@semaphore-protocol/proof": "npm:4.9.0"
"@semaphore-protocol/group": "npm:4.10.0"
"@semaphore-protocol/identity": "npm:4.10.0"
"@semaphore-protocol/proof": "npm:4.10.0"
languageName: unknown
linkType: soft
"@semaphore-protocol/data@npm:4.9.0, @semaphore-protocol/data@workspace:packages/data":
"@semaphore-protocol/data@npm:4.10.0, @semaphore-protocol/data@workspace:packages/data":
version: 0.0.0-use.local
resolution: "@semaphore-protocol/data@workspace:packages/data"
dependencies:
"@rollup/plugin-json": "npm:^6.1.0"
"@rollup/plugin-typescript": "npm:^11.1.6"
"@semaphore-protocol/utils": "npm:4.9.0"
"@semaphore-protocol/utils": "npm:4.10.0"
"@zk-kit/utils": "npm:1.3.0"
axios: "npm:1.6.6"
ethers: "npm:6.13.4"
@@ -7633,12 +7633,12 @@ __metadata:
languageName: unknown
linkType: soft
"@semaphore-protocol/group@npm:4.9.0, @semaphore-protocol/group@workspace:packages/group":
"@semaphore-protocol/group@npm:4.10.0, @semaphore-protocol/group@workspace:packages/group":
version: 0.0.0-use.local
resolution: "@semaphore-protocol/group@workspace:packages/group"
dependencies:
"@rollup/plugin-typescript": "npm:^11.1.6"
"@zk-kit/lean-imt": "npm:2.2.2"
"@zk-kit/lean-imt": "npm:2.2.3"
"@zk-kit/utils": "npm:1.3.0"
poseidon-lite: "npm:0.3.0"
rimraf: "npm:^5.0.5"
@@ -7647,13 +7647,13 @@ __metadata:
languageName: unknown
linkType: soft
"@semaphore-protocol/hardhat@npm:4.9.0, @semaphore-protocol/hardhat@workspace:packages/hardhat":
"@semaphore-protocol/hardhat@npm:4.10.0, @semaphore-protocol/hardhat@workspace:packages/hardhat":
version: 0.0.0-use.local
resolution: "@semaphore-protocol/hardhat@workspace:packages/hardhat"
dependencies:
"@nomicfoundation/hardhat-ethers": "npm:^3.0.0"
"@rollup/plugin-typescript": "npm:^11.1.6"
"@semaphore-protocol/contracts": "npm:4.9.0"
"@semaphore-protocol/contracts": "npm:4.10.0"
ethers: "npm:^6.13.4"
hardhat: "npm:^2.19.4"
hardhat-dependency-compiler: "npm:^1.1.3"
@@ -7665,7 +7665,7 @@ __metadata:
languageName: unknown
linkType: soft
"@semaphore-protocol/identity@npm:4.9.0, @semaphore-protocol/identity@workspace:packages/identity":
"@semaphore-protocol/identity@npm:4.10.0, @semaphore-protocol/identity@workspace:packages/identity":
version: 0.0.0-use.local
resolution: "@semaphore-protocol/identity@workspace:packages/identity"
dependencies:
@@ -7681,14 +7681,14 @@ __metadata:
languageName: unknown
linkType: soft
"@semaphore-protocol/proof@npm:4.9.0, @semaphore-protocol/proof@workspace:packages/proof":
"@semaphore-protocol/proof@npm:4.10.0, @semaphore-protocol/proof@workspace:packages/proof":
version: 0.0.0-use.local
resolution: "@semaphore-protocol/proof@workspace:packages/proof"
dependencies:
"@rollup/plugin-alias": "npm:^5.1.0"
"@rollup/plugin-json": "npm:^6.1.0"
"@rollup/plugin-typescript": "npm:^11.1.6"
"@semaphore-protocol/utils": "npm:4.9.0"
"@semaphore-protocol/utils": "npm:4.10.0"
"@types/snarkjs": "npm:^0"
"@zk-kit/artifacts": "npm:1.8.0"
"@zk-kit/utils": "npm:1.3.0"
@@ -7698,12 +7698,12 @@ __metadata:
rollup-plugin-cleanup: "npm:^3.2.1"
snarkjs: "npm:0.7.4"
peerDependencies:
"@semaphore-protocol/group": 4.9.0
"@semaphore-protocol/identity": 4.9.0
"@semaphore-protocol/group": 4.10.0
"@semaphore-protocol/identity": 4.10.0
languageName: unknown
linkType: soft
"@semaphore-protocol/utils@npm:4.9.0, @semaphore-protocol/utils@workspace:packages/utils":
"@semaphore-protocol/utils@npm:4.10.0, @semaphore-protocol/utils@workspace:packages/utils":
version: 0.0.0-use.local
resolution: "@semaphore-protocol/utils@workspace:packages/utils"
dependencies:
@@ -9752,21 +9752,21 @@ __metadata:
languageName: node
linkType: hard
"@zk-kit/lean-imt.sol@npm:2.0.0":
version: 2.0.0
resolution: "@zk-kit/lean-imt.sol@npm:2.0.0"
"@zk-kit/lean-imt.sol@npm:2.0.1":
version: 2.0.1
resolution: "@zk-kit/lean-imt.sol@npm:2.0.1"
dependencies:
poseidon-solidity: "npm:0.0.5"
checksum: 10/094a1788905c380ed5c767184938d3aa0d0b3ba8ad92e8d6efae1243e4d15103484ec1224163ae7d0c43e0095ae19f28e41a7877d37398ff60dcadbf1eb27a77
checksum: 10/debfd6caa46c6b4ff5dfa9a98d50656311ed5ba999417ae23f1b279c1c171d722de9b396bfbbf56705e7041bc3cc4f7d579f97653c97544fd160a834c1e427dd
languageName: node
linkType: hard
"@zk-kit/lean-imt@npm:2.2.2":
version: 2.2.2
resolution: "@zk-kit/lean-imt@npm:2.2.2"
"@zk-kit/lean-imt@npm:2.2.3":
version: 2.2.3
resolution: "@zk-kit/lean-imt@npm:2.2.3"
dependencies:
"@zk-kit/utils": "npm:1.2.1"
checksum: 10/321e1964a4a0b7a19083c01743f5ee2a7311b1eede6775ce952a6fecf07d347dc4cdb250a557ff459bc6d3bff030e2a571f5116510c2392ca523f50c4d02311d
"@zk-kit/utils": "npm:1.3.0"
checksum: 10/a651d9d3030a91f77d9fe3d781383776f9189d2f2d8d4d27b1692e6ea5522f7b81d6baeae2fbd6c41878bc66700ab358074bbd9d5bac109d4114138066312a05
languageName: node
linkType: hard
@@ -21511,10 +21511,10 @@ __metadata:
"@nomicfoundation/hardhat-network-helpers": "npm:^1.0.0"
"@nomicfoundation/hardhat-toolbox": "npm:^4.0.0"
"@nomicfoundation/hardhat-verify": "npm:^2.0.0"
"@semaphore-protocol/contracts": "npm:4.9.0"
"@semaphore-protocol/core": "npm:4.9.0"
"@semaphore-protocol/hardhat": "npm:4.9.0"
"@semaphore-protocol/utils": "npm:4.9.0"
"@semaphore-protocol/contracts": "npm:4.10.0"
"@semaphore-protocol/core": "npm:4.10.0"
"@semaphore-protocol/hardhat": "npm:4.10.0"
"@semaphore-protocol/utils": "npm:4.10.0"
"@typechain/ethers-v6": "npm:^0.5.0"
"@typechain/hardhat": "npm:^9.0.0"
"@types/chai": "npm:^4.2.0"
@@ -21547,9 +21547,9 @@ __metadata:
version: 0.0.0-use.local
resolution: "monorepo-ethers-web-app@workspace:packages/cli-template-monorepo-ethers/apps/web-app"
dependencies:
"@semaphore-protocol/core": "npm:4.9.0"
"@semaphore-protocol/data": "npm:4.9.0"
"@semaphore-protocol/utils": "npm:4.9.0"
"@semaphore-protocol/core": "npm:4.10.0"
"@semaphore-protocol/data": "npm:4.10.0"
"@semaphore-protocol/utils": "npm:4.10.0"
"@types/node": "npm:^20"
"@types/react": "npm:^18"
"@types/react-dom": "npm:^18"
@@ -21574,10 +21574,10 @@ __metadata:
"@nomicfoundation/hardhat-network-helpers": "npm:^1.0.0"
"@nomicfoundation/hardhat-toolbox": "npm:^4.0.0"
"@nomicfoundation/hardhat-verify": "npm:^2.0.0"
"@semaphore-protocol/contracts": "npm:4.9.0"
"@semaphore-protocol/core": "npm:4.9.0"
"@semaphore-protocol/hardhat": "npm:4.9.0"
"@semaphore-protocol/utils": "npm:4.9.0"
"@semaphore-protocol/contracts": "npm:4.10.0"
"@semaphore-protocol/core": "npm:4.10.0"
"@semaphore-protocol/hardhat": "npm:4.10.0"
"@semaphore-protocol/utils": "npm:4.10.0"
"@typechain/ethers-v6": "npm:^0.5.0"
"@typechain/hardhat": "npm:^9.0.0"
"@types/chai": "npm:^4.2.0"
@@ -21610,9 +21610,9 @@ __metadata:
version: 0.0.0-use.local
resolution: "monorepo-subgraph-web-app@workspace:packages/cli-template-monorepo-subgraph/apps/web-app"
dependencies:
"@semaphore-protocol/core": "npm:4.9.0"
"@semaphore-protocol/data": "npm:4.9.0"
"@semaphore-protocol/utils": "npm:4.9.0"
"@semaphore-protocol/core": "npm:4.10.0"
"@semaphore-protocol/data": "npm:4.10.0"
"@semaphore-protocol/utils": "npm:4.10.0"
"@types/node": "npm:^20"
"@types/react": "npm:^18"
"@types/react-dom": "npm:^18"
@@ -26073,7 +26073,7 @@ __metadata:
"@types/mocha": "npm:^10.0.6"
"@types/ncp": "npm:^2"
"@types/node": "npm:^20.10.7"
"@zk-kit/lean-imt.sol": "npm:2.0.0"
"@zk-kit/lean-imt.sol": "npm:2.0.1"
chai: "npm:^4.2.0"
ethers: "npm:^6.13.4"
hardhat: "npm:^2.19.4"
@@ -26098,7 +26098,7 @@ __metadata:
"@docusaurus/preset-classic": "npm:3.5.2"
"@docusaurus/tsconfig": "npm:3.5.2"
"@mdx-js/react": "npm:^3.0.0"
"@semaphore-protocol/utils": "npm:4.9.0"
"@semaphore-protocol/utils": "npm:4.10.0"
"@svgr/webpack": "npm:^5.5.0"
"@types/react": "npm:^18.2.29"
clsx: "npm:^1.2.1"