IPFS & libp2p <3 Ethereum - Roadmap of things to get everything working together nicely 👌 #173
Description
Following up on all the DEVCON2 conversations and collaboration
We've presented a lot of new exciting things, some of which involve getting Ethereum and DEVP2P working nicely with IPFS and libp2p. If you didn't have the chance to be there, the talks will be released soon and we will link to them here.
Meanwhile, here are the list of things that we, the IPFS and Ethereum communities, are working on to make Ethereum work nicely on top of IPFS, leveraging all of what IPLD has to offer, plus the converging the libp2p and DEVP2P stacks, towards running full Ethereum nodes in the browser and more.
Ethereum and IPFS
Milestone 1 - Resolve Ethereum blocks through IPFS (using IPLD)
- Support for "IPLD formats" in multicodec The unified multicodecs theory multiformats/multicodec#16
- Implement the upgraded IPLD resolver that is IPLD format aware through CID and knows how to use the .tree and .resolve of the IPLD formats
- create ipld-protobuf that implements .tree and .resolve for protobuf
- create ipld-cbor that implements .tree and .resolve for cbor
- create ipld-eth-block that implements .tree and .resolve for ethereum blocks, rlp encoded
- Add an expactation that for the IPLD-resolver to be able to write a IPLD format to IPFS repo, this format has to have a '.serialize' func
- Enable support for more hashing functions on Multihash [email protected] breaks build 🚨 ipld/js-ipld#15
libp2p and DEVP2P
Milestone 1 - Mount the Ethereum Wire Protocol on top of a libp2p Connection.
- Merge [WIP] examples(webui): convert to react daviddias/js-ethereum-libp2p#7
- Push latest modifications to the geth client add link to modified geth client daviddias/js-ethereum-libp2p#9
- Get the Ethereum Wire Protocol (62+63) Implemented over a raw stream (or pull-stream) https://github.com/ethereumjs/node-devp2p-eth @axic
Other notes
@wanderer, @kumavis, @axic et al, it might be good to schedule a chat, next to the Monday calls that we have every week, to sync up and make sure all the questions are answered. We can, of course, continue chatting over IRC and gitter, the calls would be just a way to check point and also invite more members in the community to participate :)
I really need to understand how https://github.com/ewasm works, so that we can have wasm-libp2p and wasm-ipfs :D