Introduction

          The Tritanium Traceability Blockchain is a hybrid public blockchain platform designed to host distributed applications supporting traceability use cases. The business blockchain was built from the ground up to support ingredient traceability, manufacturing, and supply chain using the principles of the original Bitcoin blockchain. The business blockchain is anchored to a public blockchain supporting the TTNZ coin based on the Cryptonote platform. Although the traceability blockchain is designed to provide traceability in the manufacturing and supply chain processes, the cryptocurrency portion of the platform provides single use keys, mixed inputs, and ring-signatures to provide the highest level of privacy for cryptocurrency transactions. Proof of Work is performed using the ASIC resistant Cryptonight Lite V7 algorithm and business blockchain data is stored using 256-bit encryption.

Background

          The original blockchain platform was presented in the white paper bitcoin.pdf by Satoshi Nakamoto in 2009. The original blockchain was designed to be a peer-to-peer cash transfer system managed using consensus with no central authority. The original blockchain introduced the concept of an immutable distributed ledger where transactions cannot be deleted or changed once they become part of the blockchain. This provides a permanent record of all transactions stored on the blockchain. The Bitcoin blockchain also introduced the concept of Proof of Work that allows the public to participate in protecting the integrity of the blockchain by solving an intensive problem for a reward. This process called “mining” is based on a security technique called “hash cash” that was introduced in 1999. Mining and proof or work have been an important part of blockchain integrity since the first blockchain was launched in 2009. Although permission blockchains do not continue the process of mining, the ecosystem mining creates is critical to the success of public blockchains.

          To be an effective cash transfer system, the platform must solve the basic problem in cash management, the “double-spend” problem. Solving the double-spend problem ensures that users of the system cannot introduce additional coins into the system or spend the same coins more than once. The Bitcoin blockchain, and all cryptocurrency blockchains since, use an algorithm called unspent transaction output (UTxO) to solve the double spend problem in a distributed environment. The UTxO algorithm also provides transparency and traceability to users of the distributed ledger.

          The blockchain defines a coin as a chain of digital signatures where the inputs to a transaction are the outputs of one or more prior transactions. This causes transactions (data) within the blockchain to be linked and provides full traceability as a byproduct. With early blockchains such as Bitcoin and Ethereum it is possible to trace the history of any coin back to the miner that originally created it. It is also possible to trace any coin forward to see each owner of the coin throughout its history.

          Although traceability is not always desired in a cryptocurrency platform, traceability is important in use cases like manufacturing, logistics and food safety. In 2016 Edward Honour began development of a private blockchain designed to promote the traceability features of blockchain to support tracking non-monetary assets using the blockchain. During the development process it became clear that traceability use-cases are better served using a public blockchain ecosystem like that provided by Ethereum. The Ethereum platform launched in 2015 introduced independent distributed applications (dApps) that run on the Ethereum platform and pay a fee, called gas, to operate.

          The Tritanium hybrid blockchain anchors the blocks created in the business blockchain to the public blockchain by hashing traceability transactions and linking them to cryptocurrency transactions. Traceability application users pay a fee to the miners for validation transactions and protecting the blockchain. Through the implementation of the first distributed applications (dApp), Food Ledger, and real world use cases, the Tritanium platform has evolved to become a way for businesses and blockchain service providers to use the blockchain for traceability.

