mirror of
https://github.com/anonklub/anonklub.git
synced 2026-01-10 10:27:54 -05:00
(refactor) Update K for KZG params in Halo2 web-worker (#524)
* feat: benchmarking halo2-eth-membership * feat: adding a benchmark plot * chore: add changeset * refactor: ignore benchmark results files * refactor: rename config extension to .cfg and update README with benchmark * chore: add changeset * refactor: change k to be 14 based on the benchmarks * chore: add changeset * Delete .changeset/afraid-carrots-exist.md * refactor: fix conflict * Delete .changeset/short-cows-shake.md
This commit is contained in:
5
.changeset/honest-baboons-relate.md
Normal file
5
.changeset/honest-baboons-relate.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@anonklub/halo2-eth-membership-worker": minor
|
||||
---
|
||||
|
||||
Change k to 14 based on the benchmark results for better client-side performance
|
||||
@@ -27,7 +27,7 @@
|
||||
"typecheck": "tsc"
|
||||
},
|
||||
"dependencies": {
|
||||
"@anonklub/halo2-eth-membership": "0.1.2",
|
||||
"@anonklub/halo2-eth-membership": "0.2.0",
|
||||
"comlink": "^4.4.1",
|
||||
"viem": "^1.21.4"
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import { calculateSigRecovery, fetchKzgParams, hexToLittleEndianBytes } from './
|
||||
|
||||
let halo2EthMembershipWasm: IHalo2EthMembershipWasm
|
||||
let initialized = false
|
||||
let params: Uint8Array
|
||||
|
||||
export const Halo2EthMembershipWorker: IHalo2EthMembershipWorker = {
|
||||
// eslint-disable-next-line @typescript-eslint/no-misused-promises
|
||||
@@ -24,6 +25,10 @@ export const Halo2EthMembershipWorker: IHalo2EthMembershipWorker = {
|
||||
if (!initialized) {
|
||||
const numThreads = navigator.hardwareConcurrency
|
||||
await halo2EthMembershipWasm.initThreadPool(numThreads)
|
||||
|
||||
// Please note that K = 14 only supported for now until benchmarking is finished
|
||||
params = await fetchKzgParams(14)
|
||||
|
||||
initialized = true
|
||||
}
|
||||
},
|
||||
@@ -37,9 +42,6 @@ export const Halo2EthMembershipWorker: IHalo2EthMembershipWorker = {
|
||||
const isYOdd = calculateSigRecovery(v)
|
||||
const msgHash = hashMessage(message, 'bytes')
|
||||
|
||||
// Please note that K = 15 only supported for now until benchmarking is finished
|
||||
const params = await fetchKzgParams(15)
|
||||
|
||||
return halo2EthMembershipWasm.prove_membership(
|
||||
sBytes,
|
||||
rBytes,
|
||||
@@ -51,9 +53,6 @@ export const Halo2EthMembershipWorker: IHalo2EthMembershipWorker = {
|
||||
},
|
||||
|
||||
async verifyMembership({ membershipProofSerialized }): Promise<boolean> {
|
||||
// Please note that K = 15 only supported for now until benchmarking is finished
|
||||
const params = await fetchKzgParams(15)
|
||||
|
||||
return halo2EthMembershipWasm.verify_membership(
|
||||
membershipProofSerialized,
|
||||
params,
|
||||
|
||||
Reference in New Issue
Block a user