Blockchain protocol applied to Anti-DDoS systems and CDN networks

In this article I want to talk about a cool potential application of the blockchain protocol in the realm of internet/web services. To do this I will explain what the team at Gladius.io is doing and their vision.

It is important that you know what an ICO is in order to understand this article, if you don’t you can check out this link https://blockchainlion.com/initial-coin-offering-101/ where I explain the concept of ICO.

Gladius.io is a project that really poke my curiosity because they are doing exactly this: using the blockchain as a foundation for CDN and anti-DDoS services.

Let’s first define what is a CDN and what is “DDoS”.

CDN stands for Content Delivery Network. It is a network that delivers content. What kind of content? to whom it delivers it?

Let’s say I navigate to a webpage. The web assets such as styling pages, images, videos and other things in the webpage are delivered to my browser by a CDN. A CDN has servers that are usually distributed worldwide in order to serve these kind of contents fast to every internet user requesting them. This means that no matter where you are, you will get content delivered fast because of the big network reach of a CDN. The term CDN is very generic, specific kinds of CDN services are video streaming, software downloads, web and mobile content acceleration, transparent caching and many more.

this represents a content delivery network
Single server (left) versus Content Delivery Network (CDN) (right)
– Photo by Kanoha (Own work) [CC BY-SA 3.0 (https://creativecommons.org/licenses/by-sa/3.0) or GFDL (http://www.gnu.org/copyleft/fdl.html)], via Wikimedia Commons
Just know that a CDN is a network that delivers web content to your browsers. Now let’s move to the word “DDoS”. DDoS means Distributed Denial of Service, and it is a type of cyberattack. Malicious entities will launch a DDoS attack to a website or any server connected to the internet with the goal of putting it offline and unable to function.

How can they achieve such a disastrous effect? Well let’s say you are a webserver. I want to attack you because I want to bring your websites offline. As a webserver you have the capacity to listen for requests from any internet user, and respond with web pages and web content. It works like this, I type “www.example.com” in my browser, and immediately my browser will go to the web IP address associated with “www.example.com” and ask “Hey! can you give me your homepage?”, the web server responds “of course bro! here is the webpage!” and sends all the files that your browser will finally receive back and display nicely to you.

To DDoS you I would, for example, start asking you “hey! can you give me your homepage?” but a thousand times per second, even more, so you as a webserver cannot handle all the requests and you start going crazy. This will result in you being unable to serve any other request. So after that moment nobody can get any services from you anymore until the engineers don’t intervene and fix everything.

Does this happen a lot in real life? Oh yeah! In October 2016, a company called Dyn, which powers the DNS infrastructure of many famous and popular websites, got attacked by a very large DDoS attack. Websites like Netflix, Reddit, Twitter and CNN were completely shut down for a whole day, and they lost billions of dollars as a consequence.

Now that you have a basic knowledge of what is a DDoS attack and what is a CDN network, let’s dive deep into Gladius and see how they want to apply the blockchain concept to CDNs and DDoS protection.

Website

Gladius’ website initially mentions “Decrease Load Times. Fight DDoS Attacks”. Which gives us a bit of an introduction on what is their main goal. Scrolling down you can start seeing all their press mentions. I examined a few of the links and they are legitimately pointing to VentureBeat, Investopedia, NewsBTC, Hackernoon, and more media outlets that mention Gladius positively.

gladius homepage, blockchain protocol applied to CDN and ddos
Gladius.io’s homepage

The intro video starts by explaining why DDoS are a threat, and how traditional DDoS mitigation techniques are not always effective and very expensive. It then goes on explaining that the Gladius software will allow any computer around the world to rent out unused bandwidth in order to earn Gladius tokens. This bandwidth power will be then used as a way to filter bad DDoS traffic and stay safe.

They seem to emphasize that their strength point is the tokenization of this service. Instead of paying 200$ a month for a traditional DDoS provider, you will only pay the gladius network the moment when you are attacked and need extra bandwidth. The token will be the currency to exchange these services and pay the gladius network.

their website also features a calculator that lets you estimate how many gladius tokens you will be earning by renting out your bandwidth to the gladius network. For A 93 Mbps upload and a 20 hours uptime it will earn you about 12 dollars per day.

Whitepaper

Time to talk about the whitepaper! I will write down the points that I thought were particularly interesting.

Their first chapters talk about Gladius’ vision, mission and solutions to the DDoS problems. They start by outlining how big of an issue DDoS attacks are, and among many other things they point out that corporations spend amounts like $5000 monthly for traditional anti-DDoS solutions.

They outline two main phases for developing their product: phase 1 where they will be building an initial CDN and DDoS protection network, and phase 2 where they will develop the network to a commercial scale that can handle thousands of websites.

Two types of users are the main players of the Gladius network. One of them are regular users like me and you, that can run the gladius client in the background and rent out unused bandwidth to earn gladius tokens. The other type of user is a website owner that needs protection for its website. The website owner will create an account on the gladius website, acquire gladius tokens, and use them to request services such as DDoS protection. Once his website is part of the gladius network a live graph will be available in his web dashboard to monitor connections, protection and speed deltas.

blockchain protocol covering the ddos and cdn services

In the next chapter of the whitepaper the gladius team gives more numbers on the markets they want to tap in, which are the DDoS protection market and the content delivery market. Their argument on the DDoS topic is pretty convincing in showing how current anti-DDoS solutions are struggling to fully protect brands and government internet assets. On the topic of CDN market, the numbers outlined are huge, a fact that really impressed me is that today, there are 14,620,983 live websites using a CDN, and the demand keeps increasing as more online assets are created.

The token system will jumpstart during the ICO phase. Tokens are a key component of the gladius network because they will be used by websites to buy DDoS protection and CDN services. The majority of token fees will be awarded to the node owner, which is the person that is running the gladius client and “renting” out his bandwidth and storage space. A small portion of the token fees will go to support continuous upgrading and development of the gladius network.

I would like to point out how the miners here in this network are the people that rent out their bandwidth. Instead of giving out computing power like the bitcoin mining process, they are giving out bandwidth.

Here are some key numbers about the gladius token:

Max Sale Issuance: 34,000,000 GLA
Max Token Issuance: 48,200,000 GLA
Max Token Market Cap: $12,500,000
Max Market Cap: $20,500,000

Their platform architecture is composed of the ethereum blockchain, custom proxies and smart contracts negotiating services. To start enabling protection the website owner will just need to switch DNS nameservers to the ones designated by the gladius network.

After this brief touch on their platform architecture, the whitepaper goes on with an analysis on competitors. They highlight how the biggest players in the market (Cloudflare, Akamai and Imperva) charge ridiculous amounts to website owners monthly in order to get DDoS protection.

Gladius wants to decentralize the process of getting DDoS protection by offering a pay-as-you-go option. This means that if you are not being attacked, you are not going to pay as much. Also the individual nodes in the network will compete to offer the lowest price possible per Gb of bandwidth, meaning that as the network grows, protection will be provided with lower and lower prices.

Another strength of the decentralization of DDoS protection is that you do not have a centralized point of failure anymore. For example Cloudflare has been attacked and put under heavy backbreaking weight in the past, and when their main servers got taken down, all other websites under their umbrella also fell down. This cannot happen in Gladius, because an attacker will need to DDoS every one of the thousands of pools to obtain the same effect, which is impractical to achieve in this decentralized architecture.

The token sale funding will be broken down as follows: Core development will take the 40%, security operations will take 20%, operations will take also a 20%, and legal and marketing will take 10% each. This breakdown makes a lot of sense to me, I like to see that funding goes a lot more into technical aspects rather than purely marketing and business expenses.

Looking at their specific goals I see a lot of ambitious features on the roadmap, which indicates a good potential. They will need a minimum of 4 million USD to build their basic anti-DDoS, CDN and load balancing platform. Their cap will be 12.5 million USD, which will allow them to integrate more features like layer 7 DDoS protection, advanced WAF, a gladius app store and advanced CDN and DDoS optimizations.

60% of the total tokens will be distributed to the public, while the rest will go to the team and founders of the project.

Just like traditional CDN and DDoS protection companies, gladius will be creating a custom proxy that sits between the website’s server and the open internet. This middle layer is made of many pools of small clients that split up the traffic verification, perform work in tiny chunked tasks and communicate with each other in fractions of seconds.

These pools of nodes will be able to check other pools for honesty, avoiding the appearance of malicious adversaries in the gladius network. These nodes will be distributed worldwide, allowing fast connections from wherever the user is.

this photo shows a computer screen with a lock and a hacker sitting behind

The pools information are all kept in a database in the ethereum blockchain. Each pool will have a reputation score which will determine how reliable and strong that pool is. So for instance websites could pay more for a pool that has a higher reputation score, getting a perfectly tailored solution.

The whitepaper shows screenshots of the gladius client, which is the program that will allow any computer to become a node in the network. Proper encryption and fast communication will secure exchange of information with other pools in the network.

The web portal, also shown in the whitepaper, will be used by the websites that need protection. They will log in, add a new request for a website they want to protect, and in very little time they can change the DNS settings of their domain to point to the nameservers given by Gladius. Gladius automatically finds the best pool to which you can connect your website to.

A section on DDoS mitigation explains the mechanisms that will be used to block attacks. They are: Rate-Limiting, IP address matching, intelligent geo matching, browsing behavior. Gladius finally states that it is committed to continuously research better ways to mitigate attacks, and implement them continuously with new client software updates. Pools of nodes that do not update their software frequently will lose reputation points.

A section on CDN outlines how having small pools of nodes distributed everywhere in the world is better than having few huge data centers in select places. Static files will be cached and always checked for integrity and tampering.

Team

The team is composed by University of Maryland College Park computer science students specialized in blockchain tech and cybersecurity. The main focus of the team is to eradicate DDoS attacks and provide a more solid CDN architecture.

Without mentioning specific names, the team looks complete with all skills necessary to make this happen.

After googling around I found a video of the founder, Max Niebylski, you can hear his interview about gladius here: https://www.youtube.com/watch?v=kApcmK-jMYA

I wish I could see more videos where the team goes out there and does presentations, speeches or panels at blockchain events or universities. Unfortunately there’s not much around besides that interview.

Their youtube account only has the intro video that plays on their website.

Github Overview

Currently they have 4 repositories in their GitHub account. The gladius-pool-contracts, the gladius-node-client, the gladius-infrastructure and the gladius-platform.

Let’s look at gladius-pool-contracts. It uses the truffle framework which is very popular among ethereum developers. The README file is fairly complete and contains instructions on how to deploy a new pool, decrypt the information, and configure the DNS.

Only HTTP traffic is allowed, payment is not implemented because tokens are not out yet and DNS will automatically grab as much bandwidth as possible. This all means the product is at an MVP stage. It is great to see that devs are actually building the product.

Looking thru the Pool.sol smart contract I can see a lot of comments, which help a lot with understanding the code. The other contract Migrations.sol is a smaller file, and I immediately see that they are using proper security in their method calls by using a restricted() method.

If you did not understood the last paragraph fully don’t worry, I was basically pointing out positive features of the smart contracts in their first repo. A quick scan on securify.ch did not find any vulnerabilities on Migrations.sol but it could not complete the scan on Pool.sol .

There seems to be only one contributor to that repo, which is a github profile named Alex. Alex does not have too many repos and GitHub activity in his own profile.

I don’t see a long and detailed list of commits, there are only 7, and the first one already contained most of the code, meaning they imported the repo in GitHub when they were already working on it.

Their commit frequency is low, and there does not to seem too much activity. I hope to see much more action soon.

The next repository, gladius-node-client is the actual software that runs into nodes of the gladius network.

Again, README is complete and code is well written, but not too much action in the repo itself. The last commit on this one was on October 25.

Going forward with the repos, we can now look at gladius-infrastructure repo. Here the main characters are clientDB.sol and Migrations.sol . Only three commits in here and last commit was on on Oct 24.

The last repository, gladius-platform has more solidity contracts that contain all the core functionalities of the token and platform.

How to buy cryptocurrency

You can buy cryptocurrencies by transferring your fiat currency to Coinbase and exchange it for bitcoin, ethereum or Litecoin. Use this link to get a 10 USD (8 EUR) bonus in bitcoin when purchasing 100 dollars (80 EUR) or more in cryptocurrencies.

Post-ICO tokens are sold/bought in crypto exchanges like binance, cryptopia or HitBTC. You can make an account in these exchanges, and then use it to purchase any ICO token that you want.

Conclusion

Gladius seems like a very interesting project, I enjoyed a lot learning about their idea and going through the whitepaper. I was hoping for a GitHub repository with more commits and updates and contributors. I will definitely go to a community page and ask questions to the team directly and understand this situation better.

The main focus of this article was not on Gladius ICO itself. The spotlight was really to show you a very cool and technical application of the blockchain protocol and technology. Also to show you the potential that this technology has to substitute traditional systems and increase efficiency in processes that are underneath the hood and that most people don’t even know they exist.

What do you think about using blockchain for DDoS and CDN? Do you think Gladius could have done better in certain aspects? Leave comments below!