Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BitVM Tracking Issue #203

Open
8 of 13 tasks
ekrembal opened this issue Aug 2, 2024 · 0 comments
Open
8 of 13 tasks

BitVM Tracking Issue #203

ekrembal opened this issue Aug 2, 2024 · 0 comments
Assignees

Comments

@ekrembal
Copy link
Member

ekrembal commented Aug 2, 2024

Issue Description

Current status:

number of pieces: 10359 1374 scripts
script total size: 5115859126 4.400.835.584 bytes
max (script size): 3422794 bytes (1.5M except one outlier that is 3.5M) 3.883.637 bytes
max (max stack size): 958 items 942 items

30553 10044 intermediate value, (254 bit commitment, others are Fq or Fr, we can think of them as Fq)
one Fq checksig is 9522 41156 bytes

We can fit 12 26 Fq in 26*36<1000 stack elements

Goal:

number of subscripts: ~500
assert tx size: ~4mb

Things to improve:

  • Try different D instead of D=16 in Winternitz
  • Switch to groth16-affine
  • Merge optimizations and our split work in a single branch (dev branch)
  • What is the maximum number of Fq we can get with hash then commit, Result: negative, since blake3 is 75k.
  • G1.scalar_mul optimization
  • Fq.tmul bug fixes
  • Integrate tmul into groth16 verifier script
  • fq2 mul by using 2 multiplications with 2 linear combinations

Backlog

  • fq mul_by_constant and square methods
  • quad miller loop optimization with window method
  • Test optimizations in FFLONK

TODO:

  • Hashing a fq12 with blake3, Hash64(Hash128(Hash64 | Hash64 | Hash64 | Hash64) | Hash128)
    (@just-erray, deadline: 01/10/2024)
  • Verifying the output hash of fq12 with Winternitz signature. (@just-erray, deadline: 02/10/2024 )
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants