-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
feat: make more structs serializable #1723
base: main
Are you sure you want to change the base?
Conversation
Failed linkcheck action fixed with #1720 |
is there any reason for this? |
@mm-zk while I agree with you, it will be needed for an external running (SGX) verifier ... do you have any other suggestion on how to solve this? Either we will have to have a public constructor for those structs, or do it via serde. |
Or we can state, that the serialization user is aware of struct changes and can cope with those by making sure the consumer is in lockstep with the producer. |
@haraldh - what do you mean by 'public constructor'? AFAIK in rust as long as all the fields are pub, you have implicit public constructor (Struct{field1: xx, field2: yy} ) |
True, in this case all the fields of the touched structs are public. So, we will have to make shadow structs for all of them instead, if this PR is not gonna make it. |
Needed for the TEE verifier as input. These structs will be serialized for intercloud data exchange. Signed-off-by: Harald Hoyer <harald@matterlabs.dev>
@haraldh - what do you mean by 'shadow structs'? and do you actually serialize these objects as strings? |
as you could see in #1860 Adding Serialize, Deserialize results in removing the shadow structs, see the core/lib/tee_verifier/src/lib.rs changes in this commit
No... bincode |
What ❔
Make more structs serializable.
Why ❔
Needed for the TEE verifier as input. These structs will be serialized for intercloud data exchange.
Checklist
zk fmt
andzk lint
.zk spellcheck
.zk linkcheck
.