On Wednesday 12th December, Stratis unveiled their C# Full Node. This long-awaited release is the culmination of two years’ worth of work from the Stratis team and represents the core service of their platform.
Backbone of the Stratis Platform
A computer running software which supports a cryptocurrency is called a node. A full node is a node which runs software to fully verify transactions and blocks.
Up until now, Stratis’ full node software has been a placeholder for the C# Full Node, which has been in continuous development since their ICO in 2016. The legacy full nodes, referred to as the StratisX nodes, allowed Stratis both to function as a currency and also to grow to become a mature network with a high level of decentralisation and security.
With the advent of the C# Full Node, however, the Stratis Platform can now go live. The C# Full Node is the foundation on top of which the rest of the platform sits. It is built from the ground up in the C# coding language, an industry standard language and part of the broader .NET framework, Microsoft’s own software ecosystem.
The other services of the Stratis Platform all run on top of the C# Full Node software, including Sidechains and Stratis’ C# Smart Contracts - Turing complete smart contracts which execute .NET code on-chain, a first in the cryptocurrency space and only made possible by Stratis’ C# Full Node. You can learn more about these upcoming releases in Stratis’ stacked roadmap.
Not just a node
The Stratis C# Full Node is more than just a node. It is a powerful and versatile development kit, offering developers huge flexibility in the development of blockchains and blockchain technologies. It supports multiple consensus protocols (PoW, PoS and PoA) and can connect to multiple chains. Currently, it supports both the Bitcoin and Stratis networks and with minor modifications can be made to support other cryptocurrencies as well.
Stratis’ C# Full Node is modular, allowing users to pick and choose blockchain components as they see fit for their applications. It has a pluggable architecture, supporting the creation of sidechains, the deployment of smart contracts, remote procedure calls, a web API and the creation of Distributed Ledger Technology solutions, amongst other features.
Blockchain made accessible
Stratis’ C# Full Node is fully open source. It is available on Microsoft’s Azure Marketplace and can be deployed directly to Azure. This is indicative of Stratis’s relationship with the Microsoft tech stack: they recently became a member of the Microsoft Partnership Network and an Independent Software Vendor.
Stratis’ positioning within the .NET ecosystem comes with some distinct advantages, such as a familiar environment for developers and the ease with which the nodes can be deployed. Being able to host a C# Full Node on Azure will allow users to establish networks with very low network latency, in turn allowing for smaller block times and a larger maximum throughput. Such networks could be sidechains of Stratis, permissioned DLT solutions or new, independent blockchains.
Flexible and familiar
Out of the box, the C# Full Node uses a protocol which is very similar to the Bitcoin protocol. This means that developers who are confident in working with Bitcoin will find the Stratis C# Full Node a familiar software to work with. This, paired with its highly customisable architecture, allows developers to create nodes tailored to specific applications but still with a proven and familiar protocol.
Improved security and feature rich
The C# Full Nodes come with various security improvements over the legacy StratisX nodes, new features for general users and numerous optimizations, including being able to download the Stratis blockchain significantly than the legacy StratisX nodes.
The Full Node GUI, Stratis Core, is a user-friendly wallet which allows users to send, receive and stake their coins. The wallet is Hierarchical Deterministic, meaning users can generate multiple keys from one seed. This affords users greater security and easier recovery of funds.
Besides these basic functions, Stratis Core also offers cold staking and a UI for sidechains. Cold staking will be activated once 95% of network staking is performed through the C# Full Node client, allowing users to participate in block production by staking with coins that are held in an offline wallet. This will significantly reduce risks associated with staking from a hot wallet.
With the release of the Stratis C# Full Node, the Stratis Platform goes live. Stratis have published extensive documentation which accompanies this release and encourage any users to reach out directly to them for support and feedback. Alternatively, you can join their Discord.