Connect with us

Blockchain

Beware the impossible smart contract

The three most common smart contract misconceptions As the developers of a popular blockchain platform, we sometimes get asked whether Ethereum-like smart contracts are on the MultiChain roadmap. The answer I always give is: no, or at least not yet. But in the hype-filled world of blockchains, smart contracts are all the rage, so why… Read more »

Published

on

The three most common smart contract misconceptions

As the developers of a popular blockchain platform, we sometimes get asked whether Ethereum-like smart contracts are on the MultiChain roadmap. The answer I always give is: no, or at least not yet.

But in the hype-filled world of blockchains, smart contracts are all the rage, so why ever not? Well, the problem is, while we now know of three strong use cases for permissioned Bitcoin-style blockchains (provenance, inter-company records and lightweight finance), we’re yet to find the equivalent for Ethereum-style smart contracts.

It’s not that people lack ideas of what they want smart contracts to do. Rather, it’s that so many of these ideas are simply impossible. You see, when smart people hear the term “smart contracts”, their imaginations tend to run wild. They conjure up dreams of autonomous intelligent software, going off into the world, taking its data along for the ride.

Unfortunately the reality of smart contracts is far more mundane than all that:

A smart contract is a piece of code which is stored on an blockchain, triggered by blockchain transactions, and which reads and writes data in that blockchain’s database.

That’s it. Really. A smart contract is just a fancy name for code which runs on a blockchain, and interacts with that blockchain’s state. And what is code? It’s Pascal, it’s Python, it’s PHP. It’s Java, it’s Fortran, it’s C++. If we’re talking databases, it’s stored procedures written in an extension of SQL. All of these languages are fundamentally equivalent, solving the same sorts of problems in the same sorts of ways. Of course, each has its strengths and weaknesses – you’d be crazy to build a website in C or compress HD video in Ruby. But in principle at least, you could if you wanted to. You’d just pay a heavy price in terms of convenience, performance, and quite probably your hair.

The problem with smart contracts isn’t just that people’s expectations are overblown. It’s that these expectations are leading many to spend time and money on ideas that cannot possibly be implemented. It seems large companies have sufficient resources to travel a lengthy path – from the moment when senior management encounters a new technology, to when that technology’s advantages and limitations are truly understood. Perhaps our own experience can help shorten this time.

Over the past nine months, we’ve been pitched many smart contract use cases, and have found ourselves responding, time and again, that they simply cannot be done. As a result, we’ve identified the three smart contract misconceptions that are most commonly held. These ideas aren’t wrong because the technology is immature, or the tools are not yet available. Rather, they misunderstand the fundamental properties of code which lives in a database and runs in a decentralized way.

Contacting external services

Often, the first use case proposed is a smart contract which changes its behavior in response to some external event. For example, an agricultural insurance policy which pays out conditionally based on the quantity of rainfall in a given month. The imagined process goes something like this: the smart contract waits until the predetermined time, retrieves the weather report from an external service, and behaves appropriately based on the data received.

This all sounds simple enough, but it’s also impossible. Why? Because a blockchain is a consensus-based system, meaning that it only works if every node reaches an identical state after processing every transaction and block. Everything that takes place on a blockchain must be completely deterministic, with no possible way for differences to creep in. The moment that two honest nodes disagree about the chain’s state, the entire system becomes worthless.

Now recall that smart contracts are executed independently by every node on a chain. Therefore, if a smart contract retrieves some information from an external source, this retrieval is performed repeatedly and separately by each node. But because this source is outside of the blockchain, there is no guarantee that every node will receive the same answer. Perhaps the source will change its response in the time between requests from different nodes, or perhaps it will become temporarily unavailable. Either way, consensus is broken and the entire blockchain dies.

So what’s the workaround? Actually, it’s rather simple. Instead of a smart contract initiating the retrieval of external data, one or more trusted parties (“oracles”) creates a transaction which embeds that data in the chain. Every node will have an identical copy of this data, so it can be safely used in a smart contract computation. In other words, an oracle pushes the data onto the blockchain rather than a smart contract pulling it in.

When it comes to smart contracts causing events in the outside world, a similar problem appears. For example, many like the idea of a smart contract which calls a bank’s API in order to transfer money. But if every node is independently executing the code in the chain, who is responsible for calling this API? If the answer is just one node, what happens if that particular node malfunctions, deliberately or not? And if the answer is every node, can we trust every node with that API’s password? And do we really want the API called hundreds of times? Even worse, if the smart contract needs to know whether the API call was successful, we’re right back to the problem of depending on external data.

