Skip to content

Conversation

Maddiaa0
Copy link
Member

Overview

I noticed that there were alot of operations that operated over the DG1, however they were often all over the codebase in different libraries.

This change introduces a DG1 type
Beforehand, in any place that was slicing from DG1, it would convert it into MRZ and then perform byte slices. Each place where this was done used magic numbers for the size of data being returned. This PR types those magic numbers.
e.g. DG1Data = [u8; 95] rather than [u8; 95] appearing over the codebase we use the type.
This array slicing is now performed in one single place, utils::dg1 rather than in many different files.

The generated circuits should end up being exactly the same. (currently checking)

In upcoming PRs ill make the same typing changes to other parts of the proof, to avoid the magic numbers in array definitions.

@michaelelliot michaelelliot force-pushed the md/format branch 2 times, most recently from 9f31c68 to c1a4e2c Compare July 15, 2025 03:43
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

Successfully merging this pull request may close these issues.

1 participant