Constellation – Speculative Handbook

1390

 

 

 

 

 

 

 

Bookmark this page; we will be updating it regularly with a roundup of Constellation related news.

Disclaimer: Speculator here; I am time-poor and only look closely at and write about projects i believe in, have invested in or plan on investing in. Information below aims to be impartial; however it is not investment advice. Do your due diligence. Crypto is a wild and turbulent environment. Good luck in the vols to come.

Constellation Website: https://constellationlabs.io/

Follow on Twitter to stay connected with Constellation updates

Follow Constellation for direct updates from the team.

Join the Constellation telegram for community discussions

Join Constellation telegram to engage in community discussions


31 May: Scaling through the HyloChain Consensus Architecture

Recommended Reading to assist in better informing this post:

Scalability is one of the greatest challenges faced by distributed ledger technologies (DLT) as they evolve towards maturity. A great deal of energy has been  committed to finding appropriate solutions, with proposals taking many forms- ranging from second layer solutions, alternate consensus methodologies and even to alternate data structures. The question of how to scale a truly decentralised public ledger remains without a definitive answer.

Blockchains have been central to the narrative so far with the likes of Bitcoin and Ethereum playing vital roles in bringing attention to the space. As the demands on Blockchain networks have grown we have seen lively and at times divisive debate erupt about how best to scale those networks. One class of solution is the implementation of  “Level 2 solutions” like Lightning and Plasma which take the burden of increased transactional volume or computational complexity “off-chain”. Another class of solution is the push towards Consensus mechanisms which lend themselves more easily to scaling solutions than Proof of Work; one of the most popular alternate consensus methodologies has been Proof of Stake (PoS), with titans like Ethereum moving towards a PoS model in future iterations (with a view to implement sharding as a means of achieving scalability).

Perhaps one of the most interesting proposals is the move away from Blockchain itself, with novel and new data structures that do away with traditional Blockchain architecture in varying degrees. Directed Acyclic Graphs (DAGs) are one example of  alternate DLT architecture; DAG’s themselves are not homogenous, with various iterations manifesting themselves and diverse approaches to consensus, security and adaptability emerging.

Constellation is a new project which introduces to the DAG space – Hylochain, a lightweight consensus architecture. Hylochain couples a reputation based consensus model with the Directed Acyclic Graph (DAG) data structure. The table below illustrates where Constellation fits into the current landscape.

Constellation Ethereum IOTA RChain Nano (Raiblocks) Hedera Hashgraph Dfinity Zilliqa
Platform Type Smart Contact Protocol Smart Contact Protocol Currency Smart Contact Protocol Currency Smart Contact Protocol Smart Contact Protocol Smart Contract Protocol
Mainnet Launch January 2019 July 2015 2015 Q4 2018 2015 Unknown Q4 2018 Q2 2018
Distributed Ledger Technology DAG Blockchain DAG Blockchain/ DAG DAG DAG Blockchain Blockchain
Consensus Mechanism Proof of Meme (Reputation) (Source) Proof of Work (Moving to Proof of Stake) (Source) Local Proof of Work – “to issue a transaction, users must work to approve other transactions.” (Source) Proof of stake – Betting on logical propositions (Source) Delegated Proof of Stake (Source) Proof of Stake – Virtual voting weighted by coins owned (Source) Proof of Stake (Source) Practical Byzantine Fault Tolerant style consensus (Source)

“Zilliqa only leverages PoW [not utilised for consensus] to establish mining identities. This process defends against sybil attacks and is also used to perform network sharding.“ (Source)
Currency DAG ETH MIOTA RHOC NANO N/A N/A ZIL
Transaction Fees No Yes No Yes No Yes Yes Yes
Smart Contracts Yes Yes

No*

 

Yes No Yes Yes Yes
Smart Contract  language An interface that allows any language on JVM to be implemented

Constellation also implements Smart Contracts as Micro Services
Solidity with EVM None Rholang with RhoVM (RhoVM running on JVM –  Language Bindings will be available for programming languages written against the JVM) – Source None Solidity WebAssembly Scilla (New programming language)
Horizontally Scalable Yes No

