Skip to content
This repository has been archived by the owner on Sep 12, 2024. It is now read-only.

iExecBlockchainComputing/knowledge-base

Repository files navigation

This repository is deprecated and is no longer maintained.

iExec Knowledge Base

This repository gathers documentation to discover blockchain and resources that can be used in preparation of and during a blockchain hackathon.

Block 1: Blockchain Overview (beginner)

Wallets

Explorers

Faucets

To interact with the blockchain, by calling a contract, or create your smart contract, you will need ether. For testing purposes, you can ask in the following link to get a few ethers . Give your public address and you'll receive 1 ETH,. This will be enough to start with.

Block 2: Explore components (intermediate)

  • This website and videos by Anders Brownworth explain each component of a blockchain. You will learn what is a hash, blocks, blockchain, and even simulate the creation of blocks.

Smart Contracts (developer)

Deploy your first smart contract on goerli testnet and deploy on IPFS a react front-end to interact with it.

If you want to learn Solidity, the language to create smart contracts on the Ethereum blockchain, a good start is:

https://cryptozombies.io/

Miscellaneous

Hackathon April meetups: [French]

Block 3: Hack with iExec

iExec leverages cutting-edge technologies in blockchain, distributed computing and Trust Execution Environments (TEE) such as intel SGX. The iExec solution is a mix of technology and protocols that organize the exchanges between stakeholders, with the maximum level of trust, security and flexibility.

Confidential Computing

iExec offers optional full end-to-end trusted and private execution on the decentralized cloud. End-to-end protection means full protection of the application data, user data, embedded data as well as application output data. Results can never be inspected by anyone else but their requester, answering the needs of highly-confidential applications and sensitive datasets.

It is possible to run an application A, using a dataset D, that produces a result R.

  • Dataset D is never be revealed.
  • Dataset D is only be used by a given application A, approved by owner of D with a whitelisting system.
  • The requester/end user is the only stakeholder able to decrypt the result R, and has no access to dataset D.

Monetize your computing resources as a digital assets.

  • Control and share your data processing without data leaks. Trained AI models are an example of valuable datasets that can be rented and monetized through iExec. They are highly valuable as their training requires time, money and huge amounts of data.

Monetize your IA model

Trusted Computing

  • Execute computations with a complete proof of execution, recorded on a blockchain. The iExec platform, combining hardware enclaves and blockchain, offers a tamper-proof and attestable execution which could be then verified by on-chain networks, in order to prove the validity of the processing.

It is possible to prove that an application A, using a dataset D, with input I produces the result R.

  • Application A is publicly attested by all stakeholders.
  • Dataset D is never be revealed. (optional)
  • The generation of the Result R is verifiable on-chain.

Oracles: Connect data from external world to the blockchain

Smart contracts live in a siloed and secure environments and have a very limited access to the real world. Allowing developers to connect

Collaborative computing

  • In a consortium environment, the combination of data allows to explore and extract new insights from data owned by multiple stakeholders, preserving the data privacy.

It is possible to prove that an application A, using datasets D1 and D2, produces the result R.

  • Application A is publicly attested by all stakeholders.
  • Datasets D1 and D2 are revealed.
  • The generation of the Result R is verifiable on-chain.

For security reasons (it necessits a smart contract security audit), the multiple datasets-handling feature will be supported afte V4 (planned in december 2019) in a minor following release (V4.X).
The usage of multiple input files is a valid workaround to build proof of concepts and prototypes of your solutions.

Off-Chain Compute

  • Extend some features of the blockchain to your computing resources: monitoring, access controls
  • Ease the deployment of applications.

Decentralized marketplace for computing resources

  • Open market : Anyone can become a cloud provider or requester
  • Data renting : Data providers generate revenues by renting datasets
  • Unstoppable applications : Developers can deploy decentralized applications and decentralized oracles that run on o-chain compute
  • Scalable computing : Requesters and developers have access to cloud computing as a commodity • Free pricing | Providers freely set their pricing strategy
  • Pay-per-task : Requesters only pay for what they consume
  • Improved efficiency : Blockchain’s smart contracts streamline and automate processes such as payments or results validation
  • High-grade security : Results are encrypted, and host machines are never able to inspect, copy or tamper with data
  • Custom permissioning : Providers can decide who has access to their resources, and revoke it when needed
  • Real-time monitoring : Every transaction is recorded on the blockchain