System Management-Data Interface

更新时间:2019-08-16 22:28:00点击:480 Technical framework

The system management layer is responsible for the management of the other parts of the block chain architecture, which mainly includes two kinds of functions: privilege management and node management.

Privilege management is a key part of block chain technology, especially for license chains with more requirements for data access.

Privilege management can be achieved in the following ways:

Submit the privilege list to the ledger layer to realize decentralized privilege control

Use access control lists

Access control, such as scoring/subsystems

By privilege management, you can ensure that data and function calls can only be operated by responding operators.

The core of node management is node identification, which is usually implemented by the following technologies:

CA authentication, centralized issuance of CA certificates to various applications in the system, identity and rights are authenticated and confirmed by these certificates

PKI authentication, identity confirmed by PKI-based address

Third-party authentication, authentication information provided by a third party to confirm identity

Because various block chains have different application scenarios, node management has more differences. Existing business extensions can interact with existing authentication and authority management.

Interface

Data interface layer is mainly used to complete the encapsulation of functional modules, providing a concise way of invocation for application layer.

The application layer communicates with other nodes by calling RPC interface, and accesses and writes local account data by calling SDK toolkit.

At the same time, RPC and SDK should abide by the following rules:

First, it has complete functions, can complete transactions and maintain distributed accounts, and has a sound intervention strategy and authority management mechanism.

Second, it has good portability and can be used in many applications in many environments, not only in some absolute software or hardware platforms.

Thirdly, it is scalable and compatible, and should be compatible forward and backward as far as possible, and consider scalability in design.

Easy to use, should use structured design and good naming methods to facilitate the use of developers. Common implementation techniques include call control and serialization of objects.

Application

As the final part presented to users, the application layer mainly functions to call the interface of intelligent contract layer, adapt to various application scenarios of block chain, and provide various services and applications for users.

Because block chains have the attributes of data validation and the characteristics of value network, a lot of work in current product applications can be handled by the underlying block chain platform.

In the process of developing block chain application, the preceding work must be very cautious. We should reasonably choose the decentralized public chain, efficient alliance chain or secure private chain as the underlying architecture to ensure that there are no fatal errors in the core algorithm at the design stage.

Therefore, it is an inevitable trend for the application layer to package the underlying block chain technology rationally and provide a one-stop block chain development platform. At the same time, the maturity of cross-chain technology can make the application layer more flexible in choosing system architecture.

According to the current development level of the traceability chain (OT) project and the future development plan, the traceability chain (OT) ecosystem is mainly developed in the scenarios of digital asset exchange, traceability community, and large data traceability service construction.

Mocha ITOM

Operations and maintenance management is mainly responsible for the daily operation and maintenance of block chain system, including logging, monitoring, management and expansion.

Under the unified framework, the mainstream platforms have different storage modules, data models, data structures, programming languages and sandbox environments according to their own needs and positioning.





The following table compares the differences among different architectures:


Platform Differences Bitcoin Fabric OT

Programming language Script Solidity Go/Java Kotlin/Java

Sandbox environment without EVM Docker JVM

Consensus algorithm POW POS PBFT/Kafka PBFT

Data Type Assets Accounts Assets

Block Storage File Storage LeveIDB LeveIDB/CouchDB Relational Database

Recommended Reading