Bitcoin, the first cryptocurrency, was initially conceptualized and created as a form of digital cash. It was intended to be used as a way to transact quickly and anonymously online.
Essentially, the difference between a blockchain and a database is that the blockchain exists across a network of computers, whereas a database exists on a single centralized server. With centralized databases on the web, users connect through a client-server network. This means that those who have been given permission to change a database by the system administrators may do so.
Instead, in blockchain-based databases, every network participant – or ‘node‘ – is responsible for maintaining and adding new entries to a database which is stored across a shared ledger. When one node proposes a change, all nodes across the network must reach ‘consensus,’ which we’ll discuss later, to implement these changes.
This is the fundamental difference between a traditional database and a distributed blockchain-based database – but what other factors define these two methods of data storage?
Traditional Databases vs. Blockchains – Which is Best?
It’s not easy to say which method of data storage is ‘best,’ as each user will have their specific needs. Each method of data storage has its own set of advantages and limitations, which we will now explore.
Information that is stored on a blockchain cannot be edited, only added to. To edit the information stored on a blockchain a network-wide consensus is required. In other words, every node on the network would need to approve the change. Since there are usually hundreds or even thousands of nodes on a given blockchain network, it would be virtually impossible to make such a change. A database typically only requires the permission of its administrators or a particular piece of software to edit or remove information.
While a database often holds only the more recent information, a blockchain holds all of the information that was ever added to it. Therefore, a blockchain may be better suited to hold pieces of information which require permanence, such as marriage, birth, and death certificates and other kinds of legal records. A database is better suited to hold pieces of information that are subject to change, such as research records that may need to be updated to maintain accuracy and avoid confusion.
Security and Access
Because blockchain-based networks are decentralized, the data is impervious to hacking. When a large group of data is stored on a central server, a hacker that gains access to the server can collect a lot of data at once. This can have disastrous consequences.
For example, if a bank’s server is hacked, thousands of customers may be made victims of theft and identity fraud. If the server is otherwise destroyed, the data is destroyed with it. As a result of this, institutions that use centralized servers to protect large amounts of valuable data may spend huge figures on keeping them safe.
In a blockchain-based network, more than half of the nodes would have to be compromised to gain access to encrypted data that would leave users in vulnerable positions. This is called a 51% Attack. In this scenario, hackers are able to take control of the majority of a blockchain network and make changes at will via majority consensus.
These attacks have been known to occur on blockchains which are either not used often, or where there are only a few node operators. To launch a 51% attack on a major blockchain like Bitcoin would require serious financial and computational resources, and is beyond the realms of possibility for most hackers.
For the most part, we can consider blockchains ‘immutable‘. Essentially, there is no easy way to gain access and change data without reaching a consensus from the wider network.
Because blockchains are distributed ledgers, encrypting information on them requires much computational power.
Many blockchain-based networks, like Bitcoin, are not permissioned; they are not “read-controlled” (anyone can read them) or “write-controlled” (anyone can create a new block). However, blockchains can be permissioned, meaning that only those who have been granted access can read them or create new blocks.
In any case, concealing data in a blockchain requires heavy encryption, which, in turn, needs quite a bit of computational power. Therefore, if information needs to be kept private, it may be better to store the data in an offline database.
Processing a transaction on a blockchain requires approval from the entire network. Therefore, data storage on a blockchain may take much longer than on a centralized database and blockchains’ do compromise on speed compared to a traditional database. This is because while information is distributed equally across network participants, computational power is not.
Therefore, how fast or slow a change to a blockchain-based database occurs is wholely based on network congestion. If there is an unusually high amount of transactions or requests on the blockchain that day, it will take much longer for the database to update and reach consensus across all network nodes. Conversely, with centralized databases, users upload their changes to a centralized authority or server, and they are saved instantaneously.
For example, Bitcoin’s blockchain-based network has recently been the cause of a few feuds in the Bitcoin community. This is because the blockchain has become so large over time that transactions can take up to an hour to complete. There have been several ideas on how to solve this. So far, each one has resulted in the creation of a new cryptocurrency and not much in terms of improving transaction speed on the existing Bitcoin network.
It’s worth bearing in mind that other blockchains are able to process changes much faster, although few have cracked what is known as ‘scalability‘ yet – the ability of the network to process a high number of requests.
Therefore, if data needs to be stored quickly and efficiently, a centralized database may be the better option. At least, for the moment. There may one day be a blockchain powerful enough to fix the problem.
For enterprise users and businesses, centralized databases are likely still the data storage method of choice, owing to the fact that they’re not accessible via public ledger, and a central authority can control access.
In the future, we may see a large move towards permissioned ledgers – blockchains that run internally within an organization and are not free for public use or viewing. Permissioned ledgers offer the same security benefits of distributing data among multiple network participants but prevent unauthorized access to data.
Blockchain is still in its early stages, and there is quite a bit of buzz surrounding its potential for technological advancement as well as the potential of cryptocurrencies to bring investors eye-popping returns.
However, knowing which cryptocurrencies are destined for success requires enough technical understanding to know which coins are “walking the walk” and not just “talking the talk.”
Have you had any experiences using blockchain as a method of data storage? Please, leave a comment–we would love to hear from you!