current position：Home>About blockchain soft bifurcation
About blockchain soft bifurcation
2022-02-03 22:46:32 【Q & A of Denglian community】
After blockchain soft bifurcation , Blocks on the short chain are discarded , I have two questions about this situation , Please answer ：
- How to deal with the transaction information in these abandoned blocks , Does the trader need to restart the transaction ？ For example, there are now ABC Three transactions , Miner a got AB, Miner B got BC, And the two miners completed the calculation at the same time , At this time, the blockchain will append these two blocks at the same time , There is a bifurcation , According to the principle of the longest chain , There is bound to be a block abandoned , Suppose it's a transaction C The block is abandoned , How does the blockchain deal with subsequent transactions C Of ？
- Will the rewards received by the miners corresponding to these abandoned blocks be recovered ？ If it is taken back , So there's no reward for hard mining before ？
Take the answer 1：
When two miners complete the calculation at the same time , First, the miners will immediately broadcast the block for confirmation , For miners who receive block broadcasts , There are two situations ： One is that the block numbers of the two blocks are the same , One is different .
The two block numbers are different , It shows that there is a reason （ For example, broadcast reception delay ）, As a result, the block number of a miner is not updated to the latest , At this time, the large block number will be confirmed by the miner , The small ones will be discarded .
When the two block numbers are the same , The miner will choose a block , The principle of selection can be determined by the miners themselves （ This will lead to selfish mining , Selfish mining is another problem ）. When most miners （ More calculation ） After determining this block , This block will be confirmed .
When the block number mentioned in the previous article is the same , Unselected blocks become isolated blocks , In bitcoin , Due to the fast speed and slow speed , It's very unlikely , Miners in your block will lose rewards if they are not confirmed by other miners at this time . In Ethereum , Is more likely , Ethereum has set up a tertiary block mechanism , Subsequent blocks can reference the previous isolated blocks into tertiary blocks , Isolated blocks are applied into blocks , The corresponding packaged miners will also be rewarded （ According to the number of block number intervals , The closer you get, the more rewards you get ）, At present, the reward issued through uncle block accounts for about... Of the mining reward 7%.
After the block is confirmed , The miner will also remove the transaction in the confirmation block from the transaction queue , Other transactions will continue the mining process . The transaction mentioned in the title AB, At the miners in the confirmed block , The content of the block will be confirmed according to , Remove... From the transaction queue ,C Because it is not in the confirmation block , Therefore, it will be packaged in subsequent blocks .
author[Q & A of Denglian community],Please bring the original link to reprint, thank you.
The sidebar is recommended
- This tap is combined with demo and can't be compiled. What's wrong and how to change it.
- When truffle compiles the contract, it gets stuck all the time and can't climb over the wall
- The version problem of Ethereum DAPP development actual combat video tutorial?
- About the syntax of the solid version?
- How to realize the flexible query of blockchain?
- Introduction and of nodes
- Where are the 12.5 bitcoin payment addresses?
- Hello, everyone. I'm a novice. Please take care of me.
- [job opportunities] there are two open source projects in the community that lack audit
- ethers-v4. Why does min.js report this error
guess what you like
Bitcoin balance query
The road printing agreement is hiring!
Use ethers JS failed to generate Wallet
What about pure Xiaobai
An error is reported when deploying Ethereum locally
Taking DAPP pethop as an example, metamask needs to pay eth when adopting. How can I modify the code?
When deploying fabric on multiple machines, the order node has opened port 7050. But peer0org1 cannot connect to the order node.
I'm in rinkeby IO deployment contract, and then query the error report~
May I ask, similar to the tendermint, hotstuff and pbft consensus, do they store the verification signature of each verifier on the block, and how? If stored in blocks, the received signatures may not be the same, resulting in inconsistent blocks
- Smart contract data migration solution?
- What is the difference between transaction cost and execution cost consumed by gas in Remix?
- Geth deployment contract problem
- How do Ethereum -web3 and golang interact
- Error connecting orderer when fabric SDK go creates channel
- Please ask a question about voting to switch accounts
- Fabric SDK go instantiation chain code connection 7053 port waiting timeout
- What should I do if I transfer the currency to the contract address? I read it wrong
- How can DAPP be deployed on the server and accessed by others?
- How to solve the problem that a large amount of information is stored on the chain in the form of structure plus mapping, resulting in the phenomenon that the stack is too deep to compile?
- There are still some questions about the specific interaction with the web app after the contract is written. I hope to see a complete demonstration.
- If the two cryptocurrencies use the same algorithm, can they dig both currencies at the same time with their own computing power?
- Has anyone sorted out the interview questions related to blockchain technology? thank
- After the private chain is restarted, the Ethernet balance of the account is cleared
- "Metamask RPC error with payload" occurs after deployment to the ropsten test chain, resulting in contract interaction failure
- The account created by the Chain Wallet cannot be queried in the private chain built by geth
- Solid contract execution
- Centralized exchange recharge entry monitoring
- Can Ethereum change addresses for each transaction
- How to convert byte  array into string array in solidity?
- How to write a smart contract for access control IOT devices?
- Blockchain in big data sharing
- There is no response after entering the following JS document of truss exec in the truss console, but manual input in the truss can be submitted successfully
- What should be the format of the input parameters when calling this function?
- Get all currencies held by erc20 address
- eosio. cdt1. 7. The smart contract cannot be compiled
- Ethereum develops DAPP's learning
- Analysis of eth transaction record input
- Sensor related smart contract
- Error: returned values are't valid, did it run out of gas?
- How to introduce the hash library keccak? I installed it according to NPM install keccak -- save, but the execution code will report an error
- Ethereum releases token and uploads contract code to Etherscan
- Transfer of Ethereum private chain
- seek help
- web3. JS send transaction
- solidity0. 5 how to convert string to uint
- According to teacher Xiong's video, on Web3 How to put JS into atom
- I want to ask if there is a problem with this tutorial
- Why is this displayed after I deploy Ethernet
- Metamask external connection problem