ethereum / trinity

The Trinity client for the Ethereum network
https://trinity.ethereum.org
MIT License
474 stars 145 forks source link

Implement ENRs #583

Closed jannikluhn closed 5 years ago

jannikluhn commented 5 years ago

What is wrong?

First step of implementing discv5 is implementing the ENR format. The spec can be found here.

How can it be fixed

Add a class representing ENRs with methods to

Add an RLP sedes object to serialize/deserialize them. We can probably not just use rlp.Serializable as the number of fields isn't fixed.

carver commented 5 years ago

Related issue: support for sedes of objects with variable field length https://github.com/ethereum/pyrlp/issues/112 (no active work currently, but curious for input on the API)