Skip to content

Latest commit

 

History

History
185 lines (93 loc) · 18.5 KB

technical-white-paper-EN.md

File metadata and controls

185 lines (93 loc) · 18.5 KB

MEET.ONE Side Chain Technical White Paper

Based on the concept of “open & sharing”, the MEET.ONE team will build a blockchain infrastructure based on eosio, work with block producers and developers to promote the development of trusted Internet, and work together to empower the Internet with blockchain.

The MEET.ONE team has accumulated rich industry and technical experience in dApp smart contract development, wallet development, and BP deployment. The MEET.ONE sidechain is designed to extend the EOS ecosystem, reduce EOS usage thresholds and costs, and enable sidechain dApps to access primary network resources.

image

1.1 Finance

The core of finance is the establishment and provision of credit. The blockchain is naturally applicable to a variety of financial scenarios because of its characteristics of non-tampering, security, transparency, decentralization or multi-centralization.

A survey from PricewaterhouseCoopers shows that 55% of Fintech's survey plans use blockchain as part of a 2018 strategic layout or production process. By 2020, this proportion will rise to 77%.

The first major industry to turn its sights on blockchain has been the financial sphere. One problem with today's financial system is the lack of inclusiveness and fairness. In the financial sectors of many countries, the public generally feels forced to conduct illegal transactions due to high barriers to entry. Furthermore, billions of people in the world have no access to banking. The blockchain and its derivative cryptocurrencies can largely compensate for this.

Through its decentralized and irreversible nature, the blockchain returns financial power to individuals, providing solutions that do not require high interest rates and middleman costs. The banking industry even said it could save up to $20 billion by reducing infrastructure and middleman costs.

1.2 Insurance

The insurance industry is a trillion-dollar industry. Although the digital age has brought countless technological innovations, the centuries-old insurance industry seems to be stuck in complicated paperwork and redundant manual processing. The process is nontransparent, there are many different departments and burdensome bureaucracies, and the ability to analyse risk adequately is held back. The insurance industry's processes are expensive, slow and full of fraud risk. According to a recent industry survey by Edelman, the trust levels of all parties in the insurance market participants are already at their lowest point in history.

Today, the insurance industry in various countries is also actively exploring blockchain technology to improve the conflicts between market participants. The McKinsey Panorama Financial Technology Database currently includes more than 200 blockchain-related solutions, of which about 20 target insurers' pain points. These include decentralized features to reduce trust costs and streamline market operations, which could in turn, prevent or reduce the loss of billions of dollars lost to auditing and management processes, or to insurance fraud.

In 2017, IBM reported that blockchain-based technology can help “fundamentally improve the insurance industry” and specifically pointed to fraud detection and prevention. The report stated that “blockchain technology can minimize counterfeiting, double bookings, tampering with documents or contracts” and added that the technology could also be used for identity management.

1.3 Internet of Things

The main issues facing the Internet of Things are: data privacy, storage security, data continuity, and compatibility of various data interactions. With the gradual popularization of the Internet of Things, the number of networked devices has increased geometrically, and traditional centralized servers have bottlenecks in terms of productivity and reliability.

The use of blockchain technology to transform the Internet of Things industry is a very effective integration, and may create new business models for data transaction settlement.

1.4 Supply Chain

With the continuous improvement of delivery tracking and the continuous increase of consumer consumption, the demand for supply chain risk control and transparency has increased. Blockchain technology can build a coalition chain maintained across the entire supply chain, establish participation rules and incentive mechanisms for data maintenance in the alliance chain, encourage enterprises in the supply chain nodes to participate in and maintain supply chain data, and promote supply chain data. Collaboration and interoperability, which enhance the transparency of the entire supply chain, also provides technical support for the traceability and provenance of consumer purchases.

1.5 Public service

If any person or organization is able to delete or modify data at will, the credibility of the government or organization is greatly reduced. However, the emergence of blockchain solves the problem of data tampering. Blockchains are useful for patents or copyright claims. They also ensure that government agencies or companies can verify data and allow the public to access and confirm that the public has the same files as the creator's signature and time-stamped files.

It is conceivable that companies will update their information to the blockchain and establish security mechanisms to protect personal and corporate privacy. The government can use this real-time submitted data to apply local laws to these companies, their employees, contractors, and consumers. Government agencies responsible for overseeing industries will analyze data such as consumer feedback ratings and other relevant information (eg, whether the driver takes a longer route) to improve safety and better protect the rights of all involved parties. In other words, the government will use lightweight algorithmic rules to protect the rights and security of local citizens.

Public blockchain will fundamentally change public management and operations. Instead of requiring companies and consumers to downgrade their digital interactions to comply with the law, governments can build an adaptable system to reduce paperwork and compliance requirements for businesses and consumers. Instead of forcing emerging technologies and business models into legal grey areas, governments will use algorithmic rules to create a level playing field for existing companies in their respective industries.

1.6 Entertainment

