Smart contracts are hard, but they don’t have to be.
Smart contracts (transfers of rights enforced in code) are significantly difficult to program securely. The participants may not entirely trust each other, and the amount of value at stake makes smart contracts an attractive target for hackers. With hundreds of millions of dollars disappearing overnight with no recourse, lax security can no longer be tolerated.
A better security architecture: object-capabilities
While most smart contract platforms currently use a identity-based security architecture where access is granted based on the sender of a transaction, it has been shown that identity-based security architectures have specific, significant flaws.
In contrast, Agoric uses an object-capability (ocap) security architecture, in which access to a programming object itself is the authority to use the object. This approach has been used successfully to create secure operating systems, and to control untrusted scripts in Google’s Caja project and Salesforce’s Locker Service.
Working towards a world of smart contracts
The Agoric team has been deeply involved in the development of smart contracts, from initial discussions in the early 90s to Brian Warner’s involvement in the prescient Least Authority security audit of Ethereum. Realizing that a world of smart contracts would not be possible without better software, the Agoric team has been actively creating the right environment for crypto-commerce.
Building on 30 years of experience, Agoric is developing a secure distributed ocap platform for smart contracts and market-oriented programming. Our platform supports the development of smart contracts and market institutions across many different scales, from large public blockchains to small two-party contracts.
Our ocap platform consists of:
- A robust architecture for building secure smart contracts.
- A cryptographic routing fabric for inter-chain interoperability.
- A library of market abstractions and a framework for securely composing them.
- A framework for secure user interaction.
Read the Agoric Canon
Over the years, the Agoric team has published a number of papers about smart contracts, markets in computation, secure programming, object capabilities, and other related topics.