Connect with us
[crypto-donation-box]

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 »

Republished by Plato

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

MicroStrategy Acquires More Bitcoin, Holds More Than 105,000 BTC

MicroStrategy Bitcoin

Rate this post Business analytics firm MicroStrategy has added more Bitcoin to its balance sheet, taking the company’s collective holdings to a whopping 105,085 BTC. According to an announcement from the firm’s CEO Michael J. Saylor, MicroStrategy spent $489 million to add another 13,005 BTC to its treasury. Michael Saylor Announces New Bitcoin Purchase For MicroStrategy Saylor and his company have maintained their belief in Bitcoin’s potential despite the primary crypto’s ongoing price struggles in a volatile market. The company has been pumping the digital asset since last August following the pandemic-induced inflation, which forced investors to seek non-traditional options that safeguard their assets. In its most recent accumulation effort, MicroStrategy snagged 13,005 BTC for an average price of $37, 617 per token. However, the digital asset has declined sharply in the last few days, and one coin is currently trading for $32,500.  As part of its announcement, the firm revealed that its recently formed subsidiary MacroStrategy LLC holds 92,079 BTC of its total balance.  Altogether, the new investment takes MicroStrategy’s combined Bitcoin holdings to a staggering 105,085 coins. At the current spot price, this holding is worth $2.74 billion, with each token amounting to slightly more than $26,000.  MicroStrategy Raised $500M to Procure Its Current BTC Investment Earlier this month it was reported that MicroStrategy was offering senior secured notes due in 2028 to raise half a billion dollars in debt. These notes bore an annual interest rate of 6.125%. The company had originally capped the sale at $400 million, but shortly thereafter it boosted its offer by another $100 million.  Following the sale of its debt offering, the company revealed that it had amassed nearly $489 million, which would be invested in Bitcoin. At the same time, MicroStrategy also announced that it was planning to sell up to $1 billion in stocks and that part of those proceeds would be directed to buying more Bitcoin. Even before its recent purchase, MicroStrategy owned the largest reserve of the flagship crypto among all publicly traded companies. 

The post MicroStrategy Acquires More Bitcoin, Holds More Than 105,000 BTC appeared first on Cryptoknowmics-Crypto News and Media Platform.

Republished by Plato

Published

on

Table of Contents

Rate this post

Business analytics firm MicroStrategy has added more Bitcoin to its balance sheet, taking the company’s collective holdings to a whopping 105,085 BTC. According to an announcement from the firm’s CEO Michael J. Saylor, MicroStrategy spent $489 million to add another 13,005 BTC to its treasury.

Michael Saylor Announces New Bitcoin Purchase For MicroStrategy

Saylor and his company have maintained their belief in Bitcoin’s potential despite the primary crypto’s ongoing price struggles in a volatile market. The company has been pumping the digital asset since last August following the pandemic-induced inflation, which forced investors to seek non-traditional options that safeguard their assets.

In its most recent accumulation effort, MicroStrategy snagged 13,005 BTC for an average price of $37, 617 per token. However, the digital asset has declined sharply in the last few days, and one coin is currently trading for $32,500. 

As part of its announcement, the firm revealed that its recently formed subsidiary MacroStrategy LLC holds 92,079 BTC of its total balance. 

Altogether, the new investment takes MicroStrategy’s combined Bitcoin holdings to a staggering 105,085 coins. At the current spot price, this holding is worth $2.74 billion, with each token amounting to slightly more than $26,000. 

MicroStrategy Raised $500M to Procure Its Current BTC Investment

Earlier this month it was reported that MicroStrategy was offering senior secured notes due in 2028 to raise half a billion dollars in debt. These notes bore an annual interest rate of 6.125%. The company had originally capped the sale at $400 million, but shortly thereafter it boosted its offer by another $100 million. 

Following the sale of its debt offering, the company revealed that it had amassed nearly $489 million, which would be invested in Bitcoin. At the same time, MicroStrategy also announced that it was planning to sell up to $1 billion in stocks and that part of those proceeds would be directed to buying more Bitcoin.

Even before its recent purchase, MicroStrategy owned the largest reserve of the flagship crypto among all publicly traded companies. 

READ  MicroStrategy’s Bitcoin Stack Up: Brilliant Moves or Risk?

#Bitcoin #CEO Michael Saylor #MicroStrategy #MicroStrategy BTC Investment

Source: https://www.cryptoknowmics.com/news/microstrategy-acquires-more-bitcoin-holds-more-than-105000-btc/

Continue Reading

Blockchain

Chris Giancarlo: U.S. risks becoming ‘backwater’ without central bank digital currency

Republished by Plato

Published

on

One of the few high-profile public officials to have served under both the Obama and Trump administrations, Chris Giancarlo is a former Wall Street executive-turn-regulator who is widely-respected by nearly all parties on Capitol Hill. As the former Chairman of the Commodities Futures Trading Commission, however, his latest venture, the Digital Dollar Foundation, might well test his soft touch with politicians.

The former regulator is now leading the Foundation towards five pilot programs set to launch this year, part of a broader effort to help the United States regain the lead in a race against China towards a functioning CBDC.

According to Giancarlo, however, the US’s priorities when it comes to a CBDC shouldn’t merely be jingoistic:

“What’s very clear, [is] that China intends their digital yuan to be an instrument of state surveillance. […] And this is why it’s one of the reasons why the digital dollar project, we’re so animated, because we feel that our new mission is to make sure central banks wake up to this and the US Fed wakes up to this, that these social values that got us here, the rule of law, a free capital markets, free enterprise, zones of individual economic privacy, are ingrained in a new digital future of the US dollar, and that we don’t allow ourselves to be taken in by what China’s doing and match that state surveillance approach.”

