Common concepts of blockchain and Ethereum (1)

  1. Blockchain:

    Bitcoin, which originated from Satoshi Nakamoto, mainly solves the problem of trust. Generally defined as: Blockchain is a new application mode of computer technology such as distributed data storage, point-to-point transmission, consensus mechanism, and encryption algorithm. The narrow block chain mainly refers to several public chains, and the broad block chain includes various alliance chains, private chains, and even networks that only adopt this model.

  2. Bitcoin:

    A peer-to-peer electronic money system. A complete peer-to-peer electronic currency should allow online payments to be sent directly from one party to another without going through a financial institution. In layman's terms, users can transfer money directly without a bank.

  3. Satoshi Nakamoto:

    Satoshi Nakamoto brought two subversive concepts in 2009, one is "Bitcoin" and the other is "Blockchain". However, Satoshi Nakamoto later succeeded in retiring and never appeared again.

  4. Cannot be tampered with:

    Here we use Ethereum as an example to explain the non-tampering feature. Ethereum uses an improved Merkel tree for data storage. It is a binary tree, and its hash spreads from bottom to top. Anyone who changes one of the data will cause the block hash to change. The blocks are connected by hash. This change will cause the link hash of the subsequent connected blocks to be inconsistent with it, and the block will be deemed invalid and will not be accepted. Unless the block and all subsequent blocks are changed.

  5. Decentralization:

    "Decentralization" is a phenomenon or structure that can only appear in a system with many users or many nodes, and each user can connect to and influence other nodes. In layman's terms, everyone is the center, and everyone can connect and influence other nodes. This flat, open source, and equalized phenomenon or structure is called "decentralization." At the same time, "decentralization" is one of the typical characteristics of blockchain.

  6. Hard to forge:

    Roughly the same as not tamperable, but not impossible. Although changing a certain data will invalidate the block, the attacker can change the hash of the block and all subsequent blocks to form a new chain. As long as the length of the new chain is greater than the length of the original chain, it may be accepted . However, this requires a larger attack cost, which leads to a 51% attack.

  7. 51% attack:

    If an attacker branches a new chain from a certain block of the blockchain (changes the data forged chain), as long as the length of the new chain exceeds the original length, the miners will automatically choose the longest chain as the main chain by default. , This will switch to the fake chain. To make the forgery longer than the original chain, it is necessary to keep catching up and generate blocks at a faster rate than the original chain. Therefore, on average, as long as 51% of the computing power is controlled, it is possible to catch up. (Because you have to compete with the rest of the computing power, you must control more than half of the computing power of the entire network, that is, at least 51%). This kind of attack is prone to occur on chains with small computing power. The latest attack occurred on ETC, which occurred in August 2020, causing OKEX to lose approximately US$5.6 million.

  8. Light node:

    A full node will store all data, so the data grows too fast, causing pressure on storage. In some applications, such as Simplified Payment Verification (SPV), a light node is allowed. It only downloads the Merkel tree branch related to its own transaction and can confirm the status of any transaction and the current balance of the account. . So it is called simplified payment verification. Currently, light nodes cannot make transactions, and must be connected to full nodes to make transactions.

  9. distributed:

    In fact, it should be a distributed system. Of course, it can also be said that the system is distributed. A distributed system is a system composed of a group of computer nodes that communicate through a network and coordinate work in order to complete common tasks. Usually distributed mainly include distributed computing (computation) and distributed storage (storage). Distributed in the blockchain should refer to the distributed topology. All its nodes are equal, distributed all over the world, and perform the same function. A single node failure will not affect the entire network.

  10. Mining:

    In a blockchain system that uses proof of work, everyone calculates a mathematical problem at the same time, and whoever calculates first will make a block. The metaphor of the behavior of generating blocks is mining (the process of calculation is the process of mining, and the final block is the mine), and those who perform calculations are called miners. Because there is the cost of computing power, there is a reward after the block is generated.

  11. Block reward:

    Because mining is difficult (difficulty of math puzzles) and cost (hardware cost and electricity cost), a certain amount of economic compensation must be given to the generated block to maintain the continuous mining of miners. This economic compensation is called a block reward. The block reward is not fixed and will be halved after a period of time. At the same time, due to the existence of invalid blocks, in Ethereum, uncle blocks also have certain block rewards.

  12. Proof of Work POW:

    Proof-of-Work (PoW) is an economic countermeasure against service and resource abuse, or denial of service attacks . Generally, users are required to perform some time-consuming and appropriate complex calculations, and the answers can be quickly checked by the service party. The time, equipment, and energy consumed are used as guarantee costs to ensure that services and resources are used by real needs. This concept was proposed in 1993, but it was carried forward in 2009 when Satoshi Nakamoto applied it to Bitcoin.

  13. Hash puzzle:

    For proof of work, assuming that there is a formula that outputs any number, a hash will be output (the same number outputs the same hash, but the input number cannot be deduced from the hash). However, not any hash output is valid, and certain difficulty conditions must be met, such as how many digits must be 0. In order to find the input numbers that can generate such a hash, one can only keep trying one by one, and there is no shortcut. Usually it takes a lot of calculation (computing power) to get it, and small probability events are found quickly. This is the proof of work and hash puzzle. Of course, the formula for each block is different (there is a random number in it).

  14. Byzantine generals question:

    In distributed computing, different computers reach a consensus through communication and exchange information and act in accordance with the same set of collaborative strategies. But sometimes, the member computers in the system may make mistakes and send wrong information, and the communication network used to transmit information may also cause information damage, causing different members of the network to draw different conclusions about the overall cooperation strategy, thereby destroying the consistency of the system. . The Byzantine Generals problem is considered to be one of the most difficult types of fault tolerance problems.

    The original question is: 9 Byzantine generals, 4 people voted to attack, 4 people voted to retreat, and 1 person was rebellious. It can deliberately retreat to the retreating person and attack the attacking person, so that both sides think of themselves Decision for the majority, destroying the overall consistency. In addition, the generals rely on messenger communication (not secure), and voting decisions in the middle can also be tampered with.

    If those loyal (or error-free) generals can still decide their strategy by majority decision, it is said to have reached Byzantine fault tolerance.

    Among the early solutions, one believed that as long as the error rate is less than 1/3, Byzantine fault tolerance can still be achieved. In 1999, the Practical Byzantine Fault Tolerance (PBFT) algorithm was proposed. This algorithm can provide high-performance computing, enabling the system to process thousands of requests per second, and solve the problem of low efficiency of the original Byzantine fault-tolerant algorithm. The core theory of the PBFT algorithm is still n>=3f+1.

  15. Hash function:

    Also called a hash function. Given any kind of data, this function can generate a hash value. A good hash function is difficult to have a hash collision phenomenon (a hash collision means that the generated hash values ​​are the same, because if a value in a large interval is mapped to a cell, it must be in conflict ). The hash function has the following characteristics at the same time (given the same hash function): (1) If the two hash values ​​generated are different, then their original inputs are different, which is called determinism. (2) The input value cannot be obtained from the hash value, which is called irreversibility. (3) The same input will only generate the same hash.

  16. Elliptic curve cryptography: (Elliptic curve cryptography), referred to as ECC, is an algorithm for establishing public key encryption, which is asymmetric encryption. Similarly, there are RSA, ElGamal algorithm and so on. ECC is recognized as the most secure encryption algorithm under a given key length. The public and private key generation and signature algorithm ECDSA in Bitcoin and Ethereum are all based on ECC. In fact, elliptic curve is not the ellipse shape we usually learn. The origin of its name is because the description equation of elliptic curve is similar to the equation for calculating the circumference of an ellipse. RSA uses the complexity of "large number prime factorization", while ECC uses the complexity of "discrete logarithm problem on elliptic curve".

  17. Cryptography:

    Can be divided into classical cryptography and modern cryptography. Classical cryptography mainly focuses on the confidential writing and transmission of information, and the corresponding deciphering methods. However, modern cryptography not only pays attention to information confidentiality, but also involves information integrity verification, non-repudiation of information release, and other security issues. Cryptography is a branch of mathematics and computer science.

  18. Asymmetric encryption and public/private keys:

    Asymmetric encryption algorithms require two keys: public key publickey: public key for short) and private key (privatekey: private key for short). The public key and the private key are a pair. If the public key is used to encrypt data, only the corresponding private key can decrypt it. Otherwise, use the private key to encrypt, and use the corresponding public key to decrypt. Because encryption and decryption use two different keys, this algorithm is called an asymmetric encryption algorithm.

  19. Public/private key: Take Ethereum as an example (Bitcoin is similar). Each external account (non-contract account) consists of a public/private key pair. The private key is a 32-byte hexadecimal character. Using the elliptic curve algorithm, ECDSA-secp256k1the unique public key (64 bytes) can be derived from the private key, but the reverse cannot be derived. Use a hash algorithm Keccak-256to hash the derived public key to obtain a 32-byte hash value, and then take the last 20 bytes as the account address. So the account public key is not equal to the account address. The public/private key here is also the public/private key of asymmetric encryption.

  20. digital signature:

    Digital signature is some data attached to the data unit, or the cryptographic transformation of the data unit. This kind of data or transformation allows the recipient of the data unit to confirm the source of the data unit and the integrity of the data unit and protect the data from being forged by someone (for example, the recipient). For example, an external account on Ethereum uses a private key to digitally sign a transaction, indicating that the transaction was initiated and approved by the account.

  21. Public chain:

    Open public network, anyone can participate; decentralization, anonymity, immutability, and transparency are its main characteristics. The main representatives are Bitcoin, Ethereum, etc. However, the public chain has a trade-off between security and performance, so the throughput is weaker, the TPS is lower, and the block generation time is longer.

  22. Alliance chain:

    A non-open permissioned network that applies blockchain technology to commercial organizations, usually providing services for the collaboration between multiple enterprises. The main representatives are Hyperledger, FISCO BCOS, etc.

  23. Private chain:

    Similar to the alliance chain, but generally only used for a single enterprise, with stronger authority control.

  24. Side chain:

    The sidechains in the blockchain do not actually refer to a certain blockchain, but all the blockchains that comply with the side chain protocol. This term is relative to the Bitcoin main chain. The side chain protocol refers to a protocol that allows Bitcoin to be safely transferred from the Bitcoin main chain to other blockchains, and can be safely returned to the Bitcoin main chain from other blockchains.

    The essence of the side chain is to first lock some of your assets on the main chain, and operate your assets on the side chain, and then settle on the main chain when the operation cycle ends.

  25. Cross-chain agreement:

    Information between various blockchains is isolated, and cross-chain technology can allow different blockchains to achieve interoperability, thereby forming the "Internet" of blockchains and realizing greater application space and value. In a narrow sense, cross-chain is a protocol that solves the mutual transfer, transfer, and exchange of assets and functional states on two or more different chains. Broadly speaking, side chains and cross-chains are both specific schemes of inter-chain interoperability protocols. Therefore, we refer to all side chains and cross-chain protocols as cross-chain interoperability protocols.

  26. Raiden Network:

    Ethereum's main ways to improve transaction processing capabilities include: sharding, Plasma chain, and state channels.

    Raiden Network is an implementation of state channel technology on Ethereum. Ethereum's Raiden Network is similar to Bitcoin's Lightning Network, but it supports all ERC20 tokens. Raiden Network Raiden Network uses the payment channel network to expand the off-chain capacity of the Ethereum network, so that the blockchain does not have to participate in each token transmission. These off-chain transactions are faster and cheaper than on-chain transactions, and are more suitable for the Internet of Things.

    Raiden network application: raidEX, a decentralized exchange based on the state channel technology under Ethereum and Raiden chain.

  27. Lightning Network:

    The off-chain expansion of the Bitcoin blockchain is similar to the Raiden Network, but only supports BTC transmission.

  28. Plasma: Plasma is another scale-up network that helps the Ethereum blockchain to handle larger data sets than it is currently. It processes smart contracts in a similar way to the main chain, and only broadcasts completed transactions to the Ethereum public chain. Raiden Network and Plasma are complementary-Plasma can process smart contracts, which will trigger Raiden Network to execute these payments. The Raiden network and the Plasma chain are called Layer 2 expansion schemes, because they are not extended on the main chain but are the second layer network.

  29. Fragmentation:

    As the use of the Ethereum network continues to increase, there are more and more applications and transactions, which makes the speed of the Ethernet network slower. Sharding is a Layer 1 expansion solution of Ethereum 2.0. Its main idea is to split the data so that each node group only verifies one of them. According to the plan, Ethereum 2.0 will initially enable 64 shards.

  30. Beacon Chain:

    The core of Ethereum 2.0, 2.0 does not adopt POW, but adopts the validator model. The main content of the beacon chain is to record the registry of verifier addresses, the status of each verifier, witness messages, and information linked to shards. The verifier needs to be activated through the beacon chain before participating, and can also change its state.

    The beacon chain is to track the shard chain (the latest block) through cross-linking. Because there are 64 shards, each beacon chain can contain up to 64 crosslinks. The beacon chain serves as the basis for shard chain fork selection, shard chain certainty, and cross-shard communication.

  31. Blockchain expansion:

    With the increase in transactions and applications, the current blockchain has encountered a problem in improving scalability: each node must verify and execute all transactions.

    From the perspective of computer science, there are two main ways to expand throughput:

    A. Vertical expansion: The main idea is to strengthen the nodes and make the nodes more and more powerful.
    B. Horizontal expansion: The effect is to add more nodes.

    Because of the decentralized mechanism of the blockchain, it can only be expanded horizontally. Expansion includes Layer 1 and Layer 2 expansion methods.

  32. Consensus mechanism:

    Blockchain is a decentralized distributed ledger system, and the consensus mechanism solves the problem of mutual trust between nodes based on the idea of ​​decentralization. The consensus mechanism allows consensus among the nodes of the blockchain. The consensus mechanism includes consensus algorithms and consensus rules. Common consensus mechanisms are as follows: POS, DPOS, POW, RAFT, BFT, PAXOS, POOL, RPCA, etc.

  33. Digital currency:

    Digital currency can be considered a virtual currency based on a node network and digital encryption algorithm. After Bitcoin appeared, it posed a huge challenge to the existing monetary system. Although it belongs to virtual currency in a broad sense, there are essential differences. Therefore, it is called a digital currency. Its main features are: low transaction cost, fast transaction speed, and high anonymity.

Guess you like

Origin blog.csdn.net/weixin_39430411/article/details/108228222