The definition and essence of blockchain
After the author analyzes and concludes the similarities and differences of various blockchain, I first give a definition of blockchain.
Blockchain is manageable under the premise of conformity with the actual social laws and regulations, relies on the design of economics of economics and game of cryptology, and based on the consensus algorithm, to the value creation, value transfer, exchange of value, Machine-driven business processes of all value subjects and consensuses among multiple counterparts can achieve the state of shared services, that is, share books in order to speed up the allocation of social resources and the circulation of value, and ultimately increase productivity.
The essence of the blockchain is consensus, and consensus among distrusting actors forms accepted value. The goal of the blockchain is to liberate and enhance the productivity of society as a whole by virtualizing production relations, seamlessly connecting the real world to the virtual world using IoT and value anchoring, and virtualized business contracts that are machine-automated Real and virtual society resource allocation, value production and circulation, combined with intelligent analysis of big data to optimize the virtual production relations, real and virtual legal and emergence mechanisms for the virtual block chain social and stable development to provide protection.
Blockchain architecture model
Based on the essence of the blockchain, the author looks at the future development of the blockchain architecture and architecture from a development perspective, focusing on the major business and technical capabilities, and gives a comprehensive and highly generalized blockchain architecture model. This is a high-level architecture model for chain contract services that reflects the future ability to debug automated, intelligent and fair compliance-based virtual social relations based on blockchain.
The high-level hierarchical architecture for chain contract services consists of three main parts: business contracts and books, blockchain platform services, UI interfaces and API interfaces. Each part is described in detail below.
Business contracts and books
In the real world, each of us is in a variety of contractual relationships, and everyone, with the contractual agreement, participates in the production and life of the entire community. In the end, blockchain technology can promote the virtualization of production relations and promote the development of productive forces. The core of the entire blockchain ecosystem is to support various contracts, namely business contracts, and share transaction books among relevant participants. Business contracts to very complex business contract processes, which are higher than the respective business processes, all enterprises, organizations or individuals as the main body of the process involved in the development of commonly recognized contract of production relations contract. A business contract with a smaller granularity than the business contract process is called a contract service. Contract service is the minimum contract that abstract the business behavior at the semantic level. The contract service is composed of a set of contract actions. As a concrete realization of the abstract contract service, the contract code can be written in different contract languages, and the business terms and legal terms quoted in the contract code can have different specific implementation languages.
Contract process to achieve a series of contract-based services based on fixed business rules and legal terms in series or parallel contract action, through the completion of various contract actions to achieve business in the implementation of various process participants to achieve by the machine process engine Driven value of high-speed automatic creation, automatic circulation, automatic exchange. Once the contract process is running, it is a state machine, and the contract process shares the process status among the participants, that is, the state of the shared state machine. Business parties involved in the business contract read the specific business rules and legal terms, the contract signed the contract, the contract process to take effect, the process can be triggered by time, you can also manually trigger. The initialized process instance implements the manual execution driver confirmed by the external input through the UI interface or the API according to the type of the subsequent node, the artificial node or the calculation node, and realizes the specific action of the contract service by using the machine calculation of the code to drive the business value Transaction, Process Engine Calls The Business Terms check service and legal terms meet the status, and the engine-driven process determines the flow to the next node (or nodes) according to established process rules. When the business process flows in each node, the process engine drives to form a process flow transaction, and the business process contract participant uses the shared process flow transaction to realize the process state sharing. Process validator in the local sandbox to perform verification of the transaction flow transactions, to achieve consistent state transition process state machine.
As the main body of the business contract, the most basic service contents of the business contract are defined. Each contract service is the smallest and complete concept definition of business semantics. The contract service defines one or more actions required to complete the business, and each contract action defines the input status and output status and the business logic commands to be executed. The contractual service itself and every contractual act, as well as any contractual terms used therein, are legally required in the human language to be clearly and clearly described, provided that the execution of the contractual action forms a clear contractual value transaction if necessary and that the contractual process engine, Flow node flow, in accordance with the definition of the process of contract service action calls automatically perform service actions, resulting in business value transactions, which is an intrinsic user interface through the UI API-based external call. Contract service can be a combination of services, the existing contract service actions are combined to form a new service action business semantics. Based on the definition of existing business contracts, the contractual services can be combined to create innovation in production relations through rapid construction of new types of business contracts and achieve zero-distance integration of value-added services in different industries. In order to achieve the contractual service self-contained and to support the scheduling of service processes, as well as service computing windowing, distributed and scalable architecture deployment requirements, contractual services need to be defined as stateless. When a contract user or process invokes the contract service, the contract service conducts service routing, based on the routing rules of the chain service management, and selects a specific contract code implementation to specifically verify the execution of the business value transaction.
Each contractual service of a contractual service generates business value transactions, which are performed and verified on the contract code implementation. As a transaction verifier, contract services can be implemented in a variety of ways, such as different contract languages, different contract providers’ version implementations, and contract code implementations for different stakeholders, all of which are decentralized to service contract participants At the abstract level of business reached a consensus. Contract code to achieve the definition of contract action input status and output status and to be executed a set of business logic command calculation, the command is the smallest execution unit can be called a technical service, such as generating zkSNARK certificate can also be input and output status Check, logic calculation, legal terms and service inspection. After all commands have been executed, if the input status is deterministic, then the originator of the contract service can form a business value trade proposal, while other participants can validate this business value trade proposal. For the process flow transaction generated by the contract flow, the proposal of the state transition transaction is calculated by the flow execution proposer, and the flow process verifier performs the local flow flow verification.
The flow of contract flows will result in the flow of transactions, the implementation of contract services will form business value transactions, all of these transaction logs are classified according to the application by the coalition of organizations into a block chain or transaction chain, the formation of the data structure can not be changed and deny , Forming a unified status book among the various parties involved. The value-sharing book requires data organization in an efficient and disciplined manner, including transaction logs and ledger status, for quick updates of process status (state machines) and asset status databases, as well as for global search and traceability of historical transactions. In addition, the bottom of the value-sharing books also need to have a shared communication mechanism, such as the use of a variety of P2P algorithms to facilitate the parties involved in the right-based transaction-related data synchronization quickly.
Blockchain platform services
Blockchain Platform Services provide common platform platform-level services across all blockchains. Platform services are business independent and service that can be shared across all business contracts. A variety of platform services can be on the chain, it can be out of the chain, together constitute a blockchain platform indispensable capabilities, including contract compliance, security control, chain of consensus, chain service management, governance On, outside the chain), development and operation and maintenance.
Contractual Compliance Services draws those public compliance requirements out to form rules-based inspection services, contractual terms verification services, legal terms verification services, Oracle service contracts, and contractual terms of the contract that can be used for every business. The contract constitution specifies the law applicable to contractual disputes, the solution to disputes and the human readable contractual intentions. A prerequisite for an actual blockchain platform to operate in parallel with the real socio-economic conditions is the legal compliance that is consistent with the real world. Whether it is a business contract that centralizes a real-world contract to a virtual world or a newly created business contract based on a new type of production chain in a blockchain, legal compliance remains essential. Both laws and rules can be stored in terms of the lowest granularity. In order to support the rapid construction and innovation of business contracts, common contract terms, regulatory terms, and legal terms are implemented as a service based on the reference to the terms of service and the terms-based service A combination of higher granularity compliance validation requirements. Business contracts automatically verify the compliance of transactions based on these contract rules, contract credits, legal terms and the compliance verification of the portfolio. For those verification content and contractual intentions that can not be implemented by code, real-world law, on which the contractual exercise of the contractual operation depends, can be specified in a human-understandable manner through the contractual constitution, specifying the real-world solutions to disputes that can not be resolved on the chain. Contractual processes and contract services If real-world data entered are used, in order to achieve deterministic performance, all validators must perform the same Oracle service or all Oracle services recognized by the parties to the transaction.
Blockchain needs to design privacy model and authority model at the platform security level.
With the real world people need a certain degree of privacy and anonymity, like the blockchain virtual world Huachang Chemical also need the corresponding privacy protection to the user. For the public chain, for security reasons of the network, it is often necessary for the parties involved in the transaction to perform verification on the transaction content. The user identity information must be isolated from the transaction information of the user, so that the user identity is protected, or even zero knowledge is used. The zkSNARK algorithm only verifies Provide a proof of transaction without exposing the content, verification can be verified, so that the absolute identity of the transaction hidden. As the network participants are controlled, the security requirements to prevent cyberattacks are not as high as the public chain. The consensus mechanism only needs to ensure the technical level is consistent and complete. The verification at the transactional business level can be conducted only by the parties involved in the transaction Verification, so you can ensure that the transaction can not see any non-party transaction content, even the encrypted transaction content can not see.
The public chain is an open-ended design idea that does not explicitly set the operational rights of different participants, and only uses the blacklist mechanism. The licensing chain is a whitelist mechanism with a very strict admission mechanism and only allowed parties can participate in allowed business contracts. The license chain usually uses the PKI infrastructure to integrate with the enterprise’s existing rights management system, such as LDAP and AD server, through its own CA organization to control different people with different contract operation rights.
Since blockchain trades using the public-private key mechanism, there is a minimum granularity of private-key-based account concepts regardless of the data model used. There are two types of contract accounts in the blockchain: the Contract Process Account (CPA) and the Contract Service Account (CSA). The external user account participates in the contract action call associated with execution of the contract service account. Different contract processes and contract services instantiated the relationship between the very complex, we can put these three accounts in accordance with the use of relations and dependencies into a tree structure, the use of merkle proof of authority certification.
Consensus on the chain
Consensus mechanism is the cornerstone of building blockchain trust. Different types of blockchain may choose different consensus algorithms or adopt a combination of consensus algorithms for different considerations. Consensus includes the standardization of the books (how to organize the block, the organization of the transaction chain), the definitive implementation of the transaction, the uniqueness of the transaction, the completeness of the order of the transaction, and other information that will ensure the safe and secure operation of the network Such as data availability). On the other hand, the operation of the consensus mechanism should not be closely bound up with the standardization of books and the verification of transactions. It also follows the principle of architectural separation of concerns and has the modular, plug-in, container Is conducive to the platform’s horizontal scalability.
Chain service management
An important capability of blockchain platform services is the efficient and reliable management of the services on the chain. The normal and stable operation of business contracts of all blockchain chains depends on these registered chain services. This importance makes chain service management need to follow the blockchain governance system and governance process rules. Chain services include the following types:
- Contract process management: including the establishment of the contract process, version upgrade, exit management. Once a user account is bound to run on the contract process instance account, it runs until the entire contract process instance ends completely, and can exit the sub-process for exit or go through the governance process so that all participants opt-out of the contract process instance .
- Contract service management: including the registration of contract services, version upgrades, exit management. Each contractual service is an abstract contract with complete business meaning. Each of the contractual acts represents the value contract that different interests commonly observe. Once a contract is signed, the contract of value is confirmed legally .
- Chain technology service management: including the chain of technical services, registration, version upgrade, delete operation. The public service of technical services on which contractual services and contractual processes operate depends on stateless service-based computational scalability if exposed as a chain of services, especially for compute-intensive technical services. High-load operation The maximum degree of parallel support for contract service verification implementation, but also conducive to the use of specific hardware acceleration technology services.
- Oracle Service Management: Including Oracle service registration, version upgrade, delete operation. Oracle service is a bridge between the virtual world and the real world. Many business contracts can not operate without the information from the real world. They must provide a unified Oracle service for runtime verification of all the validators in order to ensure the confirmation of transaction verification Sex. Oracle server across the two worlds, it is necessary in both the world must set up its supervision mechanism design, such as deposit into a large deposit as an Oracle service provider, the establishment of bounty hunter oversight mechanism, if found to be illegal, If you provide confiscation of all mortgages, revocation of Oracle service credentials, record credit files, in the real world also need to make corresponding penalties.
On-Chain management and Off-Chain management
The activities of any different stakeholders to participate in will require matching governance strategies and mechanisms to ensure long-term and stable development. The dynamic change of the blockchain as a multi-stakeholder system is undergoing continuous evolution. Operating contracts are also evolving. They also face profit-driven malware, organized hacking, and running business contracts There is a need for regulatory and auditing transactions. In order to allow the blockchain to run safely, especially for the public chain, it is necessary to design a complete game economy model and social governance mechanism in advance from the basic law of fairness and justice. The game economy model can consciously participate in and maintain the production, management and governance of the blockchain, punish the behaviors in line with the overall interests of the blockchain, use economic means to stop the hacker attacks and make the attack more worthwhile, and imitate the real world Taxes are levied on economic activity and taxes are applied to the governance of the entire blockchain platform. In order to effectively and fairly promote the governance of the chain, scalable underlying governance mechanisms can be designed in advance, such as designing the underlying chain voting contracts and based on this underlying mechanism, social voting referenda on major platform issues such as block Changes in the chain’s constitution, updating of chain parameters, upgrading of chain system contracts, business contracts (contract processes, contract services, contract codes) and contract law upgrades.
For those governance issues that can not be resolved on the chain or that need to be addressed in the real world and those that are not yet foreseeable, strategies and mechanisms are needed to set out-of-chain governance such as malpractices in identified business contracts or Hackers’ behavior, in addition to punishing economic means, can also resort to real-world legal means.
A stable, functioning blockchain system forms an economic and financial system that requires continuous auditing and regulation of the economic transactions in which it operates, in order to eliminate illegal contracts and transactions, such as anti-money laundering transactions. The accessor of each business contract needs to be responsible for due diligence on the customer to meet KYC’s regulatory requirements. For the effective management of blockchain, it is also inseparable from the big data intelligent analysis based on the blockchain transaction data. Because the blockchain is an economic system, macroeconomic policies based on the analysis results may also need to be applied to adapt to the economic laws.
Development and Operation
A successful blockchain platform is a multi-stakeholder ecosystem. Each participant (government, enterprise, organization, individual) participates in the development and operation of the platform.
Design and development staff can participate in the basic platform layer services and design development, but also to achieve business contract specifications and development, which will involve the architects, business people, legal personnel, technicians, regulators and other professionals . For a business contract design and development, first of all need to be completed by the business staff, legal personnel and architects contract process, contract service specifications; and then by different participants to develop their own implementation or commissioned, you can continue to iterative extraction Use of services, such as legal terms of inspection services, general technical services, the parties in their own development and implementation of the platform to exploit the existing mature services available to improve the efficiency and stability of the service, all parties involved can be implemented in different languages Contract service logic to ensure the semantic level of contractual service contract and contractual distribution. Elements that can be designed and developed are: Contract Process, Contract Service, Contract Code, Technical Service, Rule Service Compliance Service.
Each participant, especially the verification node, can participate in the platform operation and maintenance of the blockchain. The operation and maintenance behaviors include the containerized cluster serving the operating nodes, providing the backbone expansion capability, installing multi-language multi-VM implementation nodes and supporting multiple Node running in parallel, parallel verification. In the face of the rapid changes in the blockchain, we can make full use of DevOps to continuously develop and continuously integrate the newly developed O & M system and automated test deployment process. For the production system needs to be able to monitor, record the event, the alarm on the important events, the alarm error code requires pre-defined processing flow, the blockchain system and business, but also need to work out the normal operation and abnormal operation and maintenance Process.
UI and API
The entire blockchain service provides an external interface to the user, including the UI interface provided to humans and the API interface provided to other information systems or artificial intelligence agents. The main contents of interaction include:
Personalized task list
After the value subject joins a contract process, if a certain business process node of the contract process needs input and confirmation of the subject, this translates into an interface interaction request to the subject. The user needs to enter necessary content in a business interface or confirm Business information provided by the system, and use the principal’s business operations private key to sign to indicate the main body of the operating authority, so that the business contract to continue. The main body can join multiple contract processes at the same time, which will exist in a task list, which requires the main body to finish the interface operations one by one.
Personalized distributed APP
Each business contract may be an APP. A plurality of business contracts may also be an APP, a user, a user’s IoP smart terminal, or a user’s artificial intelligence agent. Each of the business contracts (contract processes or contract services) to be joined is Is a business application, so need to provide users with customized distributed App, to meet the individual needs of users. For example, design a unified App base platform, on which to provide a variety of plug-in personalized applet for the user to join the various business contracts to provide an interface for users to manage their own identity, no longer in the hands of centralized institutions, all Small applications trading and authorization are based on the user’s private key for each application, only by the user control.
IoT protocol adaptation and value anchoring
Blockbuster is a big application of the direction of the combination with the Internet of Things, IOT various terminals to achieve intelligent contract automatic manufacturing, intelligent independent services, they need to be bound to the virtual world, the traditional IoT centralized control Architecture is not directly reflect the socialization of production and service requirements. Blockchain, as a virtual economy and society, maintains the virtual economic relations of production, and enables IoT intelligent terminals to participate in the blockchain community to participate in the specific blockchain contract processes and contract services. The blockchain is composed of socialized blockchain The machine automatically drives IoT terminals for automated production and service, and introduces artificial intelligence agents to speed up manual processes that can dramatically increase productivity. The blockchain needs to be adapted to the IoT protocol to ensure unobstructed flow of two-way transactions. In addition, in order to establish real-world value production, transfer and exchange in the virtual world, truly integrating the real world into the contract of production relations in the virtual world requires the value of products and services produced for the real world and a value anchor in the virtual society Tag, just as the virtual world has a private key can lock the value of the same, in the real world, but also need to have a reliable program Wang Lei virtual world anchored value tag into the real-world products and services to the different products Labeling, production, transfer and exchange of real-world values can be seamlessly integrated into the production contract processes and services of the virtual world.
As the value subject, artificial intelligence agents can be used to help them automate the process of contractual flows and automatic initiation of contractual service actions. A virtual world needs such a role to adjust the operational relations of production. With the development of artificial intelligence, artificial intelligence agents can also Competent in basic rules and user habits. In addition, with the intelligent analysis of big data, after some business goals are set, artificial intelligence agents can initiate some optimized transactions and manual operations to improve the operational efficiency of the entire contractual services. The allocation of resources can be optimized predictively and the entire Social production of waste of resources.
The entire blockchain platform provides a standard API for interfaces that are open or that can be open, allowing external systems or artificial intelligence agents to access and manipulate them. Various types of business contracts (contract processes, contractual services) information of the blockchain, various transaction results of the blockchain, current process status, capital status, or proof of transaction of the blockchain, evidence of an asset existence, a chain governance interface , Can also be provided to external systems in the form of APIs. Through the API interface, you can also operate a variety of business contracts, such as the submission of manual processing, the contract action transactions submitted.
Business Contract Browser
Through the business contract browser, users can see all the business contracts that can be participated within the scope of competence, including the specific standardized content of the contract, such as the contract process, various actions of the contract service, the specific rules of the contract, the contract law, the contract constitution, the governance Rules and so on.
Blockchain browsers have the ability to browse through all the blocks, as well as transactional permissions, to review browsable transactions and to trade, process and value assets from different dimensions.
Asset Browser Runtime Users view all the contract assets associated with the user from a unified perspective. The asset browser can be integrated with the personalized distributed app so that users can see the current status of each participating contract process, the status assets of each contract service, and a unified view to help users make optimal trading decisions.