se3000/ruby-eth

`eth` 0.5 tracker

q9f opened this issue · 0 comments

q9f commented

ultimate goals:

  • long-term support for ruby 3.0+
  • reduce external dependencies of unmaintained and abandoned gems
  • move all crypto dependencies to native ruby if possible (secp256k1, openssl) to ensure no breakage by OS

essential components

  • keys pairs, accounts
  • rlp encoding/decoding
  • transaction composition, signing, and verification
    • chain ID, replay protection (eip 155)
    • types, envelopes (eip 2718, eip 1599)
  • message signatures and recovery (raw messages and structured signatures)
    • typed structured data hashing and signing (eip 712)
  • implement ethereum tests where applicable https://github.com/ethereum/tests

constraints

  • spec-driven, 100% coverage
  • fully documented (auto-generate HTML docs)
  • ruby-first, low-dependencies, if possible

considerations