Repository navigation
dr ses
Paper: Distributed Electronic Rights in JavaScript Miller, M.S., Van Cutsem, T., Tulloh, B. — ESOP 2013, Springer LNCS 7792
Contracts enable mutually suspicious parties to cooperate safely through the exchange of rights. Smart contracts are programs whose behavior enforces the terms of the contract. This paper shows how such contracts can be specified elegantly and executed safely, given an appropriate distributed, secure, persistent, and ubiquitous computational fabric. JavaScript provides the ubiquity but must be significantly extended to deal with the other aspects. The first part of this paper is a progress report on our efforts to turn JavaScript into this fabric. To demonstrate the suitability of this design, we describe an escrow exchange contract implemented in 42 lines of JavaScript code.
Dr. SES layers three components on JavaScript:
| Layer | Role |
|---|---|
| SES (Secure ECMAScript) | Capability-secure subset of JS — harden(), lockdown(), compartments, no ambient authority |
| Q | Promises and eventual-send — asynchronous message passing to remote objects (P~>method()) |
| Ken / NodeKen | Distributed orthogonal persistence — reliable messaging, persistent heaps, micro-snapshots after every event-loop turn |
Together they create a fabric where object references are rights — unforgeable, attenuable, and traversable across memory and network boundaries.
The paper establishes the foundational architecture that Endo inherits:
- Smart contracts as software-enforced rights exchange — the same definition Dean Tribble uses (see smart-contract).
- Capability-secure JavaScript — SES provides the local integrity layer; Endo's Hardened JavaScript is its direct successor.
-
Eventual-send —
P~>method()becomes Endo'sE(P).method(), the core of CapTP/OCapN. - Rights-based composition — the escrow exchange in 42 lines demonstrates how object-capability discipline makes smart contracts simple to express and safe to compose.
The paper calls Dr. SES "a progress report" — Endo is the production realization of that vision, replacing Ken with modern persistence and OCapN for inter-process capability transport.
See Section 3: Toward Distributed Electronic Rights for the paper's detailed comparison of governance, property rights, object capabilities, and money.
At its core is the recognition that object references represent a right to perform a set of operations on a specific, designated resource.
Navigation
- Home
- Governance
- Endo / object capabilities
- Retrospectives and source material