The Solution

          A cryptocurrency blockchain tracks the transfer of a single type of asset, called the “coin”. To create an effective asset transfer system for non-monetary assets like food, the blockchain must support an unlimited number of asset types. This requires changes to the storage structure within the blocks of the blockchain. Business blockchain platforms such as Hyperledger require data to be stored in a predefined structured format. Assets tracked on the blockchain must be defined before they can be used. Smart Contracts must be created to enforce the business rules of the asset. The Tritanium blockchain stores all data in an unstructured format which is common in modern document style databases. Unstructured data greatly simplifies the development of distributed applications and is the preferred development method of programmers experienced with newer programming tools. Storing data in an unstructured format allows the resulting blockchain architecture to remain closer to the original blockchain.

          Unlike cryptocurrency where coins are identical and interchangeable, non-monetary assets must be uniquely identifiable to be queried and traced at any point in the process. The Tritanium blockchain introduces an asset identification system supported by a key/value store to support serialized assets and item/batch pairs for assets. To be an effective traceability system, the traceability blockchain must also support the transformation of assets into different types of assets. For example; an input of tomatoes, onions, and avocados may provide an output of guacamole. The resulting output must be traceable by any of the inputs used to create the item. The resulting architecture of the Tritanium platform was able to implement these features without deviating from original principles of the Satoshi blockchain.

          The Tritanium platform was designed around four categories of use-cases that are important to product traceability. These categories include the transfer of assets, transformation and manufacture of new products, creating product over time, and storing manufacturing records on the immutable ledger.

          The interaction between end users and the blockchain is performed using wallets. A blockchain wallet scans the blockchain and retrieves transactions owned by the blockchain address of the wallet. In cryptocurrency, the wallets are usually very basic applications that keep track of what blocks have been scanned and scans new blocks each time the application is launched. The wallet application also contains the keys necessary to send transactions to the blockchain. Although the wallet should prevent a user from creating invalid transactions, the actual validation is performed on the blockchain and verified by miners. Traceability blockchain applications use wallets built using the Tritanium API to communicate with the blockchain.

          The traceability blockchain wallet scans the traceability blockchain looking for transactions that are new and copies them to the application maintaining the wallet. When a user transforms a product in the manufacturing process or transfers assets to another user, the wallet creates a transaction on the blockchain signed by the user’s private key. If a user transfers an asset another user, the receiving user’s smart wallet will read the information from the blockchain. In logistics use cases, the transfer on the blockchain creates an advanced shipment notification (ASN).

          The first smart wallet, Food Ledger, was developed as part of the Tritanium development process with specific customers in mind. The creation of the application help form the requirements of the traceability blockchain. The Food Ledger application was designed for small and medium sized food manufacturers with less than $20 million in yearly sales. This demographic is largely underserviced by existing products and has a requirement for product traceability to pass a GMP audit. A cost-effective solution for this specific product requirement provides an enormous opportunity for application developers.

Public vs. Permission Blockchains

          Permission blockchains, like Hyperledger, operate using a central authority to manage the network. The central authority may be a single organization or a group of organizations working together to ensure a safe operating environment or participants. The operator of the permission blockchain creates the business model and selects the hardware and software architectures supported on the platform. With permission blockchains, mining and proof of work are replaced by other security mechanisms like digital certificates and private networks. Permission blockchains solve most of the security vulnerabilities and performance issues introduced with smart contracts and chain code.

          It can be argued that every successful blockchain is a public blockchain. The original definition of a blockchain defines a peer-to-peer network with no central authority protected by cryptography and proof of work. The ecosystem provided by a public blockchain creates a cost effective mechanism for anyone to use the blockchain. Although it is not recommended to store highly sensitive data on any public network, private business data can be stored on the blockchain in an encrypted format.

          The Tritanium Traceability Blockchain is a public blockchain supporting the fee based business model introduced by Ethereum. Businesses and service providers can create their own applications using the public API provided by the platform allowing innovative smart-wallet applications to be created supporting traceability use cases.

Smart Contracts vs. Smart Wallets

          Although smart contracts are a major talking point in blockchain technologies, smart contracts have proven to be a failure in public blockchains. From a developer’s perspective, smart contracts dramatically expand the trusted code base (TCB) of the blockchain by allowing third party developers to develop software executed on each of the nodes. The smart contract architecture violates an important best practice in cyber security, “keep your trusted code base as small as possible”. The architecture flaw of smart contracts combined with the immutability of the blockchain creates an unworkable environment for developers. Smart contracts are often victim to hackers and require an unreasonable level of testing prior to deployment. This view of smart contracts is supported by the lack, or non-existence, of successful dApps on the Ethereum blockchain and the dramatic drop in Ethereum price. It can also be argued that smart contracts are the only reason permission blockchains are necessary.

          An alternative to smart contracts for developing dApps is smart wallets. Wallets are in important part of the blockchain architecture and smart wallets allow business logic to be performed off the blockchain and transactions stored on the blockchain through a trusted code base that is out of the control of the dApp developer. When looking at the process of food traceability, each step of the process from the farmer to the grocery store have different requirements for the blockchain. The smart wallet used by the farmer is different than the smart wallet used by distributors, food processors, and retail stores.

          The Tritanium traceability platform contains an easy to use API that allows developers to integrate existing or custom applications into the Tritanium blockchain. In many cases, the smart wallet template provides everything a developer needs to store traceability data on the blockchain while keeping proprietary data off the blockchain.