Note: Ethereum is moving to implement “Sharding” to scale horizontally (Source)
Yes Yes Yes Yes

No

Note: Dfinity is moving to implement “Sharding” to scale horizontally in their 3rd major release “Tungsten”

Yes
Incentives on network Yes – Minted (Via reputation score rather than purely validation, where validation is one aspect that increases reputation score) Yes – Fees (Via mining and to move to Staking model) No Yes – Fees (Via betting on logical propositions to come to consensus) No Yes – “New node operators will join the network, and be paid for their services in maintaining the hashgraph.” – Whitepaper.

Nodes doing work earn coins proportional to their stake. Also stake defines the weight in consensus voting
Yes – Mining – not in the traditional PoW sense of mining but “mining clients play roles processing data and are rewarded for performance of those roles.” To mine a node has to make a deposit, a stake. (Source) Yes – Fees (PoS staking consensus)

*Note: IOTA is seeking to Implement smart contracts as a secondary layer over the base IOTA protocol.

Constellation, in the context of DAG architecture is particularly noteworthy for both its introduction of an interesting new consensus methodology coined ‘Proof of Meme’ and for its implementation of smart contracts as microservices. This article will help to illustrate the Hylochain Consensus Architecture and its unique properties and a follow up article will cover the implementation of smart contracts as microservices.

Achieving Scalability: The Hylochain Consensus Architecture

Notable features of the Constellation Consensus Architecture:

  • HyloChain – Hylochain takes its name from the function of Hylomorphism that is utilised in the underlying consensus architecture. A technical description – hylomorphism is a recursive function, corresponding to the composition of an anamorphism (which first builds a set of results; also known as ‘unfolding’) followed by a catamorphism (which then folds these results into a final return value). Fusion of these two recursive computations into a single recursive pattern then avoids building the intermediate data structure. Hylochain also leverages dynamic partitioning of nodes (second protocol on top of the consensus protocol) within the network to ensure the network is always working optimally. Read more on dynamic partitioning below.
  • ExtendedTrustChain – An architecture that implements multiple node types, each with their own responsibility and role in the network to asynchronously govern different aspects of the protocol. Standard nodes, Checkpoint nodes and Validators nodes. In ExtendedTrustChain, each node operates as an account, maintains the history of its own chain, and relies upon transaction order for validity (similar to HashGraph). (Whitepaper)
  • Proof of Meme – Reputation based consensus mechanism
  • MapReduce – process of breaking computation into simple operations that can be fed into an asynchronous DAG of computation, thereby increasing the efficiency of an already concurrent program.
  • Gossip Protocol – allows for large networks to communicate total network state at a scale that is orders of magnitude higher than existing blockchain technology.

What does  consensus in Constellation look like in practice?

“ A round of consensus takes the resulting hash block of a previous round and adds it as a regular transaction to the transaction pool. The filling of the transaction pool is isomorphic to an unfold operation. Once this checkpoint block is filled with the previous round plus new transactions, it is hashed. This is isomorphic to a fold operation.”Whitepaper

To visualise this process let’s take a look at the necessary steps taken throughout the consensus process.

The diagram below illustrates the following steps:

Lets say Bob wants to send a transaction.

    1. Bob is a Star Node and his transaction is recorded on his node’s local ledger, as are all interactions with the network.
    2. Transactions are signed by the initiator (Bob) and counterparty then broadcasted to the network (via gossip)
    3. The message gets pooled with other gossiped message into a local transaction pool (Anamorphism – unfold)
    4. A Star Cluster formed of Stars who elected to take part in consensus form a locality sensitive hash block. It forms the block by agreeing on all transactions and the order in which they occurred within the transaction pool and hashing it into a locality sensitive (belonging to a locale) hash block. The locality sensitive hash block is the catamorphic (fold) function of the transaction pool which also includes the previous block’s catamorphic value.
    5. As the locality sensitive hash blocks are gossiped upwards they are pooled into transaction pools on higher tiers, galaxy tier pools (Anamorphism of locality sensitive hash blocks). A Galaxy Cluster then forms consensus by agreeing on all transactions and their ordering to form the Black Hole block (Catamorphism). They also add the hash of the previous black hole to this catamorphic function. “Black Holes are blocks of hashed locality sensitive hash blocks. It is equivalent to refer to them as blocks in the blockchain.” – Whitepaper

