Building “Blockchain-native” Applications

To build enterprise applications that exploit the distinct qualities of blockchain technology requires a new approach. The application design must focus on adapting the core blockchain technology functions to meet business user needs. We refer to the resulting solutions as “blockchain-native” applications. Blockchain technology has the potential to radically reduce workflows and eliminate unnecessary intermediaries from business operations, but to fully realize these benefits, applications must understand and utilize the unique characteristics of blockchain technology. Blockchain-native applications are built expressly to accomplish this.

The blockchain paradigm shift

The technology encompasses a fundamental paradigm shift. Similar to the transitions from mainframe to client server; from client server to web applications; and from web applications to mobile—the advent of blockchain has introduced the backbone for a new type of Internet: one focused on trust.

Treating blockchain technology as an entirely new concept means getting away from traditional problem solving: blockchains are not simply new database technologies. They are a ground breaking unique blend of cryptography, consensus algorithms, and distributed data storage that enables entirely new business models and value creation. These technical qualities distinguish blockchains from existing enterprise technologies—they are specifically designed to deliver integrity without a central authority. Thus to fully reap the benefits of blockchain, applications must be built with a clear understanding of three categories of distinction: blockchain application objects, blockchain processing algorithms, and blockchain ecosystem connectivity.

Blockchain Application Objects

When designing blockchain applications, software development teams must consider the unique behaviors of blockchain application objects: transactions, private keys, blocks, and field accuracy.

  • Transaction Objects – A record on a blockchain is a transaction: not a row, object, or cell. The records do not allow for typical database object transactions like deleting records or creating relationship identifiers. Blockchain transactions are add-only, isolated, and anonymous.
    • Add-only: It is fundamentally impossible to remove a blockchain transaction from the chain once confirmed.
    • Isolated: Blockchain transactions are contextually isolated. No mechanism exists to determine a direct relationship between entries.
    • Anonymous: Counterparties in a blockchain transaction are pseudo-anonymous. The crypto identifiers for two transactions can be different even if the transactions are between the same two parties.
  • Private Keys – Private keys establishes a user’s identity, which is dramatically different from the user IDs and passwords used in most applications today. Private keys have the distinct quality of being unrecoverable. If you lose the private key, all information associated with the private key is gone forever and impossible to retrieve.
  • Blocks – Blocks contain important metadata such as size, headers, and counters. Application designs for blockchain technology must properly verify this data.
  • Field Accuracy – Blockchain fields require a higher degree of precision than in typical applications, most notably the 18 decimal places used in Ethereum.

Blockchain Processing Algorithms

Blockchain applications require new algorithms to handle the unique nature of blockchain systems. The algorithms must address identity mapping, volatility smoothing, symbol normalization, and contextualizing.

  • Identity mapping – Blockchain applications must address the infinite-to-one ratio of crypto identifiers to functional identifiers, and map between the two types of identifiers.
  • Volatility smoothing – Pricing data for cryptocurrency pairs and crypto/fiat pairs changes rapidly and varies across sources. Until markets and exchanges address this challenge, blockchain-native applications must smooth pricing information for business processing.
  • Symbol normalization – Crypto asset identifiers vary from one exchange to another. For example, Bitcoin is traded as “BTC” on one exchange and “XBT” on another. A blockchain-native application must have a data normalization layer and a workable data model to normalize symbols.
  • Contextualizing – Blockchain transactions are “anonymous-first”; meaning the raw data on the blockchain obscures identities and context. Conventional systems capture data in context before it is anonymized. A blockchain-native application must generate meaning to transactions that are originally anonymized.

Blockchain Ecosystem Connectivity

Blockchain systems are inherently networked. Understanding how the ecosystem is interconnected is critical to building a blockchain-native application and determining how that application will enter and fit into the ecosystem.

  • Integrity protocol – The blockchain protocol is designed to ensure integrity through consensus. Each provider (e.g., Bitcoin, Ethereum, LiteCoin) has its own list of transaction rules. A blockchain application must abide by the various protocol rules to connect to each blockchain protocol.
  • Pricing providers – blockchain-native applications must retrieve pricing data in various exchange formats and protocols.
  • Wallet providers – blockchain-native applications must connect to wallet providers to download transactions.
  • Identity providers – blockchain-native applications must connect to identity providers to rationalize addresses to identities.
  • Off-chain systems – blockchain-native applications must connect to traditional in-house data sources to integrate functional information with the blockchain transactions.
  • Existing ecosystem – blockchain-native applications must connect to existing processes and systems facilitating the incorporation of blockchain data.

Why Libra

Any application built for blockchains must embrace the new paradigm. Libra designs audit, accounting, and tax applications for enterprises. As a blockchain-native application company, Libra built an enterprise platform for blockchains that addresses the unique nature of blockchain application objects, processing algorithms, and ecosystem connectivity.

With Libra’s blockchain-native applications, enterprises can embrace blockchain technology. Libra helps organizations meet mission critical business requirements with out-of-the-box functionality such as gain/loss reporting; mark-to-market analysis; and tax documentation. Existing audit practices become more efficient using the inherent technological advantages of blockchain technology. With Libra’s blockchain-native applications, the blockchain technology revolution becomes a business evolution.