Gridcoin is a coin that is very similar to Bitcoin. Gridcoin is decentralized, autonomous and runs on a blockchain network. It also allows users to send funds to each other directly and charges very low processing fees. The code of the project is open source.
The main difference between the two coins is the algorithm behind the creation of the blockchain on the network.
Bitcoin uses Proof of Work algorithm. Gridcoin uses Proof of Research algorithm and works together with Berkeley Open Infrastructure for Network Computing (BOINC) to perform computations that have value to the scientific community.
Berkeley Open Infrastructure for Network Computing
BOINC has been created in 2012 at the University of California, Berkeley. It is an open-source software system that supports computing by volunteers and grids. University of California, Berkeley scientists have originally developed it for [email protected] project that was searching radio waves and signals for signs of extraterrestrial activities. [email protected] was released in 1999 and was the third large-scale project that used distributed computing to accomplish a goal. It was also the major computing endeavor that focused on researching and trying to find extraterrestrial intelligence.
The initial goals of the project were very similar to what Gridcoin is trying to accomplish today. These goals were to bring value to the scientific community and to prove the viability of the concept of distributed computing. While [email protected] to date didn’t prove that extraterrestrial life exists, it did accomplish its goals when it comes to proof of concept of distributed computer networks.
Currently, the BOINC has over 300,000 active participants and over 800,000 active computers. According to the Guinness World Records organization, BOINC is the biggest computing grid on the planet. The grid runs on a variety of software platforms, including Windows, MacOs, Linux, Android and FreeBSD. The essence of the BOINC software is that it uses computer resources that users do not use. BOINC utilizes this unused computational power to perform scientific calculations for the benefit of science and scientific community. As of the writing of this article, BOINC has contributed to 37 projects, about 50% of which have published scientific papers.
How Bitcoin’s Proof of Work algorithm works and the problem behind it
Blockchain technology is the foundation of the Bitcoin currency. Blockchain is a decentralized ledger that miners create by adding transactions to pieces of the ledger called blocks and then adding blocks to the blockchain.
Bitcoin network is fully transparent and you can see all the information about all the blocks on the Bitcoin network since the inception of the network in 2009 at https://blockchain.info/
Compiling transactions into blocks is a trivial task for modern computers. If compilation of transactions was all that was required of miners, then anybody could become a miner and the network would be overloaded with spammers and hackers trying to take over the network. This is why the Bitcoin network uses Proof of Work algorithm to prevent the spamming of the network. The concept of proof of work was invented in 1993 by Cynthia Dwork and Moni Naor. The idea behind the concept is that a computer network needs to have some kind of economic measure that would keep it safe from service abuses. For example, even today many websites ask their users to solve a CAPTCHA or so a similar task in order to access the website or use one of its features. Proving that a user is not a robot by solving a task, a puzzle or clicking on a button is an example of a simple implementation of the concept of economic contribution into life. The difference between proof of work and CAPTCHA is that CAPTCHA is solved by people and proof of work requires computers to do the work.
On the Bitcoin network, miners prove the work by coming up with a hash for each block they mine. A hash is a string of symbols. A hash algorithm is an algorithm that turns a large set of data into a much smaller hash. The hash algorithm can only create one hash for one set of data. The Bitcoin network uses an algorithm called SHA-256.
The process of coming with a hash for a new block starts with a target hash that the previous block contains. Because each set of data can only have one hash, simply coming up with the hash for the compiled transactions is not enough. If that was all that was required, all the miners would come up with the same hash. This is why miners add to the data a number called nonce, which is a word for “number used once”. The nonce they add is a random number and the goal is to come up with a hash that is less than the target hash. One of the goals of the Bitcoin network is to add a block to the Bitcoin blockchain every ten minutes. When the network has a lot of miners, coming up with a target hash becomes harder. This is how the network regulates itself in order to try and create blocks every ten minutes. The network regulates the difficulty of coming up with a winning hash with the difficulty parameter. The more miners the network has, the higher the difficulty. When the number of miners starts to decrease, the difficulty also starts to decrease. If the network didn’t have the difficulty parameter, at the times when a lot of miners start doing the work they would be creating blocks very quickly, which would mean that the network would be adding blocks much faster than a block every ten minutes.
While the proof of work algorithm makes the Bitcoin network very secure, in essence, the miners are playing a lottery. They are simply trying to guess a winning hash. The process works because the network doesn’t have an authority that runs it and the guessing process works in a fair and honest way. However, this doesn’t change the fact that the miners are essentially burning the electricity and running hardware for nothing. They do get bitcoins as a reward for creating blocks, but the process doesn’t contribute to the society or to the greater good. This is the problem that Gridcoin has solved by replacing proof of work with proof of research.