I am planning to build supply chain management system with Blockchain. I have read many blog posts related to the topic, and eventually, I get Hyperledger as a right choice for Blockchain Network. but now I have two more option in that.Hyperlegder fabric & Sawtooth lake, now I am confused about the platform so can you please suggest me which platform is better for our Domain.
There is not a definitive right answer here. Fabric and Sawtooth both designed towards a similar end goal: building a general-purpose, enterprise-level, permissioned blockchain. As a result, many of the core features are pretty similar, and there is no reason you couldn't build a supply chain on either of them.
That said, there are some reasons you might want to choose Sawtooth over Fabric in general (full disclosure, I am a Sawtooth maintainer, and might be a bit biased):
- You can develop for Sawtooth in a variety of languages, including Ethereum's Solidity smart contracts (with Fabric you must develop in Go)
- If you need Byzantine Fault Tolerance, Sawtooth offers PoET consensus which is hardware assisted resulting in trivial CPU usage (Fabric does not yet have any BFT solution)
- I would argue that Sawtooth does a better job of isolating application logic from the core blockchain logic, making development easier
- As Ferg mentioned, there is already a supply chain implementation on Sawtooth, which you could use as a starting point: https://github.com/hyperledger/sawtooth-supply-chain
As for reasons to use Fabric . . . you may find there are more external tools available. For example, Hyperledger Composer is pretty nifty, and though there has been some talk of porting it to Sawtooth, currently it only works with Fabric. That's all I can really think of, but obviously I am much more familiar with Sawtooth, so I might ask around before making a decision.
UPDATE: Sawtooth now offers PBFT consensus in addition to PoET, RAFT, and PoET-simulator. This is a BFT algorithm which does not have hardware dependencies.
Sawtooth includes an example supply chain application which may accelerate your development / evaluation process. https://github.com/hyperledger/sawtooth-supply-chain
Both Hyperledger Fabric and Hyperledger Sawtooth are permissioned distributed ledgers used for Enterprise Blockchain. Hyperledger Fabric demonstrates practical Byzantine Fault Tolerance (pBFT) based leader based distributed consensus with faster finality and block commit time compared to prominent public permissionless Blockchain platforms. Hyperledger Sawtooth provides a scalable enterprise blockchain environment for a permissioned distributed ledger. Sawtooth demonstrates Proof of Elapsed Time (PoET) consensus. As I have understood from discussions on recent implementations, Hyperledger Fabric does a good job in providing product provenance and supplychain track and trace for a limited number of nodes. When the number of nodes goes beyond 20, it seems to be having issues with respect to the performance and consistency. Hyperledger Sawtooth Lake is built with a randomized approach to consensus and a trusted execution environment. It has demonstrated good transaction throughput and finality with good security in place. It also provides interoperability with smart contracts written in solidity and ethereum virtual machine. However it is coupled with an Intel SGX based Trusted Execution Environment which could be an upfront cost for production deployments.
To update info on the previous answer....
Hyperledger Sawtooth now supports multiple consensus algorithms...
- PoET SGX ... Intel specific
- PoET CFT ...without SGX
- PBFT .... Soon to be integrated