0% found this document useful (0 votes)
15 views75 pages

Bitcoin

Bitcoin is a decentralized digital currency that allows peer-to-peer transactions without the need for intermediaries like banks. It operates on a blockchain, a public ledger that records all transactions, ensuring transparency and security through cryptographic verification. Users can acquire Bitcoin through trading, mining, or exchanging goods, and its value is determined by market demand rather than government backing.

Uploaded by

Deepak Patel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views75 pages

Bitcoin

Bitcoin is a decentralized digital currency that allows peer-to-peer transactions without the need for intermediaries like banks. It operates on a blockchain, a public ledger that records all transactions, ensuring transparency and security through cryptographic verification. Users can acquire Bitcoin through trading, mining, or exchanging goods, and its value is determined by market demand rather than government backing.

Uploaded by

Deepak Patel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 75

Module 03

Bitcoin
• There are a number of currencies in this world used for
trading amenities. Rupee, Dollar, Pound Euro, and Yen
are some of them.
• These are printed currencies and coins and you might be
having one of these in your wallet.
• But bitcoin is a currency you can not touch, you can not
see but you can efficiently use it to trade amenities. It is
an electronically stored currency.
• It can be stored in your mobiles, computers, or any
storage media as a virtual currency.
• Bitcoin:-
• Bitcoin is an innovative digital payment system.
• It is an example of a cryptocurrency and the next big thing in finance.
• It is a virtual currency designed to act as money and outside the control of any
person or group thus eliminating the need for third-party in financial transactions.
• It is used as a reward for the miners in bitcoin mining.
• It can be purchased on several exchanges.
• Bitcoin is a decentralized digital currency that you can buy, sell and exchange
directly, without an intermediary like a bank.
• Bitcoin’s creator, Satoshi Nakamoto, originally described the need for “an
electronic payment system based on cryptographic proof instead of trust.”
• It's like an online version of cash. You can use it to buy products and services, but
not many shops accept Bitcoin yet and some countries have banned it altogether.
• Every Bitcoin transaction that’s ever been made exists on a public ledger
accessible to everyone, making transactions hard to reverse and difficult to fake.
• That’s by design: Core to their decentralized nature, Bitcoins aren’t backed by the
government or any issuing institution, and there’s nothing to guarantee their value
besides the proof baked in the heart of the system.
• There are 3 ways you can get a bitcoin in your electronic
storage:
• Trade Money For Bitcoin:
• Say that the value of a bitcoin is 1 lakh rupees, so if you want a bitcoin, you can
trade a bitcoin in place of 1 lakh rupees.
• This Bitcoin will further be stored in your electronic storage media which you can
further use.
• Trade Goods For Bitcoin:
• Say that the value of a bitcoin is 1 lakh rupees and you have a commodity that has
its value as 1 lakh rupees, so you can trade that commodity in place of a bitcoin,
and the bitcoin will be stored in your electronic storage media.
• Mine Bitcoins:
• Other than trading, you can also mine bitcoins.
• Since it is a decentralized currency, there is no authority that brings bitcoins into
the market.
• Bitcoins only come into the market by mining them.
• Features:
• Distributed: All bitcoin transactions are recorded in a public ledger known as
the blockchain. There are nodes in the network that maintain copies of the ledger and
contribute to the correct propagation of the transactions following the rules of the protocols
making it impossible for the network to suffer downtime.
• Decentralized: There is no third party or no CEO who controls the bitcoin network. The
network consists of willing participants who agree to the rules of a protocol and changes to
the protocol are done by the consensus of its users. This makes bitcoin a quasi-political
system.
• Transparent: The addition of new transactions to the blockchain ledger and the state of the
bitcoin network is arrived upon by consensus in a transparent manner according to the rules
of the protocol.
• Peer-to-peer: In Bitcoin transactions, the payments go straight from one party to another
party so there is no need for any third party to act as an intermediary.
• Censorship resistant: As bitcoin transactions are pseudo-anonymous and users possess the
keys to their bitcoin holdings, so it is difficult for the authorities to ban users from using their
assets. This provides economic freedom to the users.
• Public: All bitcoin transactions are available publicly for everyone to see. All the
transactions are recorded, which eliminates the possibility of fraudulent transactions.
• Permissionless: Bitcoin is completely open access and ready to use for everyone, there are
no complicated rules of entry. Any transaction that follows the set algorithm will be
processed with certainty.
• Pseudo-anonymous: Bitcoin transactions are tied to addresses that take the form of
randomly generated alphanumeric strings.
• How Do Bitcoin Transactions Work?
• Bitcoin transactions are digitally signed for security. Everyone on the network gets to
know about a transaction. Anyone can create a bitcoin wallet by downloading the
bitcoin program. Each bitcoin wallet has two things:
• Public key: It is like an address or an account number via which any user or account can receive
bitcoins.
• Private key: It is like a digital signature via which anyone can send bitcoins.
• The public key can be shared with anyone but the private key must be held by the
owner. If the private key gets hacked or stolen then bitcoin gets lost.
• A bitcoin transaction contains three pieces of information:
• Private key: The first part contains the bitcoin wallet address of the sender i.e. the private key.
• Amount of bitcoin to be transferred: The second part contains the amount that has been sent.
• Public key: The third part contains the bitcoin wallet address of the recipient i.e. the public key.
• Bitcoin transactions are verified by the nodes on the network.
• Once the transaction is verified and executed successfully, the transaction is recorded
in a distributed public ledger called a blockchain.
• A bitcoin can also be considered as an invisible currency with only the transaction
records between different addresses.
• How Bitcoin Works?
• When you send an email to another person, you just type an email
address and can communicate directly to that person.
• It is the same thing when you send an instant message.
• This type of communication between two parties is commonly known as
Peer-to-Peer communication.
• Whenever you want to transfer money to someone over the internet, you
need to use a service of third-party such as banks, a credit card, a
PayPal, or some other type of money transfer services.
• The reason for using third-party is to ensure that you are transferring that
money.
• In other words, you need to be able to verify that both parties have done
what they need to do in real exchange.
• For example:-
• Suppose you click on a photo that you want to send it to another person, so you can
simply attach that photo to an email, type the receiver email address and send it.
• The other person will receive the photo, and you think it would end, but it is not.
• Now, we have two copies of photo, one is a simple email, and another is an original
file which is still on my computer.
• Here, we send the copy of the file of the photo, not the original file.
• This issue is commonly known as the double-spend problem.
• The double-spend problem provides a challenge to determine whether a
transaction is real or not.
• How you can send a bitcoin to someone over the internet without needing a bank
or some other institution to certify the transfer took place.
• The answer arises in a global network of thousands of computers called a Bitcoin
Network and a special type of decentralized laser technology called blockchain.
• In Bitcoin, all the information related to the transaction is captured securely by
using maths, protected cryptographically, and the data is stored and verified
across the entire network of computers.
• In other words, instead of having a centralized database of the third-party such as
banks to certify the transaction took place.
• Bitcoin uses blockchain technology across a decentralized network of computers
to securely verify, confirm and record each transaction.
• Since data is stored in a decentralized manner across a wide network, there is no
single point of failure.
• This makes blockchain more secure and less prone to fraud, tampering or general
system failure than keeping them in a single centralized location.
• How Does Bitcoin Mining Work?
• Bitcoin mining is the process of creating new bitcoins by solving extremely
complicated math problems that verify transactions in the currency.
• When a bitcoin is successfully mined, the miner receives a predetermined
amount of bitcoin.
• In the Bitcoin network, there are nodes that use the computing power of their
CPU to process the transactions.
• The following are the steps followed while mining a bitcoin:
• The user initiates the bitcoin transaction by listing the details like the number of bitcoins
to be sent, and the public address, and affixing the private key to generate a digital
signature.
• The encrypted information to the miners present on the network.
• The miners will verify the transaction to check whether there is sufficient balance to carry
out the transaction.
• The faster the CPU of a miner, the greater the chances for the miner to get rewarded for
verifying the transaction. The miner’s job is only to provide the CPU, there is no manual
intervention from the miner. The bitcoin program will run automatically on the system.
• Once the transaction is verified, the number of transactions is broadcasted to the network
of miners who can copy or download the block.
• These blocks through timestamps are stored in sequential order to form a blockchain.
• Each miner in the network must have an updated copy of the blockchain ledger in order to
earn bitcoins.
• Bitcoin Mining:-
• Bitcoin Mining is the process of verifying bitcoin transactions and storing them in a blockchain(ledger).
• It is a process similar to gold mining but instead, it is a computer process that creates new bitcoin in
addition to tracking Bitcoin transactions.
• Let’s further study bitcoin and the various concepts related to it.
• Bitcoin mining is a computation-intensive process that uses complicated computer code to generate a
secure cryptographic system.
• The bitcoin miner is the person who solves mathematical puzzles(also called proof of work) to validate
the transaction.
• Anyone with mining hardware and computing power can take part in this.
• Numerous miners take part simultaneously to solve the complex mathematical puzzle, the one who
solves it first, wins 6.25 bitcoin as a part of the reward.
• Miner verifies the transactions(after solving the puzzle) and then adds the block to the blockchain when
confirmed.
• The blockchain contains the history of every transaction that has taken place in the blockchain network.
• Once the minor adds the block to the blockchain, bitcoins are then transferred which were associated
with the transaction.
• For the miners to earn rewards from verifying the bitcoin Transactions, two things must be ensured:
• The miners must verify the one-megabyte size of the transaction.
• For the addition of a new block of transaction in the blockchain, miners must have the ability to solve complex
computational maths problems called proof for work by finding a 64-bit hexadecimal hash value.
• To entice miners to keep racing to solve the puzzles and support the overall system, the Bitcoin
code rewards miners with 6.25 BTC for each new block. That amount of BTC equates to nearly
$190,000.
• “This is how new coins are created,” and recent transactions are added to the blockchain, says
Okoro.
• It was possible for the average person to mine Bitcoin in the early days, but that’s no longer the
case.
• The Bitcoin code is written to make solving its puzzles more and more challenging over time,
requiring more and more computing resources.
• Today, Bitcoin mining requires powerful computers and access to massive amounts of cheap
electricity to be successful.
• Bitcoin mining also pays less than it used to, making it even harder to recoup the rising
computational and electrical costs.
• “In 2009, when this technology first came out, every time you got a stamp, you got a much
larger amount of Bitcoin than you do today,” says Flori Marquez, co-founder of BlockFi, a
crypto wealth management company.
• “There are more and more transactions [now, so] the amount you get paid for each stamp is less
and less.”
• By 2140, it’s estimated all Bitcoins will have entered circulation, meaning mining will release no
new coins, and miners may instead have to rely on transaction fees.
• Role of Bitcoin Miners:-
• Within the bitcoin networks, there are a group of people known as Miners. In miners,
there was a process and confirm transactions.
• Anybody can apply for a minor, and you could run the client yourself. However, these
minors use very powerful computers that are specifically designed to
mine bitcoin transaction.
• They do this by actually solving math problems and resolving cryptographic issues
because every transaction needs to be cryptographically encoded and secured.
• These mathematical problems ensure that nobody is tampering with that data.
• Additionally, for this task, the minors are paid in bitcoins, which is the key
component in bitcoin.
• In Bitcoin, you cannot create money as like you create regular fiat currencies such as
Dollar, Euro, and Yuan.
• The bitcoin is created by rewarding these minors for their work in solving the
mathematical and cryptographical problems.
• Structure of a Bitcoin Block
• A Bitcoin block records the data related to a Bitcoin transaction.
• The blocks are mined one after the other with all the transactions in the
network being recorded permanently.
• Being a very secure network, the Bitcoin blockchain makes it very
difficult to modify or delete the data that has been registered on a block.
• More or less, a block acts like a book of the ledger with each page
referring to one block and connected to both the previous and the next
blocks by the addressed called “hashes”.
• A blockchain is created by linking these individual block ledgers one
after the other.
• A block structure has several elements.
• Let’s have a look at some of these block components.
1. Block Identifiers
2. Block Header
3. Transactions
1. Block Identifiers:
• The block identifiers are the elements that identify a block’s
address, its height, and its size.
• There are the main block identifiers:
a. Hash:
• A hash is a unique identifier that distinguishes one block from the other.
• A block hash is generated by passing the block header metadata through
the SHA256 algorithm. (Secure Hash Algorithm used in cryptography).
• As a block header is hashed, a hash is also termed a block header hash.
• A hash of a block consists of a series of numbers and alphabets and is
encrypted to make blocks safe from malicious attacks. An example of
hash:
f7257cbe6d961f8fef0f93360245a90d1f6962c3c3fbc83213515ad809999b
d3
• How a hash is generated:
• Hashing in a blockchain is done through mathematical functions called hash
functions.
• A hash function works by taking in the input of some length and always
generating an output of a fixed length. No matter how long or short the input
data is, the output generated via the hash function always has the same length.
• This makes a hash function “deterministic” (output remains the same of the
input is same) and using a cryptographic hash function makes the data secure: an
attacker cannot guess the length of the input by decrypting the output.
• A simple change to an input value results in an entirely different output which
renders the collision resistance to the hash function:
• Two different input data to the hash function would not result in the same
output.
• Along with this, a hash function is also image-resistant: it is almost impossible
to reverse engineer the output to get the input, thus making it difficult for the
attackers to guess the input.
• Hash functions are inherent to a secure blockchain and do not require complex
resources to work efficiently.
• Parent-Child Relation between Blocks:
• Each block on the blockchain is connected to the previous block via the previous block’s
hashed address.
• As you read above, the blocks of the blockchain are like pages of the ledger, with each page
having a link to the previous page and this link is the previous block’s hash.
• Every new block mined on the chain becomes the child of the previous block, with the
previous block being called a parent.
• So a child block carries the hash of its parent block in its block header, in addition to its own
hash value.
• This way all blocks are connected to form a long chain, with the first block ever mined on
Bitcoin called the “Genesis Block”.
• Such connectivity makes the blockchain resistible to attacks: any new block being added to
the chain has the information if the previous block has been tampered with.
• This means if the parent block has changed, the previous block hash field also changes,
which further changes the child’s hash to change in the child’s child, i.e. grandchild.
• This way all the blocks in the blockchain are affected.
• As Bitcoin blockchain is mined with a Proof of Work mechanism, a random input fed to a
hash function leads to a hashed output that contains several leading zeroes, further reducing
the possibility of attacks. Following is the hash of the genesis block (First block created in
the Bitcoin network):
000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
b. Block Height:
• The first-ever Bitcoin block was created in January 2009 and is
termed “Genesis Block”.
• As it was the first block, it was assigned a zero height.
• The height of a block is the number of blocks that have been mined
between the genesis block and the current block.
• A block height of 6234, for example, means that there are 6234
blocks stacked on the top of the genesis block and 6234 is the block
height.
• More than one block can have the same height; i.e. more than one
block contends to be the next in the blockchain and this results in
the formation of a fork.
• As Block Height is metadata (gives information about a block), it is
not stored in the block.
2. Block Header:
• A block in a blockchain is identified by its unique block header.
• In the Proof of Work mechanism, the block headers are hashed
many times to generate a unique hash for each block header.
• This block header hash becomes the identifier of the block.
• The Bitcoin block header length is 80 bytes and it consists of
the following metadata:
a. 4-byte Version
b. 4-byte Timestamp
c. 4-byte Difficulty Target
d. 4-byte Nonce
e. 32-byte Previous Block Hash
f. 32-byte Merkle Root
• Miners hash the block header to get the right nonce and add the validated block to
the blockchain. The block header contains all the information about the block.
a. Version: With version number, miners can track any changes or upgrades made in the
protocol.
b. Timestamp: The time at which a particular block was hashed. The timestamp is recorded
in Unix Time (which counts the number of seconds elapsed since a particular time. For
Bitcoin blockchain, that particular time is January 1, 1970; this was the time around which
Unix was invented). The timestamp is prone to manipulation by the miners.
c. Difficulty Target:
• Difficulty measures the computational power to mine a block.
• As Bitcoin uses the Proof of Work mechanism, miners continually hash to find a block that can be
added to the blockchain.
• The difficulty measures the time taken to mine a new block.
• A higher difficulty target indicates that more computational power is required to mine a new block.
This means miners need to use a higher hashing power (more efficient machines).
• The difficulty level is stored as “Bits” which is stored as a 1-byte exponent followed by a 3-byte
coefficient. The difficulty of the genesis block is 1.
• As difficulty is proportional to the computational or hashing power, it keeps on changing.
• When hashing power is more (more miners are there), the difficulty level increases and vice versa.
• In Bitcoin, the difficulty is readjusted after every 2016 blocks.
d. Nonce (Numbers Only Used Once):
• The maximum value of this 32-bit number can have the max value of 232.
• The nonce string is appended to the block hash and rehashed.
• Post rehashing, the nonce is compared to the target difficulty number. If the nonce is
less than the target value, the block is added to the blockchain. If it is not, the nonce is
changed and the process repeats until a nonce is found whose value is less than the
target value.
• A nonce is a hexadecimal number that the miners compete to find for each block.
• Unless a nonce is found that is less than the difficulty target set in the block’s header,
miners continue to hash.
• The miner who finds the nonce first is rewarded and the block is added to the
blockchain.
• This process of repeatedly guessing the right nonce is called Proof of Work. Higher
the difficulty target, more time would be taken by the miners to guess the right nonce.
• The repeated actions of hashing by miners result in what is called a “Golden Nonce”,
i.e. a hash value that is less than the target difficulty.
• A hash, to be lesser than the target hash, must be preceded with a string of zeroes.
e. Merkle Root:
• A Merkle Root is the hash of all the transaction hashes in a block.
• Every block transaction has a unique hash associated with it and these transaction hashes are
saved in the form of an upside-down Merkle Tree.
• The Merkle Root is at its top.
• Transactions are structured in a Merkle Tree in such a way that the data is organized
efficiently.
• All the transactions are hashed first and then paired with one another.
• For example, a transaction hash “TxA” is paired with another transaction hash “TxB” and
hashed to produce another hash called “TxAB”. This hashed “TxAB” is then paired with
another hash, say “TxCD” (formed from the hash of “TxC” and “TxD”). This produces a
hash called “TxABCD”. Going this way, from the bottom to the top (The top value being
called Merkle Root), a Merkle Tree is formed. If any of the hashed transactions is altered by
someone, the resultant Merkle Root comes out to be a different value.
• In a Merkle Tree, the transactions are termed leaves.
• It is the leaf level where the hashing starts and continues till the Merkle Root.
• A Merkle Root has information of all the block transactions since it is the hashed version of
all the hashes of all the transactions that took place in a block. Due to the tree-like structure
of a Merkle Tree, verification of the transactions can be done quickly.
• The Merkle Root hash is added to the block header.
f. Previous Block Hash: Each block carries the hash of the block that was
mined before it. This renders immutability to the blocks.

