what is consensus in bitcoin network |PoW

what is consensus in bitcoin network

Consensus in bitcoin network we have seen about the basic proof-of-work mechanism in Hashcash and today we will look into the consensus in Bitcoin – II and that how Bitcoin has cash extends that how the Bitcoin proof of work extends the hash cash proof of work-based systems and develop a methodology to protect the blockchain by applying a distributed consensus mechanism and along with that

we will also look into several other consensus algorithms which are being applied on the permissionless model of blockchain which is most similar to Bitcoin-based architecture and how they utilize the concept of consensus to ensure a secure tamper-proof blockchain

BITCOIN PROOF OF WORK (POW)

  • Based on the Hashcash PoW system
  • The miners need to give proof that they have done some work, before proposing a new block
  • The attacker will be discouraged to propose a new block, or make a change in the existing block

so this Bitcoin proof of work it is based on has cash proof of work system so the miners who are the special nodes in the Bitcoin network who participate in the consensus procedure they need to give proof that they have done some work before proposing a new block 

so if they can successfully complete that work then they are able to submit that block

as a part of the existing the longest chain of the blockchain now the attacker, they will be in general discouraged to propose a new block or make a change in the existing block because they have to do the entire work of the blockchain which is computationally difficult  in A generic environment 

BITCOIN PROOF OF WORK SYSTEM

so this is the methodology for Bitcoin proof of work A system so in case of Bitcoin proof of

work system you have an existing blockchain so if you remember the basic blockchain architecture in the basic blockchain architecture every block is connected to the previous block with the hash value.

so here this pH is the hash value of the previous block so we have this previous has value and one nonce value which is included in every block so we need to encode or we need to include this one of these existing three proposed blocks with the existing blockchain so every miner they will try to find out a nonce value which will satisfy certain hash equations so this is the hash equation that they have to perform.

 so you have the previous block hash along with you have the Merkle root of the transaction so if you remember that all the transactions are arranged in the form of a Merkle tree

which is again a hash-based architecture and the root of the Merkle tree it contains the root hash which we call as the Merkle root so it includes the Merkle root and along with a nonce

value now this block hash value it has a given challenge so the challenge is that you have to ensure a certain number of zeros at the prefix just like we have done in the hash cash-based system so this is termed as the difficulty of the system

 now the miners they will try with different values of nonce so they will try with different values of the nonce to find out that for which hash value or do you have to find out a certain block hash value which has or who it satisfies the difficult to the given difficulty that is a certain number of zeros at the prefix of the hash value now every individual miner they will independently try to find out this nonce value you and the miner who will be able to first find out the nonce value for his own block his or her own block then he or she will be able to include that block as a part of the blockchain as a part of the existing blockchain.

so this is the proof of work-based system which is utilized in Bitcoin to ensure the consensus by utilizing a challenge-response based systems you have the challenge is that by changing the nonce value you have to find out hash with a certain difficulty level that means to its certain number of zeros at the beginning or better to say the minimum number of zeros at the prefix  and that is the challenge which is imposed by the Bitcoin network and every minor need to solve that problem to find out the corresponding hash function

BITCOIN PROOF OF WORK (PoW) SYSTEM

  • Most implementation of bitcoin PoW use double SHA256 hash function
  • The miners collect the transaction for 10 minutes (default set up) and start mining the PoW
  • The probability of getting a PoW is low – it is difficult to say which miner will be able to generate the block
  • No miner will be able to control the bitcoin network single-handedly

so most implementation of Bitcoin proof-of-work it utilizes sha-256 based hash function

which is a 256-bit hash function the miners they collect the transactions for approximately 10 minutes which is a default setup so it waits for a certain duration and looks for all the transactions which are coming within that duration so this is again a kind of approximate duration so this duration comes from the fact that the at what periodicity the miners should mine a new block

 so those different steps will look into that letter so ideally they wait for a certain duration approximately 10 minutes and look for all the incoming transactions and within that duration, if they get an updated blockchain then they find out that which transactions have already been included in the block and by excluding those transactions which are already been included in the existing blockchain they take the next or the new set of transactions to

