高朋 区块链,区块链 高鹏
近年来,随着区块链技术的发展,“高朋区块链”也迅速受到了关注。这一技术能够为金融、物联网等行业带来巨大的变革。高朋区块链是由高鹏发起的一种分布式账本技术,它可以解决传统金融系统中的许多问题,如安全性、可信性和效率问题。
高朋区块链的核心是一个分布式账本,它可以追踪资产的流动,并且可以被安全地存储、复制和共享。它不仅能够保护用户的隐私,还能够提高金融机构的安全性和可信度。此外,高朋区块链还能够改善金融机构的跨境支付能力,提高交易的效率,并降低交易成本。
另外,高朋区块链还能够为金融行业带来更多的变革。例如,它可以改变传统金融机构的效率,从而提高金融服务的可用性和可靠性。此外,它还可以改变金融市场的结构,从而为投资者提供更多的机会和便利。
总之,高朋区块链是一种创新的技术,它可以为金融行业带来巨大的变革,改变金融机构的工作方式,提高金融服务的可用性和可靠性,并有望为投资者提供更多的机会和便利。高鹏发起的高朋区块链技术将为金融行业带来新的变革,为投资者提供更多的机会和便利。
请查看相关英文文档
❶ What is the concept of blockchain? Read it in three minutes!
On October 25, 2019, Xinwen Broadcast sent a very important signal: the country must vigorously develop blockchain. After that, blockchain has become an Internet celebrity, and the figure of "blockchain" is floating in the streets and alleys. In fact, many technology companies have already deployed blockchain technology.
Although blockchain is very popular, many people do not know much about blockchain.
What is blockchain?
Let’s first take a look at how Du Niang explained it. Network display: Blockchain is a new application model of computer technologies such as distributed data storage, point-to-point transmission, consensus mechanism, and encryption algorithms.
Why is blockchain called blockchain?
The blockchain is linked by blocks one by one, and the blocks are storage units one by one, which record the communication information of each block node. The blocks are much like the records of the database. Writing data every time creates a block. With the expansion of information exchange, one block continues with another, and the result is called a blockchain.
What are the characteristics of blockchain?
Blockchain mainly has the following characteristics:
1. Decentralization: In the blockchain system, every node has equal rights. and obligations, there is no central control here. Decentralization has well established trust relationships with each other. Although there is no central management organization, people can collaborate with each other and trust each other. This mainly applies blockchain distributed ledger technology.
2. Openness: Blockchain data is open to everyone. Except for some encrypted information that is not open, everyone can check the data here.
3. Independence: The entire blockchain system does not rely on other third parties. All nodes can automatically and securely verify and exchange data within the system without any human intervention.
4. Security: Blockchain has a certain degree of security and cannot be tampered with. Because everyone in the blockchain system has the same ledger, if someone wants to tamper with it, it is possible to forge a non-existent record only if they control more than 51% of the accounting nodes. Of course, this is basically impossible. This is mainly due to the core technology of the blockchain: the consensus mechanism. The consensus mechanism has the characteristics of "the minority obeys the majority" and "everyone is equal".
5. Anonymity: Many people think that if the blockchain is so open and transparent, will we lose privacy? In fact, no, although the transaction information in the blockchain is open and transparent, the identity information of the account is encrypted and can only be accessed with authorization.
Now let me tell you a story to help you better understand the blockchain.
There are three people in the family, mom, dad, older brother and younger brother. Last year, my father was in charge of the family's account books. He was responsible for all the family's income and expenses alone.
However, on the day of Double Eleven, my mother, who has always been frugal, wanted to buy herself a beautiful piece of clothing on a certain online store. When she checked the account book, she found something was wrong. It stands to reason that except for some money deposited in banks and financial management, the whereabouts of the daily consumption money at home are all in this account book, but no matter how you look at it, it is wrong. Some consumption is clearly not recorded, but is recorded.
Later, my father took the initiative to confess that he couldn’t help but buy a pack of cigarettes.
Later, my mother changed her strategy and the whole family kept accounts. Everyone recorded their monthly consumption expenditure in their own account books. Whenever there was a transaction or consumption at home, my mother would shout, "Book it," and everyone would record the transaction in their own books. This is the decentralized accounting model, where everyone is the center and everyone has a ledger.
The previous accounting model for dad was centralized accounting. If dad wanted to do something alone, it would be difficult for anyone to see it. The decentralized accounting model has solved the problem of centralization very well. The disadvantage of bookkeeping is that it is very difficult for dad to tamper with the books.
For example, if my father wants to take some money from the ledger and secretly buy cigarettes, the amount of money is limited, and if he wants to take the money, he has to change the ledger, but he only tampered with his own ledger. No, he had to change the accounts of three people including himself. And this is undoubtedly more difficult than reaching the sky.
So, many times my father had the idea of smoking, but he had no choice but to give up the idea due to the current situation.
Are blockchain and Bitcoin the same thing?
In fact, blockchain and Bitcoin are not the same thing. It is just the underlying technology of Bitcoin. Bitcoin is the first digital currency applied by blockchain.
In 2008, Satoshi Nakamoto first proposed the concept of blockchain. In the following years, it became a core component of the electronic currency Bitcoin, serving as a public account book for all transactions. Blockchain was first applied to Bitcoin.
The origin of blockchain is to solve the problem of trust, and one of the most successful applications of blockchain is digital currency. Bitcoin is arguably the most successful application of blockchain so far.
What are the applications of blockchain?
The application of blockchain is actually very wide. In addition to digital currency, the future applications of Bitcoin are still very extensive. Blockchain technology has been widely used in different industries. Such as product traceability, copyright protection andTransactions, payment and settlement, Internet of Things, digital marketing, medical care, etc., promote different industries to quickly enter the "blockchain+" era.
1. Payment and clearing: Blockchain can abandon the role of transit banks, realize point-to-point payment, reduce transit fees, and accelerate fund utilization.
2. Product traceability: For example, if we buy a piece of clothing on a certain store, we can see the past and present life of this piece of clothing.
3. Securities trading: Traditional securities trading requires the coordination of four major institutions, which is inefficient and costly. Blockchain technology can independently complete one-stop services.
4. Supply chain: Introducing blockchain technology into the supply chain system, synchronizing information within the system can control all links, better complete division of labor and collaboration, and facilitate subsequent accountability.
5. Intellectual property rights: With copyright on the chain, our photographic works, musical works, literary works, etc. will become our information, and the ownership of the information will be confirmed and become our property.
❷ What exactly is blockchain
What is blockchain?
Blockchain is a new application model of computer technologies such as distributed data storage, point-to-point transmission, consensus mechanism, and encryption algorithm. The so-called consensus mechanism is a mathematical algorithm that establishes trust and obtains rights and interests between different nodes in the blockchain system [1].
Blockchain is an important concept of Bitcoin. It is essentially a decentralized database and serves as the underlying technology of Bitcoin. The blockchain is a series of data blocks generated using cryptographic methods. Each data block contains information about a Bitcoin network transaction and is used to verify the validity of its information (anti-counterfeiting) and generate the next block.
Blockchain was born from Satoshi Nakamoto’s Bitcoin. Since 2009, various Bitcoin-like digital currencies have appeared, all based on public blockchains.
The current situation of digital currency is that a hundred flowers are blooming. Here are some common ones: bitcoin, litecoin, dogecoin, dashcoin. In addition to currency applications, there are also various derivative applications, such as Ethereum, Asch and other underlying application development platforms, as well as NXT , SIA, BitShares, MaidSafe, Ripple and other industry applications.
On January 20, 2016, the People’s Bank of China Digital Currency Seminar announced that it had achieved phased results in digital currency research. The meeting affirmed the value of digital currency in reducing the issuance of traditional currency and stated that the central bank is exploring the issuance of digital currency. The expression of the People’s Bank of China’s Digital Currency Seminar has greatly enhanced the confidence of the digital currency industry. This is the first time that the five central bank ministries and commissions have expressed a clear attitude towards digital currencies since they issued a notice on preventing Bitcoin risks on December 5, 2013. [4]
December 20, 2016Digital Currency Alliance - China FinTech Digital Currency Alliance and FinTech Research Institute are officially established, and Huobi is one of the co-initiators. [5]
Some areas where blockchain can be used are:
▪ Smart contracts
▪ Securities trading
▪ E-commerce
▪ Internet of Things
▪ Social communication
▪ File storage
▪ Proof of existence
▪ Identity verification
▪ Equity crowdfunding
We can compare the development of blockchain to the development of the Internet itself , something called finance-internet will be formed on the Internet in the future, and this thing is based on blockchain, and its precursor is bitcoin, that is, traditional finance starts from private chains and industry chains (local area network), and the bitcoin series starts from public chains (Wide Area Network), they all express the same concept - digital assets (Digital Asset), and finally converge to an intermediate balance point.
The evolution of blockchain is:
▪ Blockchain 1.0 - digital currency
▪ Blockchain 2.0 - digital assets and smart contracts
▪ Blockchain 3.0 ——The implementation of distributed applications in various industries
Blockchain is divided into three categories, which is introduced in detail in the book "Blockchain: Defining the New Pattern of Future Finance and Economics" [2] issued by Currency, < br />Hybrid blockchains and private blockchains can be considered as broad private chains:
Public Blockchains (PublicBlockChains)
Public blockchains refer to: any individual or group in the world Transactions can be sent and effectively confirmed by the blockchain, and anyone can participate in its consensus process. The public blockchain is the earliest blockchain and the most widely used blockchain. The virtual digital currencies of all major bitcoins series are based on the public blockchain. There is only one blockchain corresponding to this currency in the world. .
Consortium (Industry) Blockchain (ConsortiumBlockChains)
Industry Blockchain: Multiple preselected nodes are designated within a certain group as bookkeepers, and the generation of each block is jointly performed by all preselected nodes. Decision (pre-selected nodes to participate in the consensus process), other access nodes can participate in transactions, but do not participate in the accounting process (essentially still managed accounting, just become distributed accounting, how many pre-selected nodes, how to determine the number of each block The bookkeeper becomes the main risk point of the blockchain), and anyone else can conduct limited queries through the open API of the blockchain.
Private Blockchain (privateBlockChains)
Private blockchain: only uses the general ledger technology of the blockchain for accounting. It can be a company or an individual. It has exclusive write permission to the blockchain. This chain is distributed with other There is not much difference between storage solutions. (Dec2015) Conservative giants (traditional finance) all want to experiment with private blockchains, while public chain applications such as Bitcoin have been industrialized, and private chain application products are still being explored.
❸ Blockchain technology concept
Blockchain technology concept
Blockchain technology concept, nowadays, blockchain has become the concern of most people In the field of blockchain, many companies have already studied this technology in depth, but there are still people who don’t know much about it. Below I will share an article about the concept of blockchain technology.
Blockchain technology concept 1Basic concepts and working principles of blockchain
1. Basic concepts
Blockchain is a distributed data storage, point-to-point New application models of computer technologies such as transmission, consensus mechanisms, and encryption algorithms. The so-called consensus mechanism is a mathematical algorithm that establishes trust and obtains rights and interests between different nodes in the blockchain system.
Blockchain is an important concept of Bitcoin. It is essentially a decentralized database and serves as the underlying technology of Bitcoin. The blockchain is a series of data blocks generated using cryptographic methods. Each data block contains information about a Bitcoin network transaction, which is used to verify the validity of the information, prevent counterfeiting, and generate the next block.
In a narrow sense, blockchain is a chained data structure that combines data blocks in a sequential manner in chronological order, and is cryptographically guaranteed to be non-tamperable and non-tamperable. Fake distributed ledger.
Broadly speaking, blockchain technology uses block chain data structures to verify and store data, uses distributed node consensus algorithms to generate and update data, and uses cryptography to ensure data transmission and access. It is a new distributed infrastructure and computing method that uses smart contracts composed of automated script codes to program and operate data securely.
2. Working principle
The blockchain system consists of data layer, network layer, consensus layer, incentive layer, contract layer and application layer. Among them, the data layer encapsulates the underlying data blocks and related basic data and basic algorithms such as data encryption and timestamps; the network layer includes distributed networking mechanisms, data dissemination mechanisms, and data verification mechanisms; the consensus layer mainly encapsulates network nodes Various consensus algorithms; the incentive layer integrates economic factors into the blockchain technology system, mainly including the issuance mechanism and distribution mechanism of economic incentives; the contract layer mainly encapsulates various scripts, algorithms and smart contracts, and is the core of the blockchain The basis of programmable features; the application layer encapsulates various aspects of the blockchainapplication scenarios and cases. In this model, the chain block structure based on timestamps, the consensus mechanism of distributed nodes, economic incentives based on consensus computing power, and flexible programmable smart contracts are the most representative innovations of blockchain technology.
Blockchain mainly solves the trust and security issues of transactions, so it proposes four technological innovations to address this issue:
1. Distributed The ledger means that transaction accounting is completed by multiple nodes distributed in different places, and each node records a complete account, so they can all participate in supervising the legality of the transaction and can also jointly testify for it.
Different from traditional distributed storage, the uniqueness of blockchain distributed storage is mainly reflected in two aspects: First, each node of the blockchain stores complete data according to the block chain structure. For data, traditional distributed storage generally divides the data into multiple parts for storage according to certain rules. Second, the storage of each node in the blockchain is independent and has equal status, relying on the consensus mechanism to ensure the consistency of storage, while traditional distributed storage generally synchronizes data to other backup nodes through the central node. [8]
No node can record ledger data independently, thus avoiding the possibility of a single bookkeeper being controlled or bribed to record false accounts. Also because there are enough accounting nodes, theoretically speaking, the accounts will not be lost unless all nodes are destroyed, thereby ensuring the security of the accounting data.
2. Asymmetric encryption and authorization technology. Transaction information stored on the blockchain is public, but account identity information is highly encrypted and can only be accessed with authorization from the data owner. , thus ensuring data security and personal privacy.
3. The consensus mechanism is how all accounting nodes reach a consensus to determine the validity of a record. This is both a means of identification and a means of preventing tampering. Blockchain proposes four different consensus mechanisms, which are suitable for different application scenarios and strike a balance between efficiency and security.
The consensus mechanism of the blockchain has the characteristics of "the minority obeys the majority" and "everyone is equal". "The minority obeys the majority" does not entirely refer to the number of nodes, but can also be the computing power and the number of shares. Or other characteristic quantities that the computer can compare. "Everyone is equal" means that when a node meets the conditions, all nodes have the right to give priority to the consensus result, which will be directly recognized by other nodes and may eventually become the final consensus result. Taking Bitcoin as an example, it uses proof of work. Only when more than 51% of the accounting nodes in the entire network are controlled, it is possible to forge a non-existent record. When there are enough nodes joining the blockchain, this is basically impossible, thus eliminating the possibility of fraud.
4. Smart contracts. Smart contracts are based on these trustworthy and non-tamperable data. Some predefined rules and terms can be automatically executed. Taking insurance as an example, if everyPersonal information, including medical information and risk occurrence information, is authentic and credible, so it is easy to carry out automated claims settlement in some standardized insurance products.
< p> 3. Others
The Internet exchanges information, and the blockchain exchanges value. Human history and the history of the Internet can be understood in eight words: if they are divided for a long time, they must be combined. For a long time, they must be combined. In the era of long-term separation, all network information is scattered on the Internet. It is very difficult for everyone to mine information. At this time, platforms such as Google and Facebook will appear. , the only thing it does is recombine all our information. In the Internet era, what the monopoly giants reorganize is information, rather than generating their own information. The information generated is entirely our own. Once the information is reorganized, a new monopoly giant will emerge, so it will be an era of long-lasting separation. Now, due to the emergence of blockchain technology, it has entered an era of integration and division. It is a new multi-centralization. After the new multi-centralization, new value will be generated. These data will be in our own hands, and personal data will generate value. It belongs to oneself. This is the most exciting era of this era.
What is the value of blockchain? A low-cost mechanism to establish trust, establish data rights, and resolve data property rights.
At present, blockchain technology continues to develop, including the current development of single chains to multi-chains, and the technology can be further expanded. I think there may still be disruptions in the future, especially in transactions and other aspects. , especially many disruptive scenarios for existing industries.
The essence of blockchain is to establish trusted information exchange on untrustworthy networks.
One Belt, One Road + One Chain. The bigger thing about blockchain is not to create trust, but to allow trust to be transmitted losslessly, reducing the friction cost of society as a whole, thereby improving the overall efficiency.
Now the blockchain itself is still in its initial stage, so it includes the information transmission and encryption of the blockchain. Quantum encryption and other encryption appear in this process, which actually attacks the encryption algorithm used by the blockchain itself. This phenomenon also occurs from time to time. Including blockchain is also a recognition of assets, a recognition of digital assets, but now many of us use cryptographic algorithms, or as the key for us to decrypt, but if you forget the password, it is very likely that your current assets will be lost. If you lose them, you won't be able to get back your original assets. Therefore, there are still some hidden dangers in asset management, including information transmission and some security aspects. Of course, from a technical perspective, the processing speed of our blockchain itself, or its scalability, is because from the perspective of the working mechanism, the entire ledger must be copied to all participants, so in the blockchain Its operational efficiency and scalability are still relatively limited. We feel that these still need further development in terms of technology.
The underlying technologies of the blockchain platform include blockchain wallets, blockchain browsers, andThere are a series of ecosystems such as point campaigns, mining machines, mining pools, development components, development modules, technical communities and project communities. The perfection of these ecosystems directly determines the efficiency and effectiveness of the underlying platform of the blockchain.
4. Mundell’s Impossible Triangle
It is impossible to achieve the ultimate in decentralization, efficiency, and security at the same time.
Blockchain technology concept 2The essence of blockchain is a distributed accounting technology, as opposed to centralized accounting technology, which is widely used in our current lives. exist. Blockchain is a new application model of computer technology such as distributed data storage, point-to-point transmission, consensus mechanism, and encryption algorithm.
Blockchain is an important concept of Bitcoin. It is essentially a decentralized database. At the same time, as the underlying technology of Bitcoin, it is a series of related cryptographic methods. Each data block contains a batch of Bitcoin network transaction information, which is used to verify the validity and anti-counterfeiting of the information and generate the next block.
In a narrow sense, blockchain is a chained data structure that combines data blocks in a sequential manner in chronological order, and is cryptographically guaranteed to be non-tamperable and non-tamperable. Fake distributed ledger.
Broadly speaking, blockchain technology uses block chain data structures to verify and store data, uses distributed node consensus algorithms to generate and update data, and uses cryptography to ensure data transmission and access. It is a new distributed infrastructure and computing method that uses smart contracts composed of automated script codes to program and operate data securely.
The popular understanding of blockchain technology is: connecting the front, back, left and right blocks of "things" into a chain using one technology, but each block The original data of the block cannot be tampered with. It is a "linked module" technology in the field of Internet of Things that allows participants to trust. The application of blockchain technology is inseparable from the Internet and the Internet of Things. It is based on the integration and interaction of the two, but allows participants to remain independent, decentralized, and work together. With this set of value chain co-construction and sharing, technology.
Characteristics of blockchain: decentralization, openness, autonomy, information cannot be tampered with, and anonymity.
Blockchain is a network that can deliver value. The demand for a network that can deliver value is an important reason for the emergence of blockchain technology. Blockchain emerged driven by the need to protect information with ownership or other value. Through public and private key cryptography, distributed storage and other technical means, blockchain ensures on the one hand the efficient transmission of valuable information, and on the other hand ensures that this information will not be easily copied and tampered with during the transmission process.
Understand the connotation of blockchain from the inevitability of its birth. Blockchain solves the problem of centralized accounting.Point, the distributed accounting technology that solves the problem of distributed consistency is also a value network that connects the Internet and upgrades it to ensure the safe and efficient transmission of valuable information.
Blockchain Technology Concept 3Blockchain: Blockchain is like a globally unique account book, or database, which records the history of all transactions in the network.
Ethereum Virtual Machine (EVM): It allows you to write more powerful programs on Ethereum and script programs on Bitcoin. It is also sometimes used to refer to the Ethereum blockchain, which is responsible for executing smart contracts and everything.
Node: You can run a node to read and write to the Ethereum blockchain, that is, using the Ethereum Virtual Machine. Full nodes require downloading the entire blockchain. Light nodes are still under development.
Miner: Mining, that is, the node that processes blocks on the blockchain. You can see some of the currently active Ethereum miners on this page: stats.ethdev.com.
Proof of Work: Miners are always competing to solve some mathematical problem. The first one to solve the problem (calculate the next block) will be rewarded with Ether coins. All nodes then update their own blockchain. All miners who want to figure out the next block have an incentive to stay in sync with other nodes and maintain the same blockchain, so the entire network can always reach consensus. (Note: Ethereum is planning to move to a proof-of-stake system (POS) without miners, but that is outside the scope of this article.)
Ethereum: Abbreviation ETH. A true digital currency that you can buy and use. Here is a chart from one of the exchanges where Ethereum can be traded. At the time of writing, 1 Ether is worth 65 cents.
Gas: Executing programs and saving data on Ethereum consumes a certain amount of Ethereum. Gas is converted from Ethereum. This mechanism is used to ensure efficiency.
DApp: The Ethereum community calls applications based on smart contracts decentralized applications (Decentralized App). The goal of DApp is (or should be) to have a friendly interface for your smart contracts, plus some extras, such as IPFS, a decentralized network that can store and read data, not from the Ethereum team but in a similar spirit ). DApp can run on a centralized server that can interact with Ethereum nodes, or it can run on any Ethereum equal node. (Take a minute to think about this: Unlike ordinary websites, DApps cannot run on ordinary servers. They need to submit transactions to the blockchain and read important data from the blockchain rather than a centralized database. Compared to typical users When logging into the system, the user may be represented as a wallet address and other user data is stored locally. Many things will be structured differently from current web applications.)
Ethereum client, smart contract language
p>Writing and deploying smart contracts does not require you to run an Ethereum node. Browser-based IDEs and APIs are listed below. But if you are just learning, you should still run an Ethereum node to understand the basic components, and running a node is not difficult.
Clients available for running Ethereum nodes
Ethereum has many client implementations in different languages, that is, multiple methods of interacting with the Ethereum network, , including C++, Go, Python, Java, Haskell, etc. Why do we need so many implementations? Different implementations can meet different needs. For example, the goal of Haskell implementation is to be mathematically verifiable, to make Ethereum more secure, and to enrich the entire ecosystem.
At the time of writing this article, I am using the client geth (go-ethereum) implemented in the Go language. At other times, I also use a tool called testrpc, which uses the Python client pyethereum. Later examples will use these tools.
About mining: Mining is fun, a bit like caring for your houseplant, but also a way to learn about the entire system. Although the current price of Ethereum may not even cover the electricity bill, who knows in the future. People are creating many cool DApps that may make Ethereum more and more popular.
Interactive console: Once the client is running, you can synchronize the blockchain, create a wallet, and send and receive Ethereum. One way to use geth is through the Javascript console. In addition, you can use cURL-like commands to interact with the client through JSON RPC. The goal of this article is to take you through the process of DApp development, so I won’t go into details about this. But we should remember that these command line tools are useful for debugging, configuring nodes, and using wallets.
Running the node on the test network: If you run the geth client on the official network, it will take quite a while to download the entire blockchain and synchronize with the network. You can determine if synchronization has occurred by comparing the last block number printed in the node logs with the latest block listed on stats.ethdev.com. ) Another problem is that running smart contracts on the official network requires real Ethereum. Running the node on the test network does not have this problem. At this time, there is no need to synchronize the entire blockchain. Just create your own private chain, which saves time for development.
Testrpc: Use geth to create a test network. Another faster way to create a test network is to use testrpc. Testrpc can help you create a bunch of test accounts with funds at startup. It also runs faster and is therefore better suited for development and testing. You can start with testrpc, and then as the contract slows downSlow shaping, transfer to the test network created by geth - the startup method is very simple, you only need to specify a networkid: geth --networkid "12345". Here is the code repository for testrpc, we will talk about it again below.
Next, let’s talk about the available programming languages, and then we can start the real programming. Solidity is the programming language used to write smart contracts.
There are several languages to choose from when writing smart contracts: Solidity, which is somewhat similar to Javascript, has a file extension of .sol. Serpent, which is similar to Python, has a file name ending in .se. There is also a Lisp-like LLL. Serpent has been popular for a while, but now the most popular and stable one is Solidity, so just use Solidity. I heard you like Python? Use Solidity.
solc compiler: After writing the smart contract with Solidity, you need to use solc to compile it. It is a component from a C++ client implementation. Again, different implementations complement each other. Here is how to install it. If you don't want to install solc, you can also use a browser-based compiler, such as Solidity real-time compiler or Cosmo. The programming sections below will assume you have solc installed.
web3.js API. After the Solidity contract is compiled and sent to the network, you can use Ethereum's web3.js JavaScript API to call it and build web applications that can interact with it.
❹ Summary of general concepts of blockchain
Although I am a front-end developer, it cannot stop me from gossiping about various hot topics. Below is a brief summary of some of the conceptual things learned.
1. Blockchain technology was born with Bitcoin, so first understand the concept of Bitcoin
2. What is Bitcoin
(1) , Digital currency based on distributed network
3. Operating principle of bit system
(1) All nodes will save complete ledgers
(2 ), the ledger maintains consistency
4. Blockchain accounting principles
Hash functions are widely used in blockchain technology
(1), Hash function hash: any information will get a short summary information after hashing
(2), hash characteristics: simplified information, identification information,Hidden information and verification information
(3) Blockchain accounting will hash the bill information of the time node to form a block
(4) Bitcoin system Accounting is done every 10 minutes, that is, the time interval between each block is about 10 minutes
(5) When recording the next bill, the hash value of the previous block and the current bill will be recorded. The information is hashed together as the original information
(6). Each block contains the information of the previous blocks, and these blocks are combined to form a blockchain
5 , Ownership of Bitcoin - Asymmetric Encryption Application
The Bitcoin system uses an elliptic curve signature algorithm. The private key of the algorithm consists of a 32-byte random number. The public key can be calculated through the private key. The public key undergoes a sequence of hashing algorithms and encoding algorithms to obtain the Bitcoin address. The address can also be understood as a digest of the public key.
(1). Transfer is to transfer Bitcoin from one address to another
(2). The address private key is an asymmetric relationship. The private key passes through a series of (including two hashes), you can get the address, but the private key cannot be obtained from the address
(3) After the transfer is successful, it is broadcast to other nodes, and other nodes forward it to the relevant node after successful verification. Neighboring nodes, the broadcast information contains the original information and signature information
(4) Verification, other nodes verify whether the signature information is generated by the payer using the private key to sign the original transaction information. If It is recorded (then verify that there is sufficient balance)
6. How to mine Bitcoin
(1) Nodes that complete accounting can obtain a certain number of bits given by the system Coin rewards (this reward process is also the issuance process of Bitcoin, so everyone calls bookkeeping mining)
(2) Only one person can successfully bookkeeping within a period of time, so it is necessary to collect Collect the original transaction information, check whether there is a balance and correct signature
(3) In order to improve the difficulty of accounting, only one person can do accounting in about ten minutes. The hash result needs to start with several 0s, and Introduce random number variables when hashing
(4) As more miners join, the game becomes more and more difficult, the calculation difficulty increases, and the power loss increases. Domestic electricity costs are low, and China The computing power accounts for more than half of the entire network
(5). Only the fastest decrypted block in the network will be added to the ledger, and other nodes will copy it to ensure the uniqueness of the ledger. If a node cheats and causes the entire network to fail, it will be discarded and will never be recorded in the general ledger.middle. Therefore all nodes will abide by the common protocol of the Bitcoin system.
[Thinking about which fields blockchain will extend to]:
From the above concepts, it can be concluded that blockchain technology has such security, uniqueness, Decentralization.
In principle, some information leakage can be avoided, allowing the confirming party to confirm your identity without exposing your real user information.
At present, blockchain technology is mainly used in Bitcoin. I think the greater significance in the future should be in areas that require data privacy and security.
[Thinking about the bottlenecks and limitations of the current development of blockchain]:
Since each node participates in the entire ledger recording activity, it will inevitably cause waste and loss of resources. . As well as increasing the computational difficulty of each node, subsequent development and popularization require hardware improvements for each node.
❺ Tutorials for getting started with blockchain
However, there are very few simple and easy-to-understand introductory articles. What exactly blockchain is and what makes it special is rarely explained.
Next, I will try to write a best-understood blockchain tutorial. After all, it is not difficult. The core concept is very simple and can be explained clearly in a few sentences. I hope that after reading this article, you will not only understand the blockchain, but also understand what mining is, why mining is getting more and more difficult, and other issues.
It should be noted that I am not an expert in this area. Although I have been paying attention to it for a long time, my detailed understanding of blockchain started at the beginning of this year. You are welcome to correct any errors or inaccuracies in the article.
1. The essence of blockchain
What is blockchain? In a word, it is a special distributed database.
First of all, the main function of blockchain is to store information. Any information that needs to be saved can be written to the blockchain and read from it, so it is a database.
Secondly, anyone can set up a server, join the blockchain network, and become a node. In the world of blockchain, there is no central node. Every node is equal and stores the entire database. You can write/read data to any node, because all nodes will eventually be synchronized to ensure that the blockchain is consistent.
2. The biggest features of blockchain
Distributed databases are not a new invention, and there have been such products on the market for a long time. However, blockchain has a revolutionary feature.
Blockchain has no administrator, it is completely centerless. Other databases have administrators, but blockchain does not. If one wanted to add auditing to the blockchain, it would not be possible because it is designed to prevent the emergence of a central authority.
It is precisely because it is unmanageable that blockchain can be uncontrollable. Otherwise, once big companies and large groups control the management, they will control the entire platform, and other users will have to take orders from them.
However, without an administrator, everyone can write data into it. How can we ensure that the data is trustworthy? What if it is modified by a bad person? Please read on, this is the wonderful thing about blockchain .
3. Block
Blockchain is composed of blocks. Blocks are much like database records. Every time data is written, a block is created.
Each block contains two parts.
Head: records the characteristic values of the current block
Body: actual data
The block header contains multiple characteristic values of the current block.
Generation time
Hash of the actual data (i.e. block body)
Hash of the previous block
...
Here, you need to understand what a hash is , which is necessary to understand blockchain.
The so-called hashing means that the computer can calculate a characteristic value of the same length for any content. The hash length of the blockchain is 256 bits, which means that no matter what the original content is, a 256-bit binary number will be calculated in the end. And it can be guaranteed that as long as the original content is different, the corresponding hash must be different.
For example, the hash of the string 123 is (hexadecimal), which is 256 bits when converted to binary, and only 123 can get this hash. (Theoretically, it is possible for other strings to get this hash, but the probability is extremely low and can be approximated as impossible.)
Therefore, there are two important inferences.
Corollary 1: The hash of each block is different, and the block can be identified by the hash.
Corollary 2: If the content of the block changes, its hash will definitely change.
4. The non-modifiable nature of Hash
Blocks and hashes have a one-to-one correspondence, and the hash of each block is calculated based on the block header (Head). That is to say, the characteristic values of the block header are connected together in order to form a very long string, and then the hash is calculated on this string.
Hash = SHA256 (block header)
The above is the calculation formula of block hash. SHA256 is the hash algorithm of the blockchain. Note that this formula only contains the block header and not the block body. In other words, the hash is uniquely determined by the block header.
As mentioned before, the block header contains a lot of content, including the hash of the current block body. , and the hash of the previous block. This means that if the content of the current block body changes, or the hash of the previous block changes, it will definitely cause the hash of the current block to change.
This point has great significance for blockchain. If someone modifies a block, the hash of the block changes. In order for subsequent blocks to still be connected to it (because the next block contains the hash of the previous block), the person must modify all subsequent blocks in sequence, otherwise the modified block will be removed from the blockchain . Due to the reasons mentioned later, hash calculation is very time-consuming, and it is almost impossible to modify multiple blocks in a short time.It can happen unless someone controls more than 51% of the computing power of the entire network.
It is through this linkage mechanism that the blockchain ensures its own reliability. Once the data is written, it cannot be tampered with. This is just like history, what happened happened, and it can’t be changed from now on.
Each block is connected to the previous block, which is where the name blockchain comes from.
5. Mining
Since synchronization between nodes must be ensured, the adding speed of new blocks cannot be too fast. Just imagine, you have just synchronized a block and are preparing to generate the next block based on it, but at this time, another node generates a new block, and you have to give up half of the calculations and synchronize again. Because each block can only be followed by one block, you can only generate the next block after the latest block. So, you have no choice but to sync as soon as you hear the signal.
So, the inventor of the blockchain, Satoshi Nakamoto (this is a pseudonym, and his true identity is still unknown) deliberately made it difficult to add new blocks. His design is that on average, the entire network can generate a new block every 10 minutes, which is only six per hour.
This output speed is not achieved through commands, but by deliberately setting up massive calculations. In other words, only through an extremely large amount of calculations can the effective hash of the current block be obtained and the new block added to the blockchain. Because the amount of calculation is too large, it cannot be done quickly.
This process is called mining, because the difficulty of calculating a valid hash is like finding a grain of sand that meets the conditions among the sand in the world. The machine that calculates hashes is called a mining machine, and the person who operates the mining machine is called a miner.
6. Difficulty coefficient
After reading this, you may have a question. People say that mining is difficult, but isn’t mining just about using a computer to calculate a hash? This is the strength of computers. How could it be? It becomes very difficult, why can’t it be calculated?
It turns out that not just any hash can be used, only hashes that meet the conditions will be accepted by the blockchain. This condition is particularly harsh, causing most hashes to fail to meet the requirements and must be recalculated.
It turns out that the block header contains a difficulty coefficient (difficulty), which determines the difficulty of calculating the hash. For example, the difficulty coefficient of the 100,000th block is 14484.16236122.
The blockchain protocol stipulates that the target value (target) can be obtained by dividing the difficulty coefficient by a constant. Obviously, the greater the difficulty coefficient, the smaller the target value.
The validity of the hash is closely related to the target value. Only hashes smaller than the target value are valid, otherwise the hash is invalid and must be recalculated. Since the target value is very small, the chance that the hash is smaller than this value is extremely slim, and it may be calculated 1 billion times before it is considered a hit. This is the fundamental reason why mining is so slow.
As mentioned earlier, the hash of the current block is uniquely determined by the block header. If the hash is to be calculated repeatedly for the same block, it means that the block header must keep changing, otherwise it cannotCan calculate different hashes. All feature values in the block header are fixed. In order to make the block header change, Satoshi Nakamoto deliberately added a random item called Nonce.
Nonce is a random value. The role of the miner is actually to guess the value of Nonce so that the hash of the block header can be smaller than the target value so that it can be written to the blockchain. Nonce is very difficult to guess. At present, we can only use trial and error one by one through exhaustive methods. According to the protocol, Nonce is a 32-bit binary value, which can reach a maximum of 2.147 billion. The Nonce value of the 100,000th block is 274148111. It can be understood that the miner started from 0 and calculated 274 million times before obtaining a valid Nonce value so that the calculated hash can meet the conditions.
If you are lucky, you may find Nonce in a while. If you are unlucky, you may have calculated it 2.147 billion times without finding the Nonce, that is, it is impossible to calculate a hash that meets the conditions for the current block body. At this time, the protocol allows miners to change the block body and start a new calculation.
7. Dynamic adjustment of difficulty coefficient
As mentioned in the previous section, mining is random, and there is no guarantee that a block will be produced in exactly ten minutes. Sometimes it can be calculated in one minute, and sometimes it may take several hours. No result. Overall, with the improvement of hardware equipment and the increase in the number of mining machines, the computing speed will definitely become faster and faster.
In order to keep the output rate constant at ten minutes, Satoshi Nakamoto also designed a dynamic adjustment mechanism for the difficulty coefficient. He stipulated that the difficulty factor should be adjusted every two weeks (2016 blocks). If the average block generation speed in these two weeks is 9 minutes, it means that it is 10% faster than the legal speed, so the next difficulty factor will be increased by 10%; if the average block generation speed is 11 minutes, it means It is 10% slower than the legal speed, so the difficulty factor of the next step must be lowered by 10%.
The difficulty coefficient is adjusted higher and higher (the target value is getting smaller and smaller), which makes mining more and more difficult.
8. Forks of the blockchain
Even if the blockchain is reliable, there is still an unresolved problem: if two people write data to the blockchain at the same time, that is to say, two people write data to the blockchain at the same time. Blocks join because they are connected to the previous block, forming a fork. Which block should be adopted at this time?
The current rule is that new nodes always adopt the longest blockchain. If there is a fork in the blockchain, it will look at which branch is behind the fork to reach 6 new blocks first (called six confirmations). Based on a block calculation of 10 minutes, it can be confirmed in one hour.
Since the generation speed of new blocks is determined by computing power, this rule means that the branch with the most computing power is the authentic blockchain.
9. Summary
Blockchain, as an unmanaged distributed database, has been running for 8 years since 2009 without major problems. This proves it works.
However, in order to ensure the reliability of data, blockchain also has its own price. The first is efficiency. You have to wait at least ten minutes to write data to the blockchain. All nodes synchronize the data, which requires more time. The second is energy consumption. The generation of blocks requires miners to perform countless meaningless calculations. This is Very energy consuming.
Therefore, the applicable scenarios of blockchain are actually very limited.
There is no management authority that all members trust
The written data does not require real-time use
The benefits of mining can make up for its own costs
If the above conditions cannot be met, then the traditional database is Better solution.
Currently, the largest application scenario (and possibly the only application scenario) of blockchain is the cryptocurrency represented by Bitcoin.
- 上一篇: usdt区块链查询网址,usdt区块查询网站
- 下一篇: 区块链挖矿算法,区块链挖机算力是什么