Position: Home page » Bitcoin » BTC data structure

BTC data structure

Publish: 2021-03-28 13:47:12
1. In order to understand the technical principle of bitcoin, we need to understand two important cryptographic techniques: hash code: it converts a long string into a fixed length string, and its conversion is irreversible, that is, it is impossible to guess the original string from hash code. Sha256 is mainly used in bitcoin protocol
public key system: corresponds to a public key and a private key, keeps the private key in the application and publishes the public key. When Party A transmits information to Party B, it can use Party A's private key to encrypt the information, and Party B can use Party A's public key to decrypt the information, so as to ensure that the third party cannot impersonate Party A to send the information; At the same time, when Party A transmits information to Party B, it is encrypted with Party B's public key and sent to Party B, and then Party B decrypts it with his own private key, so as to ensure that the third party cannot eavesdrop on the communication between the two people. RSA is the most common public key system, but the lliptic curve digital signature algorithm is used in bitcoin protocol. What's the difference between cash and bank account? Bitcoin is an electronic currency in BTC. In this article, it is also used to refer to the whole bitcoin system. Like opening an account in a bank, the corresponding concept in bitcoin is address. Everyone can have one or more bitcoin addresses, which are used to pay and collect money. Each address is a string that starts with 1. For example, I have two bitcoin accounts, and. A bitcoin account is uniquely determined by a pair of public key and private key. To save the account, you only need to save the private key file. Unlike bank accounts, banks keep all transaction records and maintain the book balance of each account, while bitcoin's transaction records are jointly maintained by the whole P2P network through a pre agreed protocol. How much money is in my account address? Although the current account balance can be seen by bitcoin software, unlike banks, there is no place to maintain the book balance of each address. It can only calculate the account balance in real time through all historical transactions. How do I pay? When I pay from address a to address B of the other party, the payment amount is e. at this time, both parties will announce the transaction information to each network node, telling address a to pay to address B, and the payment amount is e. In order to prevent the third party from forging the transaction information, the transaction information will be encrypted with the private key of address A. at this time, the network node receiving the transaction information can use the public key of address a to verify that the transaction information is indeed sent by address a. Of course, trading software will help us do these things, we just need to input the relevant parameters in the software. What will the network node do after receiving the transaction information? This is the most important part of the bitcoin system, which needs to be elaborated. For the sake of simplicity, only bitcoin protocol has been implemented. In the current version, each network node will save all transaction information synchronously. There are two kinds of transaction information in history, one is & quot; Verified & quot; The transaction information, that is, the verified transaction information, is stored in a series of "blocks". Each & quot; block" Is the previous & quot; bock" The ID of each block is the hash code of the hash code of the block and the new transaction information (see an actual block). The other category refers to those who also & quot; Unverified & quot; The transaction information just paid above belongs to this category. When a network node receives new unverified transaction information (possibly more than one), it can calculate the book balance of each address at that time because the node keeps all the transaction information in history, so it can calculate whether the transaction information is valid, that is, whether there is enough balance in the payment account. After eliminating the invalid transaction information, it first takes out the last & quot; block" Then, the unverified transaction information is combined with the ID, and a verification code is added to form a new "block". It needs a lot of calculation to build a new block, because it needs to calculate the verification code, so that the above combination becomes a block, that is, the first several bits of the hash code of the block are 1. At present, the first 13 bits need to be 1 (generally, the specific method is uncertain), which means that if the block is generated by enumeration method, the average number of enumerations is 16 ^ 13. Using CPU resources to generate a block is called "gold mining", because the proction of the block will get a certain reward, and the reward information has been included in the block. When a network node generates a new block, it will broadcast to other network nodes. However, this network block may not be accepted by the network, because it is possible that other network nodes have proced the block earlier. Only the earliest block or the block with the largest number of subsequent blocks is valid, and the remaining blocks are no longer used as the initial blocks of the next block. How does the other party confirm that the payment is successful? When the payment information is distributed to the network node, the network node begins to calculate whether the transaction is valid (that is, whether the account balance is enough to pay), and attempts to generate blocks containing the transaction information. When six blocks (one direct block and five subsequent blocks) contain the transaction information, the transaction information is considered "verified", so that the transaction is formally confirmed, and the other party can confirm the successful payment. A possible problem is that I will pay the balance of address a to address B, and at the same time pay to address C. If I only verify that the single comparison transaction is valid. At this point, my way of cheating is to generate six blocks including B to B and six blocks including C to C before the truth is revealed. Because I need a very long CPU time to generate a block, compared with the whole network, the probability of my cheating success is very small. What is the motivation of network nodes to proce blocks? As can be seen from the above description, in order to make the transaction information effective, the network node needs to generate 1 and 5 subsequent blocks to contain the transaction information, and such block generation is very CPU intensive. How to let other network nodes help to proce blocks as soon as possible? The answer is very simple. The agreement stipulates that BTC will be rewarded for the address where the block is proced, as well as the Commission promised by both parties. At present, the reward for procing a block is 50btc, which will be halved every four years in the future. For example, the reward will be 25btc from 2013 to 2016. Is the transaction anonymous? Yes, and No. All bitcoin transactions are visible. We can check all transaction records of each account, such as mine. But what's different from the banking monetary system is that everyone's account itself is anonymous, and everyone can open many accounts. In general, anonymity is not as good as it claims. But bitcoin has another advantage in doing black market trading: it can't be frozen. Even if the police trace a bitcoin address, there is nothing they can do unless they trace the computer used by the exchange based on the Internet address. How to ensure that bitcoin does not depreciate? Generally speaking, in the case of equivalent trading activities, the value of money is inversely proportional to the amount of money issued. Unlike the traditional money market, the central bank can determine the amount of money issued. Bitcoin does not have a central issuing institution. Only by procing blocks can we get a certain amount of BTC currency. Therefore, bitcoin's new amount of money depends on: 1. The speed of procing blocks: bitcoin's agreement stipulates that the difficulty of procing blocks is fixed at an average of 2016 every two weeks, about 10 minutes. Moore's law of doubling CPU speed every 18 months will not speed up the proction of block. 2. The number of rewards for block proction: at present, 50 BTC is awarded for each block proced, which is halved every four years. In 2013, 25 BTC is awarded, and in 2017, 12.5 BTC is awarded. Considering the above two factors, bitcoin's currency issuing speed is not controlled by any single node in the network. Its protocol makes the currency stock known in advance, and the maximum stock is only 21 million BTC
2.

