With the fundamental “layer one” in the Ethereum ecosystem now established, blockchain development is entering an exciting new phase of “Tokenize Everything”. However, there is still a huge gap between blockchain applications and blockchain infrastructures. Current blockchain infrastructure is missing an important software layer that supports scalability, interoperability and functionality. This layer operates on top of existing blockchains, integrates technologies like decentralized storage and messaging, and often offers developer-friendly services and solutions to some common problems, for example, asset lifecycle management. Without this layer, it is difficult for developers to build Dapps that can match Internet applications in terms of scalability, performance, and user experience. To simplify and accelerate blockchain application development, we are proposing a Universal Decentralized Asset Protocol (UDAP) specialized in asset lifecycle management, search and trade (including some common trading models like buy and sell, rental, auction, pledge, etc).

The proposed UDAP is a “layer two” solution to non-fungible asset lifecycle management, search and trade. With this proposed decentralized middleware network, non-fungible assets can be defined, registered, verified, tracked and traded using an ERC721-compatible on-chain asset model. Complex operations like auction and search are routed to off-chain service nodes, however, transactions are still anchored by on-chain consensus algorithms.

The following diagram is an architecture overview of the proposed UDAP platform. It defines three layers with corresponding logical nodes as well as a simple use case about retrieving assets stored on the blockchain and decentralized storage. This layered architecture creates a separation of concerns and enforces reuse. Application developers no longer need to code with low-level web3 APIs and specific storage and messaging APIs. The middleware provides a coarse asset-oriented APIs and off-chain solutions (like state channel and off-chain search) that expands transaction capacity and enables immediate finality.

The UDAP middleware network introduces two new node types. One is Gateway Node, which provides routing and load balancing services. Another is Service Operation Node, which provides off-chain computation and integration to blockchains, storage, and messaging. Nodes are selected and incentivized to service the consumers (Dapps) through a Proof-Of-Performance-Stake (POPS) consensus algorithm. This middleware layer offers off-chain search, state channel components, secure content delivery, common trading models and asset lifecycle management services (as illustrated below).

2018 will see layer two solutions grow and mature. As a layer two solution to non-fungible asset lifecycle management, search and trade, UDAP has some unique features that differ from other layer two solutions:

· No blockchain knowledge required for rapid blockchain application development.

· Asset lifecycle management, off-chain search, and integration to blockchain, storage, and messaging.

· Compatible with ERC721.

Technology Highlights

POPS Consensus

We envision this middleware layer as a decentralized network that provides services to support asset lifecycle management, search and trade. In this untrusted network, middleware nodes must convince their clients that they provided the service they were requested to offer; in practice, middleware nodes will generate Proofs-of-Performance-and-Stake (POPS) that the clients verify.

A POPS verification process involves a client node V (Verifier) and a service node P (Prover). V sends a service request to P which was selected from active service nodes based on their health, performance, and stakes. P executes the service and responds with a result. POPS is initially a Verification by Replication model, which means multiple service nodes (usually two nodes) are selected for executing the service. If the results do not agree, or if not enough results are returned in a reasonable amount of time, another service node is selected to run the service. The client node receives results from service nodes and as a verifier compares the results. Once a minimum 2 of the results agree, then the client node assumes those results are correct. In this case, these two service nodes get rewarded for the service execution.

We are also exploring other algorithms (such as Argument Systems) to improve our POPS Consensus model.

Off-Chain Search Engine

Searching non-fungible assets given a search criteria on the blockchain is not practical. To support in-app search or cross-apps search, UDAP proposes a decentralized off-chain search engine, which leverages the POPS consensus model. For any ERC721 compatible smart contracts, asset issuers can define keywords and choose asset attributes that the layer 2 search engine can build index on. Each time when an ERC721 compatible contract is registered with UDAP, the search engine will monitor the smart contract and build index on the layer 2 network which reference the assets on blockchain. A search request from an application will then be routed to a service node that provides the search service, which in turn respond with a search result.

Asset Backed Token (ABT) Service

The Asset Backed Token Service takes care of asset class (ERC721-compatible smart contract) registration and asset tokenization. Some key use cases are:

* Register asset class: to declare and deploy ERC721-compatible smart contract, with metadata clearly defined, for example, symbol, icon/avatar, and common attributes.

* Issue an asset: to mint a new token of a given asset class with unique asset properties, for example, serial number.

* Transfer an asset: to transfer an asset to another account. Recipients may need to sign the transactions to accept the transfer.

State Channel Service

State Channels are very powerful layer-2 technology that off-load computation from the main blockchain to semi-private computing components, probably not based on blockchain technologies, for better scalability, better privacy, lower cost and immediate finality.

The State Channel Service supports using state channels in applications. The main responsibilities of the service are: Receipt issuance, Receipt custody, Contract enforcement, Channel updating, Double-spent detecting, Withdrawal monitoring.

UDAP state channel is a specialized implementation that has well defined scope of applications. For those applications a limited number of pre-defined adjudicator contracts are all they need to run state channels. They do NOT need to write smart contracts to use state channels. The state channel service of UDAP are composed of a set of channel management functions plus some pre-defined adjudicator contracts.

UDAP’s promise to our customers:

1. No knowledge of blockchain required

2. No Blockchain Lock-in

3. Access to full-lifecycle asset management.

To join UDAP with:

Telegram

Twitter

Facebook

Github

Linkedin

Medium

Youtube

For more information please contact — jhe@udap.io