ergoplatform / ergoplatform/sigma-rust
Check that `EcPoint` serialization format is the same that used in sigmastate
- Dominant language
- Rust
- Stars
- 78
- Forks
- 63
- Avg merge
- 22h 5m
- Merged PRs (30d)
- 3
Description
I suppose taking some serialized random keys in sigmastate and check that Rust implementation produces the same result is enough.
Implementation in Rust:
https://github.com/ergoplatform/sigma-rust/blob/de9f53e731acba2ec71628ffe7a7938d558434e1/sigma-tree/src/ecpoint.rs#L15-L28
In sigmastate:
https://github.com/ScorexFoundation/sigmastate-interpreter/blob/ec71a6f988f7412bc36199f46e7ad8db643478c7/sigmastate/src/main/scala/sigmastate/serialization/GroupElementSerializer.scala#L7-L48
Contributor guide
Research direction
Start with sigma-tree/src/ecpoint.rs at the linked serialization implementation, then compare it with sigmastate's GroupElementSerializer.scala. Use the same serialized random keys in both implementations and confirm that the resulting bytes match; done means the Rust and sigmastate formats are demonstrably compatible.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust, scala
- Domain
- cryptography
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100