SDK

Sagewise’s Vision to Build the Safety Net for Smart Contracts

Last month, we announced the launch of the Sagewise SDK. This marks a major milestone in the development of our business and the safety of the blockchain ecosystem overall. It is a step towards achieving our long-term vision of providing an infrastructure to address the inevitable issues that will arise around smart contracts. In this post, we want to provide a little more information about this vision and and our plan to achieve it.

Although most participants in the blockchain space probably don’t realize this, many smart contracts have errors or oversights in their code bases that will lead to significant problems for their businesses and for users down the road. Even if the smart contract code is perfect, situations inevitably arise that could not have been predicted by the developers writing the contract. Since 99% of people cannot audit (much less read) a smart contract’s code for themselves, they have no way of confirming the quality of a product other than trusting the word of a developer.

This situation is bound to lead to errors and misunderstandings. Over the coming weeks, we will publish a series of blogs outlining theoretical situations that can arise from such problems. Crucially, there is currently no way to resolve disputes arising from an error in a smart contract. The fact that the contracts are “smart” and automatically execute based on pre-set requirements can actually exacerbate disputes if the contract is not correctly constructed. Because the blockchain space remains so young, many parties remain unaware of the existence or the potential magnitude of this issue.

Sagewise’s vision is to build a fully-functioning plugin solution that allows smart contract users to achieve their true transactional intent, including the ability to resolve the disputes that will inevitably arise around smart contracts as they are bound to arise from any form of human interaction. Sagewise can “freeze” a smart contract in place while disputes are mediated. It can devise a number of forms of resolution depending on the preferences of the parties involved and on whether dispute resolution was built in to the original contract. Our goal is to provide peace of mind and the expectation of an equitable outcome for blockchain transactions – a toolkit to make sure smart contracts are doing their jobs. The safety net provided by Sagewise is intended to grow into a full suite of capabilities that will be indispensable as the crypto space expands. Disputes around token offerings are a problem; disputes around smart contracts that underpin entire supply chains are a crisis. We are building a platform that addresses the enormous future of blockchain, a future in which broad mainstream adoption is a reality and the integrity of contracts is paramount.

Sagewise Announces Alpha Release of Ethereum Smart Contract SDK To Combat the More than Half a Billion Dollars Lost in Smart Contracts in 2017

Today, we are proud to announce the alpha release of the Sagewise smart contract SDK. Built on the Ethereum blockchain, the SDK is a core component of Sagewise’s toolkit for unforeseen errors and disputes in smart contracts and marks a key milestone in its overall development. Before getting into the details of today’s launch, let me start with a little background on what we hope to accomplish at Sagewise.

Modern day smart contracts started with the launch of Ethereum in 2015 and, in a lot of ways, represented the dawn of fully programmable money. From the outset, one of the biggest concerns of the community was that combining human-created code with instant money transfer could frequently and unexpectedly result in the loss of user funds. Because less than one percent of the earth’s population can program or read code, cryptocurrency-related transactions–including smart contracts do not represent an area where we can reasonably tell a person to “DYOR” (do your own research), as often stated in the cryptocurrency community. Instead, smart contracts represent something very similar to traditional paper contracts in that they cannot be adequately understood or audited by ordinary people. While anyone can attempt to read acontract, if they lack a background in programming or law, respectively, it is highly unlikely they  will be able to catch all the nuances and find all the holes. As an example, someone with no programming background cannot be expected to be aware of all the possible obfuscated bugs that may exist in a smart contract.

Which is where we find ourselves today. More than a half a billion dollars was lost to smart contract coding bugs in 2017. The initial fears and predictions are now reality, and it’s time to figure out how to fix it. Many people are working on this issue through two different approaches:

  1. Making smart contract code better through better coding, tools, and audits
  2. Resolving issues that arise through mediation and dispute resolution

At Sagewise, we are focused on the latter. We are bringing transactional confidence to smart contracts by building infrastructure that acts as a safety net for unforeseen circumstances, whether that be coding errors, security vulnerabilities, changes in circumstances, or disputes. We chose to focus on this because not all issues related to smart contracts can be foreseen–even with the most careful, thoughtful coding. Smart contracts can get bad data from an oracle, or a situation can occur that was never considered. While code is static, human situations are not–we live in a world where volcanoes can halt air travel, strikes can delay commerce, and seemingly unlikely human actions can result in situations no one thought possible. Code cannot be aware of every future possibility. The question is, how do you put a safety net around a smart contract without completely damaging the immutability and decentralization?

Our release today provides a peek at our approach and can be summarized by the following features:

  • All functions in the contract can be frozen;
  • Contracting parties do not have any special control aside from the ability to start a dispute, which freezes execution of the smart contract;
  • Dispute resolution vendors are given complete access to the contract via ‘Administrator Mode’, but this only is available when a dispute has been initiated by one of the contracting parties. This allows contracting parties to fix any issues that may have occurred.

In coming months, we plan to add several more features to the SDK to improve its robustness and usability. Alongside the Sagewise ContractCanary–a smart contract email monitoring and notification system available to licensees– the Sagewise SDK prevents unforeseen execution of a smart contract. Sagewise also  plans to release other support tools as part of its infrastructure that will help bring the entire transactional process together, from documentation of smart contract intent to dispute resolution process handling.

We welcome feedback and engagement by community members, who can sign up for updates at sagewise.io and engage via our Telegram channel at t.me/sagewise.

Our alpha SDK repository can be found here.