Stratis Platform is a flexible, powerful Blockchain development platform designed originally for the needs of real-world financial services businesses. It also provides benefits to other types of organizations that want to leverage Blockchain technologies. It is a turnkey solution that enables developers and business to develop, test, and deploy Blockchain-based applications without having to operate their own network infrastructure.
Before I explain Stratis Platform, I want to talk about Stratis Group first. Stratis Group is a UK based Blockchain technology company that offers native C# and .NET end-to-end block solutions. Be more specific, Stratis Group offers
A suite of open source projects on GitHub that covers Blockchain Full Node, Blockchain Full Node UI, Cryptocurrency, Cryptocurrency Wallet, Smart Contract, ICO Platform, etc. The purpose is to provide .NET developers a flexible and powerful blockchain development platform that can be used for any purpose.
A block-as-a-service in Cloud, especially Azure.
On top of that, Stratis provides development and integration services to organizations that are looking for implementing private Blockchain or connecting into existing Blockchain networks.
Stratis platform offers a solution for the fast creation of individual chains on the basis of their own Blockchain. These chains can vary in accordance with the needs of your company and even play a popular function of the Blockchain, such as Ethereum or Lisk that can be tested individually or simultaneously.
Some of the advantages of the Stratis project that will affect the real world are the following,
Medical Research - Stratis Blockchain will allow you to maintain a database where the reviewer, researcher, and publisher can work with legitimate data.
Internet Business - Services can be served by Blockchain. For example, a smart lock supported by the Stratis platform will allow people to access a fully automated lease on Airbnb without human interaction.
Fintech - Stratis will help with trust, data leakage, identity management, settlement management, and others using Blockchain.
Smart Contract on Stratis Platform
Smart Contract becomes a crucial feature of a Blockchain platform for enterprise use. The good news is that Stratis platform does have this capability. The following is a very brief comparison among three smart contract Blockchains: Stratis Platform, Ethereum, and Neo
Stratis maintains contracts for the sidechained. Ethereum has each contract comes from the Blockchain Ethereum.
Building and Running a Stratis Full Node
A full node is a computer that connects to a Blockchain network. It stores all Blockchain data locally and be able to communicate with other nodes via P2P protocols. To build and run a Stratis full node is the very first step getting started with the Stratis development.
In order to build and run a Stratis full node, you need to meet the following prerequisites
System Prerequisites A Stratis Full Node can be run on a Windows, Linux, or macOS.
Windows must be Windows 7 and later.
Ubuntu 14.04 and later is recommended, but you should be able to run on other distros of Linux.
macOS must be OS X 10.12 and later.
Framework Prerequisites .NET Core 2.0 and later
Tools and Utilities Git
Stratis Full Node on Windows
I will use Windows as the example to build and run a Stratis full node,
Create a folder Repos in C drive C:\> mkdir Repos
Go into the Repos folder C:\> cd Repos
Get the repository from GitHub C:\Repos> git clone https://github.com/stratisproject/StratisBitcoinFullNode.git
Go into the StratisBitcoinFullNode folder C:\Repos> cd StratisBitcoinFullNode\src
You can see all the Stratis modules by list the current directory.
The solution can be opened with Visual Studio 2017. You can download a copy Community Edition for personal use from here.
Restore NuGet packages C:\Repos\StratisBitcoinFullnode\src> dotnet restore
Build the code C:\Repos\StratisBitcoinFullnode\src> dotnet build
Run Stratis full node, You can connect Stratis full node with different Blockchain network
Run Stratis full node on Bitcoin network C:\Repos\StratisBitcoinFullnode\src> cd Stratis.BitcoinD C:\Repos\StratisBitcoinFullnode\src\Stratis.BitcoinD> dotnet run
Run Stratis full node on Bitcoin test network C:\Repos\StratisBitcoinFullnode\src> cd Stratis.BitcoinD C:\Repos\StratisBitcoinFullnode\src\Stratis.BitcoinD> dotnet run -testnet
Run Stratis full node on Stratis network C:\Repos\StratisBitcoinFullnode\src> cd Stratis.StratisD C:\Repos\StratisBitcoinFullnode\src\Stratis.StratisD> dotnet run
Run Stratis full node on Stratis test network C:\Repos\StratisBitcoinFullnode\src> cd Stratis.StratisD C:\Repos\StratisBitcoinFullnode\src\Stratis.StratisD> dotnet run -testnet
4. View Node Status via Swagger web interface, When your full node is up and running, you can view Swagger web interface from your browser,
For Bitcoin: http://localhost:37220/swagger
For Stratis: http://localhost:37221/swagger
For Bitcoin Testnet: http://localhost:38220/swagger
For Stratis Testnet: http://localhost:38221/swagger
The following is a Stratis API page display at http://localhost:38220/swagger for a full node on Stratis Network.
APIs can be called directly on the Swagger interface. For example, you want to call “GET /api/BlockStore/getblockcount”
Click the API to expand it
Click “Try it out!” button
You will see request and response are displayed on the screen.
The Swagger interfaces for Bitcoin Network and Bitcoin Test Network do not work on my computer.
If you get a “This site can’t be reached” message when you are opening Swagger interface for your full node on Stratis network, you just need to wait a little bit. The full node needs a little bit of time to be ready.
Run the node with RPC turned on A different way of running the full node is to have the RPC turned on with the following command, dotnet run -server=1 -rpcuser=user -rpcpassword=pass You can develop a client application to get node information and control it via the RPC interface.
For .NET developers who want to get their feet wet on Blockchain development, there are not many choices. Most of Blockchain networks are built with C++. Stratis Platform is one of the best .NET based Blockchain Platforms in the market.
The Tech Platform