TNS
VOXPOP
As a JavaScript developer, what non-React tools do you use most often?
Angular
0%
Astro
0%
Svelte
0%
Vue.js
0%
Other
0%
I only use React
0%
I don't use JavaScript
0%
NEW! Try Stackie AI
Data / DevOps / Storage

Why I Changed My Mind About Blockchain

The BSV Association uses blockchain to elegantly solve an engineering challenge — the creation of an unboundedly and linearly scalable core banking system.
Jun 7th, 2024 9:13am by
Featued image for: Why I Changed My Mind About Blockchain
Image from phive on Shutterstock.

I studied cryptography at university around the same time Bitcoin emerged as a novel and unconventional concept. In one of my courses, we analyzed the cryptographic building blocks of a cryptocurrency very similar to Bitcoin. Although I admired the brilliance of the algorithms and protocols, I wasn’t particularly enthusiastic about blockchain technology. My main reservation was that, despite its innovative design, it didn’t address any issues that I personally found significant.

My skepticism about blockchain persisted until a few months ago when I collaborated with one of Aerospike’s recent customers, the BSV Association. It uses blockchain to elegantly solve an engineering challenge that, to my knowledge, has not been effectively addressed elsewhere, especially not as seamlessly — the creation of an unboundedly and linearly scalable core banking system.

I’m choosing to use “core banking system” instead of “cryptocurrency” to avoid the various connotations associated with the latter term. For this discussion, we can think of a cryptocurrency simply as a system that enables customers to create accounts, deposit, withdraw and transfer funds — functions that mirror those of traditional core banking systems.

In my view, core banking systems represent quintessential examples of complex, mission-critical, secure and precise applications that have, despite considerable efforts, consistently resisted modernization.

The Unmodernizables

Many core banking systems are either unscalable or inefficiently scalable, causing financial services companies to expend significant resources and effort for only minimal increases in workload capacity. Typically, these scalability limitations stem from reliance on relational database management systems (RDBMS), such as mainframes or Oracle, which inherently lack the necessary scalability.

Upgrading the heart and soul of core banking systems from RDBMS to scalable, faster, more cost-effective and efficient NoSQL databases has proven to be exceptionally challenging. This is largely due to the inherent characteristics of RDBMS, which are ideally suited for constructing complex systems. Nevertheless, a variety of applications initially developed using a relational approach have successfully made the transition to NoSQL.

During the transition from RDBMS to NoSQL, the data storage layer inevitably loses certain key characteristics while gaining others. These lost features are critical to the application’s functionality and cannot be overlooked. Therefore, it is essential to address the absence of these features within the application layer, which is precisely why migrating highly complex, mission-critical systems away from RDBMS is so hard.

Furthermore, RDBMS operations are backed by mathematical proofs, providing unbreakable guarantees of data integrity, even in the presence of application-layer bugs. In contrast, in the NoSQL realm, the highest authority is a dude who tests the databases for a living (with all due respect). The most he can assert is that no bugs were found in the tested version of a technology. Clearly, this level of assurance is insufficient for critical environments such as core banking systems. Therefore, if we intend to transition away from the mathematical guarantees offered by the relational model, we must implement similar assurances within the application layer.

One method of achieving these assurances is through formal methods. However, given the complexity of core banking systems, constructing one solely using this approach is highly challenging.

The Potential of Blockchain

Stripping away the buzzwords, Blockchain is fundamentally a mathematically proven zero trust algorithm. Thus, it can be deployed in the application layer to offset the absence of mathematical guarantees in the underlying storage model. Furthermore, the success of Bitcoin showcases that blockchain technology can indeed be effectively used to construct a core banking system.

However, Bitcoin and numerous other blockchain-based cryptocurrencies are significantly limited by their transaction throughput, which is considerably lower than that of traditional unscalable financial transaction systems. Consequently, in this particular aspect, existing cryptocurrencies do not offer substantial improvements over traditional financial systems.

BSV’s Solution to Blockchain Throughput Challenges

