How AWS Nitro Could Usher in the Next Wave of Decentralized Computing
The collapse of FTX in 2022 is an important reminder that opaque, centralized services are prone to corruption. The rise of FTX was entwined with the rise of its founder, Sam Bankman-Fried. Trusting funds with FTX implicitly meant trusting SBF, which unfortunately ended up hurting many people.
The obvious corrective to centralization and blind-trust is to use crypto-native primitives like decentralization and blockchain-based trust. To those in the crypto world, the human error and criminal behavior that centralization can hide is just the problem that decentralized blockchains can correct. In the case of FTX, one can make the case that there was a decentralized version of it running on Solana, the Serum decentralized order book that plugged into other Solana DeFi apps like Raydium. The problem was that FTX controlled Serum’s private keys, which necessitated the Solana community to create an open-source Serum fork called OpenBook in the wake of FTX’s bankruptcy.
This quick action shows the strength of the Solana community in the face of an existential crisis. The forking of OpenBook worked because Serum was a smart contract dApp that could rely on the blockchain for trust. But what of more complex dApps that need the traditional 3-tier front-end, server, and database layer architecture? How can we reach the same level of trust while running these more complex decentralized apps?
AWS Nitro as the Trust Layer for Complex Decentralized Apps
For rich, full-featured apps to run decentralized, we need an architecture beyond the ledger and its limitations. A blockchain can run smart contract apps, whereas the TEA Project allows developers to build truly decentralized applications with the same 3-tier architecture they’re already familiar with.
- The front-end files (such as JS, HTML, and CSS) are stored on IPFS.
- The server comprises the distributed TEA nodes deployed by TEA miners.
- The database layer is maintained by the TEA state machine, which is also maintained by distributed TEA nodes.
But because the TEA Project’s nodes are distributed, we need to ensure they’re all trustable execution environments. This is where AWS Nitro comes in with its important protected enclave feature as part of its design.
Create additional isolation to further protect highly sensitive data within EC2 instances AWS Nitro Enclaves enables…
Nitro’s hardware can provide a proof that the code hash inside any of its enclaves matches what’s claimed. Any modifications will be publicized and cannot be concealed. These protected enclaves provide trusted execution environments that no longer require any centralized businesses to set up and control the server. In the TEA Project, any community member can load a public image onto an AWS Nitro instance to become a distributed server node with one click.
In a blockchain, the decentralized nodes finalize transactions and maintain the ledger. But they can’t run arbitrarily complex computer code. The TEA Project allows for apps that run general computing tasks, which is why we need to access our decentralized nodes for actual computation.
We Can Now Run a Company That’s Trustable, Honest, and Decentralized
TEA Project’s distributed compute environment that leverages AWS Nitro instances is a promising first step away from a centralized company running an app like a black box as seen in FTX’s case. If hardware security technologies such as AWS Nitro are used with a decentralized distributed design, such black box apps that put end-users at risk can be fundamentally avoided.
To make a completely trustable app, let’s make its core logic, as contained in the code, fully open source. Together with the trusted execution environment, this setup would allow for an app that runs with complete transparency. Let’s take the example of an exchange like FTX again: even if the business logic of the centralized cryptocurrency exchange remains unchanged, the code of all business logic would now be open source. It could be clearly checked that there’s no hidden admin backdoor and no kind of business logic where super users can embezzle customer funds without permission. So as long as the code can be run on a server cluster that no one can tamper with and is subject to public scrutiny, any attempt to steal customer funds cannot be implemented.
The TEA Project is a distributed application platform built on AWS Nitro. It not only provides a WebAssembly runtime running inside the enclave but also has a complete set of economic systems to ensure that all participants (miners, developers, investors, and ordinary users) can compete fairly to receive benefits. Developers don’t need to learn complex blockchain concepts or anything about distributed systems. They can assume that they’re actually developing completely decentralized application software in the traditional web2 environment. When end-users use it, they won’t encounter any barriers in using such a decentralized application. In this way, it’s easy to establish a DAO-based economic system and realize the decentralized ideals of web3.
To learn more about the TEA Project, please check out the following post which describes our operating philosophy and underlying tech stack: