Sometimes I ask myself how Blockchain can be used in a project. Lately, big companies have been gushing about Blockchain and how wonderful and miraculous it is. But what exactly is it? How does it work? Is it to pay for something? Is it to create a new currency? And the biggest question: how can I use it in a project?
So first off, what is Blockchain?
I looked around and came across several definitions, but I like how IBM describes it:
“Blockchain is a shared, immutable ledger that facilitates the process of recording transactions and tracking assets in a business network.”
What this means is that Blockchain is a set of tools to store information (transactions) across multiple network locations. But what are the benefits of Blockchain?
- Secure and Reliable Transactions
All transactions need to be approved by most of the network nodes to be saved, and all transactions are stored in all nodes.
Once you save a transaction of an asset, this will be connected to the previous transaction of the same asset, so you can trace the entire history.
Once stored, a transaction cannot be modified.
- No Intermediaries
There is no need for a third-party company, bank, or anyone else to process the transactions.
- Efficient Communication
The process is fast and efficient by eliminating intermediaries and reducing manual work.
- Private Networks
You don’t need to use any of the public’s blockchain implementations. You can run your own network.
Next, we need to define the word transaction. Based on my own research from different sites, blogs, and books, I see a transaction as a way to show the state of change in an asset. An asset can be anything from a book to the temperature of your room. In other words, it can be something tangible, intangible, or digital.
Blockchain stores these transactions as blocks of data and makes sure that all the transactions of an asset are linked, creating a chain of blocks that can be traceable and verified. This allows us to trust the stored information and helps to prevent someone from tampering with these records.
Before a transaction is stored, all or most nodes need to agree that the transaction is valid. Once this happens, the transaction is saved in a block with other information like previous transactions and timestamps.
Then a hash of this block is created and shared between the blockchain network nodes. In this way, all the nodes can save the block of data.
Now we know what Blockchain is, and how it works. But where and how can we implement this technology?
When I was thinking about this article, I was resolving an issue with my credit card company about travel insurance. And suddenly, an idea came to me.
Picture this…you’re on vacation in Tokyo by yourself and you get into an accident. You suddenly wake up in a hospital. Now on top of all this, you are diabetic like me. So how will the doctor know how to safely give you treatment? How could they know about your body’s sensitivity to blood sugar levels?
If only there were a secure and easy way to share your medical history between different hospitals across the world… That’s where blockchain comes in.
Now in blockchain terms, my medical history would be an asset. The transactions would be all changes in that asset, so all new entries or updates would be recorded and shared between all the nodes.
Any hospital that joins the network, regardless of physical location, would be interconnected with all the other clinics within this system. And every time a new node connects to the blockchain network, it would download all the transactions stored in the network.
Each new transaction would be shared with all the nodes. So anytime a new record is entered into your clinical history, it would be distributed to all the other hospitals that are interconnected within the system.
How can we archive this? What resources can we use?
In recent years, a lot has been said about cryptocurrencies that utilize Blockchain such as Ethereum. But why are we even talking about cryptocurrency?
That’s easy. Ethereum is a distributed computing platform that uses Blockchain with its own language to build “Applications.” Every blockchain transaction has a cost. In this case, that is Ether, the currency used within the Ethereum platform. But how can the nodes obtain some “Ether” to work? At this step, the only way is to mine, and that’s why we need a private network. When the network is getting built, we can set the difficulty level for mining. If we put it low, we won’t need a supercomputer to get this artificial currency. Remember, you can’t use this currency in the public network. We can also develop our own private network to ensure that only real hospitals connect to our network.
So, the next thing is how we can quickly help a hospital set up a node. For this, I was thinking about how we can avoid buying a server, configure it, install everything, and prevent connection issues. Horizontal growth of our “app”?
Now that we have set up our network, how do we broaden our nodes? In other words, how do we help hospitals connect to our private network?
One option would be to buy our own servers. But apart from the cost, we would have to go through the hassle of configuring them, installing necessary software, and ironing out connecting issues.
A much easier solution is right above us, in the clouds! Amazon and Azure both offer cloud solutions. And what’s more, Azure already supports Ethereum. We could create and share a template so that with minimal help, the hospital could set up an account and connect their node.
I wrote this article to give you a preview of what we can do with Blockchain and other technologies like Azure, but we are still missing some points.
- How can we store patient Diagnostic images (RX, CT, MRI)?
Blockchain isn’t intended to manage significant amounts of data in a transaction. If we have a big piece of data in trade, processing will take longer, so we need to think of a CDN solution.
- How to manage translations? It is not that easy to translate medical terms.
- How can you ensure that a hospital can only check your history when you are inside that hospital?
- Who is going to pay for the necessary cloud infrastructure?
- How can we make an app that is compliant with every country’s internal regulations?
My goal is to help others learn about this relatively new technology. Because once you get a basic understanding of what Blockchain is, you start to realize its potential to be a gamechanger.
And lastly, we’re always looking for people who have crazy ideas like us. Maybe you can help us with some missing parts or even code something. So feel free to comment or write to us with your ideas.