Who Says No to Sharding?

CKB Weekly #2        

Lina

Hello, welcome to issue #2 of the CKB Weekly, a newsletter about the Nervos Common Knowledge Base blockchain and related technology.

👯‍♀️ We can see that Lina continues to grow stronger, now nearing 10.5 PH/s! 👯‍♀️

Sparklings 

  • One community member has designed an efficient decentralized exchange based on Nervos, it shows how the cell model, which is very close to bitcoin’s UTXO programming model, could lead to a different DeFi security paradigm for everyone.

  • Token Mint: A demo application that currently enables playing around with user defined tokens on your local CKB network. It also showcases the use of Keyper: an ownership layer for CKB.

    • Keyper-Web-Wallet is a type script based wallet meant for executing in a browser page. It is embedded within an iframe within the main Token Mint page and performs cryptographic operations in a separate web worker thread.

    • Keyper-Bridge is a simple package that encapsulates the message channels and message handling to make communication between a dapp and a wallet easier. 

Media

  • Nervos co-founder Kevin Wang and Haseeb Qureshi of Dragonfly Capital recorded a podcast, interesting takeaways include: 

    • Nervos is truly a global project, the strongest Layer 1 coming out of Asia and has an interesting economic model, state model and unique vision of a smart contract platform.

    • Assumptions that have been made based on Ethereum are being questioned, the window of opportunity for a Layer 1 to gain similar reach is quickly closing.

    • Effective community building is about being close to the community, not about money, but about being inside the community and understanding the culture.

  • Jordan from the Nervos Foundation presented a summary of Nervos innovations and discussed Layer 2 and current challenges facing crypto projects at the most recent Silicon Valley Ethereum meetup, check out the recording here.


Feature

Today we present Jan Xie [content from his latest Coindesk sharing]

Jan Xie, architect of Nervos - he is the guy who said no to sharding.

What are you working on recently?

Our primary goal has shifted to developer experience on CKB since mainnet launch. CKB presents a novel smart contract model based on UTXO-like objects which is quite different from Ethereum. We think it’s an interesting direction to explore and we’re working on new tools to make dapp development on CKB easier, including a Rust toolchain and a Javascript framework for a broader developer audience, allows you to write smart contract and everything in javascript. The other focus is layer 2 protocols, including channels and sidechain.

Why Nervos is designed in this way?

Nervos is inspired by Bitcoin and payment channel networks, it’s designed to be a layered network from the very beginning. We use PoW not PoS. We don’t do sharding - not believers of sharding. That’s a quite distinct angle as most blockchain projects we saw want to solve all the problems by a single blockchain. Starting a design with this holistic view you’ll see an immediate problem in such a layered network, which is economic model incompatibility - if the number of transactions run on the 2nd layer are orders of magnitude larger than the number on the 1st layer, is the 1st layer still secure using economic models we see today? In other words, is the transaction fee collected on layer 1 large enough so miners and validators are incentive aligned? If the answer is no then the 1st layer is not secure and the whole network will collapse. We think this is the main problem Bitcoin is facing today as it’s marching towards the layered network direction. 

The other problem we try to avoid is the main problem in Ethereum’s economic model, we call it “heavy asset problem”. It basically says that all those ERC tokens issued on Ethereum are free-riding Ethereum’s security service, because it’s ETH holders who pay the security budget and bear the cost of dilution. The appreciation of ERC tokens has no direct benefit to the system, even worse it increases the potential reward to attackers if they manage to disturb the consensus. So the more successful Ethereum or DeFi is, the more lucrative and attractive it is to attackers. If you agree with this line of reasoning the only deduction we can get is it would never be that successful in the first place.

Those problems can not be solved by improvements or enhancements of existing systems, like consensus improvements or something. They can be solved only by a complete new design. Fortunately we found it’s possible to kill those birds with one stone, and that's the cell model. 

Cell model is the transaction and state model used by Nervos layer 1 blockchain, it’s a generalization of Bitcoin’s UTXO model, it’s more powerful than UTXO and more abstract and simple than Ethereum’s account model. Based on the cell model we developed a new economic model which I believe can solve the problems in those of Bitcoin and Ethereum, and fix many other problems in smart contract programming models in a natural way.

What does it mean for developers? 

Smart contract developers are still a small group of people compared to the c, c++ and javascript community. For a new smart contract platform to go mainstream, a more practical path is to embrace “traditional” developers, allow them to use any programming language they’re already familiar with, rather than create a new language and force them to use. That’s the approach we take. We build a virtual machine fully compatible with RISC-V, an open and widely-adopted instruction set usually used in chips. Mainstream toolchains already provide excellent support for RISC-V, which means any programming language supported by gcc/llvm can be used to write smart contracts on Nervos. With that being said, you can still create new domain specific languages for smart contract programming on Nervos, however it’s an option not a mandate anymore. And I’m talking about features developers can use on Nervos today, not something on the roadmap.


Voices of the Syncing Nodes 

“They say “Silicon Valley computer scientists” types tend to fundamentally misunderstand cryptoeconomics because they only see computer science and not economics. While all smart contract platforms in recent memory tried to improve on Ethereum technologically, nervos stands out as the only network to address the economic inadequacies of smart contract networks”@npccrypto

“so its probably better to build stuff first which people can use and in the meantime build the community slowly. hype train comes in sooner or later anyhow the more people get involved” @Fernando Per

HODL, HODL HODL. We are in it for the long, stay strong! You've invested a lot. It isn't an ordinary token this one so don't sell it low. We are the miners, we may not make a quick buck here but we are controlling issuance. If you can't risk it, shutdown and wait. The breakout is coming! @Dylan Carter

“Mainnet is out less then 6 months. Lots of stuff is happening. Wouldn't "push" it too much, its something different than the other ERC20 coins or staking platforms. I would deem it quite successful in the long run” @P. J.


Technical Updates

Core

  • Neuron

    • Release Neuron v0.30.0-rc1/rc2

    • Better Nervos DAO UI/UX

    • Improve syncing speed

    • Working on UDT support

  • CKB Explorer

    • Add script explanation label

    • Working on new UX and new charts

Ecosystem

  • Wallets - MathWallet, ABC Wallet, imToken, HyperPay, Bitpie, Cobo, Hoo, Renrenbit

  • Supporting mining pools - 14 [source:miningpoolstats]

  • Exchanges - 28 market pairs [source: coingecko]

  • SECBIT Labs [Zero knowledge proof toolkit for CKB]

    • [Bulletproofs] R1CS implementation finish,which adopt R1CS standard and preserve the advantage of BP

    • [Groth16] CKB Verifier contract initially run successfully, and performance , resource consumption and the two implementation schemes need to be further compared and tested

    • [Poseidon] Hash survey has been completed, and the Gadget implementation is in progress

  • GrowFi [token swap functionality] 

  • Lay2 [build dApp on CKB and run them everywhere] 

    • Completed the initial migration of secp256r1 algorithm to CKB and the signature verification function of secp256r1 is under testing


“Nervos” artwork by @Jacob_5

*CKB Weekly is curated by a group of people who witnessed Lina’s birth and started this to record her growth. Any views expressed are personal and do not represent an official position of the Nervos project. Got updates or articles you would like to include? Any feedback or other suggestions? Let us know by replying to the email.