The capacity of a block in bitcoin is 1m (megabytes). A transaction is between 250 and 500 bytes

according to this algorithm, a block contains about 4194.3 transactions

the confirmation time of a block in bitcoin is 10 minutes, so the seven transactions that a block can process per second may sometimes be less than seven

What are the consequences

The bifurcations of

bitcoin are divided into hard bifurcations and soft bifurcations

hard fork means that when the block format or transaction format of bitcoin changes, the UN upgraded nodes refuse to verify the blocks proced by the upgraded nodes

the upgraded nodes can verify the blocks proced by the non upgraded nodes, and they continue the chain they think is correct, so they are divided into two chains

What is soft bifurcation

soft bifurcation means that when the data structure of bitcoin transaction changes,

UN upgraded nodes can verify the blocks proced by upgraded nodes,

and upgraded nodes can also verify the blocks proced by UN upgraded nodes

3.

The price of a bitcoin soared from more than $20000 to $40000. This can not help but arouse my research interest, or simply understand what bitcoin is, what its mechanism looks like, and uncover its mystery. Therefore, after a simple search of some information and some understanding of the special currency, I sorted out the information on hand< (3) purpose: decentralize, rece risk



(3) only the central server can store and process data in the central network; Large amount of data storage; The central manager has great authority

all servers in the distributed network can store and process data, and each server has equal status, which can store more data and has higher security<
this is the general content of popular science. If you want to know more about it, you can take a look at Nakamoto's paper and the official popular science video below

4.

Transaction mode of bitcoin

