Why does it matter that Stratis has the first C# smart contracts?

Stratis is the first and only cryptocurrency or Blockchain as a Service to have C# smart contracts. There are a few other projects which offer coding level support for C# contracts, but none which actually execute C# code. Stratis’s are the first. This has a number of important and valuable consequences, but we will concentrate only on those which are pertinent from an investor’s perspective.

Stratis’s Smart Contracts are designed in such a way that when a smart contract is used, value is introduced to STRAT (you can read in detail about how, here). Thus, as investors in Stratis, our main concern should be the usage of the smart contracts: how can we be confident that there will be lots of smart contracts being used at any one time? This can be broken down into two main points, both of which are based around the fact that Stratis’s smart contracts are the first to execute C# code.

1) Stratis’s smart contracts are an attractive choice for development

A developer can build a smart contract in an environment they are familiar with using the same ecosystem they would use to build any other C# application. The barrier to entry for smart contract development is already high given the need for a developer to familiarise themselves with a novel technology. If they also have to learn a new coding language and work their way around a new ecosystem, that barrier to entry is raised yet higher. Stratis sidesteps this by operating on a network built from the ground up in C#. Moreover, because the executed smart contract code is itself C#, developers can be confident that the code will behave the way that their C# code has always behaved. By contrast, if they are building a smart contract on a platform which only offers coding level support for C#, there is no guarantee that their code will behave the way they expect it to.

2) Confidence in the security of a Stratis smart contract is improved over other smart contract offerings

Security is a big issue in crypto. Smart contracts are dealing with people’s money.  When smart contracts go wrong, people lose money. It is very important for the adoption of the technology that confidence in the security of the contracts is high. Confidence in Stratis Smart Contracts is improved over other options by being able to leverage the C# / .NET ecosystem. There are entire companies based around the security auditing of C# code. They have produced an extensive list of software tools that can scan for certain kinds of conditions in the code (essentially, smart contract developers could have “code scanners” which can be applied or adapted to smart contract code). There are well established best practices and technical tools that have been developed at corporations which can be used easily with Stratis’s contracts. Moreover, these will actually MEAN something because the code will behave the way developers expect it to. On top of this, there are also strong testing frameworks that run natively inside Visual Studio. On the other side of smart contract development,  the contract can be decompiled back to the source code easily by already existing decompilers. Thus, auditing of the contracts can be performed easily. Confidence in the security of the contracts is improved by both sides of the process: pre-deployment and post-deployment. This may contribute to adoption in a significant way.

A more in-depth article about the C# / .NET nature of Stratis’s smart contracts can be found here.