As before, a simple workaround is available. Instead of the smart contract calling an external API, we use a trusted service which monitors the blockchain’s state and performs certain actions in response. For example, a bank could proactively watch a blockchain, and perform money transfers which mirror the on-chain transactions. This presents no risk to the blockchain’s consensus because the chain plays an entirely passive role.

Looking at these two workarounds, we can make some observations. First, they both require a trusted entity to manage the interactions between the blockchain and the outside world. While this is technically possible, it undermines the goal of a decentralized system. Second, the mechanisms used in these workarounds are straightforward examples of reading and writing a database. An oracle which provides external information is simply writing that information into the chain. And a service which mirrors the blockchain’s state in the real world is doing nothing more than reading from that chain. In other words, any interaction between a blockchain and the outside world is restricted to regular database operations. We’ll talk more about this fact later on.

Enforcing on-chain payments

Here’s another proposal that we tend to hear a lot: using a smart contract to automate the payment of coupons for a so-called “smart bond”. The idea is for the smart contract code to automatically initiate the payments at the appropriate times, avoiding manual processes and guaranteeing that the issuer cannot default.

Of course, in order for this to work, the funds used to make the payments must live inside the blockchain as well, otherwise a smart contract could not possibly guarantee their payment. Now recall that a blockchain is just a database, in this case a financial ledger containing the issued bond and some cash. So when we talk about coupon payments, what we’re actually talking about are database operations which take place automatically at an agreed time.

While this automation is technically feasible, it suffers from a financial difficulty. If the funds used for coupon payments are controlled by the bond’s smart contract, then those payments can indeed be guaranteed. But this also means those funds cannot be used by the bond issuer for anything else. And if those funds aren’t under the control of the smart contract, then there is no way in which payment can be guaranteed.

In other words, a smart bond is either pointless for the issuer, or pointless for the investor. And if you think about it, this is a completely obvious outcome. From an investor’s perspective, the whole point of a bond is its attractive rate of return, at the cost of some risk of default. And for the issuer, a bond’s purpose is to raise funds for a productive but somewhat risky activity, such as building a new factory. There is no way for the bond issuer to make use of the funds raised, while simultaneously guaranteeing that the investor will be repaid. It should not come as a surprise that the connection between risk and return is not a problem that blockchains can solve.

Hiding confidential data

As I’ve written about previously, the biggest challenge in deploying blockchains is the radical transparency which they provide. For example, if ten banks set up a blockchain together, and two conduct a bilateral transaction, this will be immediately visible to the other eight. While there are various strategies for mitigating this problem, none beat the simplicity and efficiency of a centralized database, in which a trusted administrator has full control over who can see what.

Some people think that smart contracts can solve this problem. They start with the fact that each smart contract contains its own miniature database, over which it has full control. All read and write operations on this database are mediated by the contract’s code, making it impossible for one contract to read another’s data directly. (This tight coupling between data and code is called encapsulation, and is the foundation of the popular object-oriented programming paradigm.)

So if one smart contract can’t access another’s data, have we solved the problem of blockchain confidentiality? Does it make sense to talk of hiding information in a smart contract? Unfortunately, the answer is no. Because even if one smart contract can’t read another’s data, that data is still stored on every single node in the chain. For each blockchain participant, it’s in the memory or disk of a system which that participant completely controls. And there’s nothing to stop them reading the information from their own system, if and when they choose to do so.

Hiding data in a smart contract is about as secure as hiding it in the HTML code of a web page. Sure, regular web users won’t see it, because it’s not displayed in their browser window. But all it takes is for a web browser to add a ‘View Source’ function (as they all have), and the hidden information becomes universally visible. Similarly, for data hidden in smart contracts, all it takes is for someone to modify their blockchain software to display the contract’s full state, and all semblance of secrecy is lost. A half-decent programmer could do that in an hour or so.

What smart contracts are for

With so many things that smart contracts cannot do, one might ask what they’re actually for. But in order to answer this question, we need to go back to the fundamentals of blockchains themselves. To recap, a blockchain enables a database to be directly and safely shared by entities who do not trust each other, without requiring a central administrator. Blockchains enable data disintermediation, and this can lead to significant savings in complexity and cost.

