Nervos CKB Development Update #20

Ian Yang
Nervos Network
Published in
2 min readOct 12, 2019

Sep 16— Oct 8

by Ian Yang, Xuejie Xiao and Qian Linfeng

TL;DR

  • CKB v0.22.0 has released. In this release, we made several changes to the header structure and consensus rules.
  • CKB VM now has a standalone debugger.

Changes in CKB

We released v0.22.0 on Oct 5.

#1585: Include fractions in epoch number representations (@xxuejie)

We use a rational number format to represent epoch number.
The lower 54 bits of the epoch number field are split into 3
parts (listed in the order from higher bits to lower bits): 1. The highest 16 bits represent the epoch length; 2. The next 16 bits represent the current block index in the epoch; 3. The lowest 24 bits represent the current epoch number.

#1643: Compress header (@zhangsoledad)

We removed uncles_count, merged transactions_root and witnesses_root, and replaced difficultywith compact_target.

#1632: Change script args and witness to single bytes (@quake)

We changed script args and witness from Vec<Bytes> to Bytes. The main method no longer receives
script args as argv. The new system call load_script should be used to get the script args.

#1646: Use epoch as the basic maturity unit (@yangby-cryptape)

Cellbase outputs can be used after 4 epochs.

#1609: Use DAO type script hash in DAO transaction (@TheWaWaR)

DAO deposite must use type as the hash_type to reference the DAO system script.

#1617: Setup issuance schedule (@doitian)

Primary reward starts at 4.2B a year. Secondary reward is 1.344B a year.

#1666: Expand nonce to 128-bit (@zhangsoledad)

We expanded nonce to 128-bit and changed pow_message from nonce || pow_hash to pow_hash || nonce.

Changes in CKB VM

  • #85 criterion updates
  • #87 Return loaded program consumed bytes

We split the script part in CKB into a separate project: https://github.com/nervosnetwork/ckb-standalone-debugger. This enables off-chain script debugging, what’s more, it’s now possible to compile the debugger into a proper WASM program. This enables the potential to build a Remix-style debugger for CKB.

Changes in P2P

  • #187: Upgrade molecule version

Changes in CKB CLI

  • #91: Add extended-address sub-command
  • #92: Require transaction fee when send transaction

Join our community: Forum Telegram Twitter Reddit Github

--

--