  Cuttlefish addresses several limitations of existing consensus-less and
consensus-minimized decentralized ledgers, including restricted programmability
and the risk of deadlocked assets. The key insight of Cuttlefish is that
consensus in blockchains is necessary due to contention, rather than multiple
owners of an asset as suggested by prior work. Previous proposals proactively
use consensus to prevent contention from blocking assets, taking a pessimistic
approach. In contrast, Cuttlefish introduces collective objects and multi-owner
transactions that can offer most of the functionality of classic blockchains
when objects transacted on are not under contention. Additionally, in case of
contention, Cuttlefish proposes a novel `Unlock' protocol that significantly
reduces the latency of unblocking contented objects. By leveraging these
features, Cuttlefish implements consensus-less protocols for a broader range of
transactions, including asset swaps and multi-signature transactions, which
were previously believed to require consensus.