So what is the unique property of this process compared to other architectures?

Constellation utilises dynamic partitioning/topology that continuously updates the network consensus structure to be at its most efficient. That is to say Constellation implements  a secondary protocol on top of ordinary consensus which balances the trie structure (Further reading). This in effect allows the “tiering” of nodes based on reputation and is intrinsically tied to validator rewards. For example as nodes enter the network, to ensure that network load is balanced and throughput is not compromised – the network adds intermediary tiers, ordering the network to the most efficient structure. The upward tiering allows for a theoretically infinite scalability as the network doesn’t stagnate when a certain number of nodes are reached.In the simplest terms – the architecture developed by Constellation dynamically adjusts its structure between rounds of consensus to ensure efficient throughput and effective load-balancing of network resources.

So how does this differ to current or proposed implementation of typical sharding?

Sharding utilises a linear topology – linear sub-shards connected to a linear mainchain (an incremental advance from a single main chain). As new nodes enter the network they are assigned to one of the shards wherein each shard has an upper limit of nodes that marks the optimal point for function and operations. As the network grows – it grows (linearly) with each additional shard, however in the absence of an ability to dynamically re-order/re-structure, sharding as a solution to scaling taps out at some point. For example when a given shard becomes congested, the network is not set to reorder itself to alleviate the issue automatically, nodes or participants would have to move to another less congested shard or wait for congestion to naturally unwind for optimal throughput to be restored.Constellation tries to ensure that as nodes enter the network, dynamic partitioning prevents the network from “tapping out”  by iteratively re-organising to the most efficient structure. This in effect means that when a resource-intensive/high throughput event takes place it can do so without congesting certain parts of the network.If we are to take the example above and extrapolate with additional tiers we can visualise the following steps:

        1. Bob is a Star Node and his transaction is recorded on his node’s local ledger, as are all interactions with the network.
        2. Transactions are signed by the initiator (Bob) and counterparty then broadcasted to the network (via gossip)
        3. The message gets pooled with other gossiped message into a local transaction pool (Anamorphism – unfold)
        4. A Star Cluster formed of Stars who elected to take part in consensus form a locality sensitive hash block. It forms the block by agreeing on all transactions and the order in which they occured within the transaction pool and hashing it into a locality sensitive (belonging to a locale) hash block. The locality sensitive hash block is the catamorphic (fold) function of the transaction pool which also includes the previous block’s catamorphic value.
        5. As the locality sensitive hash blocks are gossiped upwards they are pooled into transaction pools on higher tiers, Galaxy Tier 1 pool (Anamorphism of locality sensitive hash blocks). A Galaxy Cluster then forms consensus by agreeing on all transactions and their ordering to form the Tier 1 Block (Catamorphism). They also add the hash of the previous Tier 1 Block to this catamorphic function.
        6. Similar to Step “5” Tier 1 Blocks are gossiped upwards and are pooled into transaction pools on those respective tiers and initiate the same process as “5”.
        7. This is an ongoing cycle of blocks going “upwards” towards the “black hole” block. Blocks from “lower” galaxies gossip their blocks upwards, and when they hit the top tier of nodes they are merged into the global state of the network.

Constellation’s Hylochain architecture enables dynamic auto scaling based on network resources, allowing for consistent throughput. Constellation’s dynamic consensus takes into account the issue of “sleepy nodes”.