bitcoin is e-cash similar to e-mail, and both parties need "bitcoin wallet" similar to e-mail and "bitcoin address" similar to e-mail address. Just like sending and receiving e-mail, the remitter pays bitcoin directly to the other party through a computer or smart phone according to the recipient's address. The following table lists some websites that download bitcoin wallets and addresses for free

a bitcoin address is a string of about 33 characters long, consisting of letters and numbers, always starting with 1 or 3, such as & quot& quot; Bitcoin software can generate address automatically, and it doesn't need to exchange information online, so it can be offline. More than 2 bitcoin addresses are available. Figuratively speaking, there are about two grains of sand in the world. If there is an earth in each grain of sand, then the total number of bitcoin addresses far exceeds the number of all the sand on all these "earths"

the bitcoin address and private key appear in pairs, and their relationship is just like the bank card number and password. A bitcoin address is like a bank card number, which records how much bitcoin you have on it. You can generate bitcoin address at will to store bitcoin. When each bitcoin address is generated, a corresponding private key of the address will be generated. This private key proves that you have ownership of the bitcoin at that address. We can simply understand the bitcoin address as the bank card number, and the private key of the address as the password of the corresponding bank card number. Only when you know the bank password can you use the money on the bank card number. Therefore, please keep your address and private key when using bitcoin wallet

after the transaction data of bitcoin is packaged into a "data block" or "block", the transaction is initially confirmed. When a block is linked to a previous block, the transaction is further confirmed. After six block confirmations in a row, the transaction was irreversibly confirmed. Bitcoin P2P stores all transaction history in a "blockchain.". The blockchain continues to extend, and once new blocks are added to the blockchain, they will not be removed. Blockchain is actually a distributed database composed of a group of scattered client nodes and all participants, which is a record of all bitcoin transaction history. Nakamoto predicts that when the amount of data increases, users hope that not all the data will be stored in their own nodes. In order to achieve this goal, he uses the hash function mechanism. In this way, the client will be able to automatically eliminate those parts that it will never use, such as some very early bitcoin transactions

5.

From the current technology, the next bitcoin in the bitcoin data structure can be divided into 8 decimal places, so the minimum unit of bitcoin is 0.00000001btc, but the transaction can not be so small

according to the statistics of bitbao, at present, the common minimum trading unit of bitcoin trading platform in China is 0.01btc, so the 0.0001 proposed by the owner is not available for sale< br />

6. Sintering machine is actually a sintering system, including civil engineering, which transports materials from the manufacturer. The ring sintering machine is suitable for small blast furnaces. Dingxin of Shanye and Dingxin of Shanxi are good domestic ones. They have blast furnace operation experience and can achieve good economic indicators. After all, the purpose of opening the plant is to make money.
7. M stands for trillion, and one trillion equals one trillion, which is 229.86920 trillion
8. It is recommended that you can open the warranty sheet attached to the purchase of the watch. Under normal circumstances, the warranty sheet will have the service address, or you can find a regular watch Service Center for inspection and repair
within the warranty period, you can get the counter
generally, it is better to repair in Shanghai and Beijing
9. In fact, we don't need to worry about the fairness and security of this trading platform, the privacy of user data, the transparency of platform rules, and the stability and reliability of the trading system. This platform is very professional and there will be no problems. Thank you for your approval of my reply. I wish you all the best
Hot content
Inn digger Publish: 2021-05-29 20:04:36 Views: 341
Purchase of virtual currency in trust contract dispute Publish: 2021-05-29 20:04:33 Views: 942
Blockchain trust machine Publish: 2021-05-29 20:04:26 Views: 720
Brief introduction of ant mine Publish: 2021-05-29 20:04:25 Views: 848
Will digital currency open in November Publish: 2021-05-29 19:56:16 Views: 861
Global digital currency asset exchange Publish: 2021-05-29 19:54:29 Views: 603
Mining chip machine S11 Publish: 2021-05-29 19:54:26 Views: 945
Ethereum algorithm Sha3 Publish: 2021-05-29 19:52:40 Views: 643
Talking about blockchain is not reliable Publish: 2021-05-29 19:52:26 Views: 754
Mining machine node query Publish: 2021-05-29 19:36:37 Views: 750