TEEX
About TEEX
TEEX is a secure distributed computing platform which provides a Layer-2 solution to eliminate two fundamental limitations of traditional blockchains: privacy and scalability. TEEX leverages the latest trusted hardware/software technologies to preserve the confidentiality and integrity of data and computations. It decouples the process of execution from settlement by introducing an off-chain system to mitigate the bottleneck of traditional smart contracts. Comparing with existing solutions TEEX ensures the most robust isolation with mutually-untrusted execution environment to maximize the security guarantees.
TEEX Architecture
Service Providers provide dedicated services to Users (e.g., some machine learning algorithms and models). They submit service images to the Service Manager and put the related information, such as service ID, description, price and remuneration onto the public blockchain for Workers. The services will be publicly displayed on the public blockchain, which resembles an online app store.
Users can enjoy the services from the service providers. They browse public chain for service information and upload service requests with corresponding fees onto the chain. The real workload is off-chain with direct communication between Users and Workers.
Note
It is worth noting that a User
can also be a service provider
. For example, if a User
requires computing power from Workers
for her private service, she can upload her service and invoke it.
Data Providers have valuable data entirely within their own command. They can be individual users, or they can also be enterprise and government users. In TEEX network, data providers make money from selling temporary access to some of their data, rather than handing over a copy. One of the greatest concerns of data providers is data privacy that they are fear of executors or data comsumers stealing their data.
Workers. Anyone who owns TEE can join the network as a Worker. They pull the service images from the Service Manager and deploy it inside the enclave. Once they receive a task from the dispatcher, they will establish a secure channel with the User and perform the User-specified execution via Executors
. At the end of the task, the executor will generate a proof of its work which used for gaining the reward in the settlement.
Dispatchers run inside TEE and receive tasks from Users and dispatch the tasks to Workers. Workers can register with some of the dispatchers. Dispatchers are responsible for making the system serve well through flexible scheduling.
Service Manager is a TEE monitor and manager that helps to store service images along with their secret keys safely. Before putting services into production, service providers are required to upload the service images to the Service Manager and take the public key back. Service Manager guarantees that the secret key will only be passed among TEEs.
TEE Distributed Storage (TEE-DS) is a dedicated distribted key-value storage engine that is carefully protected inside TEE. It aims at provisioning storage service with aspects of high-performance, availability and scalability. It adopts a master/slave architecture for multiple replicas and maintains the consistency. TEE-DS provides end-to-end encryption with the Service Manager and guarantees that any data stored is automatically encrypted. The key management is transparent to the clients and keys are preserved inside TEE only.
Public Chain is mainly referred to public smart contract systems like Ethereum. The public chain is used for achieving global consensus and settlement. Since storage on Ethereum is resource-consuming, we leverage public storage system (e.g., IPFS) to store some necessary data such as the state of contracts.