Any database is modified via “transactions”, which contain a set of changes to that database which must succeed or fail as a whole. For example, in a financial ledger, a payment from Alice to Bob is represented by a transaction that (a) checks if Alice has sufficient funds, (b) deducts a quantity from Alice’s account, and (c) adds the same quantity to Bob’s.

In a regular centralized database, these transactions are created by a single trusted authority. By contrast, in a blockchain-driven shared database, transactions can be created by any of that blockchain’s users. And since these users do not fully trust each other, the database has to contain rules which restrict the transactions performed. For example, in a peer-to-peer financial ledger, each transaction must preserve the total quantity of funds, otherwise participants could freely give themselves as much money as they liked.

One can imagine various ways of expressing these rules, but for now there are two dominant paradigms, inspired by Bitcoin and Ethereum respectively. The Bitcoin method, which we might call “transaction constraints”, evaluates each transaction in terms of: (a) the database entries deleted by that transaction, and (b) the entries created. In a financial ledger, the rule states that the total quantity of funds in the deleted entries has to match the total in those created. (We consider the modification of an existing entry to be equivalent to deleting that entry and creating a new one in its place.)

The second paradigm, which comes from Ethereum, is smart contracts. This states that all modifications to a contract’s data must be performed by its code. (In the context of traditional databases, we can think of this as an enforced stored procedure.) To modify a contract’s data, blockchain users send requests to its code, which determines whether and how to fulfill those requests. As in this example, the smart contract for a financial ledger performs the same three tasks as the administrator of a centralized database: checking for sufficient funds, deducting from one account, and adding to another.

Both of these paradigms are effective, and each has its advantages and disadvantages, as I’ve discussed in depth previously. To summarize, Bitcoin-style transaction constraints provide superior concurrency and performance, while Ethereum-style smart contracts offer greater flexibility. So to return to the question of what smart contracts are for:

Smart contracts are for blockchain use cases which can’t be implemented with transaction constraints.

Given this criterion for using smart contracts, I’m yet to see a strong use case for permissioned blockchains which qualifies. All the compelling blockchain applications I know can be implemented with Bitcoin-style transactions, which can handle permissioning and general data storage, as well as asset creation, transfer, escrow, exchange and destruction. Nonetheless, new use cases are still appearing, and I wouldn’t be surprised if some do require the power of smart contracts. Or, at the very least, an extension of the Bitcoin paradigm.

Whatever the answer turns out to be, the key to remember is that smart contracts are simply one method for restricting the transactions performed in a database. This is undoubtedly a useful thing, and is essential to making that database safe for sharing. But smart contracts cannot do anything else, and they certainly cannot escape the boundaries of the database in which they reside.

Please post any comments at LinkedIn.

Source: https://www.multichain.com/blog/2016/04/beware-impossible-smart-contract/

Blockchain

Shiba Inu’s days in the sun may be over; here’s why

Published

on

In a market full of investment-worthy coins, there are a few meme-coins such as Shiba Inu that do not offer much value, be it in terms of use-case or a strong network. Thanks to its strong community though, SHIB managed to surprise the entire crypto space.

However, it seems the community is not what it used to be anymore.

Shiba Inu sees a dump

On September 16, SHIB got listed on Coinbase pro, and people went into a frenzy. The meme-coin witnessed a 28.87% growth in 1 day.

This is the highest single-day growth since May and even then, SHIB could not breach its long-established resistance level of 0.00001010. SHIB has been stuck under it since May.

Shiba Inu’s price rose by 28.8% 48 hours ago | Source: TradingView – AMBCrypto

But that did not stop the SHIB supporters from reacting strongly. Within 48 hours, over 6.04 trillion SHIB was bought out of the market, figures that were last seen on July 26. This further led to the supply on exchanges falling to a 4-month low.

Shiba Inu’s supply on exchanges at a 4-month low | Source: Santiment – AMBCrypto

Why you should stay away from SHIB?

This kind of behavior is the exact reason why SHIB is an untrustworthy asset because it is literally treated like a pump and dump asset. The instances observed yesterday are similar to what we saw at the beginning of the July rally.

Its own community does not take it seriously and only appears during a price rise to cash out as much as possible. Active addresses and transaction volumes remain dormant and pretty low, regularly, and rise only when there is a price rise.

Shiba Inu’s transactions volumes | Source: Santiment – AMBCrypto