However, the race to a CBDC isn’t merely about maintaining current US values, but also potnetially about unlocking new forms of smart contract-based value for the wider population. 

“The notion of a digital currency, whether it be sovereign and non-sovereign, tied to smart contracts, allows money to solve the old problem of being able to move it in place, i.e. moving around the globe as easily as you could send a text message, but also move it in time. Heretofore, money was a temporal thing, but with a smart contract you can say, I want to program my money today to go to my one grandchild in the future once they graduate college and all of those contingencies can be programmed in. […] With a programmable digital currency, you can program it today to move around the globe in space, but move around the globe in time. And that is such, I think, such a powerful construct.”

Ultimately, this work is part of an effort to ensure that America maintains technological supremacy. 

“You can’t stop the march of technology in time, and if you do, you become a backwater. We in the United States have always been open to innovation and we must be open to this innovation as well. In a prudent way, in a way that’s in correspondence with our society that expects investor protections and a role for government. […] And it’s one that I’m very excited to be involved in.”

Watch the full interview here:

[embedded content]

Chris Giancarlo: U.S. risks becoming ’backwater’ without central bank digital currency

Source

Coinsmart. Beste Bitcoin-Börse in Europa
Source: https://blockchainconsultants.io/chris-giancarlo-u-s-risks-becoming-backwater-without-central-bank-digital-currency/?utm_source=rss&utm_medium=rss&utm_campaign=chris-giancarlo-u-s-risks-becoming-backwater-without-central-bank-digital-currency

Continue Reading

News

Thailand SEC Bans Meme Coins, Fan Tokens, NFTs

Avatar

Published

on

By

Share some Bitpinas love:

Local exchanges in Thailand had been given a deadline until July 11 to submit their new rules for listing tokens that complies with the new guidelines from the Thailand Securities and Exchange Commission (SEC).

“The Securities and Exchange Commission (SEC) Board has approved the new rules that prohibit digital asset exchanges from providing services in relation to utility tokens and certain types of cryptocurrencies. The rules also specify that the exchanges set a requirement to be imposed in the event that digital tokens issued by their own exchange or related persons are listed on the exchange. In this regard, the token issuer who fails to comply with the white paper and relevant rules in substance could risk having such tokens delisted from the exchange. This new regulatory guideline aims to enhance protection of digital asset traders’ interest.”

The Thai SEC also added that listing rules prohibits local exchanges from providing services that have these following characteristics:

(1) Meme Token – having or no clear objective or substance or underlying, and whose price runs on social media trends.

(2) Fan token: tokenized by the fame of influencers.

(3) Non-Fungible Token (NFT): a digital creation to declare ownership or grant of right in an object or specific right. It is unique and not interchangeable with digital tokens of the same category and type at the equal amount.

(4) Digital tokens which are utilized in blockchain transactions and issued by digital asset exchanges or related persons.

Along with this move is their previous announcement of regulating Decentralize Finance (DeFi) projects in the country, including the issuance of digital tokens.

In the previous announcement, liquidity provider tokens, governance tokens, or tokens issued to those transacting in DeFi projects “must be licensed and must abide by the specified rules”.

The new regulation stipulates crypto exchanges, digital-asset brokerages, digital asset-dealers, private fund managers and investment advisors must be licensed by the Ministry of Finance.

Thai SEC states that, “For traders, it is best to study the DeFi project before getting involved in both technical and security aspects.” They also added that traders “should check whether the service provider is a digital-asset business that is licensed and regulated by the SEC or other regulatory agencies under law.”

This article is published on BitPinas: Thailand SEC Bans Meme Coins, Fan Tokens, NFTs

Share some Bitpinas love:

Source: https://bitpinas.com/regulation/thailand-sec-ban-meme-tokens/

Continue Reading
Blockchain5 days ago

GSA To Add Litecoin For The First Time In Upcoming Cryptocurrency Auction

Uncategorized5 days ago

The World Bank wants no part in El Salvador’s Bitcoin revolution

Uncategorized5 days ago

Healthcare: A trillion dollar opportunity for blockchain?

Uncategorized2 days ago

Sichuan Shutdown Order Cripples Chinese Bitcoin Mining Pools

Blockchain5 days ago

Maiar, The Money App Powered By The Elrond Blockchain, Adds Bitcoin

Blockchain5 days ago

Decentral Games: Next gen blockchain entertainment platform

Blockchain2 days ago

Coin Cloud Set to Operate 2000 Crypto Kiosks This Year

Blockchain4 days ago

Global Financial Indexes Provider MSCI Plans to Launch Crypto Indexes

Blockchain4 days ago

Paraguayan Official Confirms: In July We Legislate Bitcoin

Blockchain4 days ago

Ethereum On-Chain-Analyse: Interesse trotz Drop groß

Blockchain4 days ago

This Bitcoin HODLer Metric Has Just Flipped Green For The First Time In 8 Months – Here’s What This Means

Blockchain4 days ago

U.K’s crypto-users are growing in number, but do they even understand the asset class?

Blockchain4 days ago

Call of Duty Warzone Season 4: Satellite Crash Sites, Red Doors

Blockchain4 days ago

The End of NFTs? NFT Sale Transaction Volume Down 95% Since Early May

Blockchain4 days ago

WAVES Technical Analysis: Price Can Move Either Ways

Blockchain3 days ago

Tezos, Algorand, Zcash Price Analysis: 19 June

Uncategorized3 days ago

When does Naraka: Bladepoint release?

Blockchain5 days ago

ZoidPay brings crypto shopping to Amazon, Walmart, eBay, and 40 Million other online retailers

Blockchain2 days ago

What governments don’t realize is going to happen with Bitcoin

Blockchain3 days ago

Top DeepMind AI Products Revolutionizing The World

Trending