Abstract—Sharding is an effective technique to improve the
scalability of blockchain. It splits nodes into multiple groups so
that they can process transactions in parallel. To achieve higher
parallelism and concurrency at large scales, it is desirable to
maintain a large number of small shards. However, simply configuring small shards easily results in a higher fraction of malicious
nodes inside shards, causing shard corruption and compromising
system security. Existing sharding techniques hence demand
large shards, at the expense of limited concurrency. To address
this limitation, we propose CoChain: a blockchain sharding
system that can securely configure small shards for enhanced
concurrency. CoChain allows some shards to be corrupted. For
security, each shard is monitored by multiple other shards.
The latter reach a cross-shard Consensus on the Consensus
results of their monitored shard. Once a corrupted shard is
found, its subsequent consensus will be taken over by another
shard, hence recovering the system. Via Consensus on Consensus,
CoChain allows the existence of shards with more fraction of
malicious nodes (<2/3) while securing the system, thus reducing
the shard size safely. We implement CoChain based on Harmony
and conduct extensive experiments. Compared with Harmony,
CoChain achieves 35x throughput gain with 6,000+ nodes.