zkmopro / mopro

Making client-side proving on mobile simple.
https://zkmopro.org
Apache License 2.0
131 stars 35 forks source link

feat(core): update read_zkey with `new_unchecked` #129

Closed vivianjeng closed 7 months ago

vivianjeng commented 7 months ago

According to https://github.com/zkmopro/mopro/issues/25#issuecomment-2067880755

loading zkey time ark-zkey with new_unchecked
multiplier2 872.00ns 1.21µs
keccak256 115.82s 1.56s
oskarth commented 7 months ago

I wonder if we want to combine ark-zkey with this? Because with ark-zkey we get 50% file size reduction due to point compression.

oskarth commented 7 months ago

If we remove/don't update arkzkey stuff, could we create an issue explaining problem and current state? So even if we don't do it now we can introduce this for arkzkey too

vivianjeng commented 7 months ago

I think we can create the issue to describe the situation

I think arkzkey is still doable without the current serialization/deserialization like in circom-compat https://github.com/arkworks-rs/circom-compat/blob/170b10fc9ed182b5f72ecf379033dda023d0bf07/src/zkey.rs#L328

but I am figuring out what is the correct way to serialize/deserialize

vivianjeng commented 7 months ago

Create an issue here https://github.com/zkmopro/mopro/issues/130