Stratis Smart Contracts

Create performant, secure, and auditable smart contracts in a development environment which is comfortable and familiar for C# .NET developers.

Stratis’ Smart Contracts in C# are for companies and individuals interested in the development of a secure, immutable, (legally-binding) agreement represented transparently in code. This agreement can relate to the payment of STRAX but can also be about one or more other assets.

You can invoke a smart contract when a transaction is added to a blockchain and, according to how the smart contract is programmed, it will act on assets it is in control of including STRAX. For example, if certain criteria are met, a smart contract might redistribute the STRAX which it holds. So, smart contracts enable digitally-enforced commitments between blockchain participants, which breaks the reliance on third parties.

Web-based front-ends (DApps) can be created to sit on top of a smart contract. A DApp is decentralized because of the properties of the smart contract; a copy of the DApp’s smart contract is stored on each node in the blockchain.

The Stratis Academy offers an in-depth exploration of what a smart contract is and how smart contracts are used.

Features
Resources
Features
icon

Especially suitable for the development of enterprise blockchains: Smart Contracts in C# are the first .NET framework compatible smart contracts that can be coded and compiled natively.

Run on sidechains to maximize scalability and security: Smart
Contracts in C# avoid the “bloat” that occurs when running any significant number of smart contracts on a single blockchain. The main blockchain is also shielded from the impact of any adverse effects caused by a smart contract.

Fully deterministic: Smart Contracts in C# are fully verified during deployment before they run on the blockchain. For example, usage of .NET libraries containing non-deterministic function calls is prevented.

Powered by STRAX: A smart contract uses gas when it is running, and on the Stratis platform, gas is supplied by sidechain tokens, which are pegged to the STRAX.

Lifecycle of Smart Contracts
  1. Developer writes C# source code in Visual Studio
  2. Contract is validated locally and .NET bytecode (DLL) output
  3. Bytecode is wrapped inside a transaction e.g. Transaction {Bytecode: A6F4CB467…}
  4. Transaction is included in new block
  5. When executing a new block, contract code is unpacked from transaction, validated and stored permanently on all nodes at certain address
  6. Now anyone can send transactions to this address and call methods on this contract e.g. Transaction {To: 1nTKH…}
Step 1
Smart contracts
Smart contracts

Developer writes C# source code in Visual Studio

Next
Step 2
Valid
Valid

Contract is validated locally and .Net bytecode (DLL) output

Next
Step 3
Bytecode
Bytecode

Bytecode is wrapped inside a transaction

Next
Step 4
Transaction
Transaction

Transaction is included in new block

Next
Step 5
Unpacked
Unpacked

When executing a new block, contract code is unpacked from transaction

Next
Step 6
Send
Send

Anyone can send transactions to this address and call methods

Next

Do you believe in the endless opportunities of applied blockchain?

Allow us to help you build your next venture

Latest Tweets
Stratisplatform @stratisplatform
Strax Wallet 1.3.1.0 Release https://t.co/H2bUzbYSo9 #blockchain #wallets #stratis $STRAX https://t.co/9QFCxywp13
h J R
Stratisplatform @stratisplatform
The Stratis official merchandise is now here! To be the first to receive this limited edition merchandise just retweet and like this tweet We will pick 3 lucky winners next week #blockchain #giveaway #stratis $STRAX https://t.co/FA0xxnzfHP
h J R
Stratisplatform @stratisplatform
@cryptocom: 📺 Live Video #AMA featuring @ctstratis, Founder & CEO of @stratisplatform starts now 👉 https://t.co/4IhHRd7u9Z Tune in to find out more about Stratis and its enterprise solution! https://t.co/fkZjvrnD2I
h J R
Stratisplatform @stratisplatform
@stratisplatform: Stratis Unity SDK is now available for all #Unity3D developers to create blockchain apps utilising Stratis blockchain technologies . https://t.co/w7Q24Ux9mP #blockchain #gaming #dotnet #Unity $STRAX https://t.co/wHedSkNV5K
h J R