The need for Monero. Transactions on the Monero Network vs transactions on the Bitcoin network.
Monero is an open-source cryptocurrency that has privacy as its main differentiator from other cryptocurrencies. Riccardo Spagni and six other developers launched Monero in April of 2014 as a hard folk from Bytecoin. The reason for the hard fork was lack of transparency about the mining of bytecoins. Some evidence on the online forums suggested that about 80% of bytecoins were premined, which was the main reason for the creation of Monero. Developers of Monero didn’t set aside any coins for themselves and used donations as the main way of funding of the development of the coin.
The need for Monero
In the whitepaper that introduced Monero to the public, its developers argued that while bitcoin has successfully implemented the concept of electronic cash into reality, bitcoin had several problems and the easiest way to solve them was to introduce a new currency to the market.
Bitcoin proved that using a digital currency can be easy and convenient. However, the Bitcoin network is very inflexible and suffers from scalability issues. On the Bitcoin network, the main blockchain contains a record of all the transactions that have ever occurred on the network. While this approach has worked during the first few years of the existence of the Bitcoin network, in 2016 and 2017 transaction fees started growing exponentially because the demand to include the transactions into the main Bitcoin blockchain has been much higher than the supply. The size of a block on the Bitcoin blockchain is 1 megabyte and the blockchain aims to grow at a speed of 1 block per 10 minutes, which means that Bitcoin can process between 3 and 7 transactions per second. Compare this number to the processing power of Visa Financial Network, which is over 20,000 transactions per second, and the problem becomes obvious.
Another big problem with Bitcoin is that the network is very transparent. All the transactions become a part of the Bitcoin blockchain and are accessible to anyone. Every wallet on the Bitcoin blockchain can generate an unlimited number of public addresses and it is possible to use a new address for each new transaction. However, this doesn’t guarantee privacy because if a third-party knows some details about a transaction, such as time or amount, it can use Bitcoin blockchain explorer such as https://blockchain.info/ to find information about the transaction. In many instances, organizations and individuals would use the same Bitcoin address to collect donations. By searching the Bitcoin blockchain for the address, it is possible to get a full history of donations for the address, including times and amounts of the donations.
In 1991, Tatsuaki Okamoto and Kazuo Ohta described six properties of a perfect electronic cash system. The two of the properties that Bitcoin doesn’t have are untraceability and unlinkability. Untraceability means that it is impossible for anyone to determine where the funds in a transaction came from and the probability of funds coming from a user on the network is equal to the probability of the funds coming from any other user on the network. Unlinkability is similar to untraceability but deals with the receiving end in a transaction. Unlinkability means that for any two transactions that have occurred on a network it is impossible to prove that they went to the same destination.
On the Bitcoin network, because every transaction becomes a part of the blockchain and details of a transaction become publicly visible, it is possible to tell both the origin and the destination for the transaction. Even if two participants of the Bitcoin network engage in a transaction via an indirect way, it is possible to research transactions on the Bitcoin network so that they would be linked to each other. This is the reason why Bitcoin is not fully anonymous.
There are two ways to anonymize the transactions on the Bitcoin blockchain. They have distributed methods and mixing services, but both ways suffer from the same issue: they require a trusted third party. This requirement contradicts the philosophy and mission of Bitcoin, which are to enable direct peer-to-peer transactions between parties that do not have a relationship of trust between them.
How transactions work on the Monero network
When it comes to the general structure, transactions on the Monero network work similarly to Bitcoin. A user can create an input for a new transaction by combining several outputs from the previous transactions or use just one output. Then, the user signs the transaction with a private key and sends it out.
On the Bitcoin network, a user has a unique private key and a unique public key. Monero network works in a different way: a user generates a public key for a transaction using a one-time public key related to the address of the recipient in the transaction and some random data. This makes transactions on the Monero network both untraceable and unlinkable. On the Bitcoin network, it is possible to use the same address for a number of transactions. This is not possible with Monero. The concept of “address reuse” doesn’t even exist on the network. No observer can ever determine where a transaction originated or who was the recipient in the transaction.
An incoming transaction for the same user uses a one-time public key that is not associated with a unique address, making the transaction unlinkable. Only the recipient of the transaction can recover the funds by using a unique private key.