At present, it is impossible to launch music without a record contract and reliance on record labels to record, distribute and monetize the artist's music. The same is true for movies and television: with no studio or production company behind you, even if theatres or cable channels agree to show your work, you can't release movies or TV shows.

Although the Internet has made the creation and distribution of entertainment content and creativity marketable, a number of new middlemen have emerged in the digital content field. Today, users rely on platforms to consume music and video content. Platforms like YouTube (1.5 billion users), SoundCloud (175 million), Spotify (140 million) and Netflix (about 110 million) control global user spending and act as new distributors, collecting subscription and advertising revenue and distributing artist payments.

This amount of control has sparked controversy about artist compensation and treatment, most notably Taylor Swift and Apple Music and Spotify. As artists become more disappointed with these platforms, they are looking for new options, providing opportunities for blockchain.

2.1 MEET.ONE Wallet

The MEET.ONE wallet was released on June, 2018. And has already become the largest EOS wallet, by number of users. Support all the features of EOS.IO.

Sidechain users can manage their account assets through the MEET.ONE Wallet APP, and in the Wallet App Center they can go to all MEET.ONE sidechain-based dApps. dApp teams based on the sidechain can reach sidechain users through the MEET.ONE wallet.

2.2 MEET.ONE Incubator

EOS's DPoS consensus mechanism determines that all developers must hold EOS tokens before they can use the bandwidth, storage and other resources of the EOS main network. However, due to the decentralized free market, the cost of EOS is volatile. This situation is not friendly to new developers. At the same time, the EOS main chain is an open and free ecological environment. The lack of filtering for malicious or bad applications is likely to lead to the proliferation of low-value applications in the main chain. The average user has a limited ability to identify low-value applications and it could scare off users.

The MEET.ONE side-chain has the same architecture as the EOS main net and will be an incubator for the EOS application ecosystem. The sidechain includes free CPU/NET/RAM resources, providing developers with one-stop support services to continuously produce high-quality applications through the MEET.ONE incubation platform. The program intends to encourage developers to realize their ideas. The goal is to build reference standards for the development of dApp projects on the EOS ecosystem, filter bad applications, and strive to improve the user experience in the ecosystem.

2.3 Developer Platform

The MEET.ONE sidechain platform is designed for developers. A large number of development documents are available online, and smart contracts such as DEMO are accessible for developers, and the platform can even provide customized cloud services for dApp projects. Hackathons will be held from time to time to help more engineers learn about blockchain and smart contracts, allowing developers to focus on product function development and efficiently deploy product applications on the MEET.ONE sidechain.

3.1 User System

3.1.1 Account

The MEET.ONE sidechain allows the free creation of 12-digit account names ending in “.m”. The names can include the lowercase characters a-z, and the digits 1-5. Creating MEET.ONE sidechain account names consumes the creator's RAM, but additional sidechain RAM resources can be purchased with MEETONE tokens. The accounts support sending actions to each other, and also support custom response logic for each action. Each account has its own independent database, support for additions and deletions.

The invitation codes create 11-digit account name ending in .m on the EOS main net, all accounts (*.m) will be sync to sidechain for free. After IBC (Inter-Chain Communication) goes online, all EOS mainnet accounts will be sync to side chain.

Currently, several dApp development teams on the EOS main network have created EOS accounts for users free of charge. All mainnet dApps share the same account system, and accounts created by other dApps can be used directly in new dApps without repeated creation.

3.1.2 Public and private keys

Using, the same process as the EOS mainnet, the public and private keys of the MEET.ONE side chain account can be understood as the account number and password, and the private key can generate the public key. The private key is used to generate a signature to initiate a transaction. Each account has two permissions, owner and active, each corresponding to a pair of public and private keys, and it support create custom permissions. It is recommended that only the active key be used for activities such as transfers or voting. If the active key is stolen, users can use the owner key to replace the active key.

3.1.3 Multi-sign

Account multi-signing (multisig) is a very common function on blockchain. In general, developers only need a private key to initiate a transaction through the wallet, but for teams or large-value accounts, it is necessary to have multiple responsible parties. In such cases, multiple private keys can be authorized to be required to initiate a transaction. For example, the active privilege threshold of account A is 2, and there are three multi-signed accounts B, C, and D, each with a weight of 1; at least two of the three accounts B, C, and D are required to initiate transactions with their active keys.

3.2 Development Tools

3.2.1 CLEOS / KEOSD

CLEOS / KEOSD are developer command line tools. KEOSD is for managing private keys, running locally on the device and storing private keys only locally. CLEOS is used to invoke a system contract or a a third party smart contract. CLEOS will use the private key stored by KEOSD to sign the transaction when the transaction is initiated.

3.2.2 EOSIO.CDT

EOSIO.CDT is a toolkit for smart contract development, which includes smart contract initialization tools, smart contract APIs, and compilation tools. When compiling smart contracts, EOSIO.CDT will analyze and optimize the contract code. (LLVM)

3.2.3 EOSJS

