BlockchainBTM, CTO Andre Szykier discusses smart ledgers.
The idea of a smart ledger is to provide a record of an event (aka transaction) that is immutable, resistant to modification, and supports a level of detail required to enforce an action. A ledger is typically used to refer to a smart contract: the exchange of money, property, shares, or anything of value in a transparent, conflict-free way without engaging a third party to attest to a transaction.
Blockchain methods support smart contracts in various flavors. They can store the data as well as software code inside a blockchain. Alternatively, they can store information about the contract off chain in a central or distributed storage mechanism linked to an entry in the blockchain. While the latter is often connected to handling cryptocurrency transactions such as Bitcoin, smart contracts are a blockchain enabled method to avoid centralized datastores.
A smart contract reflects embedded code in a blockchain that interacts with that blockchain’s state. As for code it’s Pascal, Python, PHP, Java, Fortran, and C++. If we’re talking databases, it can be stored procedures written in an extension of SQL.
Blockchains fall into two categories, public or private. Public means that they can support multiple applications, visible or anonymous users and are priced at the cost of maintaining a general purpose blockchain network. Ethereum is a good example. The more transactions across users, the lower the mining cost and the higher the value of the network, following Metcalf’s law where the value of any network is the square of the number of users.
Private blockchains are where access is permission-based and operate on dedicated, cloud or vendor supplied resources. IBM Hyperledger is one example of a smart ledger network. Generally, private blockchains involved a smaller subset of nodes (duplicate instances of a blockchain).
They also have different ways of incentivizing miners (block creators). Some pre-mine blocks and offer them as a pre-paid resource for recording transactions. Others use variants of how miners are rewarded to create blocks using proof of (work, stake, activity, quorum, capacity, elapsed time, burn.) This is important as it drives the principle of consensus where a majority of nodes decide to record a data block in the blockchain network. Without a consensus blockchains cannot enforce immutability.
How do crypto or utility tokens and smart contracts interplay? Tokens are a unit of exchange whose value is pegged to the initial offer or backing by an asset or currency. Their value is modified by how a business offers tokens to the public based on a business model of future value. This can involve traditional mechanisms such as dividends, revenue or royalty share or in a more speculative fashion, how a token can be exchanged for other tokens. The latter is driven more by exchanges that list tokens for a fee.
One does not need to have a smart contract to engage in a buy or sell transaction for a cryptocurrency such as Bitcoin; the blockchain records all relevant data. Smart contracts are a more complex data element. It may reflect details behind a transaction that enforce or describe contract details that may be unique or global to an event. They also may involve transactions with multiple steps and multiple parties.
The challenge is deciding the degree of information that can be stored in the blockchain and how much is stored off-chain. The objective with the client is to record in a smart ledger the entities that have “invested” in a token along with contract details that support the transaction. Part of the requirement is keeping track of when the transaction was executed, the date when the token is available for sale to a third party and a record of how value is calculated for the benefit of the token holder. In other words, it’s a ledger entry that is linked to a blockchain method.