The Crowd Computer — A Decentralized App Execution Network
BLOG: Crowd Machine consists of a decentralized, peer-to-peer App Execution network computer called the Crowd Computer
Johnny Dilley — 14 December 2017
Johnny Dilley, Crowd Machine Chief of System Architecture and Design — While Crowd Machine represents a unique approach to app creation and execution, the Crowd Computer enforces network consensus to allow all device types including mobile, desktop, data center, and IoT devices to act in unison as a global application processor.
In the Crowd Computer, individuals contribute by electing to have their mobile devices (notebooks, laptops, phones, etc), desktops (gaming, workstations, etc), and servers contribute to a system called “Agoric”. Agoric is a Hardware-enforced consensus methodology that views applications that are submitted to the network as their respective functional components. Components consist of Patterns, Activities, and Natural Language Expressions.
The Crowd Computer is also responsible for ensuring that applications are matched (based on their characteristics and requirements) with the appropriate computational resource for execution. Crowd Machine enables this kind of activity via the use of a handful of cutting-edge technologies that seek to ensure strong security assumption and trustless dispute resolution.
A Strong Federation is used to enforce consensus, advance the chain state, and resolve higher-order disputes, as trust is a significant factor when it comes to the faithful execution of code across a distributed set of peers.
This Strong Federation is made up of a fixed (but addable/growable) set of hardware that is distributed to selected, known, specialized peers. The process of this selection is ongoing, but will involve community feedback and will optimize for security and redundancy. Strong Federations are a technical solution to problems that blockchain users face daily: transaction settlement latency, commercial privacy, and reliability.
The Crowd Computer gives very strong security assurances and enables certain kinds of behaviors that would otherwise be impossible given today’s blockchains.
Defending Against Security Threats
Full-network topology of all computational resources is maintained by the Federation. However, Usery Bonds ensure that adversarial conditions (whether they be sybil [passive] or hostile [active] in nature) result in direct, realized, and accountable costs to attackers. Essentially, when applications and peers are married to a contract (for certain application classes) there are methods for recourse in the event of a peer failing to meet its obligations.
Seamless Off-chain Interaction
Applications, once queried and instantiated, utilize payment channels (Lightning & MAST structures) to meter payment for faithful execution. This Layer-2 script-ratcheting allows for peers and applications to seamlessly interact off-chain for their ongoing needs, only settling to the chain under conditions of malfeasance, or for application completion.
These, in combination with the Crowd Machine application engine, allow all computation within the network to take place in a context that where hardware-enforced, fixed rules determine the state of the system, and the allowable activities that can occur within it.
The Crowd Computer will be instrumental in decentralized existing centralized infrastructures. It will offer greater affordability, robustness and scalability and provide the mechanism by which decentralized apps will proliferate.