Description of Ethereum blockchain query
a brief history of etheric Classics (etc)
etheric classics began with an unfortunate event
in May 2016, the decentralized autonomous organization (DAO) held a token sale with the goal of establishing a blockchain based venture capital to fund future decentralized applications (dapps) in the Ethereum ecosystem
basically, Dao is a complex smart contract that operates in a decentralized way - computer code that automatically performs tasks between multiple parties when conditions are met
despite its ambitious goals and successful token sales, Dao's code has a major vulnerability that allows attackers to steal eth from decentralized organizations
the attacker took advantage of this vulnerability in June 2016, triggering the infamous Dao hacking event, and maliciously stole eth worth about US $50 million
there is no doubt that Dao hacking has shocked Ethereum community and made eth price drop from $20 to $13
after the Dao hacking, the Ethereum community has to choose from three options
< UL >do nothing and try to bear the consequences of the attack
start soft bifurcation to recover funds
deploy a hard fork to recover the lost eth
both soft and hard bifurcations are significant network upgrades. However, soft fork allows users who are not upgraded to communicate with upgraded users, while hard fork is not backward compatible with previous versions
as developers realize that deploying soft forks will expose the network to distributed denial of service (DDoS) attacks, Ethereum community decides to initiate hard forks to recover the funds lost in Dao hacking attacks
although this scheme is supported by most people, a small number of people in Ethereum community oppose it. They think that "code is the law" and blockchain network should be unchangeable
the failure of both sides to reach an agreement on the solution eventually led to the fragmentation of Ethereum blockchain
those who tried to recover the lost eth chose the hard fork and opened the Ethereum (ETH) blockchain as we know it today, while another group stayed on the original Ethereum classic (etc) chain
what problems does ethereal classic solve
Ethernet classic (etc) is a blockchain platform that allows developers to deploy smart contracts and dapps
although this function is the same as Ethereum (ETH), etc blockchain has two main differences
first of all, Ethereum classic community opposes tampering with distributed ledger and supports the view that "blockchain network cannot and should not be modified"
secondly, although there is no rigid upper limit on the total supply of eth, it is allowed to create 230 million etc at most by adopting the monetary policy of constant supply
as a bonus item, ethereal classic launched Atlantis hard bifurcation last year to increase the interaction with Ethereum and improve the privacy protection of transactions through ZK snarks
the trading platforms recommended by ethereal classic etc are: Fire coin, okex, AAX, etc strong>
If you want to understand the application of blockchain, you can refer to many books and opinions, such as illustrated blockchain, blockchain: reshaping the economy and the world, blueprint and guide of new economy, and articles of coin'an community, including a detailed understanding of the platform of coin'an community, with great strength
As the name suggests, blockchain is composed of block and chain. It is a new application mode of computer technology such as distributed data storage, point-to-point transmission, consensus mechanism, encryption algorithm and so on. It is a kind of chain data structure that combines data blocks in order according to the time sequence, and it is a secure and reliable distributed account book that can not be tampered with and forged by means of cryptographyin 2008, in his paper bitcoin: a peer-to-peer e-cash system published by Nakamoto, he first proposed the idea of blockchain and encrypted digital currency. Starting from bitcoin, blockchain has become the underlying technology of various digital currencies
Second, the working principle of blockchain:1. The basic concepts include: (1) transaction: one operation will change the account status once, such as adding a record 2) Block: records the transaction and status data within a specified time, which is a consensus and preservation of the current account status 3) Chain: it is composed of a series of blocks in chronological order, which is the log record of the whole state change. If you understand the working concept of blockchain, it is not difficult to understand its working principle. Suppose there is a distributed data logbook, which can only be added, not deleted or changed. Its structure is a linear chain formed by a series of "blocks" (which is also the source of the name of "blockchain"), and new data must be put into a new block to be added, The maintenance node can propose a new block, but it must go through a certain consensus mechanism to reach an agreement on the final selected block
2. Take bitcoin as an example to see the working principle of blockchain
the block of bitcoin is divided into block head and block body
Core advantages and characteristics of blockchain1. The verification, accounting, storage, maintenance and transmission of decentralized blockchain data are all based on distributed system structure. There is no centralized hardware or management organization, and the rights and obligations of any node are equal, The data blocks in the system are jointly maintained by the nodes with maintenance function in the whole system. 2. The open and transparent system is open. In addition to the private information of all parties to the transaction is encrypted, the data of the blockchain is open to all. Anyone can query the blockchain data and develop related applications through the open interface, so the information of the whole system is highly transparent. 3. Security blockchain uses consensus based specifications and Protocols (such as a set of open and transparent algorithms) to enable all nodes in the whole system to exchange data freely and safely in a de trusted environment, so that the trust in "people" is changed into the trust in machines, and any human intervention does not work. 4. Information cannot be tampered with. Once the information is verified and added to the blockchain, it will be stored permanently. Unless more than 51% (almost impossible) nodes in the system can be controlled at the same time, the modification of the database on a single node is invalid. Therefore, the data stability and reliability of the blockchain are extremely high. 5. Anonymity because the exchange between nodes follows a fixed algorithm, and its data interaction does not need trust (the program rules in the blockchain will judge whether the activity is effective or not). Therefore, the counterparties do not need to let the counterparties generate their own trust by disclosing their identities, which is very helpful for credit accumulation
At present, the most popular classification of blockchain is to divide blockchain into public blockchain, private blockchain and consortium blockchain according to different participants1. Public chain: anyone can participate in the use and maintenance, and can obtain the effective confirmation of the blockchain. Public chain is the earliest blockchain and the most widely used blockchain at present, such as bitcoin blockchain. The information is completely public
if the licensing mechanism is introced, it includes private chain and alliance chain. 2. Private chain: a company or indivial only uses the blockchain technology, enjoys the exclusive write permission of the blockchain, and does not disclose the information. At present, conservative giants (traditional finance) want to experiment with private blockchain, and the application procts of private blockchain are still groping. 3. Alliance chain: it is a blockchain between the public chain and the existing chain, which is jointly controlled by multiple organizations. The use of the chain is managed with authority, which can be controlled by the manager, and also open to others according to the manager's wishes. In addition, according to the different use scenarios and purposes of blockchain, it can be divided into currency chain for the purpose of digital currency, property chain for the purpose of recording property rights, and crowdfunding chain for the purpose of crowdfunding
On May 28, Ma Huateng, CEO of Tencent, proposed the anti-counterfeiting method based on cloud integrated blockchain technology, which is far more efficient than traditional anti-counterfeiting methods. The future anti-counterfeiting verification scenario may only require users to use their mobile phones for simple scanning, and a large number of complete information based on different dimensions can be obtainedtake Maotai liquor as an example:
distillery address, proction workshop, operation staff, inspector, delivery time, transportation vehicle information and driver information,
liquor year, raw material source, raw material supplier, storage warehouse number, raw material transportation vehicle and driver information,
all information can be accurately traced, permanently recorded and tampered with
the above information can be easily verified
2. Food safety issues as early as last November, Wal Mart has cooperated with IBM to track the source of food by using blockchain technology, so as to ensure the safety of food and increase the circulation of food to rece costs. For Wal Mart and other large supermarkets, it took a few days to investigate the source of problem food, After using this technology, only one item of proct information is needed to achieve accurate traceability, and important information such as food origin, inspector, supplier, logistics and transportation can quickly find problems in a few minutes. Currently, procts tracked by blockchain include packaging procts from the United States and pork from China
3. Information security
blockchain technology is promoting an information security technology revolution. (1) identity protection PKI is a common public key encryption technology in e-mail, message application, website and other communication applications. However, since the implementation of most PKI, the centralized trusted third party certification authority (CA) is used to issue, activate and store user certificates. Hackers can attack PKI to fake user identity or crack encrypted information
certcoin is the first PKI implementation of blockchain, which comes from MIT, removes the centralized authentication center, and uses blockchain as a distributed ledger for domain name and public key
pomcor company: blockchain PKI implementation path: keep the authentication center, and use blockchain to store the hash value of issued and activated certificates. Users can verify the authenticity of certificates through decentralized and transparent sources, and can also improve the network access performance through local authentication of secret key and signature based on blockchain
(2) data integrity protection
guardtime developed a secret key free signature architecture (Ksi) based on blockchain technology to replace the secret key based data authentication technology. Ksi stores the hash table of the original data and files on the blockchain, runs the hash algorithm to verify other copies, and compares the results with the data stored in the blockchain. Any data tampering will be found quickly because the original hash table is stored in millions of nodes
(3) key infrastructure protection
the "Achilles heel" of the Internet, DDoS has entered the TB era, DDoS is still the simplest weapon for hackers to bring down the big target with low cost, DNS service is the primary target for hackers to carry out large-scale destruction, but blockchain technology is expected to fundamentally solve the problem
The distributed storage ofblockchain makes hacker attacks lose focus. Nebulis is developing a distributed DNS system, which uses Ethereum blockchain and interstellar Internet file system (IPFs, the distributed substitute of HTTP) to register and resolve domain names. The biggest weakness of DNS is caching, which makes DDoS attacks possible. It is also the bane of the centralized government's censorship of social networks and manipulation of DNS registration. A highly transparent and distributed DNS system can effectively prevent any entity, including the government, from arbitrarily manipulating records
(1) digital currency: improve the convenience of currency issuance and use, such as bitcoin and Ethernet in foreign countries, and guorenbao in Chinafrom the use of physical transactions, to physical currency and credit currency, and then to the rise of bitcoin network, more and more people are aware of the distributed ledger blockchain technology behind it, and graally apply it in many scenarios other than digital currency
(2) cross border payment and settlement: realize point-to-point transaction, rece intermediate fees
transfer and payment. At present, the most mature application of blockchain technology is payment and transfer. Blockchain technology can avoid complicated systems, save the process of inter-bank reconciliation and review, and accelerate the settlement speed; Virtual currency can rece transaction costs without the intervention of clearing house. Different countries have different clearing proceres. It takes two or three days for a single remittance to arrive, which is inefficient and accounts for a large proportion of funds in transit. No longer through the third party, through the blockchain technology to form point-to-point payment. By eliminating the link of the third-party institutions, we can make full day payment, real-time payment, withdraw cash quickly and rece the hidden cost, which helps to avoid the capital risk. It is timely and convenient
(3) bills and supply chain financial business: rece human intervention, rece costs and operational risksvalue transfer between point-to-point, control and verify physical bills or central system; Intermediaries will be eliminated and human intervention reced. With the improvement of efficiency, financing channels are more unblocked, risks are lower, and multiple parties benefit
(4) securities issuance and Trading: realize quasi real-time asset transfer, accelerate the speed of transaction clearing
the application of blockchain technology can make the process of securities trading more concise, transparent and fast, rece the plication of IT system, and improve the efficiency of market operation. For stocks, blockchain can eliminate paper and pen or electronic form records, rece human errors in trading, and improve the transparency and traceability of trading platform. Citigroup and Nasdaq cooperate to promote blockchain applications
(5) customer credit investigation and anti fraud: rece the cost of legal compliance, prevent financial crimes
the customer information and transaction records recorded in the blockchain help banks identify abnormal transactions and effectively prevent fraud. The technical characteristics of blockchain can change the existing credit reference system, and store the data of customers with bad records in the blockchain when the bank concts "know your customer" (KYC)
equity crowdfunding:
what is Ethereum:
Ethereum is an innovation based on the application of technologies and concepts in bitcoin to computers. Ethereum itself imitates a lot of bitcoin technology to maintain the computer platform. Blockchain technology is one of them
Ethereum platform can safely run any program users want
advantages of Ethereum over other competitive currencies before Ethereum appeared, some digital currencies imitated bitcoin. However, these projects have their own shortcomings, they can only support one or several specific applications at the same time< However, the reason why Ethereum can surpass the limitations of these projects in the past is because of the core idea of Ethereum
what Ethereum wants to implement is a blockchain protocol with built-in programming language. Since it supports programming language, in theory, any blockchain application can be defined with this language, and then run on Ethereum's blockchain protocol as an application
The design of Ethereum is very flexible and adaptable
Ethereum target sets the advantages of blockchain technology, in order to add the advantages of blockchain, such as decentralization, openness and security, to almost all computing fields
blockchain applications of Ethereum
Ethereum has many blockchain applications, such as digital applications of gold and stocks, financial derivatives applications, DNS and digital authentication, etc
Ethereum has achieved more than 100 blockchain applications by many start-ups
Ethereum has also been closely watched by some financial institutions, banking consortia (such as R3), as well as large companies like Samsung, Deloitte, RWE and IBM. As a result, a number of blockchain applications such as simplified and automated financial transactions, merchant loyalty index tracking, and gift cards designed to achieve decentralization of electronic transactions have emerged
the relationship between Ethereum and blockchain:
Ethereum is a programmable blockchain
Ethereum does not give users a series of preset operations (such as bitcoin transaction), but allows users to create complex operations according to their own wishes
in this way, Ethereum can be used as a platform for various types of decentralized blockchain applications, including but not limited to cryptocurrency
like other blockchains, Ethereum also has a peer-to-peer network protocol. Ethereum blockchain database is maintained and updated by many nodes connected to the network. Each network node runs the Ethereum simulator and executes the same instructions. Therefore, people sometimes call Ethereum "world computer"
The relevant certificates can be issued online for the data of blockchain storage and network forensics through easysaving. Through the record number on the certificate, the blockchain query can be concted directly through the official website of easysaving and relevant arbitration commission, including the preservation subject, preservation time stamp, Guangzhou Internet court evidence number, blockchain hash value and other relevant information
Through the record number on the forensics certificate, you can also directly query the blockchain on the official websites of easy security, notary office and Arbitration Commission, including the preservation subject, preservation timestamp, Guangzhou Internet court evidence number, blockchain hash value and other relevant information, so as to ensure the openness, transparency and traceability of blockchain storage data
2) if it is "blockchain technology", the network also has a good interpretation, and all walks of life are also trying to combine with blockchain technology in new fields. Maybe in the future, blockchain technology will be used correctly instead of being used to deceive people3) if it is "blockchain information", you can go to all kinds of blockchain media or financial media, and almost every day there are relevant blockchain instry information and news reports. Such as: Babbitt, coin you finance, blocknet, golden, daily, etc
4) if it's "blockchain audio", you can go to Himalaya FM, litchi micro class, qianchat and other platforms. For example, the audio related to "voice of money", "Yu Lingxiong", "Wang Feng" and some other financial media blockchain is also good, with various dry goods and in-depth analysis
therefore, the above four points are all related to blockchain. It depends on your choice.
(1) in the case of sudden high concurrency, when the server is under great pressure and calls some methods for more than 100ms and does not respond, we should automatically reject the service instead of blocking until the server crashes, It can be regarded as a disguised service degradation
(2) for the unpredictable code that may have deadlock, add time threshold limit to avoid unlimited resource competition
(3) for the unpredictable code that may have deadlock, add time threshold monitoring, Avoid dead cycle deterioration
some mature open source frameworks generally have the function of timeout response, such as
search framework: Lucene, Solr, elasticsearch,
RPC framework: Dubbo, thrift,
service coordination framework: zookeeper, etc.
if we want to add this function, what should we do
in fact, it's not difficult to add a timing function before and after the method call. If the threshold is exceeded, the thread should be terminated actively and the exception code should be thrown. Of course, in order not to affect the operation of the main service, this code should run independently in a sub thread, rather than coupled in the main thread. The idea is roughly the same. Of course, in order not to build a wheel repeatedly, we suggest to use Google's open source guava toolkit, which provides many useful functions, including the automatic termination of timeout method introced this time, and some functions to limit network traffic or the number of visits within a specified period of time, You can see guava's documentation for yourself<
timelimiter is an interface. There are two subclasses below,
faketimelimiter, which is often used to limit time-out debugging ring debugging.
simpletimelimiter is often used in formal methods, which call method time-out, that is, throw exception.
this paper focuses on the use of simpletimelimiter, There are mainly two methods in this class:
(1) newproxy implements timeout interception through JDK dynamic proxy and callwithtimeout
(2) callwithtimeout implements timeout interception through callable callback
the difference between the two methods lies in that the strategy implemented through proxy can be applied to every called method in this class, The implementation of timeout interception
and the implementation strategy through callback is applicable to the implementation of timeout interception only for a certain code block or method
introce the latest guava package through Maven:
java code
& lt; dependency> < br /> < groupId> com.google.guava</ groupId> < br /> < artifactId> guava</ artifactId> < br /> < version> 19.0</ version> < br /> </ dependency> <
A: Interception Based on proxy mode:
since guava uses JDK dynamic proxy to implement AOP interception, it requires that the proxy class must have an interface implementation, so it's a little troublesome to use.
we need to define an interface first, then define the implementation class, and rewrite the method to be called:
b: callback based usage, which is relatively simple, Because there is no need to use proxy mode,
both methods can implement method call timeout interruption, proxy mode is suitable for class level method timeout interruption, while callback based mode is more suitable for any single method.
blockchain 1.0 mainly refers to bitcoin. Blockchain 2.0 extends to all assets, while blockchain 3.0 goes beyond currency, finance, even commerce, and all areas of our lives, including politics, social relations, ecation, medical care, etc. According to the prediction and conception of people in the instry, the era of blockchain 3.0 will be realized in the next five years. At that time, blockchain will be recognized and accepted by all the public like the Internet, thus completely subverting our lives
McKinsey has submitted a technical report on blockchain to the Federal Insurance Advisory Committee of the United States. The report calls 2009-2016 the "Dark Age" and believes that all blockchain solutions ring this period are based on bitcoin, and the new era of blockchain will begin in 2016. At that time, the application of blockchain will become unprecedented. Applying an original sentence in McKinsey report: Based on the current development speed of blockchain, we believe that blockchain solutions may realize their full potential in the next five years.