Closed levlite closed 1 year ago
Hi @levlite, thank you for your proposal and for your patience with our review. Your application is still under review, but we expect to have more information available in the coming weeks.
If we have any questions for your team, we will be sure to connect!
Hi @levlite, thank you again for your patience with our review. Unfortunately, we will not be proceeding with a grant at this time. Wishing you all the best as you continue to build!
Open Grant Proposal:
Vulcanize - Injecting Ethereum into Filecoin
Project Name: Injecting Ethereum into Filecoin
Proposal Category:
Integrations
Entity Name: Vulcanize, Inc.
Proposer: @levite
Filecoin ecosystem affiliations: Protocol Labs
Technical Sponsors: @anjor and @ribasushi
Do you agree to open source all work you do on behalf of this RFP under the MIT/Apache-2 dual-license?: Yes
Project Summary
The goal of the project is to inject the complete Ethereum state into Filecoin. This entails a multi-step process, with incremental steps towards the ultimate goal of supporting the below capabilities:
With this proposal completed, we expect these new capabilities to benefit both the Filecoin and Ethereum communities and demonstrate how Filecoin can serve as a Data Availability layer to all blockchain ecosystems.
Impact
Benefits for Filecoin and Ethereum as well as key preparation for a post 4444 and 4844 world.
Outcomes
Milestone 1: Load execution layer Ethereum DAG into Filecoin Milestone 2: Load beacon chain Ethereum DAG into Filecoin
Not in the scope but subsequently possible and recommended based on this grant:
Milestone 3: Optimize storage format for analysis of historical block information and rebuilding Ethereum archives Milestone 4: Indexing, caching, and retrieval services for these use-cases Milestone 5: Provide support for future use cases (EIP-4844 and EIP-4444)
Development Roadmap
Milestone 1: Load execution layer Ethereum DAG into Filecoin
Milestone 2: Load beacon chain Ethereum DAG into Filecoin
Total Budget Requested
USD $98,400 for Milestones 1 & 2
Maintenance and Upgrade Plans
The third, fourth, and fifth Milestones can be better fleshed out upon completion of Milestones 1 & 2.
Milestone 3: Optimize storage format for analysis of historical block information and rebuilding Ethereum archives
(Estimates will be clarified by Milestones 1 & 2, TBD - not in scope for this dev grant proposal)
Milestone 4: Indexing, caching, and retrieval services for these use-cases
(Not in Scope for this dev grant proposal)
Milestone 5: Provide support for future use cases (EIP-4844 and EIP-4444)
(Not in Scope for this dev grant proposal)
Team
Vulcanize Inc. Cerc Inc.
Team Members
Rick Dudley, President Ian Norden, Engineering VP Erik Dies, Product Lead Leah Light, Operations Manager
Team Member LinkedIn Profiles
https://www.linkedin.com/in/afdudley/ https://www.linkedin.com/in/ian-s-norden/
githuhbs:
@afdudley @i-norden @erikdies @levlite
Team Website
https://vulcanize.io/ https://cerc.io/ https://laconic.com/
Relevant Experience
About Vulcanize / Laconic:
Vulcanize, Inc. are blockchain and IPLD experts with many years of experience in Ethereum and CosmosSDK, as well as a solid understanding of blockchain and database fundamentals.
The Vulcanize team works on Laconic, a collection of software that empowers Web3 developers to access multi-chain data in a way that uniquely preserves the verifiability of the data they extract. This service is powered by their open source IPLD-based Postgres database. It has a full index of Ethereum chain data and they are in the process of adding additional chains. The Laconic stack relies on IPLD, leverages IPFS, and intends to use Filecoin for archival storage. The repositories that make up the Laconic Stack are listed in the relevant repos below.
The Laconic product suite also includes Watchers, which auto-generate code from Solidity source, capable of reading and transforming activity from smart contracts into IPLD blocks stored and indexed in a relational database. Using the Laconic techniques, Vulcanize was able to accelerate a number of services, in particular, serving The Graph subgraphs and RPC endpoint queries.
The Laconic work originated with VulcanizeDB, a technology conceived while Vulcanize was working with MakerDAO in 2017. Since then, Vulcanize has evolved into the Laconic stack, but the original repo is still available at MakerDao.
During the process of developing the Laconic stack, Vulcanize developed the stack-orchestrator, which simplifies testing and deployment. This tool can be used by other projects to simplify the testing and deployment of the complex client and add-on services often found in the blockchain space. While testing code related to its current Protocol Labs grant, Vulcanize added Lotus to the stack-orchestrator, making it far easier for engineers to spin up local testnets for testing.
Vulcanize also developed a tool, chain-chunker, which serves to manipulate blockchain client databases. It manages clusters used to process the historical data from large chains such as Ethereum; Vulcanize intends to add Lotus support to chain-chunker in the future.
Since 2016, Vulcanize has been awarded a plethora of prestigious grants and contracts. They were core contributors to Ethereum, IPLD / IPFS, and CosmosSDK. Vulcanize received a grant from the Ethereum Foundation for EIP-1559. Vulcanize was twice appointed by the Interchain Foundation for Core Contribution to the Cosmos SDK, where they worked on SMT and State Streaming (ADRs 38 and 40). The Interchain Foundation also awarded Vulcanize a grant to work on Tendermint-Cosmos IPFS integration and to develop a Postgres-IPFS caching layer. This work was never completed, but produced IPLD schemas for the Tendermint and Cosmos data structures, as well as a Golang implementation of IPLD codecs for these objects, and a proposed scheme for providing generic IPLD support for any CosmosSDK chain. Vulcanize President Rick Dudley also served on the TAC (Technical Advisory Committee) for Interhain Foundation for several terms.
Vulcanize also received a grant from MolochDAO to build an IPLD-based Ethereum block explorer.
Currently, they are receiving funding from MetaMask / ConsenSys for their work on the MobyMask Ethereum light client and have also made major contributions to js-libp2p in the course of this project. Additionally, they are building a Nitro-based payment channel L3 for the MobyMask project.
Vulcanize has received prior large grants from Protocol Labs for their “Ethereum as IPLD” work. This work produced IPLD schemas for the Ethereum data structures as well as Typescript and Golang implementations of IPLD codecs for these objects.
Vulcanize also received a grant in 2022 to research storing blockchain state on IPFS/Filecoin for ten popular blockchains, funded by Radius.space. The final report for this project is linked here.
Currently they have a grant from Protocol Labs for a generic indexing and caching solution for Filecoin chain and state data, detailed here. This project involves work across multiple Protocol Labs repositories, including lotus, go-datastore, boxo, go-ipld-cbor, go-amt-ipld, go-hamt-ipld, and others.
References Filecoin Extractor Project Plan for a generic indexing and caching solution for Filecoin chain state data (current grant)
Cosmos IPLD Project Plan
Team code repositories
Relevant repos *
IPLD schemas and codecs: https://github.com/vulcanize/ts-dag-eth https://github.com/vulcanize/go-codec-dageth https://github.com/vulcanize/go-codec-dagcosmos https://github.com/ipld/ipld/tree/master/specs/codecs/dag-eth https://github.com/ipld/ipld/tree/master/specs/codecs/dag-cosmos
Laconic Stack: https://github.com/cerc-io/ipld-eth-db https://github.com/cerc-io/ipld-eth-server https://github.com/cerc-io/go-ethereum/tree/v1.11.6-statediff-v5/statediff https://github.com/cerc-io/eth-statediff-service https://github.com/cerc-io/ipld-eth-state-snapshot
Watcher related: https://github.com/vulcanize/watcher-ts https://github.com/cerc-io/gelato-watcher-ts https://github.com/cerc-io/mobymask-v2-watcher-ts https://github.com/cerc-io/ts-nitro
Stack orchestrator: https://github.com/cerc-io/stack-orchestrator (including Lotus support)
Filecoin indexing: https://github.com/vulcanize/filecoin-indexing https://github.com/vulcanize/lotus-index-attestation
Additional Information
Eva Shon leah@vulcanize.io