In fact, long-term holders cash out at the first sign of profits, too. Yesterday over 3.3 quadrillion coin days were destroyed, levels similar to which were earlier noticed, in July, showing the movement of old coins. If they had kept their holdings instead, the price would have remained stable.

Shiba Inu’s coin days destroyed | Source: Santiment – AMBCrypto

Adding to the pump and dump narrative, is the fact that in less than 24 hours, MVRV fell. Down from the strength of 2.0 into the negative zone at press time.

Shiba Inu’s MVRV in the negative zone | Source: Santiment – AMBCrypto

Simply put, there is no real value coming into the coin from the very loyal SHIB community as of now. However, due to its fanbase and hyped DOGE, it will keep blipping on the crypto radar every now and then.

Where to Invest?

Subscribe to our newsletter

PlatoAi. Web3 Reimagined. Data Intelligence Amplified.

Click here to access.

Source: https://ambcrypto.com/shiba-inus-days-in-the-sun-may-be-over-heres-why

Continue Reading

Blockchain

Making sense of Solana’s ‘extremely rapid’ growth

Published

on

When Solana experienced a crash right after hitting a new all time high on 9 September, traders and experts tried to make sense of the event. On “The Best Business Show,” investment expert Anthony Pompliano interviewed Kyle Samani, co-founder and managing partner at Multicoin Capital, to discuss the rising star-turned-meteor, that Solana has turned out to be.

From 4 cents to over $200

Pompliano began by discussing Multicoin Capital’s investment in Solana. He calculated that the initial investment had gone up roughly 3750 times since the initial round, when one SOL had been at $0.04.

For his part, Samani said,

“Solana today is growing at an extremely rapid pace. Users being on-boarded, assets being issued, stablecoins going into it – all of these things. Look at the last nine days: it’s just a vertical line from, call it a billion in assets to like 10 billion.”

While listing out possible factors for Solana’s success, Samani cited Solana’s speed and network, its NFT platform Metaplex, the rise in SOL’s price, and the stablecoins issued.

Network > Price

Inevitably, Pompliano brought up Solana’s crash – though he admitted calling it so was “hilarious,” in the context of the alt coin’s growth. However, Samani’s answer was a surprising one. He claimed that he tried to ignore prices and didn’t refer to Coin Gecko or Coin Market Cap. Rather, he preferred to focus on Solana’s network and its growth. He further explained,

“Our time horizon is measured in years, not weeks or months. So the question we will always ask ourselves, is you know, is this network compounding at a sufficiently fast rate? And if you really go dig into developer activity, user on-boarding, dollar flow in the system. . .all of those things right now are compounding at an astounding rate and I don’t think that’s going to slow down.”

Furthermore, the following infographic presents data on Solana transfers.

Could Solana kill Ethereum?

Samani spoke about Metaplex and how the NFT platform came during the NFT Boom of summer 2021. He noted Ethereum’s high gas fees and how many users saw Solana as a faster alternative. Even so, Samani admitted that he thought it was “improbable” for Solana to displace Ethereum. Instead he suggested the two would likely co-exist.

Samani also addressed a common criticism aimed at Solana, regarding the its centralized nature, due to the number of validators and the expensive hardware required to run it.

Samani called the criticism “valid” but “irrelevant,” pointing out that the trade-off meant better performance for users, reiterating the network’s rapid growth.

At press time, there were between 974 and 1000 validators on the Solana mainnet. Samani’s assessment of the alt coin was simple but memorable. He said,

“I don’t think there’s going to be another Solana.”

Where to Invest?

Subscribe to our newsletter

PlatoAi. Web3 Reimagined. Data Intelligence Amplified.

Click here to access.

Source: https://ambcrypto.com/making-sense-of-solanas-extremely-rapid-growth

Continue Reading

Blockchain

Will Bitcoin make a pitstop at $85,000, before racing to $100,000

Published

on

Even though Bitcoin has been making no major moves of late, the market’s bullishness on the coin continued making headlines, and all for the right reasons. After all, the king coin surprised the market before, with massive its moves that rendered skeptics silent. 

Bitcoin to $100K, by the end of the year is a much-anticipated move by the market. As we enter the last quarter of this year, Bitcoin is expected to push towards that major psychological barrier. However, even though Bitcoin presented a solid recovery from the May crash, at the time of writing, the effects of the September 7 flash crash hadn’t completely worn out. 

