Cryptocurrency and Cryptojacking

Cryptocurrencies are basically digital currencies that can be exchanged for real money. There can be many cryptocurrencies like monero, lite coin and dash but bitcoin is the most popular amongst such currencies.

So here we will mostly be talking about bitcoin.
Bitcoin is the most used cryptocurrency in the present day and has a significant value against real money. Cryptocurrencies make possible to exchange money from one person to another over the network at very less cost because cryptocurrencies remove any kind of intermediates like banks between them. Many people do these transactions all around the world but in order to keep track of all transactions, the bitcoin network has people who constantly maintain their own registers of such transactions happening globally. The people who maintain this track of transactions are called miners. Miners mine a block and add it into the blockchain by simultaneously securing a reward of 12.5 bitcoins for themselves that the network generates out of thin air for rewarding them with all the work they have done to contribute to the blockchain.

Blockchain can be referred to as a chain of blocks that holds the history of all the transactions. While we talk about bitcoin many questions arise in our mind regarding it’s security and the working. The working of bitcoins is very similar to the working of any other cryptocurrency making it easier for us to understand the working of many of the cryptocurrencies in the world.



Working of bitcoin network and why it cannot be scammed?
It all starts when a person wants to exchange bitcoins over the bitcoin network. For this, a person has to announce on the bitcoin network his/her transaction. Announcing the transaction requires mentioning the senders account no, the receivers account no and the no of bitcoins to be sent.The authentication of the transaction is ensured by the use of private and public key.

The public keys are derived from the user’s private key. This public key is visible to others as a person’s address where one can send or receive bitcoins. Using the public keys miners check the signature. This signature cannot be scammed as even a little change in the signatures changes the public key associated with it. Then the bitcoin network and software check the history of transactions of a person in order to ensure that the person has enough bitcoins to exchange in the first place. After confirming the transaction, the transaction is added to their own registers known as blocks but these blocks cannot be added so easily in the blockchain. These blocks need to have a proof of work and the and the header of the block as the hash of the previous block.

The order in which these blocks are cannot be switched because then the block will generate a different hash value that would completely change the value of the header of the next block and so on, creating a lot of work. Here hash refers to an encrypted output generated by a particular block that is of a fixed length and proof of work is a special number generated during mining that guarantees the authenticity of the block. As we have many miners on the network building similar blocks, so which block should be added into the blockchain?

Only a particular miners’ block is allowed to be added in the blockchain, who is able to solve a math problem that is put forward by a cryptographic hash function. This hash function in bitcoin is SHA-256 that converts any value into a 256-bit output. The intriguing feature about these hash functions is that they have very simple outputs but it nearly impossible to guess an input from that output so the only solution in hand is to make a guess. The output is given for that hash but in order to find the input miners have to solely depend on the luck. Whosoever tends to mine the input number first, matching the hash gets to add their block to the chain and earn the reward. This matching input number is proof of work. For solving such problems a large processing speed is required that is impossible for a normal computer to provide so miners use special chips designed specifically for mining bitcoins. These days ASIC (application-specific integrated circuits) is used to mine the bitcoins. These chips consume less power as compared to graphic cards that were used earlier.

ASIC is said to be more effective and also guarantees a better processing speed. As the bitcoins in circulation are limited so the value of the bitcoins will rise seemingly so miners invest a lot of fortune in tackling skyrocketing electricity bills and maintaining proper resources required for mining. However, there are some people who tend to take an easy route of cryptojacking.

What is Cryptojacking?
Cryptojacking is a process used by hackers to perform mining of cryptocurrency using the power of users’ computers. Recently cryptojacking attacks have significantly risen due to an uprise in cryptocurrency. These attacks are seemingly more profitable for hackers because for performing these attacks hackers need not perform any kind of attack on the computer network but simply use a javascript code that runs in the backgroundwhenever the user is on any kind of malicious website. The execution of the code does not disrupt the working of the website leaving the user completely unaware of what is happening behind the scenes. In such attacks, attackers utilize the power of CPUs in order to do mining of cryptocurrencies leading to huge electricity bills.

One can come to know that background data mining is happening if the system loses power very quickly, often heats up while working and also has slow processing speed. While a hacker sometimes can also utilize the traffic of very popular sites, which many people tend to use at the same time. In this miners use a very small amount of power of the device of the user but here the users being on large scale have a greater total contribution of power to the hacker that helps to do mining quite easily.

Since cryptojacking uses javascript code one can avoid cryptojacking by switching off the javascript in the settings of the browser or by installing extensions like “no coin” as it is unfair to make a profit by illicitly using other person’s resources.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.