[Short general description]: Celer Network is an Internet-scale, trust-free, and privacy-preserving platform where everyone can quickly build, operate, and use highly scalable decentralized applications. It is not a standalone blockchain but a generic networked system running on top of existing and future blockchains. It provides unprecedented performance and flexibility through innovations on off-chain scaling techniques and incentive-aligned cryptoeconomics.
[Main problems tackled]: Celer Network is a platform for highly scalable decentralized applications, with a payment network being one component of the ecosystem. Off-chain transactions in Celer can be arbitrary fraud-proof state transitions such as generic conditional value transfer, multi-party game move, second price auction bid, etc. Existing off-chain payment proposals have significant defects in generality, routing, and cryptoeconomics. While Celer has a much bigger scope than payment solutions, it also makes groundbreaking improvements to off-chain payment networks on both technical and economic fronts.
[Main contribution proposal]: Celer Network is the first and most advanced full-stack off-chain operating network ever with a coherent set of features:
- Fully generalized state channel dApp logic. cOS not only supports simple off-chain payments like existing solutions but also provides API and design framework to support generalized off-chain application state transitions. When someone places stones on the game board of cGomoku, each move is happening through off-chain logic execution. Don’t worry about the security and finality, because each step is secured by on-chain verifiable generalized state proof.
- Out-of-box conditional payment. Blockchain applications are often associated with value transfer, which is the case in Gomoku duel because the winner gets the loser’s stake. The interesting thing here is to ensure that no one can cheat: the loser has to pay. cChannel enables this semantic by supporting conditional payment. Before the game starts, each player can send conditional payments to its counterparty saying “I will pay you $5 if you win”, which can be enforced to malicious counterparties. Note that the payment logic and Gomoku logic are separate smart contract objects with state dependency, so that cGomoku can share the same payment channels with all other cApps. More broadly, cOS and cChannel support generalized conditional dependency DAG with arbitrary resolution logic beyond this kind of simple logic.
- One-time-setup, long-term-use channel. Connecting to the Celer Network is similar to connecting to the Internet. You can choose one or a few access points to open cChannels and these are the only on-chain operations you ever need to do until you run out of money or encounter special events such as malicious counterparty. Just like you can use the same Internet service providers to access all sorts of Internet applications, you can use the same cChannels to access all sorts of cApps concurrently. The following three features are essential to support this ease of use.
- Multi-hop trust-free state relay via Celer Nodes. In the Celer Network, each end user only needs to connect with one or a few access points. Not only simple payments but also more complex conditional state transitions need to be relayed in a multi-hop fashion. Celer Network’s cOS provides a simple API call for the application to conduct this kind of complex multi-hop conditional state relay without worrying about the interaction with the cChannel network.
- Modular state dispute resolution. Sometimes on-chain state settle cannot be avoided. For example, one of the cGomoku players may drop off-line. In that case, we want to minimize the “blast radius” of such on-chain settlement. You wouldn’t want to close all your channels just because of an offline Gomoku opponent. cChannel’s interface is designed so that each off-chain object is compartmentalized to do just that.
- Pure Off-chain Object. Many people may believe that every off-chain application has to go through an on-chain initialization phase to set up an on-chain bond. This is an inaccurate mental model. The on-chain bond contract is only necessary for payment channel logic because the states of each payment channel (e.g., Alice deposits $X into the channel) should be verifiable by all nodes to prevent double spending, which is essentially preventing “state race conditions”. However, if we look at cGomoku, the game state is valid as long as all involving parties have signed the state, and no state race conditions can ever happen in this context. Therefore, no on-chain state or operation is ever needed for cGomoku until someone wants to dispute. We call this kind of objects Pure Off-chain Objects. But how can we properly reference a pure off-chain object if we want to dispute over this object later on the blockchain? Celer Network provides a way to construct a uniquely identifiable reference (Off-chain Address) for off-chain objects, only deploy objects on chain when necessary, and provides an Off-chain Address Translator (OAT) to establish the mapping from off-chain address to on-chain address.
- Mobile cOS native dev framework and runtime. Celer Network provides the first-ever mobile based off-chain application development framework under cOS specification. cOS lets developers concentrate on the application logic and create the best user experience, without hassling with complicated off-chain states exchange, tracking, or dispute. Whether you want to enable fast and secure transaction in an e-commerce app or add rich gamification features in a viral mobile game app, the user experience will be silky smooth, say goodbye to slow transactions and expensive transaction fees.
cStack - Layered architecture with clear abstractions and interfaces. Reduces complexities in the system design, development and maintenance. Enables rapid evolution of each individual component.
cChannel - Generalized state channel and sidechain suite. Supports fast state transitions with generic dependency DAG on networked channels. Flexible constructs to maximize liquidity utilization.
cRoute - Provably optimal value transfer routing with transparent channel balancing. 15X higher throughput compared to state-of-art solutions. Fully decentralized with high failure resilience.
cOS - Development framework and runtime for off-chain enabled applications. Provides common design patterns, and handles the operation, storage, tracking, and dispute of off-chain states.
cApps - Application ecosystem running on Celer Network. Scale out to billions of private off-chain transactions per second with no compromise on trust or decentralization guaranteed by the blockchains.
cEconomy - Cryptoeconomic model that provides network effect, stable liquidity, and high availability for the ecosystem. Includes proof of liquidity commitment, liquidity backing auction, and state guardian network.