Learn Blockchain In C#

C# is one of the most popular programming language developed by Microsoft. Now, C# and .NET Core framework are open source and growing at a faster pace.

Blockchain is platform and language agnostic. That means, you can use any popular programming language to create a blockchain. Some of the popular blockchains are developed using C++, Java, JavaScript, Go, Python, C#, Ruby, Solidity, and PHP.

You can create your blockchain using JavaScript but only some portions of it. A blockchain is a combination of several technologies including cryptography, distributed ledger technology, P2P network programming, database storage and sharing, network communication and notifications, backend services, UI components and so on. So building a complete blockchain product may require more than just one language.

Here is a list of resources that you may use to learn blockchain development in C#.

Blockchain Tutorial in .NET Core and C#

Building a Blockchain In .NET Core is a step by step tutorial series in which author has started blockchain at very basic and first introduced basic concepts and then slowly went into depth. A several parts series starts with introduction, followed by building a blockchain, implementing rewards and mining, and also building a P2P network and more.

Get started here: Build Basic Blockchain In .NET Core and C#

Simple Blockchain Sample In C#

A simple blockchain example in C# using SHA512 for hashing.

This lib can:

  • Generate a block with data.
  • Add that block to a chain (in this case a List)
  • Create a hash for that block
  • Create a hash based non a Nonce, a proof of work, or: mining a block.
  • Validate that hash and the hash of a previous block
  • Validate the whole chain

https://github.com/casparkleijne/blockchain

Stratisplatform

Stratis platform is a powerful and flexible Blockchain Development Platform designed for the needs of real world financial services and businesses. Stratis is a Bitcoin based project. Check out and download Stratis project from Github: https://github.com/stratisproject