propose a new block and starts the mining procedure that means start finding out the corresponding hash value

 now the probability of getting a proof-of-work is low so because the probability is low it is difficult to say which miner will be able to generate the block so you have multiple miners who are simultaneously trying to generate a block and one of the miners out of those hundreds or thousands who are there in the Bitcoin network one of them will generate the block and that way because this probability lo miners will be able to control the Bitcoin network single-handedly

so it will not happen ideally it will not happen that no miners will be able to generate all the blocks in the Bitcoin network so that that level of randomization is supported by the Bitcoin consensus protocol which is the proof of work system so one point to note here that sometimes in some literature this Bitcoin proof of work mechanism it is also termed as a Nakamoto consensus based on its proposal came from Satoshi Nakamoto so some people also term it as Nakamoto consensus.

TAMPERING PoW BLOCKCHAIN

  • The blockchain together contain a large amount of work
  • The attacker needs to perform more work to tamper the blockchain
  • This is difficult with the current hardware

 so let us see that why bitcoin proof of work mechanism is tamper-proof so this is the broad architecture of a block so in every block as we have learned till now that every individual

node they have to find out the nonce and that this current hash the hash for this block it satisfies certain difficulty like the minimum number of zeros that should be there in

the prefix 

so this has a value the current hash value of one block it is included as a part of the previous block so these things we have seen earlier so that way if some attacker wants to make some changes in one block then they have to actually do the collective work or better to say we have to do more work compared to the collective work of all the blocks in the chain so every block in the chain it has been obtained by doing some work by individual miner where the miners found out the nonce value based on the difficulty level

 so the attacker has to do a collective work or which is more than the total collective work of all the blocks in the current blockchain so that way this is difficult with the current hardware so note that term that making an attack or tampering the current blockchain is difficult with the current hardware but remember that it is not impossible

 so if the attacker can do the work with by investing huge hardware which can compute the hash very fast and it will be able to change all the in has values of all the blocks in the longest chain then the attacker may be able to make a change in the blockchain or tampered 

blockchain but although it is computationally feasible

 but there are two aspects first of all the time required to do that work ideally it should be significantly high if the miner invest a huge amount of hardware to do that thing then the total amount of investment that the attacker is doing to launch this attack that should be obviously less than again that he or she will get by performing this attack so doctor a ideally people think of that although this is not deterministically tamper-proof it is always possible to tamper the blockchain with very fast

hardware in the future but ideally people believe that the attacker will be discouraged to launch an attack on the blockchain network because they have to do more work compared to the collective work of all the blocks in the longest chain 

SOLVING THE DOUBLE SPENDING PROBLEM

  • The attack: successful use of the same fund twice 
  • A transaction is generated with BTC 10 to both Bob and Carol at the same time
  • The solution:
  • The transactions are irreversible (computationally impractical to modify)
  • Every transaction can be validated against the existing blockchain

so this proof of work also solves a problem in any digital cryptocurrency which means– known as a double-spending problem or this double-spending can also work as an attack

sometime so the double-spending means the successful use of the same fund twice so the attacker is trying to transfer the same Bitcoin to two different people almost at the same instance of time so the attacker can launch a transaction A to B with certain Bitcoin with certain say Bitcoin xx and then the attacker launches another transaction to see with the same Bitcoin 20 and here the attacker say has only 20 Bitcoin with him or her so that way this kind of attack is known as the double-spending attack in the digital currency literature so Bitcoin by utilizing this proof-of-work mechanism

it also solves the double pending spending problem because the transactions that we are putting in the block  are irreversible or at least they are computationally impractical to

modify we are not saying that it is impossible to modify but as I have

mentioned that the attacker has to do a significant amount of work or rather

they have to do the work more than the collective work of the blockchain and

that way it is computationally impractical and that is why the attacker will not be encouraged to launch this kind of attack so that way whatever transactions which have been already

