Blockchain for Business

Blockchain turned 10 in 2018, however apart from those who have explored the origin and journey of Blockchain are unlikely to know and would likely be surprised by this fact.

The world has heard about Bitcoin, but the platform of Blockchain and its technology benefits largely remain covered.

So what now for Bitcoin and what about Blockchain?

We are well and truly over the Bitcoin Hype Cycle where people have lost live savings and some are a little richer.  Blockchain on the other hand has emerged and business is starting to realise the true benefits gained by this magnificent technology across a number of different business scenarios.

Blockchain solves the problem of tracking data in the form of a permanent, decentralised network.  It ensures the generated data at a point in time has been sealed, so at a future point when reviewed it can be verified that the data has not been tampered with since the original event.  The chain of collected data forms a flow of verifiable transactions accessible on a platform that allows closed or public communities the ability to further the transactional exchange of data that can have roles assigned to users or groups restricting what parts of the transaction data can be viewed up or downstream.  To summarise, Blockchain is about working and sharing data with 3rd parties that can easily be verified for its authenticity and accuracy.  If you were looking for a system to manage your internal operations and processes that did not require it to be shared external from the organisation, you’d build a platform providing the connectivity and consider Blockchain if authenticity and accuracy were deemed a requirement.

Before we rush forward with a project plan that uses Blockchain to solve it, like most business problems we need to stop, pause and ask ourselves the following questions.

  • What problem am I trying to solve?
  • Can this problem be solved with Blockchain technology?
  • Will it be commercially viable?

Let’s start with a super simple overview of Blockchain principals.

Have you ever been on a family holiday where you have taken pictures of the following sequence of events:

  1. a picture at the airport
  2. then boarding a plane
  3. a selfie with fellow passenger before the plan takes off
  4. a picture of you sleeping
  5. a picture whilst waiting for your bags
  6. another scared looking selfie in the crazy taxi on your way to the hotel and;
  7. finally the front of your hotel that exceeds all expectations
  8. …and so on until you return home…

You would have created many pictures during your holiday whereby at the end you would have a number of image files sequenced with file names DSC_3566.jpg, DSC_3567.jpg, DSC_3568.jpg, DSC_3569.jpg etc.

Each picture file name and time stamp has captured the unique sequence of events.  Details that are also stored within in picture could include GPS coordinates of every picture Geo Tagging each picture.  The format of this data stored in a picture is known as EXIF (Exchangeable Image File) that captures shutter speed, date & time, focal length, exposure compensation, metering pattern, image source, date for edit and if a flash was used at the time the photo was taken.  Many of today’s cameras especially your mobile phones now add further data into the EXIF data collected starting with GPS and Geo Tagging features.

Think about the information captured with each picture and the sequence of pictures you’d take on a 1 week holiday, you could extend this concept to what Blockchain could deliver to a simple supply chain for manufacture, shipping, delivery of goods to a retail outlet, health records of an individual collected throughout a lifetime by many doctors and financial transactions are many examples.  Blockchain implements how the data is captured, stored, shared, referenced to all nodes within its network.  The behaviour and attributes of this environment has massive potential to solve the distribution of counterfeit products using crypto based calculations, enabling users to verify and trust the products received at the time of purchase with a full history and audit of the activities that have bought the item to this point in time.

To be clear, Blockchain is not Bitcoin but more that Bitcoin uses Blockchain as the underlying platform to support transactions of direct buying and selling bitcoin crypto currency which is facilitated by a distributed ledger.  The distributed ledger captures a sequence and related information that is validated at the time of creation and made available at any time in the future for anyone with access to the Blockchain who wishes to validate it.  The method of Blockchain validation is common to different Blockchain platforms such as Bitcoin, Hyperledger, Ethereum and EOS.  The common validation method is by a way of “consensus”, however the method of consensus differs between Bitcoin, Hyperledger and Ethereum.  Within the derivatives of Blockchain Bitcoin, Hyperledger, Ethereum, EOS etc there are versions containing features that have been introduced to add value or prevent problems in the past from occurring again.  For more information on Hyperledger vs Ethereum and Bitcoin attributes are covered later.

Blockchain as a technology platform that can be opened up to everyone or restricted to a specific community that need to confirm a limited or open view of information throughout the Blockchain.  The ability to verify its authenticity and accuracy at a point in time is a major requirement in today’s business.  Blockchain maintains data to be shared in a sequence of steps and the data needs to be stamped at the time it is created.  If errors are made, the blockchain based on its linking and feeding of previous information into the next blockchain restricts data tampering.  Therefore Blockchain will not guarantee that data is accurate as it would be the system or the user responsible for creating the data, however it will ensure that the source data being used or referenced is what it is.

The goal of Blockchain is to provide a mechanism where all parties involved are able to communicate direct within the community, without an central intermediary or authority to share data and validate this independently.  The data managed within a Blockchain platform could be currency, text data or a combination of the two depending on some of the commonly known Blockchain platforms such as Hyperledger, Ethereum and Bitcoin.  These platforms have been created to share verified data of differing types and sizes.

