So there I was in my kitchen yesterday, reading an article in ZDNet about how several organizations are teaming up to prevent fraudulent food production practices around the world. The group has created a “Food Trust Framework” that is designed to increase the integrity and quality of the food in a global supply chain.
And there it was. Another reference to blockchain.
Until a few months ago, all of the references to blockchain that I had seen centered around the cryptocurrency Bitcoin, and to be perfectly honest, I figured if I‘m not being forced to pay somebody off to remove ransomware, Bitcoin and blockchain technology don’t really touch my life.
But there was blockchain again – this time in the context of food safety.
And since I eat food on occasion – well, that’s interesting to me. The premise of the news article is that there are an increasing number of food suppliers in China that are using ingredients in the food they sell that probably shouldn’t be there. As an example, maybe a beverage is diluted with water, or a filler is put into the food to reduce their cost of production. Maybe diluting a drink with water isn’t going to kill me, but it still means I’m paying for something that I don’t receive. But what if the filler that was used in a particular food happened to be a nut that I’m allergic to? Then it starts to get scary. (If you really want to scare yourself about “food fraud”, read this article)
Anyway, this group is trying to find a way to ensure that food quality is maintained through the supply chain. But how can you do that in a supply chain that could have dozens of suppliers involved in the process, particularly if some of the suppliers are specifically trying to avoid getting caught?
The answer they decided upon was – you guessed it – “blockchain”.
The basics of blockchain are not terribly hard to understand, but let’s use a simple example to explain the principle.
We all understand the concept behind money. If I want to pay someone with money, I can hand them a dollar bill, or four quarters, or a hundred pennies or whatever, and the deal is done. The other person has the physical, tangible object in their hand, so we don’t necessarily need a third party to confirm that the money has been transferred.
However, let’s say I owe ten dollars to each of six different people, but I only have ten dollars in my bank account. Let’s also say that it’s possible for me to pay people by emailing them PICTURES of money. Being a little bit sneaky, I take a picture of a ten-dollar bill and email it to all six people. At this point, nobody can definitively claim the ten dollars in my bank account because there’s no proof that they are the ONLY one who has the picture of that ten-dollar bill.
But what if there was somebody that I had to email the picture of my money to FIRST and who could then hold me accountable for the money transfer? He would receive my email, make a note of the transaction in a ledger, deduct it from what he knows to be in my account and then pass along the picture to the recipient. If I tried to email another picture of the $10 bill to someone, the person with the ledger would say “Sorry, that money is already spoken for. You can’t do that.”.
Expand the scenario a bit and say that HUNDREDS of people have a copy of the exact same ledger, and everyone keeps the ledger updated in near real-time. Then, even if I tried to get one person to change their ledger to my benefit, others in the chain would say “Nope, this is the accurate set of figures”.
That’s the concept behind blockchain – a shared digital ledger that allows you to verify and validate the transactions contained in that ledger. The ledger is shared among many machines in a decentralized, distributed, encrypted network, so nobody has the ability to artificially manipulate the data because all the other machines in the network serve as an integrity check.
But remember – it doesn’t have to be about validating financial transactions. It can be used to validate just about any kind of record.
And that would include records that impact food safety.
Preventing Counterfeiting and Abuse
Let’s think about the application of blockchain to our original scenario.
Imagine for a moment that you are a dishonest supplier of orange juice. You have an order come in that requires you to provide 500 gallons of pure orange juice. But, being a bit of a crook, you reason that if you use half the number of oranges and instead supplement the mixture with 250 gallons of water, you could nearly double your profits!
So how would blockchain possibly prevent this fraud?
The first assumption must be that all the suppliers in the chain are being required to put their business records into the blockchain in order to be able to accurately track what is taking place.
Now, if blockchain is being used to track all the suppliers in the orange juice production process, it would show that you are only receiving half the needed number of oranges from your orange grower to produce 500 gallons of orange juice. There may be IoT (Internet of Things) sensors tracking water consumption in your plant and sending their records to the blockchain network, and these would show that you are using a lot of water in your production process, potentially indicating that you are watering down the orange juice. Shipping records would show that you are shipping twice as much product without twice the number of oranges being purchased. Perhaps there is a quality control test performed as your product leaves the plant that verifies the makeup of the orange juice and then another test performed when it reaches the next stage in the supply chain, all of which are recorded in blockchain. The blockchain allows the end user (in this case, that might be the grocery store who buys the orange juice, and who has access to all the records in the blockchain) to watch for anomalies in the production process that would indicate fraudulent production processes.
If you attempt to go back and falsify your records, what happens? Let’s say you try to claim you used twice the number of oranges that you actually used. Well, you have an orange supplier whose records are also being stored in the blockchain, and his records show that he only delivered half the number of oranges that your records indicate. The trucking company that delivered the oranges would have a record of the weight of the oranges that were delivered, and that would also be stored in the blockchain, again making your claim suspect. Your records would possibly indicate orders for twice as many orange juice cartons – and unless you have a lot of unused cartons in the plant, that would be hard to explain. When you ship your product, the next stop in the process may perform a quality check. If that quality check indicates that the orange juice is 50% water, they are going to ask questions because now THEIR reputation is at stake.
At each stage of the process, any attempt to manipulate the data will be blocked because the entire set of blockchain participants (who may not even be known to you, and with whom you therefore cannot collude to falsify the records) will be validating that your records match the set of records that they have. The grocery store at the end of the supply chain can backtrack through the entire process and identify where the orange juice is being watered down.
The orange juice supply is saved! (And you potentially go to jail)
What this has taught me is that blockchain has some pretty interesting use cases. There are a number of industries that are already investigating blockchain scenarios very heavily. For example, the healthcare industry is investigating its use in tracking patient records and payment history; the financial services industry is using it to verify and validate financial transactions; and the energy industry is using it to protect themselves against intra-day price fluctuations in energy resources such as solar and wind-generated energy.
Microsoft Azure allows customers to set up blockchain solutions themselves to support their business initiatives. Some of the blockchain and distributed ledger protocols currently available are Ethereum, HyperLedger Fabric, R3 Corda, Quorum, Chain Core and BlockApps, as well as Azure Blockchain Service. These can be used to help customers provision their own blockchain network in just a few minutes in a globally distributed, highly-available network, using Azure’s massively scalable compute, storage and network infrastructure as the foundation.
Investigate blockchain at the link below and try it out for yourself!
Announcing Microsoft’s Coco Framework for enterprise blockchain networks