submitted in the blocks they are kind of permanent transactions so they are

kind of permanent transactions means you can think of them as the permanent

ledger and whenever some new transaction comes you can also always validate that whether the new transaction confirms with the existing transactions which are there in Blockchain

 so that way if this initial transaction has already committed in the blockchain from here you can find out that the attacker has only 20 Bitcoin with him or her and if the attacker is going to issue two different transactions of Bitcoin 20 which is not possible like if we that occurs is going to launch a kind of double-spending attack so the miners or the nodes in the Bitcoin network can verify that and they can actually block such kind of double-spending to happen over the Bitcoin network so that way by making the entire system kind of tamper-proof the proof of work mechanism ensures that the double spending does not happen in case of a blockchain network 

SYBIL ATTACKS

  • The attacker attempts to fill the network with the clients under this control
  • Refuse to relay valid blocks 
  • Relay only attacker blocks – can lead to double spending
  • solution:
  • Diversity the connections- Bitcoins allows outbound connection to one IP per /16 (a.b.0.0) IP address

 there can be certain type of attacks which can happen on a proof-of-work based system and one popular attack that people are trying to perform is the Sybil attack so in case of Sybil attack the attacker attempts to  field a network with the clients under his control so if the attacker can field a network with clients under his control then the attacker can actually control or get a monopoly over the network and these clients can do different kind of actions based on the instruction from the attacker they can refuse to relay the valid blocks they can only relay the blocks which are generated by the attacker those blocks can lead to double spending so that way that

in the Sybil attack, the attacker can include multiple search nodes in the network who can collectively comprise the proof-of-work mechanism now to solve this problem the Bitcoin network it applies a solution technique where it diversifies the connections so the Bitcoin-only allows the outbound connection to one IP power / 16 IP address so if you have to say IP address series of saying something like 170.16.–. / 16 so in this entire network you can have at most one peer so that way if you diversify the network it is expected that if the attacker generates multiples that false miners the attacker will generate them within the same network so they will be clustered within the net same subnet so that is the expectation and with this expectation people find it

that will Sybil attack may be possible but if you diversify the outgoing connection that whenever you are forwarding the block you forward the block to multiple nodes rather than  a cluster of nodes in the same network so the entire idea is something like that

say you are forwarding a block and all these blocks all these nodes belong to a single cluster 

so in that case you just make a connection to one of the nodes in this connection where you will forward the block and then you can have multiple other peers where you can forward the block or forward the valid transactions so in that case, it will not happen that you are connected your peers are only from the attacked nodes and they are not collectively relaying your transaction

 so that way blockchain expects or blockchain makes the Sybil attack hard to implement on a distributed network but remembers that although this solution makes it hard to launch a Sybil attack it doesn’t make it impossible it is always possible to launch multiple attackers at multiple subnets and then collectively control them and then launch the attack in a distributed way but launching that kind of attack is much difficult in a real Network

DENIAL OF SERVICE (DOS) ATTACKS

  • Send a lot of data to a node – they will not be able to process a normal Bitcoin transaction
  • solutions:
  • No forwarding of orphaned blocks
  • No forwarding of double-spend transactions
  • No forwarding of the same block or transactions
  • Disconnect a peer that sends too many messages
  • Restrict the block size to 1 MB
  • Limit the size of each script up to 10000 bytes

so the next type of attack which can happen on a proof-of-work based system it is the denial of service based attack so in denial of service attack based

The attack that occurs in a lot of data to a particular node and if you are sending an A lot of data to a particular node that node will not be able to process the

normal Bitcoin transactions so that is a typical denial of service attack which can be happened on a proof-of-work based system and to solve this kind of denial of service attack Bitcoin has a set of rules like you do not forwardly orphan block means the block which has been forked from the main chain so if a block doesn’t belong to the main chain which is the longest

blockchain and you do not forward those blocks then do not forward the double

spent transactions if we have found out that a transaction has already been forwarded so you do not forward that transactions further then do not forward

