Technology
Will Shardeum maintain atomic composability across different shards?
To better understand what Shardeum is, please take a look at the Shardus project (which serves as the protocol layer of Shardeum) that has built over the last four years (see https://shardus.com/). In a nutshell, Shardus has developed the software to make it easy to create shared distributed ledgers. Shardus handles the protocol layer, gossip of transactions, consensus, syncing, sharding, etc. Developers can start with Shardus and define the application layer to easily build decentralized networks for a specific application, for example, a game with a very high TPS. Shardeum will start with Shardus and add the EVM to the application layer. So the answer to the first question is YES since Shardus hides from the application layer that the network is sharded. The protocol layer takes care of cross-shard consensus and data sharing.
What is the consensus mechanism/consensus algorithm used in Shardeum?
Proof of Quorum (PoQ) + Proof of Stake (PoS)
What is a Proof of Quorum (PoQ)? How does consensus work technically on the network?
Proof of Quorum means to generate a receipt showing that a majority of the consensus group has voted for the transaction. Each node in the consensus group signs the transaction hash and gossips it to other nodes in the consensus group. Nodes collect these votes, and when the number of votes is more than 50%, these votes form a receipt that can prove consensus on the transaction. Note Shardeum will make use of both PoQ and PoS (Proof of Stake) consensus algorithms to keep the network safe where validating nodes can be expected to stake a minimum amount of network coin to ensure they operate as per network protocols. While most platforms group transactions into blocks and apply consensus at the block level, Shardeum does consensus on each transaction separately. This allows a transaction that affects multiple shards to be processed simultaneously by these shards rather than consecutively as with block level consensus. This not only reduces the time to process the transaction even if it affects multiple shards, but also ensures atomic processing. Transaction level consensus eliminates the complexities needed to ensure atomic processing which otherwise are needed by block level consensus platforms.
What language will Shardeum use for Smart Contracts?
EVM-based languages including Solidity and Vyper.
What kind of BLS signatures does Shardeum use and what is the hash function?
Ed25519 and SHA256
What are the primary languages in which Shardeum is being built?
Node.js + TypeScript + Rust