post img

Bitcoin Cash transactions are currently as of this time of writing, created and hashed by forming a directed-acyclic graph, child transactions spend the outputs of parent. 

This is called Topological Ordering. It is argued that this is not the most efficient or elegant way to order transactions. Bitcoin Cash currently uses Topological Ordering.

As such Bitcoin ABC has proposed to moving to Canonical Transaction Ordering (CTOR).

Others argue Canonical Transaction Ordering will not only break many current Bitcoin Cash applications such as Flowee , but requires more testing or is simply a unnecessary addition. We will evaluate both sides.

Overall Rating:

  • Positive: 5
  • Mixed: 0
  • Negative: 0

Filter by:

Why canonical transaction ordering for Bitcoin BCH needs more research - Coingeek

The concept of switching to a canonical transaction ordering rule for the Bitcoin Cash blockchain isn't ready to be the best solution, according to one Reddit user.

No contributions of this type has been made yet.

“Main paper proposing the implementation of CTOR dated June 12th 2018

Canonical Transaction Ordering for Bitcoin

Abstract: We propose to replace the topological transaction ordering rule of Bitcoin by the canonical transaction ordering rule, where transactions are expected to be sorted against their transaction identifiers within a block. This change eliminates an entire class of scalability challenges for Bitcoin in order to process very large blocks. This change also delivers two compelling use cases. First, it allows to produce compact proofs of transaction inclusion/exclusion, making chainless apps more capable. Second, it gives a newer degree of control to Bitcoin participants to localize their transaction within blocks.

What is Canonical Transaction Ordering? (CTOR)

Canonical transaction ordering involves listing/ordering the transactions according to their individual transaction identifiers. Simply put it is a different sorting process for transactions.

Canonical transaction ordering in Bitcoin Cash is used as sets rather than lists, this enables Bitcoin Cash to compute large blocks easily.

Benefits of Canonical Transaction Order

Using CTOR is supposed to bring benefits to the Bitcoin system.

Jonathan Toomin has listed out reasons behind deciding in support of Canonical Transaction Ordering.

These are the following benefits:

  1. CTOR is simpler to implement than TTOR. Most of the complexity of TTOR comes from the requirement of ordering parent transactions before children.
  2. Miners no longer need to discover a valid ordering. About 70% of block template creation time appears to come from the child-pays-for-parent code due to ordering requirements. Eliminating this will improve performance.
  3. No need to worry about intermediate states during block validation. This ensures that block validation can be perfectly parallel [3]. Ethereum’s scalability suffers from having a large number of intermediate states, for example.
  4. It makes encoding and transmitting blocks a lot easier by allowing nodes to communicate only the transactions that differ between their mempools and a recently published block. This is what Graphene [4] does, and it works very efficiently with CTOR.
  5. CTOR reduces system complexity, eliminating the entire class of attack vectors where a malicious miner can publish a large block with a transaction ordering that is as slow to validate as possible.
  6. It allows the production of compact proofs of transaction inclusion and exclusion therefore making chainless apps more capable
  7. It gives a newer degree of control to Bitcoin participants to localize their transaction within blocks.

Increase Block Propagation Effectiveness and Benefits to Chainless Apps

By increasing the efficiency of the circulation of blocks and blocking emission, this allows users of the network to use their bandwidth capacity in a more efficient manner due to enhanced proof of transactions. This can be achieved by broadcasting maximum information about the new block much prior to its release.

The new ordering rule if implemented can lead to chainless applications, since it allows opt-in locality between participants. As mentioned in the paper:

The CTOR offers the possibility for any participant to zoom into a block to identify whether a transaction is found or not without processing the whole block. This property is of high interest because chainless apps gain the possibility to verify flows of transactions without being 6 encumbered by an arbitrarily large blockchain.”


No contributions of this type has been made yet.

Have Something to Add? Sign In Easily with Facebook