the same block or transactions twice then disconnect appeared that sends too

many messages if  CR saves you too many of messages too many of transaction then you disconnect that particular may appear then you restrict the block size to 1 MB so restricting the block size has an implication on solving that in a denial  service problem if you have a larger block in a larger block you can put more transactions and the larger block becomes difficult to verify by the common normal nodes so the normal bitcoin  nodes which are there if they are getting a large block it may be difficult for them to verify the large block so that way if you are restricting the size of the block it becomes easier to forward the block to many peers in the network

so that is why standard Bitcoin network as proposed by Satoshi Nakamoto it blocks or it restricts the block size to something like 1 MB and now it is with the current bitcoin version it can go up to 80 MB then limit the size of the bitcoin scripts so we have discussed earlier the concept of Bitcoin scripting language so I do provide the instruction that how to validate or how to match the input of a transaction to the output of the next transaction or  how to match the output of a transaction to the input of the next transaction so this Bitcoin script here is certain limitation

under Bitcoin script that you limit the size of bitcoin script to something like ten thousand bytes so do not have a bitcoin script a more than that if you have a larger bitcoin script that is more susceptible to attack so do not forward transaction which has this kind of larger scripts so by taking there are certain other measures there is a huge list of measures that Bitcoin network takes to solve denial of service attack over the prefer for based systems

BREAKING BITCOIN PoW

  • Bitcoin PoW is computationally difficult to break, but not impossible
  • Attackers can deploy high power servers to do more work than the total work of the blockchain
  • A known case of successful double-spending
  • (November 2013) “it was discovered that the GHash.io mining pool appeared to be engaging in repeated payment fraud against Betcoin Dice, a gambling site”

well now let us look that whether it is possible to break the Bitcoin proof of work or not so as you have mentioned earlier that Bitcoin proof of work is computationally difficult to break that is the important term it is computationally difficult to break but it is not impossible to break the proof of work based system so the attackers can always deploy high power servers or by deploying those high powers or power servers they can do more work than the total work of the blockchain and that way they can tamper the entire block chain Network so there is an one example one known case of successful double spending

which came from a mining pool called G hash.IO see this concept of mining pool we’ll discuss later on the mining pool means a set of miners coming together collectively and they are trying to mine a new block so that we call as a mining pool so this G hash.IO mining pool it was discovered in November 2013 that G Hash. IO mining pool day appeared to be engaging in repeated payment fraud against Bitcoin dice which is a gambling waste website so that kind of double spending that has happened over there so G hash.IO that I over they were able to launch a double spending attack over bitcoin network

THE MONOPOLY PROBLEM

  • PoW depends on the computing resources available to a miner
  •  Miners having more resources have more probability to complete the work
  • Monopoly can increase over time (the tragedy of the Commons)
  • Miners will get less reward over time
  • Users will get discouraged to join as the miner
  • Few miners with large computing resources may get control over the network

 so that is one problem and that problem particularly comes because of something called a

monopoly problem in the proof of work-based system so this proof of work if you

look into the proof of work this proof of work depends on the computing resource available to a miner so if a miner can cause a huge amount of computational resource then the miner

has said then there is a possibility  that the minor can control the entire network because he has some huge hardware some huge server like a CPU server or something like that where he

can parallely do the computation of the hashing and by doing parallel computation of the hashing and later on we will see that they are specialized hardware available for doing the Bitcoin mining by applying those kind of parallel hashing or by deploying huge servers for Bitcoin mining and an attacker or a miner can gain control over the network so it may happen that a miner can gradually do or generate lots of blocks in the current blockchain now if a huge number of blocks in the blockchain goes to a single miner then this miner has the ability to control the entire flow of transactions in the blockchain so this particular problem we call as

the monopoly problem in Bitcoin network where the miners have more resources are more probability to complete the work and there is a statistical Theory called tragedy of the Commons so the tragedy of the Commons theory which says which is from the economic perspective from the economic perspective it says that such kind of monopoly can increase over time so why such kind of monopoly can increase over time so if you remember the rewarding system or whenever the miner mines a new block they get certain reward but to limit

