ZRNT experiment

Experiments, part of a full project. Not competing for prizes, just having fun building something useful for everyone working on ETH 2.0. I'm looking for more feedback from hackathon judges/attendees. Technical details can be found on the full project github repo: https://github.com/protolambda/zrnt

Inspiration

Just experimenting, started on a code-golfed executable ETH 2.0 spec for a bounty before the hackathon. Then explored the idea during EthCC and started hacking on it. During the hackathon I programmed the debug encoder, fixed lots of bugs, implemented the ETH 2.0 reward and deposit system, and programmed a test run.

What it does

Library to extend and create future ETH 2.0 related works (conformance tests, fuzzing, etc). The full Beacon-chain transition is implemented, on latest dev-branch spec (as of Sun 10 Mar. 2019, git commit 0f3e0ef

Test-run code included in the debug package.

How I built it

Just started hacking, already knew the ETH 2.0 spec well enough to implement it.

Challenges I ran into

Bugs, minor inconsistencies between different parts of the spec, over-complex algorithms (run-time complex to make it readable) in spec (e.g. O(n^3) where it could be O(n)).

Accomplishments that I'm proud of

This hack is NOT competing with any other hackathon project. Just some good progress towards ETH 2.0.

What's next

Fuzzing, benchmarking, testing, test-generation. An executable spec aims to provide value to ETH 2.0 clients by enabling research and test-creation.

Built With

Share this project:
×

Updates