Extending the bitcoin protocol has been done numerous times by the bitcoin community to achieve its current tech stack. The QTUM project extended bitcoin to include the use of an abstract account layer to make compatibility with the Ethereum Virtual Machine possible. Antara is Komodo's bitcoin protocol enhancement that enables objects of any type to become blockchain elements. Antara also enables Turing complete logic to be part of network consensus providing a broad scope for solutions.

Komodo lead dev jl777 was able to collaborate with libscott (Scott Sattler) to include a Ripple technology called “Crypto Conditions” into komodod. Similarly to how QTUM extended bitcoin with new OP_CODEs, the komodo protocol has an additional OP_CHECK_CRYPTOCONDITION op code. Op codes are part of the consensus, not only a smart contract synchronous short computation task. Parts of this technology make up the Interledger Payment Method specification draft currently at the w3c.

antara framework

What is Crypto Conditions

Crypto Conditions is an open standard data format submission put before the IETF (Internet Engineering Task Force) who govern some of the Internet standards. This data format is agnostic to the implementation - it can be implemented in any language. It can also be implemented in any cryptographic signing scheme.

Consensus vs Smart Contracts

In this video, Ethereum co-founder, Web3 Consortium president & Polkadot chief engineer Dr Gavin Wood briefly explains where smart contracts limitations are met. Go to 34mins.

Further to the conceptual understanding of consensus vs smart contracts, Consensus is the network rules, transactions occur and block producers are rewarded for ordering the transactions. Smart contracts involve a vendor and a user to a service, plus the additional effort of the consensus layer to order the execution of the smart contracts. This 3rd party in the vendor-user relationship needs to be paid for their service, and this is where gas fees becomes a problem for the economics for developers.

Consensus of a module is not limited by compute, where smart contracts generate higher gas costs for each computation invoked. In saying this, smart contracts from different vendors on a single chain offer synchronous execution whereas consensus between smart chain chain consensus is asynchronous, and take longer to communicate transaction states.

Modularity with Antara Blockchain Components

The humble programmatic object can now be signed and packaged as a UTXO data structure and used in the komodo protocol for network consensus amongst peers. This is what the Antara modules are - blockchain objects.

Objects have a state and this is maintained on the blockchain. The immutable parts (functions) are compiled into machine code and run on every peer, much like a smart contract. The mutable parts are stored on the blockchain in the OP_RETURN data portion. Bitcoin op_return data has a 40 byte limit, not enough for this sentence. Komodo op_return has a 10000 byte limit, enough to write signed crytographic object states.

Custom Module & Loadable Library

Antara offers developers two methods to customize their consensus rules if not using the modules that ship with Komodo. The first is to modify the source of existing modules and include with Komodo. The other is to load custom modules as a library at runtime. All modules can interact with each other once loaded, like any other programming environment. A tutorial on how the Cryptocurrency Heirs consensus is built in the developer documentation along with the Heir API description.

flow of the cryptocurrency inheritance in the heir contract

First Generation Modules Shipped: Blockchain Building Blocks

The first generation of Antara modules included:

These first generation components were developed in 2018 and refined in 2019 to take advantage of the multichain architecture of Komodo.

There are many areas where the original bitcoin codebase could be optimized for performance to extend the reach for development. The bitcoin payment processor company Bitpay, created a boon for the industry. The contribution was indexing of blockchain data structures for high performance.

Komodo lead dev jl777 led the industry in adopting this new capability of performance, porting it into the Komodo source code.

extend bitcoin performance graphic

Address Index, Spent Index & Timestamp Index

These indexes introduced by the bitcore innovation enabled fast lookups of blockchain data. Similar to boosting the performance in SQL database tables by creating an index, the address index is used extensively to boost the performance of related address information.

Blockchain Explorer Without Database

Most blockchain projects have explorers that are webapps run from a NoSQL database. The bitcore additions included several RPC calls including getutxoaddress. This network operation is very powerful, returning all UTXOs per address directly from blockchain data.

This architecture of explorer application removes the need for the additional NoSQL database, reducing the operational knowledge and resources required.

The Komodo community as further developed helper tools enabling any developer to install a custom blockchain explorer in a few steps.

Snapshot & Blockchain Transaction Statistics

A unique RPC call in the Komodo ecosystem is getsnapshot which uses addressindex also. Another RPC call coming from bitcore integration is getchaintxstats.

Smart Contracts & Consensus

The high performance of these indexes is a much needed capability for application developers. Game developers require performant backends to their client side applications.