the total line amount of Bitcoin influx in the economic system we make a restriction about what is the total number of Bitcoin that can be generated out of the mining procedure so whenever we limit the total number of Bitcoin that can be generated out of the mining procedure with time the amount of reward that will be given to it to the miners that will drop because the amount of Bitcoin that can be generated that is also gradually dropping to make it saturated so because of that whenever the miners will get less reward over time so that users will get discouraged to participate or to join as a miner now if the user get discouraged to join as a miner then few miners with large computing resources they may get control over the internet work so that is a practical problem which is not in

therein today’s Bitcoin network but with time, it is expected that this kind of problem may arise where because of the shortage of reward which is coming from the mining procedure only the miners who are having huge computation power they are only participating in the mining procedure and indeed nowadays we are in a time when we have already started seeing this kind of phenomenon nowadays you cannot participate in a mining procedure just to eat a general-purpose if you  just installed a Bitcoin mining software in a general-purpose CPU hardly you will see that you are you have able you are able to generate a new block so in that way only the miner sweet to eat a huge amount of computing resources over the time they will get control over de Bitcoin network so this particular problem we call as the monopoly problem which is a shortcoming of the proof of work system

POW POWER CONSUMPTION

 another problem of this proof of work this system is the power consumption so this proof of work-based system it relies on the amount of power which is being consumed because you whenever you are deploying huge amount of computational resources in the network it is expected that those computational resources are actually consuming a huge amount of power to generate those hash functions so that way these this term typically sources the number of power consumptions with the Bitcoin network so you can see that with time there is a kind of exponential growth in the power  consumption due to Bitcoin mining

HANDLING MONOPOLY AND POWER CONSUMPTION – PROOF OF STAKE (PoS)

  • Possibly proposed in 2011 by a Member in bitcoin forum-
  • Make a transaction from PoW to PoS when bitcoins are widely distributed
  • PoW vs PoS
  • PoW: the probability of mining a block depends on the work done by the miner
  • PoS: the amount of bitcoin that the miner holds – Miner holding 1% of the Bitcoin can mine 1% of the PoS blocks.

so to reduce these two problem to handle monopoly and the power consumption in a proof-of-work based system different other consensus mechanism came into practice so on popularise or this proof of state mechanism so this proof of state mechanism it is possibly proposed in 2011 by a member in the Bitcoin forum so the idea was that you you make a general transition from a proof-of-work based system to a proof of state based system when the bitcoins are getting widely distributed now the broad difference between a proof-of-work based system about and the proof of state based system is as follows in case of proof of work the probability of mining a block depends under work done by the miner so the amount of work if the miner has huge resources huge computing resources if the miner can do a huge amount of work the probability of getting a new block gets increased on the other hand in case of proof of state the amount of Bitcoin that the miner holds that instructs that which miner can generate the next block so if a miner holds one percent of the total Bitcoin the miner can the miner can mine one percent of

the proof of the state of the block so by putting this kind of restriction that on the amount of Bitcoin data miner holds and proportional to that the miner will be able to generate the proof of state block you can basically reduce or you can reduce certainly or this kind of monopoly problem or  you can make the monopoly problem to appear like a difficult problem for proof of state-based system because the inherent assumption is that by the proof of work base system the Bitcoin is widely distributed so every miner will be able to participate in the mining procedure proportional to the amount of Bitcoin that he or she poses

PROOF OF STAKE (PoS)

  • Provides increased protection 
  • Executing an attack is expensive, you need more Bitcoins
  • The reduced incentive for the attack – the attacker needs to own a majority of bitcoins – an attack will have more effect on the attacker
  • Variants of “stake”
  • Randomization in a combination of the stake (used in Nxt and BlackCoin)
  • Coin- age: Number of coins multiplied by the number of days the coins have been held (used in peercoin)