The Tritanium Platform Business Model

          In 2015 when Ethereum introduced dApps, they also introduced a business model for operating a public blockchain platform. Ethereum introduced a fee, called “gas”, for third parties to pay for smart contracts being executed on the blockchain. Gas fees on the Ethereum platform are paid in ETH requiring every dApp operator to have a supply of ETH to pay fees. The Ethereum business model was a driving factor in the rise of ETH value. Since gas fees are calculated by the state of the network at time smart contracts are executed, there are large variations in gas fees that cannot be predicted when developing a dApp.

          The Tritanium Platform Business Model retains gas fees in a much more simplified format. Gas fees on the Tritanium Platform are paid using the TTNZ coin. Since Tritanium does not support smart contracts, the complex calculation of how much network resources a smart contract will require to execute is not necessary. Tritanium gas prices are based on the amount of data stored within the block that must be protected by the miners. This model provides an incentive for dApp developers to create efficient transactions using the smart wallet API. The Tritanium model also provides a predictable pricing structure that is separate from the state of the network and influence of other dApps.

Traceability Use Cases

          The Tritanium Platform provides solutions for businesses that must trace products and their ingredients. Although food traceability is an important use-case, there are many other use-cases that benefit from traceability in the manufacturing process. The Tritanium platform supports anchoring documents to the blockchain using digital signatures to support use-cases based on permanent storage and immutability.

          Unlike other platforms where dApps are designed to operate independently, dApps on the Traceability Blockchain are designed to transfer assets across users who may be using different dApps. It is an important part of the Tritanium business model for new dApp to integrate with existing aApps easily to lower the barrier to entry for new applications on the blockchain. Applications used to create assets used by farmers and ranchers operate differently than applications used to transform products into new products. Applications focusing on product distribution must focus on different feature for their users.

          The Tritanium platform encourages developers to build custom applications on the blockchain.

Transfer of Assets

          The transfer of assets is the primary function of most currency and business blockchains. The Tritanium Traceability blockchain handles transfer of non-monetary assets across ownership as part of the core functionality of the platform.

          TRANSFER LEDGER: The Transfer Ledger dApp manages the transfer of packaged assets across the supply chain. In the Transfer Ledger Application blockchain addresses are based on the physical locations of shipments allowing the blockchain to easily trace where every asset was ever located. The application was developed for distributors and retail businesses that receive items in large quantity and divide and ship the items to multiple locations. Distributors must be able to provide every location where each product was shipped in the case of product recalls. This creates a difficult challenge for small and medium sized distributors that do not have access to IT department and technical solutions. Transfer ledger supports GS1 standards for the identification of shipments and items.

          Items that are put on the blockchain before shipment provide advanced shipment notifications (ASN) to the receiving party using the blockchain. Transfer Ledger puts distribution information on the blockchain using the standard format that allows other applications to receive data on the blockchain.

Manufacturing and Transforming Assets

          The Tritanium Traceability blockchain introduces the concept of transformation of assets to the blockchain. Most blockchain platforms are based on transfer of assets that includes division of coin/assets into smaller units but do not handle transformation of assets from on type of asset to another. There are over 33,000 small and medium sized business producing food products in the United States.

          FOOD LEDGER: The Food Ledger application manages process of receiving components and ingredients, combining them to create new products, and then shipping the product to customers or distributors. The Food Ledger receiving component managing the receipt and labeling of ingredients as they are received even if the vendor is providing the ingredients is on the blockchain. The receiving component of the application feeds into the manufacturing component that tracks ingredient input and manages the creation and identification of products produced. The shipment and transfer component for the application transfers completed assets for distribution companies or customers.

          CUSTOM APPLICATIONS: Most large manufacturers use proprietary applications to track their manufacturing processes. The Tritanium API allows proprietary applications to store transfer, transformation, and document data on the blockchain. Companies can build custom blockchain applications using their programming language of choice or can use the Tritanium master node to upload transactions from product like Microsoft Excel or relations databases.

