The core of bitcoin is to realize the distributed bookkeeping of financial transactions between two or more accounts. Each account is anonymous and can be created without the approval of any central authority. The user who creates the account has a public key and private key. The user only needs to publish the public key, accept the transfer and confirm with the private key in the transaction Trading. The public key and private key are similar to the account and password of bank account, but the two sides of the transaction do not know the real personal information of the other party in the real world, and they only face the public key represented by a string of characters. Users can transfer bitcoin to another account in bitcoin network. Each transaction record contains the public account information (public key) of sender and receiver and transaction details, such as transfer amount, transaction time, etc. The transaction will not be finalized (i.e. verified) until the transaction is added to the distributed ledger, i.e., it will not be broadcast to other users in the blockchain network. Decentralized linked distributed Ledger was later abstracted as the concept of blockchain by scholars. With the increase of transactions in bitcoin network, new blocks will be generated continuously. This blockchain mechanism enables the authority of transaction confirmation to be decentralized, ensuring that no one has the privilege to keep accounts or change transaction information. All confirmed historical transaction information can be queried in the block and cannot be changed. In this perspective, blockchain can be regarded as a public asset. The participant responsible for confirming the transaction is called the “miner”, and the miner confirms the valid transaction and packs it into a new block. Bitcoin network uses the principle of cryptography to assign tasks to miners by setting random hash values. This algorithm sets very difficult calculation problems for all miner nodes to calculate. This algorithm can adjust the difficulty and control that it takes about 10 minutes to get the correct result each time. The first miner who works out the correct result will get the right to account and get some bitcoin reward. This mechanism is called workload proof mechanism. Workload proof makes it difficult for malicious users to forge transaction records, thus avoiding potential fraud and double spending problems. Sompolinsky (2018) clarified in the paper that miners can choose which transactions to package into the newly excavated blocks, that is, they will maximize their own interests when choosing to package transactions. This mechanism makes the bookkeeping privilege of bitcoin network decentralized and has certain randomness (the miner who gets the next bookkeeping right is not certain), so as to achieve the goal of decentralization. The originality of bitcoin system is to provide economic incentives for miners to participate in the network only for their own interests. Miners maintain the normal operation of bitcoin network in the process of maximizing their own interests. There are two mechanisms for rewarding miners. First of all, the miners who have obtained the accounting rights will get a certain number of bitcoin rewards (which are fixed in the same half reduction interval). In fact, this is the only way to issue bitcoin. According to the bitcoin agreement, mining awards start with 50 bitcoin awards per block. For every 210000 block awards generated, they are reduced by half, about half every four years. When the halving cannot be subdivided, bitcoin will stop issuing, so the upper limit of bitcoin issuance is 21 million. In other words, the issuance mechanism stipulated in the bitcoin protocol limits the total number of bitcoin to be issued, which makes bitcoin similar to gold, because the total amount of gold on earth is also limited. In order to supplement the mining incentives that decrease over time, the bitcoin protocol also uses transaction fees as a second incentive mechanism. Transaction handling fee is an optional fee for the transaction sender to confirm the transaction as soon as possible, so as to urge the miner to package his transaction into the next generated block. In view of the diminishing mining revenue stipulated in the agreement, transaction fees are expected to play an increasingly important role in encouraging miners to participate in the mining process. Next, we introduce how the bitcoin protocol can last about 10 minutes to generate a new block. Whether and when miners will mine is the decision they make based on the expected revenue. For example, the increase in electricity charges may cause some miners to choose to suspend mining, which will lead to certain fluctuations in the total computing power of bitcoin network and the time interval of blocks. The bitcoin protocol offsets this instability by automatically adjusting the mining difficulty, thus keeping the block interval stable (average 10 minutes). However, the bitcoin protocol stipulates that the mining difficulty is updated once every 2016 blocks are generated, that is, for a long period of time, the mining difficulty is fixed, while the computing power of the whole network is fluctuating. The broken line chart of average daily hash rate and mining difficulty in bitcoin network from October 6 to April 6, 2020. It can be seen from the graph that the difficulty is regularly updated with the fluctuation of the whole network computing power, which aims to generate a new block in about 10 minutes. However, in the same difficulty area, the block time fluctuates with the change of the network computing power. Bitcoin trading after a transaction in bitcoin network is executed, it will be broadcast to all nodes in the whole network. After receiving the transaction information, the mining node will store it to the local memory pool for some verification. For example, if the bitcoin corresponding to the transaction is not spent, it will be temporarily classified into “unconfirmtransaction” after successful verification and waiting to be packaged; Validation failed. The transaction is marked as invalid transaction and will not be packaged. Therefore, the miners should verify the trading information in the unconfirmed trading pool in time, and be ready to update their “unconfirmed trading pool” at any time. After the mining node grabs the accounting right, it will extract a certain number of transactions from the “unconfirmed transaction pool” for packaging. Most of the time, the user’s transactions will not be confirmed in time, because there may be a large number of transactions in the “unconfirmed transaction pool”. However, due to block restrictions, the number of transactions that can be packaged and confirmed is limited, so transaction congestion may occur. The fixed capacity of the block limits the liquidity of bitcoin to a certain extent, and makes each transaction face a queuing problem before it is confirmed. In general, miners will give priority to the transaction with high package fee, but there is no relevant regulation on service charge in bitcoin network, and the level of handling fee is completely determined by the market. In addition, in order to ensure that each transaction is finally confirmed, bitcoin network stipulates that the longer the queue time in the unacknowledged transaction pool, the higher the priority of the transaction queuing.