so this proof of based proof of stake based system or POS-based system it provides in increased protection so executing an attack is expensive you require more Bitcoin if you want to generate more block and you also have a reduced incentive for attack because to generate an attack you need to have a huge amount of Bitcoin in your hold now if you already have a huge amount of Bitcoin in your hold and if you are yet generating an attack on the blockchain network that means you will be most affected because you are holding a majority of

the bitcoins with you so that way the attacks are more expensive in a proof of stake based system now there are multiple variants of stake or stake is basically the term will that you have there are multiple variants of the state that has been discussed in the literature one idea was to make randomization in a combination of the stake which is used in this next and black

Coin cryptocurrencies so the idea is that you consider the amount of Bitcoin that you have as an input and at the same time you apply your randomization function and based on that randomization function you decide that who will be the miner who will generate the next block then there is another one which has been used in another crypto currency called peercoin and the concept of coinage so the coinage is that number of coils multiplied by the number of base the coin have been held so to participate in a peer coin system

it is apart from holding a huge amount of Bitcoin with you not huge amount of Bitcoin sufficient amount of Bitcoin with you you have to all also ensure that you are holding those Bitcoin for certain duration so this way if some attacker just collect a huge amount of Bitcoin by launching some attack or participating in some transactions immediately he or she you will not be able to participate in the mining procedure so that way this coin is also prevents the case when the attacker can do certain transactions immediately to gain more amount of bitcoins by gaining more amount of bitcoins get more probability to mine a new block

PROOF OF BURN(PoB)

  • Miners should show proof that they have burned some coins
  • Sent them to a verifiably unspendable address
  • Expensive just like PoW, but no external resources are used other than the burned coins
  • PoW vs PoB – real resource vs virtual/digital resource
  • PoB works by burning PoW mined cryptocurrencies

 so this the two variants of proof-of-work based system so another consensus mechanism that has been discussed widely in the literature it is called proof a burn in case of proof burn miner should show a proof that they have burned some coins so bye  Barney it is like that they have to send it to a verifiably and unspendable address and during the discussion of

Bitcoin script we have shown you that how you can write a script through which you can send some Bitcoin to a verifiable and un-spendable address where no one will be able to spend that Bitcoin so you have to burn that coin so the idea here is that it is as expensive as proof of work in case of proof of work your investment to us the physical resources like your computational power under computation time and the electricity bill that you have to provide for that and physical money that you have to invest to purchase computational hardware’s here you have to spend digital or logical resources which are the bitcoins

so you have to spend certain bitcoins to participate in the mining procedure to show that you have interest in generating the mining so if the attacker wants to attack this system the attacker actually have to make a loss of a huge amount of bitcoins and at the same time this particular system is power efficient because you are not utilizing physical hardware to do de work rather you are spending these digital currencies for that and that is why although it is expensive like proof of war it is efficient in terms of the power consumption because nowadays now you are not utilizing this power-hungry hardware to perform the hash functions

so the difference between proof-of-work and proof of burn that in the case of Proof-of-work you are utilizing real resources whereas in the case of proof of burn you are utilizing virtualize real resources but remember that all this proof of  burn or to proof of  stake mechanism that came after proof of work that means once the proof-of-work gets settled out and people have a certain amount of digital currencies with dip then gradually you can move to proof of stake or proof of burn based mechanisms so this proof of burn works by burning some proof of work mine cryptocurrencies so the original cryptocurrencies were mined by proof of work than you are burning them to participate in the next mining procedure when the proof of work system got saturated

BITCOIN PROOF OF WORK VS PROOF OF STAKE VS PROOF OF BURN

                PoW
Do some work to mine a new block
Consumes physical resources, like CPU power and time
Power-hungry
                  PoS
Acquire sufficient stake to mine a new blockConsumes no external resources, but participate in transactionsPower-efficient
                  PoB
Burns some wealth to mine a new block
Consumes virtual or digital resources, like the coins
Power-efficient

 so this is the broad difference between that three proof of work proof of stake and proof of the burn-in case of proof of work you do some work to mine a new block so you find out the hash

