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

Update serialization format according to upstream #176

Closed
CPerezz opened this issue May 2, 2023 · 1 comment
Closed

Update serialization format according to upstream #176

CPerezz opened this issue May 2, 2023 · 1 comment
Labels
enhancement New feature or request invalid This doesn't seem right

Comments

@CPerezz
Copy link
Member

CPerezz commented May 2, 2023

Note that zcash/zcash#661 has been updated to use a leading version byte; little-endian byte order; and extra length fields for the selectors and permutation commitments. It's therefore no longer compatible with the format in this PR. However, the leading version byte is 0x01 which will make the two formats distinguishable, whenever the number of fixed column commitments is less than $2^{24}$ (see https://github.com/zcash/halo2>
zcash/pull/661#discussion_r1181181034 ).

Originally posted by @daira in #103 (comment)

I suggest to look at zcash#661 and adapt our serialization primitives to it. To keep everything as compatible as possible with upstream.

@CPerezz CPerezz added enhancement New feature or request invalid This doesn't seem right labels May 2, 2023
@CPerezz CPerezz moved this to 🆕 Product Backlog Items in zkEVM Community Edition May 2, 2023
@CPerezz CPerezz closed this as not planned Won't fix, can't repro, duplicate, stale May 3, 2023
@CPerezz CPerezz reopened this May 3, 2023
CPerezz added a commit to privacy-scaling-explorations/halo2curves that referenced this issue May 8, 2023
With the current serialization primitives we have here, pasta curves did
not have any way to be serialized as we did not implement `SerdeObject`
for it.

This PR adds this support which resolves
#23.
The code needs to have `unsafe` chunks as we need to transmute memory
in order to be able to access the private fields of the pasta-curves
crate structs.

This should be revisited and re-thought once
privacy-scaling-explorations/halo2#176 is
addressed.
CPerezz added a commit to privacy-scaling-explorations/halo2curves that referenced this issue Aug 4, 2023
With the current serialization primitives we have here, pasta curves did
not have any way to be serialized as we did not implement `SerdeObject`
for it.

This PR adds this support which resolves
#23.
The code needs to have `unsafe` chunks as we need to transmute memory
in order to be able to access the private fields of the pasta-curves
crate structs.

This should be revisited and re-thought once
privacy-scaling-explorations/halo2#176 is
addressed.
CPerezz added a commit to privacy-scaling-explorations/halo2curves that referenced this issue Jan 5, 2024
With the current serialization primitives we have here, pasta curves did
not have any way to be serialized as we did not implement `SerdeObject`
for it.

This PR adds this support which resolves
#23.
The code needs to have `unsafe` chunks as we need to transmute memory
in order to be able to access the private fields of the pasta-curves
crate structs.

This should be revisited and re-thought once
privacy-scaling-explorations/halo2#176 is
addressed.
@guorong009
Copy link

@CPerezz @ed255 @davidnevadoc
I believe we can close this issue, since it is invalid.
Even though we follow the serialization format of zcash-halo2, we already have huge diff in its contents.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request invalid This doesn't seem right
Projects
None yet
Development

No branches or pull requests

3 participants