I recently read a Career Advice for IT professionals in 2019 article and was reminded again by a friend and fellow MVP’s on his blog that “Change is always constant in IT.
Part of being an IT professional is keeping an eye on and ramping up on new technology. Change in IT is constant and it is critical to explore new technology so you can bring innovation to your organization and ensure you are ready if the business decides they want to use a specific technology to gain an edge in the market.
With all the excitement around Blockchain, I decided to spend time ramping up on Azure’s Blockchain technology specifically Azure Blockchain Workbench. Azure Blockchain Workbench is a way for developers and IT pros to get A blockchain network up and running quickly.
Once Azure Blockchain Workbench is up and running IT pros can administrator the network and developers can dive right into building blockchain apps. Most people that have heard of blockchain are familiar with cryptocurrency such as Bitcoin. Most people don’t know of or associate blockchain with smart contracts. Azure Blockchain Workbench powers smart contract technology. A smart contract is a self-executing contract between two or more parties involved in a transaction. Getting started with Blockchain can seem intimidating but with Azure Blockchain Workbench it is not hard to get started. I wrote a white paper that you can use to get started and takes you beyond cryptocurrency into the world of smart contracts using Azure Blockchain Workbench.
The white paper covers the following:
Explorers blockchain beyond cryptocurrency
Has an in-depth overview of Ethereum and smart contracts
Helps identify when and what to use blockchain for?
Almost every day when you go to a news website, a news program on the radio or news on the TV you can expect to hear some mention of Cryptocurrency and increasingly something about Blockchain.
Blockchain has a strong buzz and yet it is still misunderstood by many. It is an exciting time for technology and blockchain is one of the many reasons why. Blockchain is a public distributed digital ledger. Transactions between parties are processed in an efficient, verifiable and immutable way using cryptography. Transactions are tracked without a central entity such as a bank processing and keeping a record of the transactions. The ledger in a Blockchain is distributed across many nodes in the Blockchain network. Each time a transaction occurs the ledger is reconciled across all the nodes.
The Blockchain you typically
hear about is related to some cryptocurrency such as Bitcoin, Litecoin, or
Ripple. Blockchain goes way beyond this and is a technology that is being
widely explored in use by some enterprises. Here are some examples of
Blockchain in use within the enterprise. Microsoft’s Xbox uses Blockchain to
deliver royalty statements to game publishers, FedEx uses Blockchain for
storing shipping records, and 3M is using Blockchain for a new
label-as-a-service concept. The commonality those examples is that they are
using Blockchain smart contract technology.
A smart contract is a self-executing contract between two or more parties involved in a transaction. A smart contract holds each party in the transaction responsible without the need for a third-party authority. Smart contracts are essentially code running on top of a blockchain that are digitally facilitated, verified, and auto-enforced under the set of terms laid out within the contract.
Opposite of Blockchain used
for cryptocurrency Blockchain used for smart contracts enable more complex
scenarios beyond the exchange of digital currency. To illustrate an example of
a Blockchain smart contract think about being able to buy and sell cars without
a DMV processing the exchange of titles but instead the exchange of the title
being verified and transferred digitally.
In today’s fast-moving world
of technology, it is important to be able to take your solution from idea to
MVP aka 0 to 60 as fast as possible. That is the goal of the Azure Blockchain
Workbench (ABW). As shown in the following image with ABW you can literally go
from idea>consortium blockchain network>code/use pre-built blockchain
app>Blockchain app ready to use in a short amount of time.
When I first started
with Blockchain I was able to go from nothing to a fully functional Blockchain
app in a couple of hours using ABW. As seen in the previous image ABW is made
up of a combination of Azure services and capabilities. The main services
An App Service Plan with two web apps and two web APIs
An Application Insights instance
An Event Grid Topic
A couple of Key Vaults
A Service Bus Namespace
A SQL Server with a SQL Databases
A couple of Azure Storage accounts
Two Virtual Machine scale sets that consist of the ledger
nodes and workbench microservices
A couple of virtual Network
resource groups that contain Load Balancers, Network Security Groups, Public IP
Address, and Virtual Network, VNet peering, and Subnets
Other components leveraged by
ABW are Azure Active Directory for identity, Azure Monitor (optional), and log
analytics workspace for logging (deployed with Azure Monitor), a mobile app for
both iOS and Android along with a REST-based gateway service API to integrate
to blockchain apps. Workbench provides the infrastructure needed to build and
deploy blockchain applications so when you deploy ABW it includes everything
you need. As of now ABW only supports Ethereum as its target blockchain.
Microsoft has plans to add Hyperledger and Corda Blockchains in the future.
ABW is designed to make it
easy for developers to bring Blockchain to the enterprise. ABW is deployed in
the Azure Portal via a solution template. You can deploy Ethereum or attach to
an existing one. After the Blockchain Workbench is deployed developers have the
option to either create a Blockchain app or use one of the Applications
and Smart Contract Samples from a repository maintained by
These Blockchain apps consist of a configuration metadata and smart contract. The configuration metadata file is in JSON format and determines the multi-party workflow the smart contract is in a language named Solidity and determines the business logic of the Blockchain application itself. The configuration and smart contract together make up the Blockchain application user experience. The Applications and Smart Contract Samples can be used as is to take Blockchain for a test run or can be modified to fit an organization’s specific need. As an example, some of the information you can modify with the configuration is application name, display name, state, and application roles.
As you can see it is relatively easy to get a Blockchain application up and going. Another real benefit to running a Blockchain application on Azure is the integration points with many of the other services available on Azure. Here are a few examples. ABW writes a copy of the Blockchains on-chain data from the Blockchain distributed ledgers to an off-chain SQL database. Developers can connect to this database to work with the Blockchain data for any number of scenarios one of them could be reporting in Power BI. The Workbench has a REST API, Service Bus, IoT Hub, and Event Grid that could be used for integration with other technology such as IoT devices, other systems, and Azure Streaming Analytics to further expand the possibilities. With the Blockchain workbench developers also have access to one of Azures automation tools called Logic Apps opening the door to a world of further automation scenarios.
There is much more to the Azure Blockchain Workbench then can be covered in a single blog. The main point of this post is to show how a developer can go from 0 to 60 within a short amount of time with minimal effort to stand up the scaffolding needed to support a Blockchain app. For a deeper dive into the Azure Workbench it is recommended to download my Blockchain Beyond Cryptocurrency whitepaper once it is released. Thanks for reading. To get started with the Azure Blockchain Workbench visit this link: https://azure.microsoft.com/en-us/features/blockchain-workbench