0xMiden / 0xMiden/protocol

Normalize construction of `ProvenTransaction`, `ProvenBlock` and `ProvenBatch`

Open
#1,297 0 comments 2 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
132
Forks
167
Avg merge
1d 23h
Merged PRs (30d)
110

Description

Related to https://github.com/0xPolygonMiden/miden-base/issues/1150

We need to standardize a method to verify the internal consistency of the `Proven{Batch, Block, Transaction}` structs at the moment of initialization/deserialization. Only `ProvenTransaction` currently supports full internal consistency verification after ZKP verification.

We need to determine what (if any) consistency checks should happen during deserialization.

In @bobbinth words (https://github.com/0xPolygonMiden/miden-base/issues/1150#issuecomment-2800081181):
Basically, with ProvenX structs, we should be able to ensure that the struct is fully internally consistent after verifying the attached ZKP (currently, this is possible only for the ProvenTransaction). This is probably not something we should do on deserialization - but we should align on what guarantees we uphold on deserialization (if any) and have a consistent way for verifying internal consistency of the structs.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.