To support the application, here are a few definitions outlining the above mentioned platforms of Hyperledger, Ethereum and Bitcoin.

  1. A Bitcoin ledger stores currency related data only
  2. A Hyperledger ledger stores text based data, it doesn’t offer a currency but could contain financial records
  3. An Ethereum ledger can store both currency, text based data and rules via smart contracts are implemented

Collectively for the purpose of explaining the process of Blockchain the exact ledger platform will NOT be referenced.

The Blockchain ledger and how it works is key to why businesses have bought the hype with the aim to benefit when it comes to scale, trust via authenticity, accuracy, 3rd party integration and security to name a few.  Blockchain data is not fixed on a single server in a central location for everyone to reference but all information is distributed to all parties within the given community.  This doesn’t mean that large volumes of content being referenced within the Blockchain environment as the “blocks” are limited in size.  A Bitcoin block may only hold 25 ledger entries before a new block needs to be mined or created making it available to contain new data which is linked or interwoven to the previous block.  Think of the block as a page in a book with 25 lines, which in Blockchain terms would be 25 ledger entries.  The ledger containing blocks and verification information is shared to all devices within the Blockchain community, spreading duplication information eliminating any central point of failure.

To create a block, a single node within the Blockchain needs to gain control of the network without conflict of another node on the network who desires to also create a block for more data to be written to the Blockchain.  A Blockchain “Miner” works to win the control of the network for a short time via a random but sometimes very CPU intense operation.  Once a declared winner is found, the successful Miner now in control decides how many transactions the new block will contain, which can result in a block size between 1-8MB, that could average around 500 transactions.  More detail on Blockchain Miner is lower in this article.

All members of a Blockchain community share ledger and validation checks (hash / fingerprint) information so if they need to reference past data they can ensure the data is accurate as the validation check is successful.  The data captured in each block is small and lightweight that is distributed to all parties in the group along with the unique fingerprint or hash generated at the time of creation of that entry in the block.  How the hashing or fingerprinting works we will cover shortly.

We have seen multiple flavours of Bitcoin, large software vendors providing turnkey solutions and governments also dabbling in the technology for the many possible use cases.  As an individual, you could create your own Blockchain Hyperledger for internal processes that may or may not include your suppliers and customers.  It will be considered a private Blockchain and as the founder you would decide who can participate, what data is shared and with whom.  Today, solutions from software solution IT based vendors today offer the ability to interface or link into a Blockchain environment Blockchain.  Examples of these vendors include Oracle, Salesforce, Microsoft and SAP.  Xero accounting in September 2017 enabled integration into Veem’s Bitcoin-Powered Payments.

Are you ready to start digging a little deeper like a Blockchain Miner?

There a some important terms and definitions with the Blockchain technology space that we find continually popping up in conversation today.

A “Block” is a defined record in which data is written and verified.  Blocks are linked sequentially based on the order of events containing data in a flow of transactions or timed activities.  The size of the block and number of transactions or ledger entries vary on the Blockchain platform.

A Hash or Fingerprint is a way of validating that the data input when run through a hashing process will provide a fixed length output

For example.

The text data

Mind Tattoo Blockchain Technology

When run through a 256bit has produces a fixed length output regardless of how small or big the data input was

7F4DB14976A138AF6A41831EA08BF073159DEC490E2FD51238F672400FEA66E6

If I change ONLY the first character from upper case M to lower case m the new fixed length hash is

8F1452509873D8EE393A1736516E164866D8B8433A0085B058AD5639A2A3CBC1

As you can see the above hash output is now wildly different to the first has with the simple change of 1 character from upper case to lower case.

The  output of any hash will always be a fixed size based on the hashing algorithm such as SHA2 uses a 256bit has resulting in 64 Hexadecimal characters [0-9, A,B,C,D,E,F]

Try it for yourself here by typing in your name or a phrase “Blockchain for dummies” or “Blockchain search” or even the letter “a” and view the hash output will be 64 characters but look very different.

https://passwordsgenerator.net/sha256-hash-generator/

If you’re feeling skeptical about the process type the same phrase into another tool and you’ll get the same result which verifies via the hashing produces on a different platform produces the same value.  However from this value it’s not possible to regenerate the data that was used to create this unless you simply try via brute force all the combinations of letters, numbers, spaces and hyphens to reproduce this.

https://www.xorbin.com/tools/sha256-hash-calculator

No matter how big the data source is that can be used later as a reference point by any user wanting to trust your block of data where they run it through the same hashing process and if the hash they create matches the one you originally created then we can be assured that the original source data has not been modified or changed as a change to 1 simple character in that block of data such as the letter a being changed to b will produce a completely different result.  Bitcoin uses SHA-256, a 256 bit hashing process which produces a 64 character output which we call a hash.   A hash of the previous block is fed into the next new block.  Entries into the new block once written contain a hash.  Once the block is full a hash of that block is generated and details of this block is fed into the next new block.

To conclude a Hash is not validating that the data is correct and accurate, it is simply a too to confirm that what is later read or referenced is what is stated and has not been tampered with so right or wrong, the data which is read – is what is.  Each time the source data and original hash is retrieved by a device participating in the blockchain, the device will calculate its own has and compare this back to the original.  If it matches the data is good and has not been tampered with, if the hash outputs do not match then there’s a problem which results in the processing stopping.