Nonetheless, as BTC presented around 3% daily gains and traded at the $48.5 level at press time, the market once again eyed BTC for some major moves. But before Bitcoin actually makes a move towards the $100K, its last stop would be the $85K mark which will confirm an upward move to $100K. 

The above observation was part of a market report by trading platform Decentrader ,which presented bullish signals in the near term, for BTC. It presented how we it could be setting up for a major run that first reaches $85,000 before breaking through the psychological barrier of $100,000, thereby making for an explosive Q4 2021. 

BTC looking hyper bullish 

In spite of BTC trading below $50K throughout the week, on-chain metrics have led analysts to stay bullish on Bitcoin price action. A report stated that the constantly decreasing supply of BTC on exchanges put upwards pressure on price in the medium term. With demand increasing as supply reduces, the price would go up. 

Further, another factor that contributed to Bitcoin’s bullish mid-term trajectory was its SOPR which presented a similar trend to the months that followed the March covid crash. After the summer crash where SOPR was heavily printing green candles, some minor selling at a loss was observed on this pullback from $50,000 too. Thus, SOPR flashed a sort of buy-the-dip opportunity as final sellers get flushed out before it moves higher, as was observed in Q4 2020. 

Additionally, Active Address Sentiment Indicator had reset with price change lower than active address change. With a pullback in prices alongside constant network growth, the market will look to catch up with network growth by noting price gains. 

Thus, the report presented a hyper-bullish possibility of Bitcoin reaching $85K by the end of Q4. However, Bitcoin’s options market didn’t look too big on gains at the moment with funding rate flashing negative signs. Further BTC’s global open interest by expiry indicated year-end expectations of around $65K which is almost $20K less than the target of $85K. 

So, is $100K too far?

Well, not really. The reason being that, from the July local low of around $30K Bitcoin registered almost 75% gain to reach the multi-month price high of over $52K. Notably from the current consolidating prices, another 75% price gain would land Bitcoin to $85K. So a rally like that over the next three months won’t be a big surprise. 

Thus, while BTC was consolidating, a squeeze upward should characterize the remainder of this year, similar to events from 2020. 

Where to Invest?

Subscribe to our newsletter

PlatoAi. Web3 Reimagined. Data Intelligence Amplified.

Click here to access.

Source: https://ambcrypto.com/will-bitcoin-make-a-pitstop-at-85000-before-racing-to-100000

Continue Reading
Uncategorized5 days ago

All Ironworks Hand vendor locations in Final Fantasy XIV from A Nocturne For Heroes event

Blockchain3 days ago

Gate.io Introduces OpenPunks, A Community-Based NFT Collection

Uncategorized3 days ago

Wicked Craniums are now Nifty Gateway!

Uncategorized5 days ago

Natus Vincere wins ESL Pro League Season 14

Uncategorized2 days ago

Swissquote Confirms European Expansion Plan, Focusing on Crypto

Blockchain3 days ago

Biggest Crypto Adoption Rumours: Apple, Amazon, and Walmart

Blockchain4 days ago

DeFiPie (PIE) Price Prediction 2021-2025: Will PIE Rise to $1 by the End of 2021?

Uncategorized3 days ago

Investor: Coinbase’s $2 billion junk bond deal shows crypto ‘supercycle’ is in place

Uncategorized3 days ago

Head of Australian Crypto Exchange Says Regulations Are Beneficial

Blockchain3 days ago

The Signal and the Noise

Blockchain2 days ago

Massive NFT and Token Giveaway from Polker as Staking is Announced!

Blockchain4 days ago

This is how NFT mania pumped Litecoin, MATIC, and other alts

News2 days ago

Gods Unchained and Guild of Guardians Layer 2 Solution Immutable Raises $60 Million

News4 days ago

Here’s What It Would Take for Shark Tank Investor Kevin O’Leary Says To Put More Capital Into Bitcoin and Crypto

Uncategorized3 days ago

Acorns Hires Former Amazon Executive as President, Hints at Crypto Options

Uncategorized4 days ago

How to fix the Party Member Preloading error in Apex Legends

Uncategorized2 days ago

Nickelodeon All-Star Brawl will include DLC fighters post-launch

Blockchain3 days ago

Public.com Inks Deal with NFL Star to Advise on Financial Literacy Programs

Uncategorized2 days ago

Bingbon Launches its Carbon Free and Afforestation Project

News3 days ago

Evaluating Credit Card Debt Relief Options

Trending