Glossary
Glossary Sections
General Glossary
Account
A kind of basic object in distributed ledger used to keep the balance and other information of users.
Address
A label consists of string of letters and numbers that anonymously represents user's identity on chain. Crypto assets can be sent to and/or from addresses. CKB address packages Lock Script into a single line, verifiable, and human read friendly format. A single public-private key pair can generate multiple Lock Scripts, consequently multiple addresses.
Synonyms
See Also
Asset
A piece of data that has value or that represents an entity having value.
Synonyms
Block
A grouping of transactions, marked with a timestamp, and a fingerprint of the previous block. The block header is hashed to produce a proof of work, thereby validating the transactions. Valid blocks are added to the main blockchain by network consensus.
See Also
Block Height
Block height is the total number of blocks that have been confirmed on the blockchain, also used to identify a unique block when specifying a particular block height, as there is always an exact block at any block height.
Synonyms
See Also
Block Interval
Also known as Block Time. Block interval is the length of time it takes to create a new block in a cryptocurrency blockchain. Block interval is the measure of the time it takes the miners or validators within a network to verify transactions within one block and produce a new block in that blockchain. The block interval is variable on Nervos blockchain.
The block interval on the Bitcoin blockchain is approximately every 10 minutes. The block interval on Nervos is variable, but is usually under 10 seconds.
Synonyms
See Also
Block Propagation
The process of synchronizing a new block to the majority of full nodes in the network. Block propagation is a well-known bottleneck that prevents Bitcoin from scaling.
Block propagation time is an average time that is needed for the new block to reach the majority of nodes in the network. Long block propagation delay reduces the node's resistance against 51% attacks.
Synonyms
See Also
Block Reward
The amount of cryptocurrency credited to a miner's account after the miner successfully adds a block of transactions to the blockchain.
In Nervos CKB, block rewards are the CKBytes credited to a miner's account after a block is successfully added to CKB by the miner.
See Also
Block Time
Alternatively referred to as Block Interval.
Synonyms
Blockchain
A data structure maintaining a growing list of records, organized as a chain of blocks. Each block, apart from the first one, is cryptographically linked to the previous block, thus creating a chain-like structure.
The cryptographic link ensures any party with the last block can verify that none of the historical data is modified after the creation of this block.
See Also
BLS Signature
A cryptographic signature scheme for signing and verification. BLS is short for Boneh–Lynn–Shacham.
See Also
Broadcast
Blocks are sent to all nodes in a blockchain network.
See Also
Capacity
The maximum space (in bytes) that a Cell can occupy on the Nervos CKB.
Synonyms
See Also
Cell
Cells are the primary state units in CKB, within them users can include arbitrary states. All data on Nervos CKB is stored in Cells.
A Cell has 4 fields: capacity
, data
, type
and lock
.
Synonyms
See Also
Cell Model
A representation of how state is managed on Nervos CKB. The Cell Model is a more generic state model than either Bitcoin's UTXO or Ethereum's account model.
The Cell Model is a new construction that combines many of the advantages of Ethereum's account model with the asset ownership and proof-based verification properties of Bitcoin's UTXO model.
See Also
Censorship Resistance
Censorship resistance in blockchain generally means that it is difficult for a malicious party to prevent the blockchain from confirming a set of transactions generated by honest users.
Chain
A shorthand name for blockchain.
Synonyms
CKB
An abbreviation which can have different meanings depending on the context:
- Common Knowledge Base - The layer 1 blockchain of the Nervos Network.
- Common Knowledge Byte - The native token of the Nervos Common Knowledge Base.
Synonyms
CKByte
A shorthand name for Common Knowledge Byte.
CKByte is also sometimes shortened to CKB. Exchanges often use CKB as the ticker symbol.
Synonyms
Not To Be Confused With
CKB-VM
CKB-VM is a crypto-agnostic virtual machine, a RISC-V instruction set based VM for executing both on-chain and off-chain code.
See Also
Code Hash
A field in a Cell which contains a hash value that can refer to a specific piece of data, or a specific Cell referenced by Type ID.
See Also
Cold Storage
A method of securing funds by placing them in a cold wallet; a type of wallet that is never connected to the internet.
See Also
Cold Wallet
A wallet that is used to secure assets offline. This wallet is permanently disconnected from the internet, and not vulnerable to attacks which rely on an active internet connection.
See Also
Commit
Nervos CKB's consensus algorithm, NC-Max consensus, has two phases: propose and commit. Commit is the process of including a valid proposed transaction into a new block.
Commit-Chain
A scheme that enables the off-chain processing of transactions by one or more operators with on-chain state update commitments that do not contain per-transaction data.
Commit Reward
A reward paid to miners in CKBytes on inclusion of previously proposed transactions.
Common Knowledge Base
A layer 1 proof of work blockchain that provides a foundation of decentralized trust for the Nervos Network.
Synonyms
Not To Be Confused With
See Also
Common Knowledge Byte
The native token of the Nervos layer 1 blockchain, the Common Knowledge Base.
Common Knowledge Byte is often abbreviated as CKByte or CKB.
Owning a CKByte entitles the holder to store one byte of data on the Nervos CKB blockchain.
Synonyms
Not To Be Confused With
See Also
Confirmation
A process where a transaction has been accepted and verified by the network and included in a block.
See Also
Consensus
An algorithm executed among a number of distributed participants, ensuring that all participants faithfully executing this algorithm can reach agreement on some data value even if the other participants are faulty or malicious.
See Also
Consume
The process of using a Live Cell as an input to a transaction. The consumption processes indicate that Live Cell turns into a Dead Cell.
Contract Account
An account containing code that executes automatically whenever it receives an event from another account.
See Also
Cryptocurrency
A cryptocurrency is a digital or virtual currency that is secured by blockchain and cryptography, which makes it nearly impossible to counterfeit or double-spend.
See Also
Cryptographic Signature
A concise piece of proof data. Cryptographic signature schemes are a fundamental component of cryptocurrency networks that verify the integrity and non-repudiation of transaction messages across the network.
Synonyms
Cryptography
Cryptography is the practice and study of techniques for secure communication in the presence of adversarial behavior.
See Also
Cycles
The number of RISC-V computational cycles required by a Script to execute. It's a metric used to prevent malicious behavior such as infinite loops, that's why it is called cycles.
This is a similar concept to Ethereum's Gas, we set cycles to ensure optimal performance and security. Scripts must stay within cycle limits, otherwise the block will be rejected by CKB nodes.
See Also
- Estimate cycles
- Max_block_cycles
- Rules for calculating cycles in RFC on Nervos Network Github
- Script
- RISC-V
- Ethereum's Gas
DAO
A decentralized autonomous organization (DAO) is an organization represented by rules encoded as a computer program that is transparent, controlled by the organization members and not influenced by a centralized entity, in other words they are member-owned communities without centralized leadership. A DAO's financial transaction record and program rules are maintained on a blockchain.
See Also
DApp
Decentralized application. At a minimum, it is a smart contract and a web user interface. In a broader sense, dApps are web applications that are built on top of open, decentralized, peer-to-peer infrastructure services. Additionally, many dApps include decentralized storage and/or a message protocol and platform.
Data
In Cell Model, data
is a field in a Cell which can store arbitrary bytes.
See Also
Decentralization
In blockchain, decentralization refers to the transfer of control and decision-making from a centralized entity (individual, organization, or group thereof) to a distributed network.
See Also
DeFi
Short for "decentralized finance", a broad category of dApps aiming to provide financial services backed by the blockchain, without any intermediaries, so anyone with an internet connection can participate.
Digital Asset
A digital asset is an individual piece of data that has value, or represents another entity that has value.
Digital assets are most commonly represented as tokens, which may be used as digital currency or represent physical items such as real estate.
Synonyms
Digital Currency
A type of currency that primarily exists digitally over the internet. Physical representations of the currency, in the form of cards, bills, or coins, may exist, but are secondary mediums.
See Also
Distributed
A system where components are spread across multiple nodes to parallelize workloads, add redundancy, or eliminate single points of failure.
See Also
Digital Object (DOB)
A non-fungible encrypted asset with its content fully stored on-chain, establishing an intrinsic link between content and value.
See Also
Double-Spending
Double-spending is the risk that a digital token is spent twice or more. In the context of blockchain, it happens when the transaction spending a digital token is cancelled after confirmation, and the same token is spent in another transaction.
See Also
Epoch
An epoch is a period of time for a set of blocks.
In Nervos, the PoW difficulty changes on a new epoch. All the blocks in the same epoch share the same difficulty target. The difficulty adjustment algorithm aims to stabilize the orphan block rate at 2.5% and the epoch duration at 4 hours.
See Also
Fee
The sender of a transaction often includes a fee to the network for processing the requested transaction. There's no minimum fee rate set in consensus, but there's a minimum fee rate 1,000 Shannons/KB in CKB's P2P network. (1 Shannon = 10-8 CKB)
See Also
Fee Rate
A tip per byte that a user offers to the miners for including his transaction in a block on the blockchain.
This is a same concept to Bitcoin's Fee Rate(often spelled feerate).
See Also
First-Class Assets
Assets that 1. the asset itself (rather than a reference to the asset) can be passed directly in smart contract interactions, and 2. directly controlled by owners without any intermediaries.
See Also
Fork
A change in protocol causing the creation of an alternative chain, or a temporal divergence in two potential block paths during mining.
Full Node
A full node is an essential component of the CKB network. It stores and syncs the entire blockchain, verifies the validity of blocks and transactions, and enforces the network's consensus rules.
ckb init --chain Mainnet && ckb run
See Also
Full Payload Format
The deprecated full payload format directly encodes all data field of Lock Script. The encode rule of deprecated full payload format is Bech32.
See Also
Fungible Token
A fungible token can be fiat currencies like the dollar or a cryptocurrency like Bitcoin.
Fungible tokens or assets are divisible and non-unique.
See Also
Gas Limit
The maximum amount of gas a transaction or block may consume.
See Also
Hard-Fork
A permanent divergence in the blockchain; also known as a hard-forking change. One commonly occurs when nonupgraded nodes can’t validate blocks created by upgraded nodes that follow newer consensus rules. Not to be confused with a fork, soft fork, software fork, or Git fork.
Hardware Wallet
A hardware wallet is a form of cold wallet. A hardware wallet is a cryptocurrency wallet that stores the user's private keys (a critical piece of information used to authorize outgoing transactions on the blockchain network) in a secure hardware device.
See Also
Hash
A fixed-length fingerprint of variable-size input, produced by a hash function.
Hash Rate
Hash rate is a measure of the computational power per second used when mining. These operations are known as "hashing".
See Also
Height
A shorthand name for block height.
Synonyms
Light Client
As a low-resource node, a light client allows users to sync with a blockchain in a cryptographically secure manner without having to store the whole blockchain.
Light Node
A light node downloads only the headers of the blockchain, conserving resources. It relies on other nodes for full transaction data and is a lightweight option for network participation.
ckb-light-client run --config-file ./testnet.toml
See Also
Mempool
Short for "memory pool". A waiting area on full nodes for transactions that have been broadcasted to the network but have not yet been confirmed on the blockchain.
See Also
Metadata
Metadata is data that provides information about other data. capacity
, type
and lock
in Cells are metadata, they occupy Cell capacity and incur a state cost as well.
See Also
Micro-State
A small piece of state that is isolated and often able to be acted upon independently without knowing the total state of the network.
On Nervos, micro-state is represented by a Cell.
Synonyms
See Also
Miner
A network node that finds valid proof of work for new blocks, by repeated hashing.
See Also
Miner Fee
Another term for transaction fee.
Synonyms
Mining
Mining is the process by which a blockchain node get new token reward by verifying new transactions, finding valid proof of work and creating new blocks.
See Also
Mining Node
Mining nodes create new blocks by solving computational puzzles. They contribute to the network's security and consensus by actively validating and adding blocks to the blockchain.
ckb init --chain Mainnet && ckb miner
See Also
Mining Reward
Native tokens paid to miners as a reward for providing the necessary computing resources for mining.
See Also
Multisig
The term multisig stands for multi-signature, which is a specific type of digital signatures that can be created through the combination of multiple unique signatures.
Native Token
The token issued as reward to a blockchain's consensus nodes. Nervos CKB's native token is CKByte.
See Also
NC-MAX
Nervos CKB's consensus algorithm, which follows NC's backbone protocol. The main innovation here is a two-step transaction confirmation mechanism
See Also
Neighbor
A node that is directly connected to another node in the blockchain peer to peer network.
See Also
Nervos Blockchain
The layer 1 blockchain of the Nervos Network known as the Common Knowledge Base.
Synonyms
Nervos DAO
Nervos DAO enable users to lock CKBytes to get compensation from Nervos CKB secondary issuance. This process is similar to staking on other platforms. Nervos DAO provides a "virtual hardcap" for CKByte holders to insulate them from inflation.
See Also
- CKByte
- DAO
- Secondary Issuance
- Nervos DAO Explained on the Nervos Blog
- Nervos DAO in RFC on Nervos Network Github
- Inflation Rate Chart
Network Hash Rate
A measurement of the total computational processing power which is dedicated to providing security to the network.
See Also
Node
A software client that participates in the network.
See Also
Nonce
In cryptography, a value that can only be used once. Nonce can refer to two things in blockchain context: 1. a proof-of-work nonce is the random value in a block satisfying the proof of work requirement; 2. an account nonce is a transaction counter in each account, which is used to prevent replay attacks.
See Also
Non-Fungible Token
Non-fungible tokens or NFTs are cryptographic assets on a blockchain with unique identification codes and metadata that distinguish them from each other.
See Also
Open Source
A piece of software where source code is freely available for examination or alteration by any third-party.
See Also
P2P
A shortname name for peer to peer.
Synonyms
Paper Wallet
A form of storing a recovery phrase or private keys offline by printing them on a piece of paper. This document would then be stored by traditional means in a secured location of the user's choosing, such as a safe.
See Also
Payment Address
A string of letters and numbers that cryptocurrency and assets can be sent to and from.
Nervos CKB Mainnet addresses always begin with the prefix "ckb".
Synonyms
Payment Channel
A micropayment channel or payment channel is class of techniques designed to allow users to make multiple payment transactions without committing all of the transactions to the layer 1 blockchain. In a typical payment channel, only two transactions are added to the block chain but an unlimited or nearly unlimited number of payments can be made between the participants.
See Also
Peer to Peer
A peer-to-peer (P2P) service is a decentralized platform whereby two individuals interact directly with each other, without intermediation by a third party.
Synonyms
See Also
Private Key
A private key, also known as a secret key, is a variable in cryptography, known only to the owner(s) of the key, that is used with an algorithm to encrypt and decrypt data.
See Also
Proof of Work
PoW asks users to solve a cryptographic puzzle to prove ownershipo of a certain amount of computational resource to participate in the consensus. In general PoW is a more permissionless consensus mechanism than PoS.
In contrast to wildly spread misconception, PoW is not a "waste" of energy and does not induce more carbon emission. PoW is used in the Nervos layer 1 blockchain CKB.
See Also
Proof of Stake
PoS asks users to prove ownership of a certain amount of cryptocurrency (their “stake” in the network) in order to be able to participate in the consensus. PoS relies on weak-subjectivity due to unsolvable issues like long-range attack. In PoS system the future consensus quorum is decided by existing participants completely. PoS is used in layer 2 protocols on Nervos Network.
See Also
Propagation
A shorthand name for Block Propagation.
Synonyms
Public Key
A notion used only in public-key cryptography, a.k.a. asymmetric cryptography. A public key is a piece of information that can be known to others without compromising security. Unique for each user, a public key is associated with a private key known only to the user. The public key can be used to encrypt a message so that it can only be decrypted with the corresponding private key, or to verify that a message is authorized by the user with the corresponding private key.
See Also
Reward
An amount of CKBytes included in each new block as a reward by the network to the miner who found the proof-of-work solution.
See Also
Signature
A shorthand name for cryptographic signature.
Synonyms
Smart Contract
A smart contract is a self-executing contract with the terms of the agreement between contract creators and contract users being directly written into lines of code. The code and the agreements contained therein exist across a distributed, decentralized blockchain network. Also known as Script on Nervos CKB.
State
Data stored on the blockchain. In most contexts this this means current data and excludes historical data.
See Also
State Bloat
The unlimited increase of state data in Ethereum. State bloat slows down node synchronization, raises the barrier of full node, thus hurts network decentralization.
State Channel
A layer 2 solution where a channel is set up between participants, where they can transact freely and cheaply. Only a transaction to set up the channel and close the channel is sent to Mainnet. This allows for very high transaction throughput, but does rely on knowing number of participants up front and locking up of funds.
Tip
A shorthand name for tip block.
Synonyms
Tip Block
The most recent block to be confirmed in a blockchain. The tip block has the highest block height in the blockchain.
Synonyms
See Also
Transaction
Transaction is the basic object created and signed by users to interact with distributed ledger. Transactions update ledger state at users requests. A CKB transaction destroys some outputs created in previous transactions and creates some new outputs. We call the transaction output a Cell in CKB.
See Also
Transaction Fee
A fee which is paid in the native token to miners in exchange for processing a transaction.
Synonyms
See Also
Token
A “token” often refers to non-native token on smart contract platform, such as UDT on Nervos Network or ERC20 on Ethereum.
See Also
Turing Complete
Turing Complete refers to a machine that, given enough time and memory along with the necessary instructions, can solve any computational problem, no matter how complex. The term is normally used to describe modern programming languages as most of them are Turing Complete (C++, Python, JavaScript, etc.).
UDT
Short for User-Defined Token, a customised token created with properties defined by the user. In normal usage, this most commonly refers to fungible tokens.
Synonyms
Unconfirmed
The state of a transaction that has not yet been confirmed. An unconfirmed transaction is not finalized and cannot be guaranteed.
Synonyms
See Also
Unconfirmed Transaction
A transaction that has not yet been confirmed. An unconfirmed transaction is not finalized and cannot be guaranteed.
Synonyms
See Also
User-Defined Token
A custom token created with properties defined by the user. In normal usage, this most commonly refers to fungible tokens.
A User-Defined Token is usually referred to by its abbreviation, UDT.
Synonyms
See Also
UTXO
Abbreviated from Unspent Transaction Output, UTXO denotes the remaining amount of tokens after a transaction, available for future use. Transactions consume existing UTXOs as inputs and generate new ones as outputs, where each UTXO is spent only once.
See Also
Wallet
User-facing software used to interact with on-chain entities such as assets, smart contracts and dApps. A wallet can include key management itself or delegate key management to external hardware for improved security.
See Also
Economics Glossary
Base Issuance
Base issuance is the basic CKByte issuance with a fixed and decreasing schedule. Base issuance is awarded to miners as incentives to protect the network and also as an indirect token distribution method.
Base issuance is limited to a finite total supply 33.6G (33.6 billion) CKBytes.
See Also
Base Reward
Base reward is the block reward (in CKBytes) to miners generated from the base issuance. Base reward halves approximately every 4 years until eventually reaching 0, like Bitcoin.
See Also
Commit Reward
A reward paid to miners in CKBytes for committing a previously proposed transaction. After the transaction has been committed it is confirmed.
See Also
Economic Abstraction
With proper tool support, users can use tokens other than CKByte (for example, stable coins) to pay transactions fees, a concept known as "Economic Abstraction".
Fiat Currency
Fiat currencies are a medium of exchange established as money, often by government regulation. Fiat money does not have intrinsic value and does not have use value. It has value only because a government maintains its value, or because parties engaging in exchange agree on its value.
See Also
Heavy Asset Problem
A common problem found in multi-asset blockchain platforms where the value of the assets stored on the chain gains significant value but the native token of the chain does not. This raises the incentive to attack the network, but does not increase the security because the value of the native token is what is used to secure the network.
See Also
Liquidity
The ability for an asset to be bought or sold easily without causing a significant change in the current market price.
See Also
Proposal Reward
A reward paid to miners in CKBytes for proposing an unconfirmed transaction.
See Also
Secondary Issuance
The creation of new CKBytes that is paid to miners through secondary rewards. Secondary issuance follows a fixed inflation schedule of 1.344 billion CKBytes per year. Nervos DAO stakers are not affected by secondary issuance.
See Also
- Base Issuance
- CKByte
- Nervos DAO
- Secondary Reward
- State
- Crypto-Economics RFC on Nervos Network GitHub
Secondary Reward
A subsidy paid to miners in CKBytes for providing the compute and storage requirements required for processing transactions and persisting data on Nervos.
Secondary rewards are created from secondary issuance, and continuously pay miners for the verification of transactions and preservation of blockchain state.
See Also
Selfish Mining Attack
Selfish mining is a concept that was addressed by Cornell University researchers in detail in a 2013 report. In this attack, malicious miners gain unfair block rewards by deliberately orphaning blocks mined by others.
See Also
Starving Layer 1 Problem
A scenario that can arise in multi-layer blockchain platforms where the vast majority of the transaction traffic moves from layer 1 to layer 2, taking the vast majority of transaction fees with it. If layer 1 relies exclusively on transaction fees to support the security of the platform, it may end up not having enough incentives available to properly secure it.
See Also
State Rent
A recurring fee that is paid to persist and secure state data.
On Nervos, secondary issuance is used to boost the payment of state rent by users who occupy space on the Nervos blockchain.
See Also
Store of Assets
Similar to the concept of "Store of Value" in the context of Bitcoin, we call the utility "Store of Assets" when a blockchain keeps any crypto-assets securely and censorship-resistantly. Nervos CKB is such a Store of Assets or SoA.
See Also
Store of Value
Assets which can maintain their worth over time without depreciating
A good store of value either match or outpace the inflation rate of fiat currency, and has a reasonable amount of liquidity, allowing the asset to be easily sold.
See Also
Tail Emission
A type of reward that is paid to miners through a fixed amount of inflation.
See Also
Targeted Inflation
A form of inflation that only affects a specific subset of users.
Nervos uses Secondary Issuance to create targeted inflation on users who occupy space on the Nervos blockchain to pay State Rent. Long-term holders of CKBytes have the option of locking them in the Nervos DAO, which acts and an inflation shelter.
See Also
- CKByte
- Secondary Issuance
- Nervos Blockchain
- Nervos DAO
- Crypto-Economics RFC on Nervos Network GitHub
Tragedy of the Commons
A situation in a system where the participants act in accordance with their self-interest and deplete or destroy a shared resource through their collective action.
See Also
Tragedy of the Security Commons
A situation that can emerge on multi-asset blockchain platforms where asset tokens rely on the storage and security of the blockchain platform, but do not contribute back to the platform. As the number of assets that "ride for free" increases, so does the burden placed on the underlying blockchain platform. If the assets do not contribute to the underlying platform, the available security may not properly support the network.
See Also
Tragedy of the Storage Commons
A situation that can emerge on incentivized blockchain platforms where mining rewards are paid for inclusion of data to the blockchain, but no rewards exist for the long-term persistence of the blockchain data. As the size of the chain grows, so do the costs associated with persisting the data. If there is no direct incentive for persisting data, fewer and fewer nodes will do so. Eventually, too few nodes will be available to properly support the network.
See Also
Technical Glossary
Active Cell
Or Live Cell, a Cell exists in the current CKB state. Only active Cells can be used as inputs to new transactions.
Synonyms
See Also
Aggron
The first Nervos CKB Testnet corresponding to Mainnet Lina.
- CKB version: >= v0.101.0 (latest stable is recommended)
- Genesis hash: 0x10639e0895502b5688a6be8cf69460d76541bfa4821629d86d62ba0aae3f9606
- Init command:
ckb init --chain testnet
- Launched at: 2020-05-22 04:00:00 UTC
- ckb2021 activated at: 2021-10-24 03:00:00 UTC
Synonyms
Not To Be Confused With
Animagus
A framework layer that runs on top of Nervos CKB which provides an easy way to query for account balances without having to go through the Cell collection process.
See Also
Args
Args is short for arguments. Arguments are data provided to the Lock Script or Type Script of a Cell, similar to args provided to a function or method call.
Arguments are stored as part of the Cell when it is created.
See Also
Axon
Axon is a chain-based layer 2 protocol and framework with a practical security and economic model. Axon chains allow anyone to stake tokens on CKB to become a validator and participate in consensus.
See Also
Blake2b
A cryptographic hash function. BLAKE2b (or BLAKE2) is optimized for 64-bit platforms including NEON-enabled ARMs and produces digests of any size between 1 and 64 bytes. BLAKE2b is optimized for 8- to 32-bit platforms, and produces digests of any size between 1 and 32 bytes. CKB uses BLAKE2b as the default hash algorithm.
See Also
Block Subsidy
A payment that is made in the native currency of the blockchain that is paid to miners for providing the computational resources create a block and secure the blockchain.
The subsidy consists is the portion of the total block reward that is issued out of inflation for creating the block, but does not include any additional transaction fees that may be paid on top.
Synonyms
Boxer
A lightweight Rust library for verifying the Nervos layer 1 blockchain, the Common Knowledge Base.
See Also
block_version
Version of a block. This field is reserved for the system, set to 0 by default.
pub const BLOCK_VERSION: Version = 0;
See Also
Cell Collection
The process of gathering Cells that meet certain criteria.
For example: To find the balance of a particular account, all active Cells for the address would need to be collected.
See Also
Cellbase
The transaction in each block that is responsible for the minting of new CKBytes.
This is the equivalent of a coinbase transaction in Bitcoin.
See Also
cellbase_maturity
Any referenced cellbase output must meet this requirement in a transaction; otherwise, the transaction is rejected. Cellbase outputs are "locked" and have to wait for 4 epochs (approximately 16 hours) to be confirmed before they become ready to be spent. This restriction is to avoid the risk of later transactions with cellbase root being rollbacked when a soft fork occurs.
pub(crate) const CELLBASE_MATURITY: EpochNumberWithFraction =
EpochNumberWithFraction::new_unchecked(4, 0, 1);
See Also
cell_deps
Pointers to Live Cells on the chain that allow Scripts in the transaction to access (read-only) referenced Live Cells.
Find more in the essay Script dependencies.
See Also
Ckbhash
CKB uses blake2b as the default hash algorithm with the following configurations:
- output digest size in bytes:
32
- personalization:
ckb-default-hash
ckbhash
is used to denote the blake2b hash with the configurations above, there are example and test vectors in python 3:
import hashlib
import unittest
def ckbhash():
return hashlib.blake2b(digest_size=32, person=b'ckb-default-hash')
class TestCKBBlake2b(unittest.TestCase):
def test_empty_message(self):
hasher = ckbhash()
hasher.update(b'')
self.assertEqual('44f4c69744d5f8c55d642062949dcae49bc4e7ef43d388c5a12f42b5633d163e', hasher.hexdigest())
if __name__ == '__main__':
unittest.main()
See Also
CKB Merkle Tree
CKB Merkle Tree is a CBMT( Complete Binary Merkle Tree ) using following merge function:
ckbhash(left || right)
ckbhash
is the hash function,||
denotes binary concatenation.
See Also
Code Hash
A field in a Cell that contains a hash value which could refer to a specific piece of data, or a specific Cell referenced by Type ID.
See Also
Commit
The process of taking a proposed transaction and adding it to the blockchain. After the transaction has been committed it is confirmed.
Miners are incentivized to commit transactions by being paid a commit reward.