Intel has just released a new product on Github called “Sawtooth Lake” – a highly modular platform for building, deploying and running distributed ledgers to provide companies that don’t need a central authority with the ability to run their own Blockchains.
Sawtooth Lake will allow companies that have no need for a central authority essentially to run their own Blockchain, providing a permanent digital record.
In Sawtooth Lake the data model and transaction language are implemented in a “transaction family” and Intel will provide three transaction families that are sufficient for building, testing and deploying a marketplace for digital assets:
- EndPointRegistry – A transaction family for registering ledger services.
- IntegerKey – A transaction family used for testing deployed ledgers.
- MarketPlace – A transaction family for buying, selling and trading digital assets.
This set of transaction families provides an “out of the box” ledger that implements a fully functional marketplace for digital assets.
Sawtooth Lake abstracts the core concepts of consensus, isolates consensus from transaction semantics, and provides two consensus protocols with different performance trade-offs. The first, called PoET for “Proof of Elapsed Time”, is a lottery protocol that builds on trusted execution environments (TEEs) provided by Intel’s SGX to address the needs of large populations of participants. The second, Quorum Voting, is an adaptation of the Ripple and Stellar consensus protocols (Ripple and Stellar developed consensus protocols that extend traditional Byzantine Fault Tolerance for open participation) and serves to address the needs of applications that require immediate transaction finality.
For the purpose of achieving distributed consensus efficiently, a good lottery function has several characteristics:
- Fairness: The function should distribute leader election across the broadest possible population of participants.
- Investment: The cost of controlling the leader election process should be proportional to the value gained from it.
- Verification: It should be relatively simple for all participants to verify that the leader was legitimately selected.
Sawtooth Lake provides a Nakamoto consensus algorithm called PoET that uses a trusted execution environment (TEE) such as Intel® Software Guard Extensions (SGX) to ensure the safety and randomness of the leader election process without requiring the costly investment of power and specialized hardware inherent in most “proof” algorithms. Their approach is based on a guaranteed wait time provided through the TEE.
Basically, every validator requests a wait time from a trusted function. The validator with the shortest wait time for a particular transaction block is elected the leader. One function, say “CreateTimer” creates a timer for a transaction block that is guaranteed to have been created by the TEE. Another function, say “CheckTimer” verifies that the timer was created by the TEE and, if it has expired, creates an attestation that can be used to verify that validator did, in fact, wait the allotted time before claiming the leadership role.
The PoET leader election algorithm meets the criteria for a good lottery algorithm. It randomly distributes leadership election across the entire population of validators with distribution that is similar to what is provided by other lottery algorithms. The probability of election is proportional to the resources contributed (in this case, resources are general purpose processors with a trusted execution environment). An attestation of execution provides information for verifying that the certificate was created within the TEE (and that the validator waited the allotted time). Further, the low cost of participation increases the likelihood that the population of validators will be large, increasing the robustness of the consensus algorithm.
Intel’s “proof of processor” algorithm scales to thousands of participants and will run efficiently on any Intel processor that supports SGX.
The Sawtooth Lake platform is distributed in source code form with an Apache license. You can get the code here and start building your own distributed ledger.
- Blockchain-Based Travala.com Teams Up with Dash For Hotel Booking Payments - July 18, 2019
- SEC And FINRA Approves First Reg A+ Token Offerings - July 18, 2019
- Tokinex Tolken Sale Sells out in 35 Seconds - July 18, 2019
- 18 Organisations Launch The Convergence Alliance To Enable A New Open Data Economy Built On The Decentralized Web - July 9, 2019
- Bittrex Acquires Tradedash - July 3, 2019
- Korea’s Cube Systems Rolls Out New Blockchain eCommerce Platform - July 3, 2019
- Clinlogix Joins ALTEN Calsoft in Launching Blockchain for Clinical Trials - July 3, 2019
- Binance Charity forms alliance with 46 companies to unveil a stablecoin for the alleviation of period poverty - July 3, 2019
- Nestlé Breaks from IBM Food Trust Blockchain Group for New Milk Supply Chain Trial - July 3, 2019
- Tokeny Solutions Digital Asset Platform Gets €5 Million Backing from Euronext - July 3, 2019
- Blockchain Venture Capital Funding Reaches $822 Million in 2019 - July 1, 2019
- Toronto’s Creative Destruction Lab Joins Facebook’s Libra Association - June 19, 2019
- Australia’s Power Ledger to bring P2P Energy Trading to Austria - June 19, 2019
- Litecoin Foundation Teams Up With Bibox And Ternio On Special Edition Litecoin Debitcard - June 19, 2019
- US Legislators Call for Halt to Facebook’s Cryptocurrency Plans – And to Face Congress - June 19, 2019
- Hyperledger Welcomes Diverse Line-up of New Members for Identity Project - June 18, 2019
- Facebook Announces Calibra Digital Wallet and Libra Cryptocurrency - June 18, 2019
- MIT Professor Silvio Micali’s Algorand Project Announces Date for First Auction - June 6, 2019
- SEC sues Canadian Messaging Service Kik Selling Unregistered Securities in its $100 million ICO - June 4, 2019
- CrowdEngine Teams Up With Polymath Adding Security Token Issuance to List of Crowdfunding Services - June 3, 2019