Without delving into excessive detail, the limited throughput in blockchain-based cryptocurrencies primarily stems from the size of the blockchain blocks. For example, the block size of the most famous implementation of the Bitcoin White Paper, Bitcoin, is capped at 1 MB, restricting it to processing just seven transactions per second, an embarrassingly low figure. In contrast, the Bitcoin Cash implementation has managed to boost throughput to over 100 transactions per second by increasing the block size to 32 MB, although this number also remains disappointingly low.

Bitcoin Satoshi Vision, or BSV for short, is another implementation of the Bitcoin White Paper. BSV’s primary design goal is to overcome throughput limitations by eliminating the block size cap, theoretically enabling unlimited throughput. However, this modification presents a substantial engineering challenge.

Cryptocurrencies built based on the Bitcoin White Paper use the Unspent Transaction Output (UTXO) model, unlike the traditional accounting model used in core banking systems. UTXO information is retrieved and updated in the UTXO store to verify whether a Bitcoin transaction can be spent. Any delays in processing a UTXO would greatly reduce the performance of a Bitcoin node, leading to revenue loss for miners.

To expedite this process, it is essential that UTXOs are accessible as swiftly as possible. Storing UTXOs in an in-memory would provide the speed needed for efficient operations. However, this approach comes with significant cost implications: Millions of transactions per second result in trillions of UTXOs, requiring tens of terabytes of RAM. Such high resource demands could render the solution prohibitively expensive, posing a major barrier to widespread adoption and scalability.

Aerospike: The Key to BSV’s Scalable Future

Using commodity solid-state drives instead of RAM for data storage as Aerospike does significantly lower BSV’s costs associated with maintaining UTXOs in fast data storage, ensuring both efficiency and affordability, which in turn promotes broader network adoption.

It is important to note that the consistency and integrity of the UTXO store are crucial for the proper functioning of the node. If the UTXO store becomes corrupted, the node will be unable to participate successfully in revenue-generating activities for several cycles, resulting in an unwanted but limited amount of damage. Therefore, BSV nodes rely on Aerospike’s Strong Consistency mode to mitigate this risk.

However, the protocol’s overall correctness, including the accuracy of balances and transfers, which could lead to unlimited damage if corrupted, relies on the strong mathematical guarantees provided by the blockchain at the application layer.

Breaking Barriers: Unprecedented Transaction Capacity

In the testing phase, the BSV network demonstrated the capacity to sustain 1 million transactions per second over a long period (weeks). By comparison, the Visa payment system can handle up to 65,000 transactions per second.

To manage 1 million transactions per second, each BSV node, known as a Teranode, generates approximately 3 million requests per second on its Aerospike cluster, a significant number but modest compared with some other clients.

For example, Criteo, a renowned French AdTech company, uses Aerospike to handle 280 million requests per second, indicating that neither Aerospike nor block size would be a limiting factor in scaling the BSV network.

In a Parallel Universe

Over the past decade, I have assisted several financial institutions in scaling their systems for new use cases, such as mobile banking and regulatory compliance initiatives like Open Banking. A recurring theme in these projects is implementing solutions to enhance the throughput limitations of the underlying systems. In a previous article, I elaborated extensively on why such approaches are incredibly inefficient.

Typically, these solutions employ a scalable database that retrieves data from an unscalable RDBMS via a complex extract, transform, load (ETL) process. While these systems do increase workload capacity, they necessitate substantial investments in new infrastructure, require millions of hours of engineering work and result in the creation of complex systems that are difficult to maintain. This is what I refer to as inefficient scaling.

I can imagine a parallel universe where core systems are unboundedly and linearly scalable. In such a world, accommodating a new use case that increases demand on the core system could be simply managed by expanding the existing infrastructure. There would be no need to construct systems whose sole purpose is to shield the weakest link. No escalating complexity. No multiyear, billion-dollar projects just to launch an app.

It is this vision that has changed my mind about blockchain.

Learn more about Aerospike’s massively scalable, millisecond latency, real-time database

Group Created with Sketch.
TNS DAILY NEWSLETTER Receive a free roundup of the most recent TNS articles in your inbox each day.