Monero cryptojacking means someone is secretly using your computer to do cryptomining for the Monero cryptocurrency.
Monero is a privacy-focused cryptocurrency started in 2014. It is one of the few cryptocurrencies that supports in-browser mining.
If you're interested in learning more about cryptojacking in general, learn more here: What is cryptojacking?
Unlike Bitcoin, Monero is derived from CryptoNote.
Wait, what's CryptoNote?
CryptoNote is a protocol that differs from Bitcoin in a few key ways:
- CryptoNote has a virtually anonymous ledger rather than public ledgers that are traceable.
- CryptoNote has a memory-bound rather than CPU-bound proof-of-work algorithm.
So what's a ledger?
A ledger is a permanent record that lists all relevant transactions.
Cryptocurrencies use a distributed ledger that is stored and kept up-to-date by each individual on the payment network.
Everyone processes every transaction and casts a vote to agree or disagree with the transaction. Once there's a majority, the distributed ledger is updated.
First, what's proof-of-work?
Proof-of-work is a system for preventing abuse and cheating in the payment network.
The basic idea is to give you a somewhat difficult problem to solve. The problem difficulty is what deters network abuse. Once you've got the answer, other computers on the payment network can verify your answer in a fraction of the time.
And here's the key:
Solving takes a long time but verifying takes virtually no time.
Proof-of-stake and proof-of-importance are 2 other methods used by cryptocurrencies to deter network abuse and cheating.
When your proof-of-work is CPU-bound, the work that your computer does is decided by how powerful your CPU is. Faster CPUs will complete the proof-of-work before slower CPUs.
The Bitcoin proof-of-work algorithm is CPU-bound.
And what about memory-bound?
When your proof-of-work is memory-bound, the work that your computer does is decided by how much memory you have e.g. RAM.
Here's the basic idea:
Load a bunch of data into a large region of memory. Then ask the computer to retrieve the data from a bunch of different memory locations in a very unpredictable way.
The point is without loading the data into memory, it would be very slow to access all those different memory locations e.g. reading from disk.
The Monero proof-of-work algorithm is memory-bound.
Does it matter?
In order to mine cryptocurrencies, you need to provide proof-of-work. GPUs and ASICs specifically tuned for mining cryptocurrencies dominate the payment networks today.
With the proliferation of specialized mining hardware, there's a push for more egalitarian proof-of-work. The reasoning is that people who want to participate in mining and don't have specialized hardware are at a very big disadvantage.
And here's the deal:
"While some processors can be substantially faster than others, memory sizes are less likely to vary between machines."
GPUs and ASICs are very effective when it comes to CPU-bound proof-of-work, but they lose their advantage when they try to tackle memory-bound proof-of-work.
In short, that's where memory-bound proof-of-work can help... they offer a path to limiting the effectiveness of GPUs and ASICs.
I have a question, is it possible to create a local small website and cryptojack it. Once cryptojacked , are our CPU resources still be used even after the website is closed.