I have all this data available and many 3rd parties accessing the Blockchain, how do control the integrity of data being added and manage the security data?

Blockchain Smart Contracts are written to control the a number of elements around the transaction behavior within the Blockchain environment.  The rules that form a smart contract define the rules and limits to be imposed ensuring the integrity of the platform.  Smart Contracts are found in Blockchain most Hyperledger and Ethereum environments apart from Bitcoin.

Roles-based access is defined and users are added to enable or restrict access to data within the Blockchain that is determined relevant or on a need to know basis.  Solutions have been proposed whereby a financial recognition system or other is setup for those providing access to their data by upstream and downstream queries within the blockchain.  In a private network, permission can be granted by sharing a key used to encrypt the private data.  If accessed is revoked new keys need to be generated and distributed to the entities still allowed to view the data.  Those wanting to access data thereby having to agree to the terms and provide that financial recognition.

So where does Bitcoin sit with Blockchain?

Bitcoin is a financial ledger solution developed by Satoshi Nakamoto (no one knows the true identity of this individual or group of people) and released in January 2009.  It does not cater for the sharing and validating of data in the form of text but only financial information.  Financial data in the form of blocks are shared with everyone connecting to the ledger.  For Bitcoin approval of new entries you have to confirm the whole chain and achieve a minimum of 51% agreement which results in slowing performance.

What about Hyperledger?

Blockchain Hyperledger is not associated with financial based transactions and used more by private industry.  It supports more transactions, is scalable and is a non-financial platform.  Data is accessed similar to an SQL data query.  There are spin-offs or projects that have deviated outside Hyperledger that have aimed to fix, improve or enhance the environment with names such as sawtooth (popular developed by Intel, using elapsed time) along with others named Roha, Burrow etc.

And Ethereum?

Blockchain Ethereum has both financial / coin and data capability for both public and private communities.  A new version released early 2019 provides enhanced operation resulting in faster speeds.  This adjunct deterring from Ethereum is known as a fork (fork in the road) and you will have some Ethereum Blockchain environment on the old and some using the new version.

What about Mining?

Blockchain Mining is the process where a new block needs to be formed allowing for data to be captured and hash verified.  All mining devices in the network will feverishly work towards winning the correct pattern based on previous blocks formed allowing them to create a new block.  It takes CPU power to come up with the magic number (called a nonce).  Mining times will very pending the platform for Bitcoin approximately every 10-12 minutes a new block is mined and the algorithm by design is complex ensuring this time to keep the Blockchain network in order.  Once a new block is created all devices will start from the beginning looking to mine the next block.  Malware creators have taken this one step further by producing Malware that spans multiple infected computers having them operate like a super computer simply to mine blocks with in Bitcoin as the reward for successful mining is paid in Bitcoin for this process also known as “cryptojacking”.  Blockchain Ethereum to mine the next block can take 10-19 seconds for the block.  The process of mining and creating blocks is rewarded with recognition within the given platforms environment being rewarded with freshly minted crypto currency.

Blockchain detail and references.

Note that this blog aims to cover some of the common terms and provide a subtle overview of the different Blockchain environments.  Our comprehensive training that includes demonstrations and hands-on access whilst building your own private Blockchain provide an understanding and experience in working within this new exiting platform.

As us for more detail or simply looking under the Training menu of this site.

The problems that Blockchain solves

https://sloanreview.mit.edu/article/what-problems-will-you-solve-with-blockchain/

Ethereum Smart Contracts

https://blockgeeks.com/guides/ethereum/

Australian Block Chain Companies

https://www.themartec.com/insidelook/blockchain-companies-australia

“Blockchain for Dummies” reference written by IBM for those with a little of a technical background can read and understand, however we’d like to highlight simply what Blockchain is and what Blockchain isn’t at a very high level.

Australia freight forwarding proof of concept

https://tradecommunitysystem.com.au/

May 2018 (Scroll down the page and watch the video first).

Trade Community System – The Proof Of Concept

Built by a consortium with PwC, The Port of Brisbane, Australian Chamber of Commerce and Industry

The implementation of a system using Blockchain delivered a platform whereby members were assured their data was used only for the purpose that they decide, the security roles and right with the access to data was an essential outcome desired from a platform.  Additionally being able to to streamline processing, reduce errors and mistakes delivers substantial time-savings for all cargo passing through the port and into the hands of the consumer.

Singapore Health using Blockchain outside of Crypto currencies

https://www.cio.com/article/3291758/how-singapore-is-using-blockchain-outside-of-crypto-currencies.html

Today, business is looking for secure, scalable and innovative ways to solve problems.  Applications are popping up everywhere in Heath, Finance, Supply Chain, Authenticity of food, alcohol, vitamins etc.  In an effort to overcome counterfeit product distributed throughout China, Alibaba are looking to implement the supply of Australian goods into China where the end consumer is happy to pay a 50% premium on goods and services for the assurance that a Blockchain solution delivers.

This is just the start!