Without addressindex, the performance of the legacy codebase would not enable the innovation that followed - Antara Framework. Antara is a “smart contract” framework but in reality it is much more - it is a network consensus customization framework which extends the underlying bitcoin protocol.

Gaming

Gaming is a part of the computing industry that has consistently pushed the limits of technology. John Carmack at id software seems to have singlehandedly created the first person shooter genre with Wolfenstein 3d. Ultima Online the genre of massive multiplayer online games. Voodoo graphics company with their high performance 3dfx line of video cards. Oculus with VR tech. The same continues with Komodo into the blockchain space as they are on the cusp of releasing the gaming-sdk. Many facets of this would not be possible with the Antara framework & thus bitcore integration.

In this game dev blockchain article, I wrote about what Komodo offered to game developers in the high performance blockchain space, in 2019. Combine this with recent P2P streaming development, the future of blockchain gaming is bright on the Komodo Platform.

Creating checkpoints in traditional IT work is usually a scheduled backup task, with snapshots and incremental patches. Similarly in blockchain technology, the chain users benefit from some kind of finality so their transactions are not reorganized by orphaned blocks.

Komodo has been running a blockchain checkpoint at approximately every bitcoin block since 2017. The checkpoint is the blockhash of the KMD chain embedded into a bitcoin transaction using the OP_RETURN opcode. This transaction is sent by randomly selecting 13 of the 64 elected & independent notary nodes in the Komodo network, like a sortition in the political sense. It is coordinated by dPoW software in the separate iguana wallet that runs on the notary node. The transaction is signed by all 13 of the randomly selected nodes by multi signature.

Lead developer jl777 has written an essay on dPoW and an article answering some of the questions on centralization of the service has been written.

Why Is It Called dPoW (dee pow)?

The first and most secure form of mining to date is called Proof of Work, PoW. Although there are weaknesses, it has stood the test of time in securing the public bitcoin network.

When Komodo sends the blockhash into BTC, and then the reciprocal BTC blockhash is written into the KMD blockchain, this delay of transaction mining from one chain to the other is where the name comes from.

The power consumed by the BTC miners is used to protect the KMD chain by providing a checkpoint mechanism by the iguana wallet software.

A good explanation can be read from this blog post by Satinder Grewal or listened to on this interview with Jason Brown.

Security For Blockchain & Smart Chain Projects

Just like the dPoW process works for KMD to BTC, new smart chains built using the Komodo software or the upcoming Antara Composer can piggyback onto KMD.

Suppose a project called ABC wants to use dPoW to secure their project, it would look like ABC to KMD to BTC. The checkpoints of KMD and BTC are used to boost the security of ABC network resources so that every approximately 10 minutes (or more frequently if desired) the ABC chain has a checkpoint to protect against deeply reorganized blocks.

Real World Uses

Other Uses For dPoW Technology

As the technology has matured, new uses continue to manifest... This section will be updated with further content. Examples include the payment streaming technology not yet in production, the nSPV superlight client for use in IoT currently in testing, p2p orderbook propagation for the atomic swap protocol network.

Komodo history begins as one developer’s subprojects’ of the NXT blockchain. This included pegged assets, a non-custodial bitcoin gateway, atomic swap protocol development & a Declaration of Independence.

With a new found independence and skilled in bitcoin protocol development, the lead developer of Komodo (jl777) began to look for a way to solve his own blockchain problems. Included in this master plan was to provide a platform for entrepreneurs to jumpstart their own project ambitions.

The need for privacy led jl777 to find the zcash project as the chosen code base amongst other candidates to begin this ambitious quest.

ZEC is a fork of bitcoin version 0.11 with the addition of zk-SNARK privacy. In the master plan, voting was one of the applications that could use this as we’ll read about in the future.  Another was a coin tumbling protocol to offer an on-chain service to obfuscate the distribution of coins for the users and projects that prioritized privacy.

What is a UTXO?

The UTXO is a packet of value. This is the primary data structure of the bitcoin protocol that represents value. Each UTXO has a history of where it originated and a state of being already spent or unspent. The history is represented as a maths puzzle proving ownership in the chain of time. The puzzle includes the packaging and unpackaging of value according to the needs of the owner of the UTXO at the time. UTXOs are combined and split depending on the value that is sent or received when the owner requires to make a payment.

This data structure is also present in Komodo, with the same representation. In Komodo’s multichain architecture, an independent project can choose to represent other things beyond value to create new protocols in the peer to peer application world.

This website shows how new representations of the UTXO have been created by developers beyond Komodo.

Experience Crypto
© 2021 komodefi.com. Powered by Komodefi
chevron-down