BTC Inc
by Sherree DeCovny, Jul 12, 2017

Smart Contracts for Supply Chain Managers: Three Criteria to Evaluate


Contract

As the research partner of Distributed: Trade, Chain Business Insights is providing this early access to its exclusive research on blockchains’ role in supply chain applications. At the Distributed: Trade 2017 conference, we will present highlights from our research and lead a panel of blockchain innovators to offer a technology-based response to business issues.

Participants on a blockchain have a copy of a transaction ledger mutually agreed upon by consensus. Blockchains typically support smart contracts, pieces of computer code that automatically perform business functions such as verifying and executing the terms of a supplier contract. On a blockchain, smart contracts simulate a trusted third party and enable credible and reliable relationships to be created between various parties.

But in the supply chain context, external changes could affect the terms of a contract; for instance, the failure of a refrigeration system could ruin a shipment. To this end, smart contracts could possibly incorporate external data inputs from the Internet of things (IoT), such as light, pressure, humidity, shock, temperature and other variables.

Deciding on Smart Contracts

Three criteria can help evaluate whether it makes sense to use smart contracts in a given supply chain. Smart chains are warranted in the following circumstances:

  1. The current processes involve considerable manual intervention and many intermediaries.
  2. The supply chain problem cannot be solved by existing technology such as database management structures or data warehouses.
  3. Blockchains and smart contracts would give the regulators more visibility over transactions, which in turn could accelerate the cycle time and save costs.

(These criteria and blockchain-based solutions are detailed in a new research project from Chain Business Insights titled “Smart Contracts in Supply Chains: Making Sense of a Potential Game Changer.”)

Let’s say that you decide to automate through the use of smart contracts. How do you then work with technologists to turn a physical paper contract into a smart contract?

Legal contracts should not be ambiguous, so you need to ensure that the code matches the written contract terms. Consider drawing a decision tree showing the logic of how one might create a contract that could then be programmed. The starting point might be: “Company A will pay X amount of money to Company B when it receives a certain product or service.” Then build specific terms into the smart contract’s code to ensure enforceability. These terms might include the jurisdiction or governing law, an indemnification provision and a potential arbitration requirement.

Understanding Limitations

​As one expert recently observed, both the beauty and the biggest drawback of smart contracts is that they specify terms unambiguously. It’s important to have some room to maneuver and reinterpret contracts in the case of unforeseen circumstances; yet changing the terms of a smart contract within its code is still a technical challenge. To this end, technologists are exploring the use of escape hatches. These can alter the terms of the smart contract or terminate the smart contract — that is, if the situation warrants it and there is agreement among a sufficient number of parties to make the change.

This is just one of the ways that smart contracts are still a work in progress, but there are others.

While the transparency and accountability that blockchains afford are compelling, supply chain participants may be reluctant to put their data on blockchains because they are concerned about confidentiality. Zero knowledge proofs may provide a potential solution. In cryptography, a zero knowledge proof is a method by which one party (the “prover”) can prove to another party (the “verifier”) that a given statement is true, without conveying any information apart from the fact that the statement is indeed true. Participants can see much of the transaction information, but they can also obfuscate and send information to another participant.

Similarly, Intel’s SGX is a technology for application developers seeking to protect select code and data from disclosure or modification. But it could take time for these technologies to transition into prototypes ready for exploration by supply chains and the various blockchain platforms.

Finally, it’s critical to ensure smart contracts correctly reflect user intent and that they do not contain software bugs. Formal verification tools could help solve the problem of bugs. These tools prove or disprove the correctness of intended algorithms underlying a system with respect to a certain formal specification or property using formal mathematical methods.

Further, “bug bounties” reward people for discovering vulnerabilities that could potentially compromise a platform. As an added protection, bug bounty systems could be created whereby the people making these discoveries are not themselves in a position to compromise a platform.

Automation through the use of smart contracts could lower operational costs, reduce administration costs and streamline workflows. Smart contracts are already in production on blockchain platforms such as Ethereum, Hyperledger’s Fabric and R3’s Corda. 

However, much needs to be done before the benefits can be realized. Businesses across all verticals need to be educated on the benefits of smart contracts. Policy makers must be engaged to help build frameworks that address the unique issues around smart contracts while fostering growth. Moreover, the supply chain management industry needs to work together to agree on technology standards and interoperability. 

You might also like

Smart Contracts and the Future of Banking

Giulio Prisco

For The Distributed Ledger