Is the Bitcoin Blockchain too big?

One of the major criticisms on Bitcoin and crypto currencies is the ability for the blockchain to scale and compete with volume offered by traditional money systems. The Bitcoin network handles a transaction once every two to three seconds, which when compared to established money transmission networks at between a hundred to two thousand transactions per second. 

There are proposals to let the blocksize alter in accordance to supply and demand or lift the block size to 8MB. The summer of 2015 had shown how the community can have differences of opinion in relation to the best method to go down.

At present the Bitcoin block size is limited by the code to 1MB per block. At present all full nodes perform two tasks – checking block hashes and checking transaction verification signatures. Transactions mostly contain two inputs but in the future this will in increase as multisignature and P2SH transactions increase in use and therefore increase the number of inputs – although computational power to counteract this is relatively simple in terms of CPU speed. 

Major bottlenecks come in the form of burgeoning RAM requirements for UTXO’s and in terms of storage space. If the Bitcoin network handled 2000 transactions per second that would translate into over 25 TeraBytes per year alongside rapidly increasing the UXTO. 

 

Solutions are available – for example the blockchain could be split into three pieces or create a new blockchain to be merge mined with bitcoin to store the UXTO in a data tree.

System.NullReferenceException: Object reference not set to an instance of an object.
   at ASP._Page_Views_MacroPartials_Convert_RTE_to_AMP_cshtml.Execute() in c:\inetpub\wwwroot\integration\Views\MacroPartials\Convert.RTE.to.AMP.cshtml:line 59
   at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
   at System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
   at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
   at Umbraco.Core.Profiling.ProfilingView.Render(ViewContext viewContext, TextWriter writer) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\Mvc\ProfilingView.cs:line 24
   at Umbraco.Web.Mvc.ControllerExtensions.RenderViewResultAsString(ControllerBase controller, ViewResultBase viewResult) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\Mvc\ControllerExtensions.cs:line 73
   at Umbraco.Web.Macros.PartialViewMacroEngine.Execute(MacroModel macro, IPublishedContent content) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\Macros\PartialViewMacroEngine.cs:line 149
   at umbraco.macro.LoadPartialViewMacro(MacroModel macro) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\umbraco.presentation\macro.cs:line 1375
   at umbraco.macro.renderMacro(Hashtable pageElements, Int32 pageId) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\umbraco.presentation\macro.cs:line 367
   at Umbraco.Web.UmbracoComponentRenderer.RenderMacro(macro m, IDictionary`2 parameters, page umbracoPage) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\UmbracoComponentRenderer.cs:line 138
   at ASP._Page_Views_Partials_grid_editors_amprte_cshtml.Execute() in c:\inetpub\wwwroot\integration\Views\Partials\Grid\Editors\AMPRte.cshtml:line 3
   at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
   at System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
   at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
   at Umbraco.Core.Profiling.ProfilingView.Render(ViewContext viewContext, TextWriter writer) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\Mvc\ProfilingView.cs:line 24
   at System.Web.Mvc.Html.PartialExtensions.Partial(HtmlHelper htmlHelper, String partialViewName, Object model, ViewDataDictionary viewData)
   at ASP._Page_Views_Partials_grid_editors_ampbase_cshtml.Execute() in c:\inetpub\wwwroot\integration\Views\Partials\Grid\Editors\AMPBase.cshtml:line 21
System.NullReferenceException: Object reference not set to an instance of an object.
   at ASP._Page_Views_MacroPartials_Convert_RTE_to_AMP_cshtml.Execute() in c:\inetpub\wwwroot\integration\Views\MacroPartials\Convert.RTE.to.AMP.cshtml:line 59
   at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
   at System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
   at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
   at Umbraco.Core.Profiling.ProfilingView.Render(ViewContext viewContext, TextWriter writer) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\Mvc\ProfilingView.cs:line 24
   at Umbraco.Web.Mvc.ControllerExtensions.RenderViewResultAsString(ControllerBase controller, ViewResultBase viewResult) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\Mvc\ControllerExtensions.cs:line 73
   at Umbraco.Web.Macros.PartialViewMacroEngine.Execute(MacroModel macro, IPublishedContent content) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\Macros\PartialViewMacroEngine.cs:line 149
   at umbraco.macro.LoadPartialViewMacro(MacroModel macro) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\umbraco.presentation\macro.cs:line 1375
   at umbraco.macro.renderMacro(Hashtable pageElements, Int32 pageId) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\umbraco.presentation\macro.cs:line 367
   at Umbraco.Web.UmbracoComponentRenderer.RenderMacro(macro m, IDictionary`2 parameters, page umbracoPage) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\UmbracoComponentRenderer.cs:line 138
   at ASP._Page_Views_Partials_grid_editors_amprte_cshtml.Execute() in c:\inetpub\wwwroot\integration\Views\Partials\Grid\Editors\AMPRte.cshtml:line 3
   at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
   at System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
   at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
   at Umbraco.Core.Profiling.ProfilingView.Render(ViewContext viewContext, TextWriter writer) in c:\projects\umbraco-cms-xtjqd\src\Umbraco.Web\Mvc\ProfilingView.cs:line 24
   at System.Web.Mvc.Html.PartialExtensions.Partial(HtmlHelper htmlHelper, String partialViewName, Object model, ViewDataDictionary viewData)
   at ASP._Page_Views_Partials_grid_editors_ampbase_cshtml.Execute() in c:\inetpub\wwwroot\integration\Views\Partials\Grid\Editors\AMPBase.cshtml:line 21

Related guides

Who are the CypherPunks? What is a Bitcoin Vanity address and how do you get one? How Does Bitcoin Cryptography work? What affects the Bitcoin price? What is a Crypto Currency? What will happen to the Bitcoin Price when the Block Reward Halves in 2016? How do digital signatures in Bitcoin work?

Popular guides

eToro Debuts CopyTrader in the U.S. to Drive Mass-Market Participation in Cryptocurrency Trading Sponsored Lykke: A 'World-Class' Cryptocurrency Exchange Sponsored Get Instant Crypto Loans in 3 Easy Steps What is a Bitcoin ETF? A Basic Overview of the Best Privacy Coins What Is the Binance Coin (BNB)? How to buy on Amazon with Bitcoin