“All nodes in Constellation can be ”sleepy” i.e. they can join and leave the network at any time. As new nodes join the network, their resources are allocated to a sub-net. Once the sub-net reaches the threshold for transaction throughput and cryptographic security (the number of facilitators vs. the number of participants) as outlined [Page 11 of the whitepaper], entering nodes must form a new sub-net. Thus, new sub-nets will be dynamically allocated as members leave and join the network. It is trivial to show that this architecture exhibits the power law intrinsic of scale-free networks which are notorious for their application to fault tolerance in complex systems such as distributed computing.Constellation Whitepaper

The table below compares this consensus architecture to typical Blockchain and DAG architectures to better illustrate the key differences:

Proof of Meme – Alleviating pressure towards centralisation

It is important to acknowledge Constellation’s efforts to create a truly decentralised network by alleviating the pressure towards centralisation in their reputation based consensus mechanism, Proof of Meme (PoM). We can extrapolate from current world systems and attempts at decentralised networks such as Bitcoin and Ethereum that there will always be a constant pressure towards centralisation in regards to power of governance over a network or monopolising the incentives of a network. Proof of Meme introduces a low threshold for new nodes to enter and participate (incentives and governance) on equal footing with nodes (even where those other nodes have far more resources and history). The table below breaks down popular consensus mechanisms and their pressures towards centralisation.

Consensus Mechanism PoW
Proof-of-Work
PoS
Proof-of-Stake
DPoS
Delegated-Proof-of-Stake
PoM
Proof Meme
Local PoW (DAG)
Local Proof of Work (DAG)
Chain example Bitcoin /Ethereum ETH to move to PoS EOS Constellations IOTA
Method Work Stake Stake Reputation Work – a new transactor has to conduct proof of work for 2 previous transactions.
Primary Valued Resource for a node Computation power Currency Currency / Reputation Meme Score (Reputation score) There is no incentive scheme to leverage within IOTA. IOTA depends on network effect to encourage hosting of full nodes.
Possibility of Centralisation Computation Power

The greater the computation power the greater the chance to be a block validator for rewards and more power for governance of the network.
Economic Power

The more stake a node has the higher chance to be a block validator (i.e. 2% stake gives 2% chance to validate a block). If we are to take Ethereum as an example that is largely distributed, the possibility of centralisation of power would take quite a lot of resources, so there is a lower probability of centralisation. If we are to take newer networks who do not at an early stage achieve a large distributed network, centralisation of power is quite possible. There are many variations on PoS, one example being some chains adding randomness to the selection of validators and thus trying to decrease the pressure towards centralisation.
Economic Power

A limited number of Validators who are voted in be delegates, a democratic approach. However such a system may still lend itself towards centralisation as voting is typically weighted by share of network. Much like PoS centralisation is possible but the probability is low as long as a large distributed network of nodes is achieved.
Computation Power

Validators are based on reputation. Constellations employs reputation as a means of incentives rather than validation of blocks, where newly minted coins are rewarded based on reputation in the system, with validation of blocks being one form of gaining a higher integrity score (Meme Score). It should be noted though there is still a possibility that a person with economic power can use their considerable resources to deploy many nodes to increase their Meme score across many nodes, thus greater portion of the rewards. Putting aside the fact that anyone attempting to do this would be providing resources in the form of bandwidth to the network, the risk of centralisation is reduced greatly due to low entry threshold for new nodes (refer below) and as network gains adoption (more nodes), it would relieve pressure towards centralisation.

Computation Power

IOTA has no incentive to centralise power as incentives and governance of the network is not pooled to those who control most of the network. It also has a very low threshold for new nodes to enter the system. Governance in the sense of new features to the network are introduced via IXI module system, designed to be flexible enough to allow this.

The only other incentive to centralise power in the network would be for a bad actor with enough economic power to try influencing the network. The risk is mitigated by the fact that there is a low entry threshold for new nodes (refer below) and as network gains adoption (more nodes).  A bad actor would have to match growth of the network with economic power, i.e. more adoption requires more resources.

Entry threshold for new nodes (Maintaining decentralisation over time) Very High threshold

