Specifications

The CancelChain blockchain technical specification follows the original bitcoin paper at a high level with some significant modifications aimed at reducing its “electronic cash system” origins and instead focusing on its distributed ledger capabilities.

CancelChain uses proof-of-work to add blocks to the chain. Coinbase rewards are always 100 CCG and never halve. This is to reduce token scarcity and make sure that there is always CCG available to purchase for sentiment transactions.

In addition to the coinbase reward, millers receive additional CCG compensation for adding sentiment transactions to a successfully milled block. Both subject transactions and forgiveness transactions reward half of the transaction’s assigned CCG to the miller. Support transactions reward the full amount of the transaction’s assigned CCG. Transfer transactions reward no additional CCG to the miller in order to de-incentivize transfers. Millers are implicitly motivated to process transfer transactions by the fact that they should lead to the other types of transactions that do offer rewards.

Unlike the bitcoin protocol which specifies a binary representation of blocks and transactions for performance, CancelChain relies on JSON and schemas for transmitting block and transaction data while utilizing an internal relational database representation for processing speed.

The ledger uses the Unspent Transaction Output (UTXO) model to represent tokens in the blockchain.

The target block rate is one every 600 seconds (ten minutes) and the block hash target is recalculated every 2016 blocks.

A block can contain a maximum of 100 transactions and each transaction can contain a maximum of 50 transaction flows.

Users and their transactions are secured by 2048-bit RSA keys and identified by an address derived by hashing the public key, encoding into Base58Check, and appending CC to the beginning and end.

Hashing is accomplished using sha512 followed by sha256.