Fission Reactor, Fission's applied research team, is hard at work developing two core open source protocols:
IPVM, or the Interplanetary Virtual Machine, brings content-addressed computation to IPFS using Wasm, PKI, and capabilities. IPVM liberates computation from its dependence on prenegotiated services and paves the way for interoperability.
Rhizome executes a local-first edge database for querying decentralized data. It extends support for concurrent access to structured and unstructured data distributed in content-addressable networks and enables the creation of decentralized, collaborative applications.
Several key concepts that have made our work possible have come from academic computer science papers. If you've attended any of our Distributed Systems Reading Group calls, some of these papers will look familiar to you.
One that we discuss a lot at Fission is A.M.B.R.O.S.I.A.: Providing Performant Virtual Resiliency for Distributed Applications. A.M.B.R.O.S.I.A. explains how running computations in deterministic environments, idempotency, and pure computation with mutations at the end can lead to virtual resiliency. We've adopted this approach with IPVM and its first implementation, Homestar.
Another paper, DBSP: Automatic Incremental View Maintenance for Rich Query Languages, explains how to achieve efficient incremental view maintenance, thus empowering us to make Rhizome super fast for CRDT use cases.
We hope the following resources provide insight into the work we're doing at Fission and inspire you in your own projects!
IPVM Research
Below is a short list of relevant research related to IPVM and the Homestar implementation of IPVM.
Distributed Orchestration and Compute Engines
- Escaping the Singularity: Side Effects, Front and Center!
- Parallel Programming Must Be Deterministic by Default
Composition & Concurrency Control
Coordination and Transformation
Decentralized Applications
Durable Executions & Virtual Resiliency & Fault-oblivious Workflows
- A.M.B.R.O.S.I.A: Providing Performant Virtual Resiliency for Distributed Applications
- Durable Functions: Semantics for Stateful Serverless
- Netherite: Efficient Execution of Serverless Workflows
- SEQUEL: A Structured English Query Language
Scheduling
Serverless Computing & Performance
Wasm
Background and Studies
- A Comprehensive Study of WebAssembly Runtime Bugs
- Bringing the Web up to Speed with WebAssembly
- Characterization and Implication of Edge WebAssembly Runtimes
Compilers, JITs, & Execution Models
Component Model & Wasm Interface Types (WIT)
Zero-knowledge proofs
Peer-to-Peer Networking & Content-Addressable Storage
- Design and Evaluation of IPFS: A Storage Layer for the Decentralized Web
- GossipSub: Attack-Resilient Message Propagation in the Filecoin and ETH2.0 Networks
- IPFS-FAN: A Function-Addressable Computation Network
Trust Models
Distributed Capability Systems & Auth
Privacy-preserving Protocols
- DECO: Liberating Web Data Using Decentralized Oracles for TLS
- DIDO: Data Provenance from Restricted TLS 1.3 Websites
Rhizome Research
Below is a short list of research relevant to Rhizome.
Query Compilation & Processing
- Automatic Index Selection for Large-Scale Datalog Computation
- Compiling Data-Parallel Datalog
- Datalog and Recursive Query Processing
- Queries are easier than you thought (probably)
- Recursive Strategies for Answering Recursive Queries — The RQA/FQI Strategy
Top-Down vs Bottom-Up
A debate that has raged for literal decades:
Differential
- DBSP: Automatic Incremental View Maintenance for Rich Query Languages
- Differential Dataflow
- DBSP Notes
Languages
Schemas & Interoperation
Consistency
Byzantine Fault Tolerance
CRDTs
Data Structures
- A Specialized B-tree for Concurrent Datalog Evaluation
- Hexastore: Sextuple Indexing for Semantic Web Data Management
Encryption
Searchable
- Dynamic Local Searchable Symmetric Encryption
- ESVSSE: Enabling Efficient, Secure, Verifiable Searchable Symmetric Encryption
- Efficient Dynamic Searchable Encryption with Forward Privacy under the Decent Leakage
- Eurus: Towards an Efficient Searchable Symmetric Encryption with Size Pattern Protection
- Searchable Symmetric Encryption: Improved Definitions and Efficient Constructions
- Verifiable Dynamic Symmetric Searchable Encryption Optimality and Forward Security
For more information about IPVM and Rhizome and to stay in the loop about our progress, subscribe to the Fission newsletter below.