The Ethereum Community Demonstrates Its Strength: How Ethereum Solved Its Own Block-size Controversy
The Ethereum Community Demonstrates Its Strength: How Ethereum Solved Its Own Block-Size Controversy Slow transaction times, high transaction fees, and a static gas limit were plaguing the Ethereum network, leading some to wonder if this was the emergence of a rift between miners and developers. But in less than a month, the two factions worked together to raise the gas limit and avoided what could have become Ethereums own block-size stand-off. Note: This article attempts to break down a complicated issue so that readers of every technical ability can understand. However, that makes it very long. Section headers are included to help readers navigate to the parts that meet their interest/technical level. Twenty-nine days ago, Ethereum Foundation (EF) contributor and Oaken Innovations co-founder Hudson Jameson alerted the community that the recent surge in token offering (TO) popularity may lead to severe network congestion and high transaction costs over the coming weeks. In a reddit post , he explained his belief that a temporary fix miners had implemented late last year in response to a Denial of Service (DoS) attack is what was causing blocks to fill up, or reach the limit of acceptable transactions per block, requiring many users to endure long wait times and high fees to send transactions on the network. Recognizing the frustration that users unaccustomed to Ethereums evolutionary rate might have with these long wait times, he suggested that miners raise their gas limit and gas price settings to help alleviate these issues. He called for miners to re-institute a pre-DoS attack adaptive gas limit that would track a moving average of previous block use and organically grow (or shrink) to help prevent blocks from filling up. In a discussion with ETHNews, Jameson expl Continue reading >>
Blockchains Dont Scale. Not Today, At Least. But Thereshope.
Blockchain Engineer. I have a passion for understanding things at a fundamental level and sharing it as clearly as possible. Blockchains dont scale. Not today, at least. But thereshope. The first Bitcoin paper was first released in 2008. My excitement about the potential of blockchain technology has been building ever since. Decentralized digital currency, once just a far-fetched goal, is finally making inroads into the mainstream. While thats exciting on its own merit, Im personally most excited about the potential for decentralized applications. Financial exchanges, prediction markets, and asset management platforms all carry enormous potential. The trustless systems supporting them are no less intriguing; identity verification systems, smart property, censorship resistant social platforms, and autonomous structures and governance models like DAOs . The most disruptive use cases probably havent even been dreamt up yet. But this dream still remains a dream for the foreseeable future while a few early enthusiasts and entrepreneurs are experimenting with building such applications, theres still a big missing piece that prevents us from seeing these applications come to fruition: scalability. Blockchains, as it stands today, are limited in their ability to scale. Thats not to say that this will be the case forever, but its definitely true today. In fact, Id argue its one of the biggest technological barriers we face with blockchain technology today. Its quickly become a very active area of research among researchers in the community and cryptocurrency in general. Currently, all blockchain consensus protocols (eg. Bitcoin, Ethereum, Ripple, Tendermint) have a challenging limitation: every fully participating node in the network must process every transaction. Recall that Continue reading >>
What Is The Block Size Limit
If you've been in crypto for a while, you've heard of the block size and the everlasting debate that surrounds it. This debate has plagued the community for years and it has pretty much torn it apart into two groups: Those in favor of a blocksize increase and those against it. But maybe you haven't been around long enough to know what the block size and the block size limit mean and why it's so heavily debated in the crypto sphere. The block size issue is much more than just a curiosity or technicality and it could indeed define the future of Bitcoin as a mainstream currency. So, what is the block size and why does it matter? Why are there groups that defend the block size limit while others push for an immediate increase? As you most likely know, Bitcoin is a blockchain-based cryptocurrency. All the transactions that take place within the network are recorded on this blockchain, a public ledger that can be seen by anyone but changed by no one. This ledger is made up of blocks that fit together cryptographically (hence the name, blockchain). When a user makes a transaction, said transaction is included in the block that is being mined at the time, and will later be confirmed by the blocks that follow it. The more blocks there are on top of your transaction, the safer it is to assume it is immutable. Transactions, at its most basic level, are made up of data which is usually composed of the information regarding the transaction itself. This data, like any other, takes up space on the block it is included. Currently, each block on the Bitcoin blockchain is able to contain 1mb of data, meaning that the block size of bitcoin is 1 megabyte. This means that there is a limit to how many transactions can fit in Bitcoin's blocks, according to the data contained in said transact Continue reading >>
Cornell Research: Bitcoin Block Size Can Increase By 1.7x And Maintain Decentralization
Cornell Research: Bitcoin Block Size Can Increase by 1.7x and Maintain Decentralization A study led by Cornell professor Emin Gn Sirer entitled Decentralization in Bitcoin and Ethereum claimed that the bitcoin block size could be increased to 1.7MB and still maintain the same level of decentralization. During a research initiative conducted to compare the level of decentralization on Bitcoin and Ethereum, Cornell researchers led by Sirer discovered that bitcoin is under-utilizing its network. The research paper stated that because nodes on the Bitcoin network have a larger bandwidth than nodes on the Ethereum network, the size of bitcoin blocks can be increased without impacting the synchronization of nodes. Sirer explained that, Bitcoin nodes generally have higher bandwidth allocated to them than Ethereum. Compared to our previous study in 2016, we see that the median bandwidth for a Bitcoin node has increased by a factor of 1.7x. The typical Bitcoin node has much more bandwidth available to it than it did before. Higher allocated bandwidth indicates that the maximum block size can be increased without impacting orphan rates, which in turn affect decentralization. Expanding the bitcoin block size would increase the transaction capacity of the Bitcoin network by almost two-fold. Currently, as shown by the large size of the bitcoin mempool, the holding area of unconfirmed transactions, the Bitcoin network is congested, leading to high transaction fees and longer transaction verification periods. According to Blockchain , the second most widely utilized cryptocurrency wallet behind Coinbase, the size of the bitcoin mempool remains above 120 million bytes, with just over 300,000 transactions per day. Last month, the Bitcoin network was handling around 450,000 transactions Continue reading >>
Blockchain - What Are The Ethereum Disk Space Needs? - Ethereum Stack Exchange
How fast is Ethereum blockchain growing and how big is it likely to get in the future? Is it still about 1 GB per month? Are there any data pruning or compression algorithms in place? Latest Update: Nov 29th, 2017. I have written a blog post about this, esp. parity pruning modes: The Ethereum-blockchain size will not exceed 1TB anytime soon . Last Update: June 1st, 2017 / Block ~ 3800000 *) I wasn't able to synchronize any of the 5 clients below in unpruned node on a Quadcore-CPU VPS with 16 GB RAM on a HDD within a reasonable time. **) This is the default enabled mode of operation / pruning / synchronization. Go only offers database pruning on initial sync. The default --syncmode fast prunes old chain states and results initially in a database with around 20 GB in size. It is, however, expected to grow over time as the fast sync is only available once. ---------------------------------------------------------------------------| Sync-Mode | Database | Comment |===========================================================================| Light | 0.175 GB | --- |---------------------------------------------------------------------------| Fast** | 20.367 GB | Will grow consistently after initial sync. |---------------------------------------------------------------------------| Full | N/A | Wasn't able to sync this within 14 days*. |--------------------------------------------------------------------------- Parity offers continuous state trie pruning. The default --pruning fast will keep only the latest 64 states by default. It's expected to grow at a rate of a few GB per year. ---------------------------------------------------------------------------| Pruning | Database | Comment |===========================================================================| Fast** | 9.911 Continue reading >>
Ethereum: How To Become A Blockchain Developer
Learn how to work with Ethereum, the cryptocurrency for Smart Contracts, a revolutionary technology, home of the cryptokittens, and BTC's main competitor. The CryptoKitties is a Smart Contract that allows users to collect or buy and breed digital cats. If you would like to become a Blockchain developer, sooner or later, you will work with Ethereum. It is the second-largest cryptocurrency at the moment. According to coinmarketcap, its market capital is half the size of Bitcoin and twice the size of Ripple, the third-largest cryptocurrency. Ethereum, like Bitcoin, is a Blockchain solution that provides sharing coins' features. So, why did it become so popular? All the small differences between Ethereum and the first cryptocurrency make it so popular the smart contracts, quickly mined blocks and low fees. Like Bitcoin, Ethereum is a Blockchain solution. The general functional principle is the same currency owners can exchange the funds by sending the transactions which are broadcasted with the decentralized Blockchain. But a couple of differences make Ethereum so special Every block in mined in approximately 10 minutes in Bitcoin. In Ethereum, it happens 4-5 times per minute. Thus, making microtransactions, ordering pizza, or paying for goods does not require one to wait for 10 minutes until the transaction receives the first confirmation. In Bitcoin, the block size is currently specified at 1MB. The Ethereum block size is calculated in a totally different way and depends on the complexity of transactions included in this block. Every block can have a complexity of around 8,000,029 Gas. Every transaction has its own complexity called the Gas and calculated from the code, smart contracts, and information that the transaction includes. Lets say that a single, basic transact Continue reading >>
Satoshis Best Kept Secret: Why Is There A 1 Mb Limit To Bitcoin Block Size
Satoshis Best Kept Secret: Why is There a 1 MB Limit to Bitcoin Block Size Bitcoins scaling crisis was one of several things Satoshi and earlier Bitcoiners never anticipated. Heres how that 1 MB blocksize limit got put there. Anybody familiar with Bitcoin is aware of the vexing problem caused by the 1 MB blocksize limit and the controversy that arose over how to scale the network. Its probably worthwhile to look back on how that limit came to exist, in hopes that future crises can be averted by a solid understanding of the past . In 2010, when the blocksize limit was introduced, Bitcoin was radically different than today. Theymos, administrator of both the Bitcointalk forum and /r/bitcoin subreddit, said, among other things : "No one anticipated pool mining, so we considered all miners to be full nodes and almost all full nodes to be miners. I didn't anticipate ASICs, which cause too much mining centralization. SPV is weaker than I thought. In reality, without the vast majority of the economy running full nodes, miners have every incentive to collude to break the network's rules in their favor. The fee market doesn't actually work as I described and as Satoshi intended for economic reasons that take a few paragraphs to explain." It seems that late in 2010, Satoshi realized there had to be a maximum block size, otherwise some miners might produce bigger blocks than other miners were willing to accept, and the chain could split. Therefore, Satoshi inserted a 1 MB limit into the code. Yes, Satoshi kept this change a secret until the patch was deployed, and apparently asked those who discovered the code on their own to keep quiet . He likely kept things quiet to minimize the chances that an attacker would figure out how to use an unlimited blocksize to DOS the network. Sat Continue reading >>
The Ethereum-blockchain Size Will Not Exceed 1tb Anytime Soon | Hacker News
That just prevents anyone except miners from messing with the state. One of the nice properties of Bitcoin is that even miners can't magic more coins into existence than allowed by the protocol or spend other people's money. You lose that a little with this kind of fast sync. It's probably worth it from a usability standpoint though. Miners could mess with very recent state, but if you download enough blocks with full state to be confident of finality for the earliest one, and verify just those transitions, you're still safe. If the incorrect blocks were published on the network, they'd be rejected by other miners, so you don't have to look far back unless (1) there's a sustained 51% attack on the whole network, or (2) you're a very juicy target and a huge miner can take over your internet connection, and you don't notice a large drop in difficulty. I'm not trolling: I have 50Mbit connection and specd out macbook - probably most powerful laptop you can expect from a user. Maybe if i tweak or use light client it would, but as a user I don't care. Yea I gave up on eth wallets as well. I just ended up dumping my coins onto coinbase and hope they don't get hacked or something... I looked into hot wallets, but so many people have theirs keys stolen somehow. Figured it was last risk to leave it on an exchange. I have a Dell laptop that I bought for ~$500 in 2014, upgraded to 16GB RAM and SSD, it holds ETH, LTC and BTC blockchain. It's constant network transfer is 4MB/s, avg. CPU usage 70%. Run Arch. What problem are you having? Is this for Bitcoin or for Ethereum? I thought the former has UTXOs and the latter has accounts. So the issue is, if you want to validate a transaction, I would have to find the block in which the input was made, and confirm all the blocks from that o Continue reading >>
Decentralization In Bitcoin And Ethereum
We have been conducting a longitudinal study of the state of cryptocurrencynetworks, including Bitcoin and Ethereum. We have just made publicour results from our study spanning 2015 to 2017, in a peer-reviewed paperabout to be presented at the upcoming Financial Cryptography and Data Security conference in February  . Here are some highlights from our findings. Bitcoin nodes generally have higher bandwidth allocated to them than Ethereum.Compared to our previous study in 2016 , we see that the median bandwidth for a Bitcoin node has increased by a factor of 1.7x. The typical Bitcoin node has much more bandwidth available to it than it did before. Higher allocated bandwidth indicates that the maximum blocksize can beincreased without impacting orphan rates, which in turn affectdecentralization. If people were happy about thelevel of decentralization in 2016, they should be able to increase theblock size by 1.7x to clear almost twice as many transactions per secondwhile maintaining the same level of decentralization. Some people argue that increasing the maximum block size would also prohibitively increase CPU and disk requirements. Yet these costs were trivial in the first place, especially compared to today's transaction fees, and have come down drastically. For instance, a 1TB disk cost $85 on average in 2016 and $70 in 2017  . To date, we have seen no sound, quantitative arguments for any specific value ofthe maximum block size in Bitcoin. Arguments on thistopic have consisted of vague, technical-sounding-yet-technically-unjustifiedargumentation, bereft of scientific justification. Thedissonance between the technical-soundiness of the arguments and theactual technical facts on the ground is disconcerting for atechnological endeavor  . Ethereum is Better Dist Continue reading >>
A Gentle Introduction To Ethereum
Ethereum builds on blockchain and cryptocurrency concepts, so if you are not familiar with these, its worth reading a gentle introduction to bitcoin and a gentle introduction to blockchain technology first. This article assumes the reader has a basic familiarity with how Bitcoin works. Ethereum is software running on a network of computers that ensures that data and small computer programs called smart contracts are replicated and processed on all the computers on the network, without a central coordinator. The vision is to create an unstoppable censorship-resistant self-sustaining decentralised world computer. The officialwebsite is Itextends the blockchain concepts from Bitcoin which validates, stores, and replicates transaction data on many computers around the world (hence the term distributed ledger). Ethereum takes this one step further, and also runs computer code equivalently on many computers around the world. What Bitcoin does for distributed data storage, Ethereum does for distributed data storage plus computations. The small computer programsbeing run are called smart contracts, and the contractsare run by participants on their machines using asort ofoperating system called a Ethereum Virtual Machine. To run Ethereum, you can download (or write yourself if you have the patience) some software called an Ethereum client. Just like BitTorrent or Bitcoin, the Ethereum client will connect over the internet to other peoples computers running similar client softwareand start downloading the Ethereum blockchain from them to catch up. It will also independently validate that each block conforms to the Ethereum rules. What does the Ethereum client software do? You can use itto: Create new transactions and smart contracts Your computer becomes a node on the network, r Continue reading >>
$44 Million In Ethereum Moved With $0.13 Fee, How Can Bitcoin Reach Similar Scalability?
$44 Million in Ethereum Moved With $0.13 Fee, How Can Bitcoin Reach Similar Scalability? Bitcoin fees have significantly decreased over the past few months, especially since the lock-in of the Bitcoin Core development teams scaling solution and transaction malleability fix Segregated Witness (SegWit) and the proposal of SegWit2x. Leading bitcoin wallet platforms including Blockchain, the second largest non-custodial bitcoin wallet application behind Coinbase, currently recommends a $0.88 fee for a median-sized transaction and a $1.1 fee for urgent transactions that need to be confirmed by miners within 60 minutes. In contrast to the median fee of around $3 in June, bitcoin transaction fees have substantially decreased. Prominent experts and analysts including Nick Szabo revealed that a series of spam attacks clogged the bitcoin blockchain in 2016, which ultimately led the bitcoin mempool, the holding area for unconfirmed transactions, to bloat and transaction fees to rise at a rapid rate. The debate on whether transaction spam attacks continued throughout this year is still ongoing, however, almost immediately after the industry agreed to activate SegWit through BIP 91, bitcoin fees abruptly dropped.Oxt Developer, Laurent recently speculated that spam attacks on the network bloated and clogged the blockchain for at least 18 months: Considering that the published elements are the result of an exploratory analysis, I would say that Im 95% confident. 100% confidence will require an in-depth analysis which is currently outside what my financial resources allow me to do. Today, bitcoin transaction fees are significantly lower. Users can easily process median-sized transactions with a fee less than $1, which was not possible three months ago. More importantly, with SegWit, w Continue reading >>
What Is Ethereums Block Size? : Ethereum
Welcome to r/Ethereum , the front page of the Web 3. No inappropriate behavior. This includes, but is not limited to: personal attacks, threats of violence, gossip, slurs of any kind, posting people's private information. Keep price discussion and market talk, memes & exchanges to subreddits such as /r/ethtrader Keep plain ICO advertisements to subreddits such as r/ethinvestor . Keep mining discussion to subreddits such as /r/EtherMining . No creating multiple accounts to get around Reddit rules. English language only. Please provide accurate translations where appropriate. Posts and comments must be made from an account at least 10 days old with a minimum of 20 comment karma. Exceptions may be made on a discretionary basis. Continue reading >>
How Will Ethereum Scale?
Like other public blockchains, ethereumintends to support as many users as it can. The problem is that, today, we don't really know the limits of theplatform. Because of a hard-coded limit on computation per block, the ethereum blockchain currently supports roughly 15 transactions per second compared to, say, the 45,000 processed by Visa. This limitation of ethereum and other blockchain systems has long been the subject of discussion by developers and academics. While ethereum developers might like to highlight how the flexible smart contract platform differs from bitcoin, for example, it isn't unique in regards to scalability. As disappointing as that might sound, there's hope in proposed solutions that havent made it into the official software yet. Ethereum and bitcoin use a combination of technical tricks and incentives to ensure that they accurately record who owns what without a central authority. The problem is, its tricky to preserve this balance while also growing the number of users (especially to the point where average people can use the system to purchase coffee or run applications). That's because ethereum depends on a network of 'nodes', each of which stores the entire ethereum transaction history and the current 'state'of account balances, contracts and storage. This is obviously a cumbersome task, especially since the total number of transactions is increasing approximately every 1012 seconds with each new block. The worry is that, if developers raise the size of each block to fit more transactions, the data that a node will need to store will grow larger effectively kicking people off the network. If each node grows large enough, only a few large companies will have the resources to run them. Despite the inconvenience, running a full node is the best w Continue reading >>
Accounts, Transactions, Gas, And Block Gas Limits In Ethereum
Accounts, Transactions, Gas, and Block Gas Limits in Ethereum This article is meant to help people understand some of the basic mechanics behind accounts, transactions, gas, and the role miners play in setting the block size in Ethereum. Corrections are welcome :) There are two types of accounts in Ethereum can send transactions (ether transfer or trigger contract code), code execution is triggered by transactions or messages (calls) received from other contracts. when executed - perform operations of arbitrary complexity (Turing completeness) - manipulate its own persistent storage, i.e. can have its own permanent state - can call other contracts All action on the Ethereum block chain is set in motion by transactions fired from accounts. Every time a contract account receives a transaction, its code is executed as instructed by the input parameters sent as part of the transaction. The contract code is executed by the Ethereum Virtual Machine on each node participating in the network as part of their verification of new blocks. The term transaction is used in Ethereum to refer to the signed data package that stores a message to be sent from an externally owned account to another account on the blockchain. a signature identifying the sender and proving their intention to send the message via the blockchain to the recipient, VALUE field - The amount of wei to transfer from the sender to the recipient, an optional data field, which can contain the message sent to a contract, a GASLIMIT value, representing the maximum number of computational steps the transaction execution is allowed to take, a GASPRICE value, representing the fee the sender is willing to pay for gas. One unit of gas corresponds to the execution of one atomic instruction, i.e. a computational step. Contrac Continue reading >>
The Ethereum-blockchain Size Will Not Exceed 1tb Anytime Soon.
The Ethereum-blockchain size will not exceed 1TB anytime soon. Before diving into this article, please read the two disclosures about my involvement (1,2) and the one on data accuracy (3) at the bottom of the article. At least once a month someone posts a chart on r/ethereum predicting the blockchain size of Ethereum will soon exceed 1 TB. I want to take that chance to clean up with some stories around the Ethereum-blockchain size in this article and try to explain why this chart is technically correct, but not the full picture. Let's have a look at this chart first. It shows the complete data directory size of an Ethereum node (red), Geth in this case, and a Bitcoin node (blue), probably Bitcoin-Core , plotted over time. While the Bitcoin graph is moving slightly upwards in a seemingly linear inclination, the Ethereum graph reminds the reader of an exponential growing slope. On Blocks, Block-History, States, and State-History Users accusing Ethereum of blockchain-bloat are not far off with their assumptions. But actually, not the chain is bloated but the Ethereum state. I want to examine some terminology from the Whitepaper before proceeding. Block. A bundle of transactions which, after proper execution, update the state. Each transaction-bundling block gets a number, has some difficulty, and contains the most recent state. State. The state is made up of all initialized Ethereum accounts. At the time of writing, there are around 12 million known accounts and contracts growing at a rate of roughly 100k new accounts per day . Block-History. A chain of all historical blocks, starting at the genesis block up to the latest best block, also known as the blockchain. State-History. The state of each historical block makes up the state history. I will get into the details on t Continue reading >>