Due to resource intensiveness of mining, which incentivises and governs the network, a new node would have a difficult time participating meaningfully without significant resources.
Very High threshold

As network gains adoption, stake in the network will become very high especially for nodes without economic power.
Very High threshold

As network gains adoption, competition to become a core validator will escalate vertically in terms of resources and new nodes would require considerable resources to compete.

Very low threshold

Validators are based on reputation. New nodes are able to get onto equal footing with nodes with a lot of history and reputation as there is a ceiling for the “Meme score”. That is to say that as validators approach the ceiling their increase in reputation plateaus. New nodes can in a short time build their reputation to be on near equal footing with older and more reputable nodes as they too approach the ceiling.

Very low threshold

Any node can join the network at any time. It is not based on economic or computational power.

Scalability – Resources Vertical – Blockchain

Infrastructure needs to scale vertically as network reaches adoption to maintain throughput.
Vertical

Infrastructure needs to scale vertically as network reaches adoption to maintain throughput.
Vertical

Infrastructure needs to scale vertically as network reaches adoption to maintain throughput.
Horizontal

Infrastructure grows linearly as network reaches adoption to maintain throughput.
Horizontal

Infrastructure grows linearly as network reaches adoption to maintain throughput.
Scalability – Methodology Throttled by need to maintain integrity of the network (fraud and censorship resistant) ETH proposes to move towards PoS to ensure that sharding can be utilised without the drawbacks to security that PoW sharding would introduce.

A consensus mechanism based on limited number of validators to ensure higher throughput.

It does though require resources to scale vertically to maintain quality as the size of the network increases.

Asynchronous consensus mechanism that allows validation to happen in parallel rather than linearly to ensure high throughput.

An additional benefit over PoS and DPoS systems is that as more nodes join the network, it scales linearly (Refer to Hylochain architecture above)

Asynchronous consensus mechanism that allows validation to happen in parallel rather than linearly to ensure high throughput.

 

Adoption: The Primary Mandate

Constellation’s primary mandate is Adoption. The keys to wide-spread/sustainable adoption are difficult to decipher, particularly in an increasingly saturated crypto space. If we’re talking about adoption – Constellation’s approach to technological innovation (scalable DLT – Hylochain Consensus), ease-of participation (Proof of Meme) and developer reach are notable.

In introducing a scalable DLT through the Hylochain Consensus architecture, the Constellation team has sought to solve for one of the key roadblocks faced by the space – scalability. A truly scalable smart-contract protocol can certainly be seen as a pre-cursor to widespread adoption, we will watch with interest to see how the platform develops as we approach testnet.

Throughput and scalability tend to dominate discourse in the space at the moment, however just as important are community involvement/participation. The Constellation team recognising this, has implemented The Proof of Meme consensus mechanism which ensures low threshold – widespread participation. Though we should note that with enough economic incentive there are always those who would engage in monopolistic behavior, Constellation’s efforts with Proof of Meme should act to alleviate this pressure to some degree.

Developer reach is another pivotal requirement for any hopeful smart-contract platform. Constellation is implementing an interface in which JVM can be utilised by all developers on the constellation network, ensuring that any language compatible with JVM can be utilised. They take this a step further by implementing Smart contracts as micro services, providing a modular aspect to the creation of applications and contracts (beyond the scope of this article, will be expanded on in a follow up article).

The current crypto landscape has become increasingly saturated and competition is rife, it is more difficult now than ever before to pick the winners in the space. What stands out to us about Constellation in both our analysis of their architecture and in our contact with the team is the synthesis of strong technology, business acumen and community awareness into a coherent platform and project narrative. We will watch with interest as emerging technologies like Constellation look to locomote the space forward.

“Competitors do two things very well. They validate what you’re doing because there’s somebody else in the space tackling the same problem with a similar approach which is often good. It also pushes you to develop faster in a more lean way to kind of beat them and it’s not necessarily competitive, it’s spurring on innovation.” – Brendan Playford, CEO of Constellation (Source: Blockchain Brad interview)