EOSJS is a JavaScript development kit that supports nodejs and browser front-end environments. Developers can communicate with sidechain API nodes via integrated EOSJS to query network status, or to send actions. EOSJS is currently available for download and installation via NPM / YARN.

3.3 Basic services

3.3.1 Smart Contract

Smart contracts are programs that are deployed and run on blockchain nodes. Currently, contract development only supports the C/C++ language. The development tools eosio.cdt are used to generate the deployment files WASM and ABI, balancing performance and cross-platform. EOS has specialized API functions that provide more robust type safety and reduce contract development. The smart contract defines the relevant interfaces that interact with the outside of the EOS system and implements the interface functions. The user interacts with the contract through the interface provided by the smart contract. The developer can decide what the user can do and can call the corresponding program to process the user's request.

3.3.2 Data Storage

Each smart contract has its own independent database, which supports the create, modify, and delete tables and data.

Multi-Index API: Multi_index provides a C++ interface to the EOSIO database.

multi-index iterator: A query for object data in a multi-index table.

As a contract developer needs to pay for the running cost of data storage, users should not be forced to pay storage fees directly for the contract because they use the contract.

3.3.3 API Node

The sidechain block producers will provide global node services, including API Node, History Node, and Peer Node.

API Node: Supports sending transactions, querying accounts, querying contract databases, etc.

History Node: Supports querying account history actions, contract history, etc.

Peer Node: Used for blocks peer between nodes.

3.4 IT Operations

3.4.1 BP Monitoring/Abnormal Alarm

To help dApp developers quickly access smart contracts in sidechain networks, we will provide a complete, visual network monitoring system that includes operational status, statistics, and analyses of Block Producers. The operating status data of the side chain network is presented in real time, and relevant personnel can be notified promptly for more serious notifications.

3.4.2 Data Visualization

The sidechain explorer displays real-time rendering of sidechain block number, TPS, block producer information, CPU/NET/NET price, support account information, transaction records, block query, and support for an account Multi-dimensional analysis.

3.4.3 Block Snapshot

The sidechain provides a daily update of the block snapshot file, which is convenient for developers to quickly deploy their own side chain nodes. Through the snapshot file, dApp developers can start a catch up with the current side chain network in a few minutes without replaying the block log. Nodes that run based on snapshot files can be used for production, synchronization between nodes, and processing API requests.

4.1 Token Model and Side Chain Resources

The MEET.ONE side chain has three resources:

NET: bandwidth and disk storage resources;
CPU: computing resources;
RAM: smart contract storage resources;

Every initiated transaction consumes CPU and NET resources from the account. In the side chain, CPU and NET can be obtained free of charge staking the MEETONE token. If the transaction needs to store data in the network it consumes RAM resources. MEETONE tokens can be used to purchase RAM. The stored data supports deletion to free up RAM, and spare RAM can be sold to obtain MEETONE tokens.

For example, the developer deploys a datastream smart contract in account A, allowing any sidechain account to send an action to store data in account A, and account A is responsible for the RAM consumed by all data storage. Account A needs to purchase sufficient RAM so that the smart contract works properly.

4.2 Side Chain Block Producers

The MEET.ONE side chain Block Producer are elected by the MEETONE token holders, and the top 21 who received the greatest number of votes become active block producers. The producer reward is borne by the MEET.ONE Foundation. A total of 100 million MEETONE is spent each year, and there in no inflation for the MEETONE token. At the start of the side chain, the Foundation will transfer 500 million MEETONE tokens to the system accounts eosio.vpay and eosio.bpay, respectively, for a total of 1 billion, to pay for the MEETONE side chain for ten years. The eosio.bpay account is used to pay out the block rewards to the top 21 Block Producers, and eosio.vpay assigns voting rewards according to the voting weights obtained by all Block Producers. The Block Producer can call claimrewards to receive rewards through the system contract every 24 hours. Block producers cannot submit claims if they have earned less than 1000 MEETONE.

Recommended node machine configuration: 4 Core CPU, 16 GB RAM. Note that P2P address and API address must be exposed.

4.3 Consensus Algorithm (aBFT-DPoS)

The EOS.IO consensus mechanism is BFT+DPoS. Under the DPoS (Delegated Proof-of-Stake) mechanism, each token holder participates in the selection of Block Producers that can represent their own interests. The top 21 Block Producers have the permission to produce blocks, and the block confirmation period is 0.5 seconds. The node continuously produces 12 blocks and then switches to the next Block Producer.

The aBFT (asynchronous Byzantine Fault Tolerance) mechanism allows each block to be packaged by the Block Producer and waits for at least 14 (21 * 2 / 3) nodes in the first 21 Block Producers to be identified as two rounds of verification. The formula for irreversible blocks is as follows:

( ( 21 * 2 / 3 ) * 12 ) * 2 / 2 = 168 (seconds)

4.4 Deferred Transactions

EOS.IO supports initiating future transactions to be executed at a specific time.

Contact us

Telegram: https://t.me/meetonechain

Twitter: https://twitter.com/Meetdotone

Website: https://meet.one

Github: https://github.com/meet-one