Hyperledger recently announced that the Sawtooth blockchain project had reached version 1.0, making it the second Hyperledger blockchain to reach production status.
Hyperledger is an open source initiative hosted by the Linux Foundation which aims to develop enterprise blockchain technologies.
The organisation is currently working on eight blockchain projects, with Sawtooth one of the most advanced projects. It aims to be a modular platform for building, deploying, and running enterprise distributed ledgers.
Sawtooth began inside Intel’s research labs as a project code-named “Sawtooth Lake” in 2014.
The project wanted to solve security and scalability problems posited by the increased adoption of Bitcoin, and create a framework for a working enterprise blockchain.
In 2016, Sawtooth Lake implemented its Proof of Elapsed Time (PoET) consensus mechanism, which freed it from the constraints of Proof of Work and allowed it to create secure smart contracts.
At this time, Intel contributed Sawtooth Lake to the Hyperledger platform, removing the “Lake” from the project’s name.
The project quickly grew and attracted attention from numerous organisations, including Amazon, Huawei, IBM, and Microsoft.
Intel Venture Technical Lead Dan Middleton maintains the Sawtooth project at Hyperledger, where it owes its recent production-ready status to developers from organisations all over the world.
What is Sawtooth?
Sawtooth’s documentation defines the project as an enterprise blockchain platform for building distributed ledger applications and networks.
This means it will allow businesses to build blockchain-based applications within a set framework.
These decentralised apps may or may not use their own cryptocurrency, and their creators can choose whether to make them private or public.
Permissioned apps or networks can also be deployed on Sawtooth, and transactions in private networks will not be exposed to the public ledger.
Sawtooth is similar to the Ethereum blockchain, with the following exceptions:
- Consensus mechanism – Sawtooth supports a Proof of Elapsed Time mechanism, which relies on secure instruction execution.
- Permissions networks – The platform allows the creation of permission apps and distributed networks, while remaining secure.
- Separate core system and application level – Sawtooth provides a clear separation between its core systems and the application level. This allows for smart contract abstraction and support for multiple EVMs or languages.
- Parallel transactions – Executing transaction confirmations in parallel grants Sawtooth a performance boost.
- Event broadcasts – The blockchain can broadcast event-dependent messages to nodes.
Sawtooth is compatible with numerous programming languages thanks to its smart contract abstraction, which makes it easy for businesses to implement networks or applications on the platform.
Sawtooth is also compatible with Ethereum smart contract code, thanks to the development of the Sawtooth-Ethereum integration project (Seth).
While the technology behind Sawtooth may be difficult to relate to real-world applications, it could allow for the creation of impressive distributed apps.
The Sawtooth documentation defines the following real-world examples:
- XO – A demonstration app which shows users how to construct transactions and play a game of Tic-tac-toe.
- Sawtooth Supply Chain – This app traces the information of assets as they are traded across the blockchain, including contextual and provenance information.
- Sawtooth Marketplace – The marketplace facilitates the trade of custom assets with other users on the blockchain.
- Sawtooth Private UTXO – This app demonstrates the creation and trading off assets, including off-ledger transactions and private trades.
The Sawtooth application developer’s guide on the Hyperledger website is a good place to start if you are interested in creating applications.