Creating Assets over Time

          Many products are created over a long period of time with activities performed throughout the process. Two important areas in food production are the farming of crops and raising of livestock. This use case is different than the manufacturing use case because inputs are added to a product over a period and records must be available to the user throughout the process.

          FARM LEDGER and CATTLE LEDGER The Farm Ledger and Cattle Ledger dApps are used to track the creation of farming and livestock products. The application allow users to create an asset, like a head of cattle, and store actions that are taken, like feeding procedures and vaccinations used in the creation of the final product. Once products are created, the application allow them to be transferred to the next step in the supply chain with all records available to the rest of the supply chain.

Storing Records on the Immutable Blockchain

          Storing records on the immutable blockchain such as chemical analysis and production documentation is an important part manufacturing and the supply chain. Many products must maintain records related to how they were created and tested. Manufacturing and testing documentation can be stored as permanent records on the blockchain in case an issue occurs with a product.

          DOCUMENT LEDGER and CHEMLEDGER The Chem Ledger application provides a mechanism to store the chemical analysis of products on the immutable blockchain. Many products require chemical analysis before they can be shipped. Chem Ledger can be used as a stand-alone product or combined with other applications like Food Ledger. The primary market for Chem Ledger as a stand-alone product is manufacturing companies that must comply with FDA testing requirements.

Distributed Application (dApp) Development

          Blockchains consist of nodes with each node containing an entire copy of the blockchain. Application developers have the option of hosting their own full-node or connecting their smart wallet application to an existing master node. Hosting a full node requires a dedicated Ubuntu 16.04 Linux server with high speed internet connections. Amazon AWS EC2 medium sized servers are recommended for developers wishing to host a full-node.

          The getTraceIIO function scans the blockchain from the last position scanned by the smart wallet looking for transactions where the smart wallet address is a stakeholder. Blocks containing transactions related to the wallet address are download and can be stored locally within the application. The getTraceIO function operates the same on both dedicated full-nodes and using a Tritanium master node. The local keys within the smart wallet are used to decrypt any encrypted data posted to the blockchain by creator of the transaction.

          When an and application creates a fusion or transfer transaction, the sendTransaction function is used to send the transaction to the blockchain. A fusion transaction combines inputs to create an output without changing ownership of the assets involved. An example of a fusion transaction is combining ingredients to create a product. A transfer transaction transfers ownership or physical location of an asset to another blockchain address. Since assets are divisible and can be shipped to multiple locations, a transfer transaction does not automatically close the asset on the sender’s account. The traceability blockchain does not automatically track quantities. It is the application developer’s responsibility to track quantities if necessary and determine when an entire asset has been shipped.

          The Tritanium Platform supports unstructured data types. Application developers can store data on the blockchain by including the additional fields in the API call creating the transaction. It is important to take into account that gas fees are based on the amount of data stored on the blockchain, so developers must make sure they are not storing unnecessary data in their transactions.

          There are only four fields that are required for each traceability transaction; owner address, asset type, asset id, and recipient address. The unique asset identifier within the blockchain is derived from the owner, asset type, and asset id fields. When an asset is transferred to a new owner, the input to the transaction is the asset identifier derived from the sending owner and the output is derived from the receiving owner. Unlike cryptocurrency transactions that do not require asset identifiers in each transaction, the four required fields are necessary to provide end-to-end traceability. It is also important to realize that inputs to transactions are not required to exist on the blockchain when they are first used. This is important in supply chain applications since vendors of the ingredients used to make a product may not be on the blockchain.

The Tritanium Coin (TTNZ)

          The TTNZ coin is based on the Cryptonote platform forked from the TurtleCoin code base. The Tritanium coin provides untraceable payments using ring signatures to prevent viewers from determining the senders of transfers and single use key addresses that prevents viewers from determining how many coins have been transferred to each account.

          The TTNZ Proof of Work (PoW) algorithm is resistant to Application Specific Integrated Circuit (ASIC) hardware that allows mining pools and ASIC miners to gain majority control of the network. ASIC resistant mining keeps the control of mining in the hands of CPU and GPU miners.