function for that which is computationally difficult in case of proof of stake you acquire sufficient stake or wealth to mine a new block you have to show that you have a certain amount of bitcoins with you so that.

 You can participate in the mining procedure in case of proof of burn you have to burn some wealth to mine a new block so you have to just like to proof of work  you have to expense certain bitcoins rather than the physical currencies to participate in the mining procedure in case of proof of work it consumed physical resources like CPU power and time proof of stake as such it consumed no external resource but you can participate in the transactions in case of proof of  burn you consume virtual or digital resources like the coins now the proof of work it is a power-hungry mechanism proof of stake it is power efficient proof of burning it is also power efficient because you are burning the digital currency is not the physical Currency

PROOF OF ELAPSED TIME (PoET)

  • Proposed by intel, as a part of Hyperledger Sawtooth- a blockchain platform for building distributed ledger applications 
  • Basic idea:
  • Each participant in the blockchain network waits a random amount of time
  • The first participant to finish becomes the leader for the new block

 there was another consensus algorithm which was proposed by Intel as a part of the intel blockchain environment which is called hyper ledger Sawtooth that algorithm is called a proof of elapsed time so the idea of this proof of elapsed time is very simple like each participant in the blockchain network it’s a random amount of time the first participant to finish become the leader for the new block.

you  actually make randomization among the miners so the miner who will be able to complete that random waiting first that miner will be able to propose the new block

PoET OVER TRUSTED ENVIRONMENTS

  • How will one verify that the proposer has really waited for a random amount of time?
  • Utilize special CPU instruction set – Intel Software Guard Extension (SGX) – a trusted execution platform
  • The trusted code is private to the rest of the application
  • The specialized hardware provides an attestation that the trusted code has been set up correctly

 but here the challenge is that how will you verify that the proposer has really waited for a random amount of time so if it is a software-controlled an attacker can make a change in the software code and may claim that well I have waited for 120 seconds before participating in the mining procedure now to verify that Intel utilizes a special CPU instruction set which is called Intel software guard extension or HDX which is based on a trusted execution Platform.

 so this trusted execution platform is a hardware code hardware platform where you can write trusted code in a private way and that code is private to the rest of the application so it is completely Hardware control it is not software control so that specialized hardware.

 it provides an attestation that the trusted code has been set up correctly and the trusted code says if you have implemented this randomization waiting time as a part of the trusted code that has been implemented correctly and that have been executed correctly so you are giving a guarantee from the hardware itself not at the software level so the attacker will not be able to modify

INTERESTING READS…

  1. Analysis of hashrate – based double-spending, 
  2. The proposal of PoS
  3. The peercoin protocol
  4. Hyperledger Sawtooth

 That so here are some interesting reads regarding this different kind of consensus algorithms blockchain consensus algorithm.

so the first one it gives an analysis on this double spaced mechanism on Bitcoin so it is a nice statistical analysis of that double spending then the secondly in the case on the proposal a loop of stakes so you can look into different interesting ideas there the third one is the pure coin protocol that has utilized the proof of bar mechanism and the fourth one is the hyper ledger sawtooth platform so you can explore the internal details of the architecture of this shorter platform.

These are all about the basic consensus protocol in a Bitcoin type cryptocurrency environment that utilizes permissionless blockchain environments so this proof of elapsed time remembers that this proof of the elapsed time of that particular algorithm was implemented by Intel under a permission model.

later on, we will discuss the permission model in details but initially, people have proposed that for the permissionless model as well so the only difficulty there is that you have to post that special intelligence hardware which implements a trusted execution environment so the last algorithm proof of elapsed time that is both for the permissionless. 

 well as for the permission environment but for the other consensus algorithms that we have discussed before for proof of stake and proof of burn and they are primarily for our permissionless environment.

So that is a brief idea about different kinds of consensus algorithms and in the next discussion, we will talk about the basic mining properties and a task of a miner in Bitcoin.

READ MORE ARTICLE: R3 CORDA

follow us on facebook

Leave a Comment