Skip to content

[Optimisation] Improve proof compaction, serialisation and portability #41

@h5law

Description

@h5law

Objective

Improve the serializaiblity & portability of the 3 proof types.

Goals

  • Decrease the size of the compacted proofs
  • Understand the impact of these changes on proof sizes in regular and compacted forms (i.e. benchmarks)
  • Create optionality to use compacted or non-compacted proofs for different use cases

Deliverables

  • Determine whether we need to introduce protobufs (or other encoding schemes) or improve the custom compression.
  • A benchmark suit of tests on regular and compressed proof sizes
    • As objects
    • As serialised byte slices
  • Improved compact forms of the proof types
    • Improved serialisation & portability of proofs
  • Improve documentation on proofs, how they work, and the additions made from this ticket

Non-goals / Non-deliverables

  • Change how proofs are generated, validated, or used
  • Make proofs insecure by way of unnecessary changes to their structure

General deliverables

  • Comments: Add/update TODOs and comments alongside the source code so it is easier to follow.
  • Testing: Add new tests (unit/fuzz/benchmarks) to the test suite.
  • Makefile: Add new targets to the Makefile to make the new functionality easier to use.
  • Documentation: Update architectural or development READMEs; use mermaid diagrams where appropriate.

Creator: @h5law
Co-owner: @Olshansk

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

Status

Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions