DApps are an innovative way to make use of a blockchain’s capabilities. But it can be tough to find a plain English definition of exactly what they are and how they differ from traditional applications.
In this article we will explain:
So let’s get straight to it: a decentralised app, or DApp for short, is an online application that connects to the blockchain in some way. Theoretically, this could mean the entire backend storage is done on a blockchain rather than a server; but more typically it involves just a small component of the app connecting to the blockchain through a straightforward API. In most functional ways DApps are used in the same way as any other software application and can be based on a website or as a mobile app.
So what makes them distinct from normal apps?
Optional extras often associated with DApps:
It’s worth knowing at this point that there is still some debate over exactly what constitutes a DApp in the purest of senses. Some people swear there has to be a token involved always, others are very hung up on the open-source nature, but the key factor to remember at this point is that DApps are built on a decentralised network.
So what exactly makes a DApp revolutionarily different to normal apps? To understand what makes DApps special first we need to dive into how normal, traditional (slightly boring?) centralised apps work.
Okay so we are going super basic here, so please forgive any generalisations. The majority of traditional apps consist of three key functions:
This mode of creating workable applications has been, and continues to be, a very effective way of getting your service up and running. Centralisation provides low-cost hosting, fast running speeds, easy development and a tightly controlled user experience.
However, these advantages come at some serious costs. Number one is handing over a significant amount of control to large hosting organisations, like the friendly people at Google or Amazon. On top of that, a centralised database is an impossibly tempting target for hackers. You have to hope that the big brothers have their security up to scratch, but let’s be honest, cybercrime is only ever going to get more prevalent and cybersecurity more fraught.
And as for your users, well they have to either ignorantly or begrudgingly accept that all of their personal and private data is owned by someone else – usually the highest bidder.
DApps offer an alternative, one which seeks to solve all these problems and add a bit of social justice in to boot.
I’m glad you asked. For simplicity’s sake here we will assume that the whole DApp is built on the blockchain. This means that a bit like centralised apps we can split a DApps functionality into three basic stages:
Within the DApp system, data is stored on behalf of the user in order to allow accurate functionality of the app and all its transactions.
The special thing about the DApp is the bottom layer – the blockchain network upon which the whole system runs. Unlike the centralised database, which is owned and controlled by one person (or a multinational conglomerate), the blockchain network is fully decentralised, meaning it is run and seen by every user on the ecosystem.
It’s technically called a peer-to-peer system. Every request from the front end of the app filters through every person (node) that exists on the network. They all run the code from the smart contract and store the resulting blockchain data on their very own copy of the ledger. So everyone has their own record of every transaction that has ever happened on the DApp. This makes the information ridiculously tricky to tamper with while also allowing maximum visibility and community ownership of data. Mind-blowing right?
In our honest opinion DApps, and the blockchain space that fuels them, are quite simply the most exciting thing being developed right now! Blockchains and DApps are still brand new and there is still so much to be discovered and created. The floor is literally wide open for anyone brave enough to help forge this path. A path which honestly looks like it will be revolutionary not just for tech but the population at large.
Yes yes, it’s all very exciting, you’re probably thinking soberly, but when are they actually going to give me some proper business reasons why I should now spend time learning a whole new skill set? The answer is right here right now in this nice list below:
Data privacy is now a legal and moral requirement for every organisation or business. If you have any user data at all (very likely for an app creator with anything other than zero subscribers) you NEED to keep it secure. And not just “ah yeah we all have passwords on our laptops secure”, we are talking secure enough to prevent one or more of the 2,244* malicious hacks happening a day breaching your system. Even more worrying is that the job of keeping your user data safe will only get more difficult, yes as you add more users, but also if you intend to grow as an organisation. Human error is still far and away the biggest cause of data breaches.
Sound terrifying? Well, the good news is DApps make the job of securing user data much more manageable, basically by avoiding the huge security pitfall which is centralisation.
By running on a distributed blockchain computing system DApp stored data is not vulnerable to one single point of failure, unlike the centralized storage of big tech companies. DApps make it structurally much harder (if not impossible) for hackers to steal user data, as the data simply isn’t stored in a single hackable place. On top of that, data security on a blockchain is also ensured through the use of cryptographic verification methods such as the Zero Knowledge Proof (ZKP) method. Making it double safe. And don’t panic too much if you’re now worried about making your own cryptography algorithms, they come as a bit of a free package in a blockchain primitive/protocol.
Maybe this feels like a bit of a freebie for developers in currently fully democratised countries, but for those with interests or customers in parts of the world where the government enjoys a tighter control over the internet, it is important. Blockchains can empower real people to access data and financial facilities. There is no single entity on the network which can block users from deploying DApps, reading data, or submitting transactions through the blockchain – meaning your service can carry on regardless of worldwide pressures. Even better, there is less platform risk too. By avoiding building on any of the big company platforms they are also unable to shut down your app if it offends their sensibilities (by, you know, becoming too successful…).
Everyone can check out and analyze the code that is run in a DApp, to make sure it’s fair and accurate. Because everyone can see exactly what’s happening there is no need to put trust into a central authority (like a bank or government) which functions on closed processes which you can’t have full visibility over.
Once your smart contract is deployed and set up on the blockchain you are officially unkillable. The network as a whole will always be able to serve clients interacting with the smart contract and hackers or other malicious parties would have to pay colossal prices to launch denial-of-service attacks towards individual DApps.
*If you want some more specific ideas on how to utilise the blockchain in your app, check out the best use cases for DApps here.*
DApps can certainly sound like a daunting new skillset, but with the right tools adding a pinch of blockchain to your app is not only straightforward but hugely rewarding.
At CENNZnet we have developed a way of building on our chain so that DApp devs can get stuck in fast without learning new programming languages and smart contract development.
To build a DApp with CENNZnet all you need to do is:
Get started on your DApp using our extensive development resources here.
*Source: University of Maryland study: https://eng.umd.edu/news/story/study-hackers-attack-every-39-seconds