As some of you may know I have been very interested in Bitcoin and blockchains for the past couple of years and have been digging into it even more lately as part of my day job. However, blockchains have been in the news a lot lately to the point where it often feels like its a solution looking for a problem. Sure, blockchains are the sexy new tech but here are some questions you need to ask when debating looking into blockchains as a solution to your problem:
- Can you deal with transparency? Writing to a public blockchain is may be a difficult new way of working (as banks are starting to find out). There is also a huge mindset today that considers data an asset that could be profitable and not worth sharing (though with the increasing risk of hackers and data breaches, its worth considering if your big data is an asset or a liability?)
- Do you need immutable history? A huge value of the blockchain is in the fact that the blockchain is a record of history that can never be modified. Certain initiatives around blockchains with super users that can rewrite history completely negate the core trust mechanism of the blockchain. However there may be data that is incorrectly reported at times. Does your data consist of absolute truths or may need to be corrected once in a while?
- Will you have untrusted peers or the network? One of the big reasons to adopt a blockchain is in environments of limited trust. If the only people that can write to a blockchain need to be authorized in a different way, you are just trading your current problem for a new one.
- Can you keep your blockchain from being hijacked? If you do have untrusted peers on a network, and your network is fairly small, can a peer take over your blockchain with a 51% attack?
- Can you just leverage the Bitcoin blockchain? Keeping an operational blockchain is work and needs nodes and miners that are incentivized to maintain it. What kind of rewards do you offer that make your chain worth working on? If you don’t have the right incentives in place, your blockchain may not outlive the individual or corporate curiosity that spawned the idea. A better idea may be to write it or, more likely, a hash of it to the Bitcoin blockchain making it a part of the official history and something that will exist even if your project dies.
There is a huge tendency to fixate on the distributed nature of the blockchain, but if that is your sole goal, there are other distributed database technologies that you should be looking into.