3. Transactions:
• When a block is added to a blockchain, it is called a confirmed transaction or a
confirmation.
• After a transaction, when the other transactions get confirmed, that initial transaction
gets further confirmed.
• A Bitcoin block is mined every 10 minutes.
• The first transaction of a block is termed “Coinbase Transaction” or “Generation
Transaction”.
• After a transaction is verified, it is added to the block and called to be confirmed. For
security purposes, a transaction needs to be reconfirmed several times.
• A transaction is considered confirmed only after a certain number of blocks have been
added to the blockchain.
• An unconfirmed transaction is prone to reversal and therefore at least one confirmation
must be there for a transaction.
• A high amount of transaction value requires more confirmations than the lower
amounts.
• Steps to Create a Block Header
• The mining node needs to add all the six fields of the block header, starting from the Version Number.
a. The node adds the version number of the software.
b. Hash of the previous block is added.
c. Transactions are added to the Merkle Tree and Merkle Root is created. The Coinbase transaction
is added followed by the remaining transactions. The transaction hashes are paired and hashed until
the Merkle Root is reached at the top of the tree.
d. A timestamp at which a block is created.
e. Difficulty Target is defined and stored in the form of “Difficulty Bits”.
f. A nonce with an initial value of zero is defined.
• Once all the fields are created in the block header, the mining is initiated.
• Different miners compete with one another to find a nonce value that is lower than the difficulty target value
set in the block header.
• The miners hash the block header repeatedly unless they find the right nonce value.
• Miners use algorithms like SHA256 for this process.
• They keep on trying with different input values until they find the right value. The output of all the different
inputs is always 256 bits.
• After the right hash is found (whose value is less than the Target Difficulty hash), it is added to the block
header.
• A new block is created and verified by all the nodes on the network.
• How are bitcoins created?
• New bitcoins are generated by a competitive and decentralized process called "mining".
• This process involves that individuals are rewarded by the network for their services.
• Bitcoin miners are processing transactions and securing the network using specialized
hardware and are collecting new bitcoins in exchange.
• The Bitcoin protocol is designed in such a way that new bitcoins are created at a fixed rate.
• This makes Bitcoin mining a very competitive business. When more miners join the network,
it becomes increasingly difficult to make a profit and miners must seek efficiency to cut their
operating costs.
• No central authority or developer has any power to control or manipulate the system to
increase their profits.
• Every Bitcoin node in the world will reject anything that does not comply with the rules it
expects the system to follow.
• Bitcoins are created at a decreasing and predictable rate.
• The number of new bitcoins created each year is automatically halved over time until bitcoin
issuance halts completely with a total of 21 million bitcoins in existence.
• At this point, Bitcoin miners will probably be supported exclusively by numerous small
transaction fees.
• How is Bitcoin Used?
• Below are some of the ways of using bitcoin:
• Payment:
• Bitcoin is accepted as a mode of payment for goods and services at
many merchants, and retailers.
• To use bitcoin, wallets are required.
• cryptocurrency wallets contain private keys to the bitcoin, which need
to be entered while conducting a transaction.
• Investing: portfolio:
• Bitcoin grew in popularity which made Investors and Individuals
interested in investing in the cryptocurrency Bitcoin.
• Individuals can invest in Bitcoin to help diversify their portfolio of
stocks and bonds.
• Benefits of Bitcoin
• The following are some of the advantages of using bitcoins:
• User anonymity:
• Bitcoin users can have multiple public keys and are identified by numerical codes. This ensures that the
transactions cannot be traced back to the user. Even if the wallet address becomes public, the user can generate a
new wallet address to keep information safe.
• Transparency:
• Bitcoin transactions are recorded on the public ledger blockchain. The transactions are permanently viewable,
which gives transparency to the system but they are secure and fraud-resistant at the same time due to blockchain
technology.
• Accessibility:
• Bitcoin is a very versatile and accessible currency. It takes a few minutes to transfer bitcoins to another user, so it
can be used to buy goods and services from a variety of places accepting bitcoins. This makes spending bitcoin
easy in another country with little or no fees applied.
• Independence from central authority:
• Bitcoin is a decentralized currency, which means there is no dependence on any single governing authority for
verifying transactions. This means that the authorities are not likely to freeze or demand back the bitcoins.
• Low transaction fees:
• Standard wire transfers involve transaction fees and exchange costs. Since bitcoin transactions do not involve any
government authority so the transaction fees are very low compared to bank transfers.
• Drawbacks of Bitcoin
• The following are some of the cons of using bitcoin:
• Volatility: There are various factors that contribute to the bitcoin’s volatility like uncertainty
about its future value, security breaches, headline-making news, and one of the most
important reasons is the scarcity of bitcoins. It is known that there is a limit of 21 million
bitcoins that could ever exist which is why some regard bitcoin as a scarce resource. This
scarcity makes bitcoin’s price variable.
• No government regulations: Unlike the investments that are done through central banks,
bitcoins transactions are not regulated by any central authority due to a decentralized
framework. This means that bitcoin’s transactions don’t come with legal protection and are
irreversible which makes them susceptible to crimes.
• No buyer protection: If the goods are bought using bitcoins and the seller does not send the
promised goods then nothing can be done to reverse the transactions and since there is no
central authority so no legal protection can be provided in this case.
• Not widely accepted: Bitcoins are still only accepted by a small group of online merchants.
This makes it unfeasible to rely completely on bitcoin as a currency and replace it with
traditional bank transactions.
• Irreversible: There is a lack of security in bitcoin transactions due to the anonymous and
non-regulated nature of the bitcoin transactions. If the wrong amount is sent or the amount is
sent to the wrong recipient then nothing can be done to reverse the transactions.
• Double Spending:-
• Although Blockchain is secured, still it has some loopholes. Hackers or malicious
users take advantage of these loopholes to perform their activities.
• Double spending means the expenditure of the same digital currency twice or more
to avail the multiple services. It is a technical flaw that allows users to duplicate
money.
• Since digital currencies are nothing but files, a malicious user can create multiple
copies of the same currency file and can use it in multiple places.
• This issue can also occur if there is an alteration in the network or copies of the
currency are only used and not the original one.
• There are also double spends that allow hackers to reverse transactions so that
transaction happens two times.
• By doing this, the user loses money two times one for the fake block created by the
hacker and for the original block as well.
• The hacker gets incentives as well for the fake blocks that have been mined and
confirmed.
• How Does Double Spending Happen?
• Double spending can never arise physically. It can happen in online
transactions.
• This mostly occurs when there is no authority to verify the transaction.
• It can also happen if the user’s wallet is not secured.
• Suppose a user wants to avail of services from Merchant ‘A’ and
Merchant ‘B’.
• The user first made a digital transaction with Merchant ‘A’.
• The copy of the cryptocurrency is stored on the user’s computer.
• So the user uses the same cryptocurrency to pay Merchant ‘B’
• Now both the merchants have the illusion that the money has been credited
since the transactions were not confirmed by the miners.
• This is the case of double spending.
• Example:
• Suppose a user has 1 BTC.
• He/She wants to avail of services from merchant A and merchant B.
• The user creates multiple copies of the same BTC and stores it.
• The user first sends the original BTC to Merchant A and gets the
service.
• Simultaneously, the user sends the copied version of 1 BTC to Merchant
B.
• Since the second transaction was not confirmed by other miners, the
merchant accepts the bitcoin and sends the service.
• But the cryptocurrency that was sent is invalid.
• This is the case of Double Spending.
• Types Of Double Spending Attacks
• There are different types of Double Spending attacks:
• Finney Attack:
• Finney Attack is a type of Double spending Attack.
• In this, a merchant accepts an unauthorized transaction.
• The original block is eclipsed by the hacker using an eclipse attack.
• The transaction is performed on an unauthorized one.
• After that, the real block shows up and again the transaction is done automatically for the real
block.
• Thus the merchant loses money two times.
• Race attack:
• It is an attack in which there is a ‘race’ between two transactions.
• The attacker sends the same money using different machines to two different merchants.
• The merchants send their goods but transactions get invalid.
• 51% Attack:
• This type of attack is prevalent in small blockchains.
• Hackers usually take over 51% of the mining power of blockchain and therefore can do
anything of their own will.
• How Bitcoin Handles Double Spending?
• Bitcoin is one of the most popular blockchains. To combat Double spending it uses
some security measures.
• There are two types of examples of double spending in BTC.
• The first case is making duplicates of the same bitcoin and sending it to multiple users.
• The second case is performing the transaction and reversing the already sent transaction after
getting the service.
• To tackle these double-spending issues, some security measures are taken. They are:
• Validation: Validation of transactions by a maximum number of nodes in the network. Once a
block is created, it is added to a list of pending transactions. Users send validation for the block.
If the verifications are done then only the block is added to the blockchain.
• Timestamp: The confirmed transactions are timestamped, therefore they are irreversible. If a
transaction is involved with a bitcoin it is verified and done. But in the future, if other
transactions are made with the same bitcoin, the transactions will be canceled.
• Block Confirmations: Merchants get block confirmations so that they are assured that there was
no case of double spending. In bitcoin, a minimum of 6 confirmations are done.
• Saving copies: A copy of each transaction is kept at each node so in case of network failure the
whole network does not go down.
• These security features have reduced double spending to a large extent.
• Let us discuss a detailed example of how bitcoin handles double-spending.
• A user wants to spend 2 BTC. He/She can create multiple copies of the same
cryptocurrency.
• The user can send the same cryptocurrency to two different addresses say ‘Bob’ and
‘Alice’.
• Both of these transactions are sent to the pool of unconfirmed transactions.
• The first transaction T1 would be approved via the confirmation mechanism.
• The confirmation mechanism states that a minimum of six confirmations by miners
should be done for block validation.
• The block is added to the network.
• However, the second transaction T2 didn’t get sufficient confirmation so it would be
recognized as invalid by the confirmation process.
• The block with the highest number of confirmations is accepted and the other one is
rejected.
• So transaction T1 is valid, and Alice received the bitcoin.
• Solutions To Prevent Double Spending
• Double Spending can be prevented using two approaches: Centralized and
Decentralized
• Centralized Approach:
• In this case, a secured third party is employed to verify the transactions.
• The third-party can track each of the user’s balances.
• Suppose a user makes a transaction.
• The third-party identifies the transaction with a unique identity.
• Then it verifies the transaction and allows the transaction.
• The problem is that suppose we want to make transactions with other countries where a third
party is not required.
• So in such cases, decentralized systems come into play. another drawback is if the whole system
fails, the users cannot have access.
• Decentralized Approach:
• This approach is used by Bitcoin.
• In this, there is no involvement of central authority. Each transaction is verified using powerful
algorithms.
• The decentralized approach proved to be more secure than the centralized approach.
• Protocols are established and each protocol does its job at each step.
• Therefore this also promotes transparency.
• How to Combat Double Spending?
• Double spending has been minimized to a large extent as companies are using many
security features.
• But we as users also have some responsibility so that such attacks don’t happen.
• Any user should wait for a minimum of six confirmations of the transaction before
performing another transaction.
• In the blockchain, more the confirmations by different users, lesser will be double
spending attacks.
• Users should keep their hardware resources safe so that hackers do not misuse them
for their own purposes. Often hackers target the hardware part because the hardware
is costly.
• If they somehow steal the hardware, they can roll back any transaction or alter
information.
• Users should delete spam mails and avoid phishing to avoid unnecessary malware
attacks Phishing is a very common attack by hackers as hackers target login
credentials.
• Software should be updated regularly with the latest antivirus installed. If the
software is not up to date then the bugs present can cause major damage.
• How Successful Double Spending is Administered?
• With the increasing dependency on the blockchain, double spending
attacks have also become a major problem. Many companies have
adopted security features.
• Features like confirmation of the transaction by the nodes have been
adopted. A minimum of six confirmations is required to approve the
transaction.
• The blocks once created are immutable.
• They are made irreversible so that no transaction is reverted back.
• The network’s distributed ledger of transactions autonomously records
each transaction. Each node has a copy of all transactions that are being
done in the network.
• Verification of each transaction’s authenticity is done by Blockchain
protocols to prevent double-spending.
• The concept of hashing is adopted. Here each block has a unique hash.
• Disadvantages of Blockchain Concerning Double Spending
• There are many disadvantages of blockchain concerning Double Spending:
• Control of the blockchain:
• The biggest disadvantage is if the hackers manage to take control of 51% computation
power, they can do any transaction of their own will and can steal other users’ money.
• Therefore there is a threat to security as millions and millions of money are involved
in transactions.
• Alteration of information:
• Transaction information can also be altered by hackers.
• They can mine blocks and hide the original blocks using attacks like Eclipse attack,
Finney Attack, etc.
• No authority:
• The third major problem is no central authority is present to verify the transactions.
• But these problems will be eliminated if companies take proper security measures and
users are also aware of the measures.
• Bitcoin Script:-
• Bitcoin’s scripting language is simply called Script.
• All Bitcoin scripts are written in Script. It is a simple language that is not Turing complete,
meaning it lacks several logical functions, including loops.
• This is done to ensure that no Bitcoin script can consume inordinate computing power and
harm nodes on the network.
• Script is used almost exclusively to lock and unlock bitcoin, not to build applications or run
programs.
• Script’s simplicity also gives Bitcoin security and makes it easier for developers to avoid
losing money while designing wallets or applications on top of Bitcoin.
• All Bitcoin transactions use Script to define how outputs can be spent.
• In other words, the script of a Bitcoin transaction determines to whom the bitcoin was sent.
• Bitcoin has a few different scripts, with Pay-to-Public-Key-Hash (P2PKH) being the most
popular. P2PKH is a simple script which pays bitcoin to an address.
• Other scripts can achieve more complex setups, such as creating multisig addresses.
• Bitcoin sent to a multisig address requires multiple signatures from multiple private keys to be
spent.
• Although SegWit script types—P2WPKH and P2WSH—offer savings on transaction fees,
adoption of these new script types has been slow.
• ScriptPubKey:-
• The ScriptPubKey is a script which controls how bitcoin can be
spent.
• In english, most bitcoin scripts translate as follows:
• “In order to spend this bitcoin, one must produce a signature belonging
to this public key…”, followed by a public key.
• More commonly, public key hashes are used instead of the public keys
themselves, but the concept is the same.
• A ScriptPubKey is often called a locking script because it locks
the bitcoin until someone can provide an answer to unlock the
bitcoin.
• The unlocking script, called the ScriptSig in legacy transactions
and the Script Witness in SegWit transactions, is provided when
this bitcoin is spent in a future transaction.
• Pay-to-Public-Key-Hash (P2PKH)
• Pay-to-Public-Key-Hash (P2PKH) is a type of ScriptPubKey which locks
bitcoin to the hash of a public key.
• A P2PKH transaction is one where the inputs were locked using the
P2PKH ScriptPubKey.
• A public key hash is also known as an address, and P2PKH is the most
common script type at present.
• P2PKH is similar to P2PK transactions, except that the bitcoin is locked
to the hash of the public key rather than the public key itself.
• If Alice wants to send 1 BTC to Bob in a P2PKH transaction, Bob
provides Alice with an address from his wallet.
• Bob’s address is included in the transaction.
• When Bob tries to spend the bitcoin he received, he must sign the
transaction with the private key corresponding to the public key whose
hash matches the hash provided in Alice’s transaction.
• Pay-to-Script-Hash (P2SH)
• Pay-to-Script-Hash (P2SH) is a type of ScriptPubKey which allows for the spending
of bitcoin based on the satisfaction of the script whose hash is specified within the
transaction.
• A P2SH transaction is a transaction whose inputs were locked using a P2SH
ScriptPubKey.
• For example, if Alice sends Bob 1 BTC in a P2SH transaction, she includes the hash
of the script required to spend the bitcoin in the transaction. This script can require
signatures by Bob’s private keys and/or many other qualifications.
• When Bob wants to spend the bitcoin he has received from Alice, he reconstructs the
script whose hash Alice used to send the bitcoin, and signs the transaction with any
private keys required by the script.
• P2SH is extremely flexible because it allows users to construct arbitrary scripts.
P2SH is used to enable backwards compatibility with new transaction types,
including SegWit.
• Additionally, the sender of the transaction does not need to know what script type
they are sending to. In the example above, Bob can privately construct his desired
script and only send Alice the hash of that script, preserving more privacy for Bob.
• Multisig:-
• A standard bitcoin transaction sends bitcoin to an address.
• This bitcoin can then be spent by the private key to which it belongs.
• However, bitcoin can also be sent such that it requires multiple signatures from
different private keys.
• In this way, funds can be jointly held by a family, business partners, corporate boards,
or any collective.
• Multisig setups are typically described as m-of-n, wherein the signatures of at
least m private keys are required, and these private keys must correspond to any of
the n defined public keys.
• For example, in a typical “2-of-3” setup, three public keys will be defined, and
signatures from any two of the corresponding private keys are sufficient to unlock and
spend the bitcoin.
• Most multisig transactions are executed as P2SH transactions, so the address will
begin with a “3”.
• In these cases, the exact script determining which keys are required is not exposed to
the blockchain until the bitcoin has been spent.
• This means that the receivers of the bitcoin, those whose keys formed the multisig
address, must remember the setup in order to spend the bitcoin.
• This setup is called the RedeemScript, as it allows the bitcoin to be redeemed and
spent.
• Example:-
• Let’s walk through an example: Alice, Bob, and Charlie want to start a
company and hold joint custody of some bitcoin.
• To ensure that one of them cannot steal the collective funds, Alice, Bob,
and Charlie share one public key each.
• They also decide that they will run their company based on majority
rule.
• Thus, any two signatures are sufficient to spend their shared bitcoin.
• This requirement of two signatures coming from any of the three public
keys, is translated to form a script, which is hashed to yield the address
to which all three partners will send their contributions to the company
fund.
• This set up would be described as a 2-of-3 multisig.
• Sybil Attack
• Sybil Attack is a type of attack seen in peer-to-peer networks in which a node in the
network operates multiple identities actively at the same time and undermines the
authority/power in reputation systems.
• The main aim of this attack is to gain the majority of influence in the network to
carry out illegal (with respect to rules and laws set in the network) actions in the
system.
• A single entity (a computer) has the capability to create and operate multiple
identities(user accounts, IP address based accounts).
• To outside observers, these multiple fake identities appear to be real unique
identities.
• History of Sybil Attack
• The attack is named after the subject of the book Sybil (subject’s name is Sybil
Dorsett).
• A paper called The Sybil Attack was written by John R. Douceur at the Microsoft
Research.
• Examples:
• The recent alleged Russian interference in the United States’
election is a type of sybil attack in which multiple fake accounts
on Facebook were operated.
• This attack falls in the category of pseudo-sybil attack because
the platform used(Facebook) was not compromised itself.
• Sybil attacks are carried on the Tor network.
• The 51% attack in Blockchain networks.
• Multiple fake reviews on Amazon and other e-commerce
platforms by only one identity(such mass computing power is
available(unethically) for hire from countries like Bangladesh.
• Sybil attack on a Tor network
• The Tor network operates on a peer-to-peer model,
allowing nodes to surf the Internet anonymously.
• However, a malicious or spying entity can take
control of tens, hundreds, or thousands of nodes,
compromising privacy of the network.
• When both ingress and egress nodes are controlled by
attackers, they would be able to monitor network
traffic of everyone transferring data via the
compromised nodes.
• Sybil attack on a Bitcoin network
• In a Bitcoin network, many decisions that affect operations are voted on.
• By voting, miners and those who maintain network nodes may or may not agree
with a proposal.
• If attackers create multiple identities on the network, they can vote for as many
identities as they control.
• Sybil attacks can also control the flow of information in a network.
• For example, a Bitcoin Sybil attack can be used to obtain information about the IP
address of a user connecting to the network.
• This compromises the security, privacy and anonymity of web users.
• The only thing an attacker has to do is take control of nodes in the network,
gather information from those nodes, and create fake nodes initiating their
identities.
• Once they achieve dominance in the network, the attacker can implement
censorship—blocking other users from legitimately using the network.
• Formal Model
• The model used in the Sybil Attack paper is a simple one.
• It consists of:
• E entities = c(correct) entities + f(faulty) entities
• correct – entities that follow the protocols and rules setup in the
network honestly(whose honesty is verified).
• faulty – entities whose behavior are arbitrary and can’t be predicted.
They don’t honestly follow the protocols and rules in the network.
• A communication cloud: A very general cloud through which
messages between different entities travel.
• pipe: to connect an entity with the communication cloud sybil attack
formal model
• Types of sybil attack
• In a direct attack, the honest nodes are influenced
directly by the sybil node(s).
• In an indirect attack, the honest node(s) are attacked
by a node which communicates directly with the sybil
node(s).
• This middle node is compromised as it’s under
malicious influence of sybil node(s).
• How the Bitcoin network prevents sybil attack ?
• Bitcoin network uses the Proof of Work(PoW) consensus
algorithm to prove the authenticity of any block that is added
to the blockchain.
• A considerable amount of computing power is required to do
the work which provides incentive to the miners to do honest
work(a bitcoin reward; currently 12.5 bitcoins for every block
mined) and no incentive for the faulty work.
• The transactions are verified by every node and rejected as
invalid if faulty transactions are included in the block.
• A type of sybil attack, called the 51% attack is also practically
impossible in the bitcoin network because of so many miners,
it is very difficult for a single organization to control 51% of
the miners.
• Ways to prevent sybil attack
• Giving different power to different members – This is on the basis of reputation
systems. Members with different power levels are given different reputation levels.
• Cost to create an identity – To prevent multiple fake identities in the network, we
can put a cost for every identity that aims to join the network. A point to note is that
it makes more sense to make it infeasible to operate multiple fake identities at the
same time rather than creating new identities. Multiple identities can enforce
security, anonymity, censorship prevention.
• Validation of identities before joining the network –
• Direct validation : An already established member verifies the new joiner of the
network
• Indirect validation: An established member verifies some other members who can,
in turn, verify other new network joiners. As the members verifying the new joiners
are verified and validated by an established entity, the new joiners are trusted to be
honest.
• Consensus Mechanisms
• Consensus is the process by which a group of peers – or nodes –
on a network determine which blockchain transactions are valid
and which are not.
• Consensus mechanisms are the methodologies used to achieve
this agreement.
• It’s these sets of rules that help to protect networks from
malicious behavior and hacking attacks.
• There are many different types of consensus mechanisms,
depending on the blockchain and its application.
• While they differ in their energy usage, security, and scalability,
they all share one purpose: to ensure that records are true and
honest.
• How Does a Consensus Mechanism Work?
• Nodes input data from a pending transaction, then report back with an
approval or disapproval status once the request is cross-checked with its
records.
• For example, if a user is trying to process a transaction using previously
spent coins that have already been accounted for, this request would
easily be denied against an immutable ledger, confirmed by majority
disapproval.
• Users that fail to adhere to consensus are often banned from a network.
• In the event a node wanted to challenge the record, they would have to
request a network-wide recall.
• If more than two thirds of their peer nodes approve, then the transaction
is confirmed, distributed and permanently written into the blockchain.
• “Consensus” simply means an agreement between a group of people, and in
the world of blockchain it is an important concept,” said Nick Ranga, a
senior cryptocurrency analyst at watchdog agency Forex Fraud.
• Consider a consensus mechanisms role in decentralized finance.
• The core centralized framework built into most institutions, such as banks,
rely on a decision-making authority to approve or reject transactions
between two parties.
• Cryptocurrencies, however, don’t have this option since they are typically
operating on decentralized platforms.
• Instead, they have consensus mechanisms, Ranga explained, which validate
live copies of a transaction history network-wide.
• This keeps everyone in the blockchain accountable to whether a transaction
should be approved or not.
• Common examples of consensus mechanisms in blockchain include proof of
work, in which crypto miners are handsomely rewarded with newly generated
tokens in exchange for authenticating transactions by way of solving arbitrary
computational puzzles, and proof of stake, where users put up a certain amount of
tokens for a chance to earn rewards through transaction verification in a raffle.
• Staking more tokens gets the owners more lottery tickets.
• “One of the most helpful examples of consensus mechanisms in action is the way
that humans agree on the rules of a game,” said Zeeshan Arif, founder of software
development company Whizpool, pointing to a game of Monopoly as an
example.
• “There are a lot of different ways to win the game. You could buy all the
properties. You could end up with a lot of money in your bank account. Or you
could bankrupt all your opponents and win that way,” Arif said. “But no matter
what strategy you use to win, everyone playing has agreed that it is a fair way to
end the game.”
• Just like your dad can’t unilaterally declare eminent domain in Monopoly, nodes
in a blockchain can’t reassign ownership of tokens without getting the majority of
other participants in the network to agree.
• Why Are Consensus Mechanisms Important in Blockchain?
• Aside from their technical application — a fail safe for blockchain or widely
distributed networks and systems — consensus mechanisms serve as incentive
programs for good behavior.
• They are not only a decentralized fail-safe that ensures a system stays up and
running; they are what create trust in a trustless environment.
• Consensus mechanisms prevent double spending, when a digital token is spent more
than once either intentionally, such as in fraud, or unintentionally, perhaps due to a
glitch in the system.
• “Without consensus, I could spend money in one place and then spend that same
money again before the first transaction settles,” said Nicholas Edmonds, head
blockchain engineer at impact tech company Topl.
• With a debit card, he explained, this phenomenon usually results in an overdraft fee,
ending with the user having to settle the difference with their bank.
• In contrast, consensus keeps track of network activity in real time, disallowing a user
from double spending that money in the first place.
• Types of Consensus Mechanisms
• Blockchain platforms have written and rewritten the rules of
consensus in their search for the holy grail — a perfect
equilibrium of decentralization, scalability and security.
• Because of this, a small library of methodologies have been
developed for Web3 applications.
• Here are the five most common consensus practices.
• PROOF OF WORK
• PROOF OF STAKE
• DELEGATED PROOF OF STAKE
• PROOF OF AUTHORITY
• PROOF OF HISTORY
• PROOF OF WORK
• The genesis of all consensus mechanisms, proof of work depends on an army of miners, or
validators, to verify transactions through solving arbitrary mathematical problems in the race
for a block prize.
• Essentially, the energy-intensive process hires a network of specialized computers to solve
for x, with x being a 64-digit hexadecimal number, known as a hash, which is encoded by
cryptography.
• Crypto mining, the block generative process described above that can reap thousands in
rewards in the form of new crypto tokens, is a popular use case for proof-of-work systems.
• Pros:
• Arguably the most decentralized and secure of all verification mechanisms. Lauded as extremely
reliable. In the case of Bitcoin, a generous bounty for block validation — currently valued at around
$16,800 — has resulted in high engagement on the platform.
• Cons:
• Slow transaction rates, expensive gas fees, expensive operational fees and eco-hazardous energy usage
summarize the inefficiency associated with a proof-of-work system. Bitcoin’s average block time —
the time it takes to process a transaction — is 10 minutes, and the process requires a staggering
amount of electricity.
• Examples: Bitcoin, Dogecoin, Litecoin
• PROOF OF STAKE
• In a proof-of-stake model, users pledge a designated number of tokens in a process
known as staking to receive validator privileges.
• When a user’s coins are staked, this means that they are locked away for the time
being.
• Staked coins passively earn rewards and contribute to the network until the user
unfreezes them, most often for the purpose of trade.
• Validating opportunities are rewarded at random, in a sort of lottery pool, to eligible
validators.
• The more tokens staked, the likelier a users’ chances are to win the raffle. In addition
to processing trades and adding blocks to the blockchain, validators stand in as active
community members responsible for storing data.
• If any user breaks consensus, their stake is forfeited.
• Pros:
• The optimal method of consensus in Web3 for scalability. It’s both energy efficient and
inexpensive, in respect to both gas fees and equipment.
• Cons:
• Not as decentralized or secure as proof of work. Power is delegated by wallet size.
• Examples: Ethereum, Cardano, Tezos, Algorand
• DELEGATED PROOF OF STAKE
• Imagine proof of stake, but with an electoral process.
• In this approach to determining consensus, network participants cast votes via
staking pools for their favored delegate, those who are presumed to be best
equipped to protect the network, based on reputation.
• As a result, validating privileges are reserved and awarded at random only to a team
of top tier candidates.
• At any point in time, a validator can be surpassed by someone deemed more
trustworthy.
• Pros:
• This system is efficient and democratic. It improves from the original proof-of-stake method by
being more financially inclusive to users and provides incentive for validators to remain
accountable in keeping the network alive.
• Cons:
• While there is an obvious tradeoff of decentralization, a delegated proof-of-stake protocol may
be considered too high maintenance for some users as it requires a healthy level of engagement.
Appointing network control to a few over many also increases its vulnerability to malicious
actors, such as in a 51 percent attack.
• Examples: EOS, Lisk, Ark, Tron, BitShares, Steem
• PROOF OF AUTHORITY
• Favored by private or permissioned blockchains, a proof-of-
authority consensus mechanism selects validators based on
reputation rather than a user’s digital assets. In this system, a
group of validators are pre-approved in a vetting process that
often includes a background check.
• Pros:
• This method is highly scalable and requires virtually no computing
power.
• Cons:
• Any structure designed to concentrate power compromises
decentralization. Additionally, a validator’s pseudo-anonymity is
forfeited, as public identifiability is part of the deal.
• Examples: Xodex, JP Morgan (JPMCoin), VeChain (VET)
and Ethereum Kovan testnet
• PROOF OF HISTORY
• Proof of history integrates the element of time into a blockchain’s protocol.
• During the verification process, timestamps are embedded into the hash of each
generated block, chronicling a network’s transaction history in a singular, unbroken
chain.
• It’s important to note that this verification method is only viable as a supplement to
another protocol.
• The hybrid consensus algorithm is most often seen working in tandem with a proof-
of-work or proof-of-stake system.
• Pro:
• It’s fast and secure without negating a platform’s existing state of decentralization. Proof of
history is also associated with low transaction costs, or “gas fees.” The most well known platform
that uses proof of history, Solana, is widely regarded as the fastest blockchain in existence,
boasting 400 millisecond block times.
• Con:
• A major disadvantage to high transaction speeds is the amount of data that accumulates. The
hardware fit to run such advanced software disqualifies the average user from being able to serve
the network as a validator.
• Examples: Solana
• Proof of Activity (PoA)
• Proof of activity (PoA) is a hybrid of the PoW and PoS consensus mechanisms. It is
used by the Decred (DCR) and Espers (ESP) blockchain projects.
• In PoA systems, the mining process begins like PoW, with miners competing to
solve an elaborate mathematical problem using immense computing power.
• Once the block is mined, however, the system switches to resemble PoS, with the
successfully generated block header being broadcast to the PoA network. A group of
validators are then randomly selected to sign off on the hash, validating the new
block.
• Like with PoS, the more crypto the validator holds, the higher their chances of being
selected. Once every chosen validator has signed the block, it is added to the
blockchain network and ready to record transactions. The block rewards are then
shared among the miner and validators.
• Though the PoA system was designed with the intention of combining the very best
features of PoW and PoS, while avoiding their shortcomings, it has drawn criticism
for its energy-intensive mining phase and inherent partiality towards validators
holding a greater number of coins.
• Proof of Burn (PoB)
• Another more sustainable alternative to Bitcoin’s PoW algorithm is proof of burn
(PoB).
• In PoB, miners gain the power to mine a block by ‘burning’ (destroying) a
predetermined amount of tokens in a verifiable manner – namely, sending them to an
‘eater address’ where they cannot be recovered or spent.
• The more coins burned, the greater the chances of being randomly selected.
• Unlike in PoS where miners are able to retrieve or sell their locked coins should they
ever leave the network, burned coins are irretrievably lost.
• This method of requiring miners to sacrifice short-term wealth in order to gain the
lifetime privilege to create new blocks helps to encourage long-term commitment
from miners.
• The act of burning coins also leads to coin scarcity, limiting inflation and driving up
demand.
• Cryptocurrencies that use the proof of burn protocol include Slimcoin (SLM),
Counterparty (XCP), and Factom (FCT).
• Proof of Capacity / Proof of Space (PoC / PoSpace)
• Unlike the majority of its predecessors which grant mining rights based on
computational power or coins staked, proof of capacity (PoC) – also known as proof
of space (PoSpace) – bases its mining algorithm on the amount of space available in a
miner’s hard drive.
• In PoC, miners generate a list of all the possible hashes beforehand in a process called
‘plotting’. These plots are then stored on a hard drive. The more storage capacity a
miner has, the more possible solutions. The more solutions, the higher the chances of
possessing the correct combination of hashes and winning the reward.
• As it doesn’t require expensive or specialised equipment, PoC opens up opportunities
for the average person to participate in the network. As such, it is a less energy-
intensive and more decentralised alternative to some of the more prevalent consensus
mechanisms covered in this guide. However, as of yet, not many developers have
chosen to adopt the system, and there are concerns about its susceptibility to malware
attacks. The mechanism is currently used by Signum (SIGNA) – formerly Burstcoin
(BURST), Storj (STORJ), and Chia (XCH).
• Proof of Elapsed Time (PoET)
• Usually used on permissioned blockchain networks (those that require participants
to identify themselves), proof of elapsed time (PoET) leverages trusted computing
to enforce random waiting times for block construction.
• It was developed by Intel in early 2016 and is based on a special set of CPU
instructions called Intel software guard extensions (SGX).
• A time-lottery-based consensus algorithm, PoET works by randomly assigning
different wait times to every node in the network.
• During the waiting period, each of these nodes goes to ‘sleep’ for that specified
duration.
• The first to wake up (that is, the one with the shortest waiting time) is awarded the
mining rights.
• This randomisation guarantees that every participant is equally as likely to be the
winner, ensuring fairness within the network.
• The PoET consensus mechanism is highly efficient, less resource-intensive, and
scalable. It has been implemented in Hyperledger’s Sawtooth.
• Proof of Importance (PoI)
• First introduced by NEM (XEM), proof of importance (PoI) selects its
miners based on certain criteria in a process called ‘harvesting’.
• Common factors include the number and size of transactions in the last
30 days, amount of vested currency, and network activity.
• It’s based on these factors that an importance score is attributed to nodes.
The higher the score, the higher the probability of being chosen to
harvest a block and receive the accompanying transaction fee.
• Though similar to PoS, PoI’s use of additional metrics does away with
the former’s tendency to inherently reward the rich by taking into
account participants’ overall support of the network.
• As such, simply staking high in POI does not necessarily guarantee a
chance of winning the block.

You might also like